排查 CentOS 上的 SFTP 连接问题,可以按照以下步骤进行:
检查网络连接:
ping
命令测试网络连接。telnet
或 nc
命令检查 SFTP 服务器的端口(默认是 22)是否开放。ping your_server_ip
telnet your_server_ip 22
# 或者
nc -vz your_server_ip 22
检查 SSH 和 SFTP 服务状态:
systemctl
命令检查状态。systemctl status sshd
systemctl start sshd
/etc/ssh/sshd_config
文件,确认包含以下行:Subsystem sftp /usr/libexec/openssh/sftp-server
systemctl restart sshd
查看日志文件:
检查 SSH 和 SFTP 相关的日志文件,寻找错误信息。常用的日志文件包括:
/var/log/secure
:记录与安全相关的事件。/var/log/auth.log
:某些系统上用于记录认证相关事件。使用 grep
命令搜索关键字:
grep 'sshd' /var/log/secure
grep 'sftp' /var/log/secure
检查防火墙设置:
firewalld
,可以添加规则:firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
iptables
,确保开放了 22 端口:iptables -L -n | grep 22
验证用户权限和认证:
~/.ssh/authorized_keys
文件中。客户端配置检查:
~/.ssh/config
文件中的配置项正确无误。通过以上步骤,通常可以找到并解决大多数 SFTP 连接问题。如果问题仍然存在,可以考虑更详细地检查系统配置或咨询网络管理员。