OpenSSH是SSH(Secure Shell)协议的免费开源实现,OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控件和文件传输过程的中的数据。您可以通过安装OpenSSH,借助远程调试的能力实现SSH远程登录以及SFTP、SCP上传下载文件的功能,进而方便您临时调试SAE的某个应用实例。
前提条件
如果您的应用配置了安全组,请确保22端口(SSH端口)允许开放。
步骤一:开启远程调试
- 登录SAE控制台。
- 在左侧导航栏单击应用列表,在应用列表页面上方选择地域,单击具体应用名称。
- 在应用基本信息页面,单击实例部署信息。在实例部署信息页签的默认分组区域,单击目标实例操作列的Webshell。
- 在命令框中执行passwd命令,为当前Root角色设置访问密码,作为SSH,SFTP远程登录密码。
- 在命令框中执行以下命令安装OpenSSH。
说明 对于以Centos及Apline操作系统为基础镜像的应用,SAE提供bash脚本便于您快速安装openssh。如果您需要自定义OpenSSH相关配置或者因自身镜像原因导致执行脚本异常,请自行安装OpenSSH。
各地域的安装命令如下所示。
地域 |
安装命令 |
华东1(杭州) |
wget http://edas-hz.oss-cn-hangzhou-internal.aliyuncs.com/sae_openssh.sh && chmod
777 sae_openssh.sh && ./sae_openssh.sh |
华东2(上海) |
wget http://edas-sh.oss-cn-shanghai-internal.aliyuncs.com/sae_openssh.sh && chmod
777 sae_openssh.sh && ./sae_openssh.sh |
华北2(北京) |
wget http://edas-bj.oss-cn-beijing-internal.aliyuncs.com/sae_openssh.sh && chmod 777
sae_openssh.sh && ./sae_openssh.sh |
华南1(深圳) |
wget http://edas-sz.oss-cn-shenzhen-internal.aliyuncs.com/sae_openssh.sh && chmod
777 sae_openssh.sh && ./sae_openssh.sh |
华北3(张家口) |
wget http://edas-zjk.oss-cn-zhangjiakou-internal.aliyuncs.com/sae_openssh.sh && chmod
777 sae_openssh.sh && ./sae_openssh.sh |
返回结果如下,说明安装成功。
- 开启实例远程调试。
- 在左侧导航栏单击远程调试(仅支持Java),在远程调试(java)页面,打开开启远程调试开关。
- 单击远程调试设置,在远程调试设置面板,设置调试信息,单击确定。
参数说明如下:
- 请选择公网SLB:您可以选择新建SLB实例或选择已有的SLB实例。
- 调试端口:设置为22。
- 远程调试指定实例:选择需要调试的目标实例。
开启远程调试后,您可以在
远程调试(java)页面,获取远程调试IP和端口。
步骤二:执行远程调试
远程调试开启成功后,您可以通过获取的远程调试IP和端口,在可以访问公网,且具有SSH Client的主机中完成实例的远程调试。
- 远程调试:执行ssh root@ip命令,登录目标实例,完成远程调试。
- 远程上传下载文件:执行sftp root@ip命令,登录目标实例,远程上传下载文件。
注意
- 如果您在步骤4中新建了用户,您需要将命令中的root改成您新建的用户名。
- 本方案仅作为临时调试。当您的应用重新进行部署时,或者执行了任何会导致实例重启的操作或者发生的现象,您都需要重新完成实施步骤的配置:配置登录密码,安装OpenSSH,修改远程调试的目标实例。
- 当您修改远程调试的目标实例后再次登录时,需先执行ssh-keygen -R ip命令,删除原有证书,否则会出现
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED Host key verification failed.
错误。