自学内容网 自学内容网

Unable to access SFTP sub-system, operation failed

解决方法:

1. 编辑 /etc/ssh/sshd_config 配置文件

2. 重启SSHD服务

service sshd restart

还有一种特殊情况,也是本文重点要介绍的:

当启用sftp-server后,使用FlashFXP等工具传输文件的时候,仍然失败,这时候就要用另外一种subsystem的类型了 .

把 /etc/ssh/sshd_config 配置文件注释掉的一行替换成以下内容

#替换的内容
Subsystem      sftp    internal-sftp

#重启sshd服务命令

service sshd restart

最后再次用FlashFXP连接linux(Redhat 6/CentOS 7环境)服务器即可正常连接. 

最后:关于Internal-sftp和Sfp-server之间到底有何关系,为什么要用internal-sftp,请参考如下 .

sftp-server和internal-sftp都是OpenSSH的一部分。 

sftp-server是一个独立的二进制文件, internal-sftp只是一个配置关键字,告诉sshd使用内置sshd的SFTP服务器代码,而不是运行另一个进程(通常是sftp-server)。

从功能的角度来看,sftp-server和internal-sftp几乎完全相同。 它们是使用相同的源代码构建的。

internal-sftp的主要优点是,当与ChrootDirectory指令一起使用时,它不需要任何支持文件。


几个例子:

1.管理员可能依赖登录shell配置来阻止某些用户登录。切换到internal-sftp会绕过限制,因为不再涉及登录shell。

2.使用sftp-server二进制文件(作为一个独立的进程),你可以使用一些hacks,比如在sudo下运行SFTP。

3.对于SSH-1(如果有人仍在使用它),则根本不涉及Subsystem指令,使用SSH-1的SFTP客户端明确告知服务器,服务器应运行什么二进制文件。 因此,传统的SSH-1 SFTP客户端具有硬编码的sftp服务器名称。

这边因为我给用户登陆脚本做了限制,所以发生了上述的问题,启用internal-sftp就可以完美的解决掉了。

参考文章:

FlashFXP连接linux服务器(centos7环境)提示连接失败 (Unable to access SFTP sub-system, operation failed.)-CSDN博客

【OpenSSH】internal-sftp和sftp-server之间的区别和联系什么? - 简书


原文地址:https://blog.csdn.net/jamesxsy/article/details/136043924

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!