将 /etc/ssh/sshd_config 中的
Subsystem sftp /usr/libexec/openssh/sftp-server
改为
Subsystem sftp internal-sftp
重启sshd后,sftp正常工作了。
但是原因仍然不知为何,回头看看,发现 /usr/libexec/openssh/sftp-server 没有任何权限:
# ll /usr/libexec/openssh/sftp-server
----------. 1 root root 63544 2月 22 2013 /usr/libexec/openssh/sftp-server
正常情况应该是这样:
# ll /usr/libexec/openssh/sftp-server
-rwxr-xr-x. 1 root root 63544 Nov 23 2013 /usr/libexec/openssh/sftp-server