要测试CentOS上的SFTP配置,请按照以下步骤操作:
确保已安装OpenSSH服务器:
在CentOS 7上,您可以使用以下命令安装OpenSSH服务器:
sudo yum install openssh-server
在CentOS 8上,您可以使用以下命令安装OpenSSH服务器:
sudo dnf install openssh-server
启动并启用OpenSSH服务:
sudo systemctl start sshd
sudo systemctl enable sshd
配置SFTP:
编辑/etc/ssh/sshd_config文件以配置SFTP。使用文本编辑器打开文件,例如:
sudo vi /etc/ssh/sshd_config
在文件中找到以下行并进行修改:
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
这将启用内部SFTP服务器而不是默认的sftp-server。保存并关闭文件。
重启OpenSSH服务以应用更改:
sudo systemctl restart sshd
创建一个用于SFTP的用户:
sudo adduser sftpuser
sudo passwd sftpuser
按照提示设置密码。
限制SFTP用户的访问权限:
编辑/etc/ssh/sshd_config文件,添加以下内容:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
这将限制sftpuser只能访问其主目录。保存并关闭文件。
为SFTP用户的主目录设置正确的权限:
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
测试SFTP连接:
使用SFTP客户端(如FileZilla或其他支持SFTP的FTP客户端)连接到服务器。输入以下信息:
如果一切正常,您应该能够成功连接到服务器并使用SFTP传输文件。
注意:如果您的CentOS版本不是7或8,请根据实际情况调整软件包管理器命令(例如,使用yum或dnf)。