前提条件
Windows云主机内已下载并安装 WinSCP 客户端(建议从官方网站获取最新版本),默认使用的端口号是22,请确保双方云主机的22端口开放,连接Linux云主机的文件协议选SFTP或SCP。
故障描述
通过Windows云主机内的WinSCP连接Linux云主机失败,报错如图1。
图1 通过winscp连接linux云主机报异常
故障排查
WinSCP是通过SFTP协议进行的主机连接,所以需要判断Linux云主机内的SSH配置文件中是否有sftp相关的配置,查看 /etc/ssh/sshd_config中关于sftp的配置描述。
图2 检查linux云主机sshd是否开启sftp相关配置
上图2说明SFTP关联的配置文件是/usr/libexec/openssh/sftp-server,如果此文件缺失或者权限不对将会导致WinSCP连接异常,此文件默认权限是755。
解决步骤
- 如果是sftp-server文件缺失,可以从其他云主机拷贝一份到故障云主机的对应目录下。
- 如果是权限问题,通过chmod命令修改文件权限。命令如下。
chmod 755 -R /usr/libexec/openssh/sftp-server