我在 Centos 8 上安装了一个 SFTP 服务器。首先,我在其中创建了一个组 sftpusers 和用户(带有密码)。我在 /etc/ssh/sshd_config 文件中添加了以下几行:
Port 22
Port 33000
...
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
...
#At the end of the file:
Match LocalPort 33000 Group sftpusers Address *
ChrootDirectory /home/sftp
ClientAliveInterval 300
AllowTCPForwarding no
PasswordAuthentication yes
X11Forwarding no
AllowGroups sftpusers
ForceCommand internal-sftp
然后我使用:systemctl restart sshd.service
。另外,semanage port -a -t ssh_port_t -p tcp 33000
需要命令。但是当我使用命令sftp -P 33000 -vvv user@host
从我的电脑连接时,我收到一个错误,结尾是
ssh_exchange_identification: read: Connection timed out
Connection closed
我想启用使用密码而不是密钥的连接。从其他一些服务器,我成功连接到 SFTP 服务器,但从其他一些服务器(Windows 10、Linux、FileZilla、命令行)则不行。