在CentOS上配置SFTP(SSH File Transfer Protocol)通常涉及以下几个步骤:
安装OpenSSH服务器: 如果你的CentOS系统还没有安装OpenSSH服务器,你可以使用以下命令来安装它:
sudo yum install openssh-server
启动并启用SSH服务: 安装完成后,启动SSH服务并设置为开机自启:
sudo systemctl start sshd
sudo systemctl enable sshd
配置SSH以允许SFTP:
OpenSSH默认已经支持SFTP,所以通常不需要额外配置。但是,如果你想要限制用户只能通过SFTP访问,而不是SSH shell,你可以编辑/etc/ssh/sshd_config
文件:
sudo vi /etc/ssh/sshd_config
在文件中找到或添加以下行:
Subsystem sftp /usr/libexec/openssh/sftp-server
确保没有其他的Subsystem配置覆盖了这个设置。
限制用户访问:
如果你想要限制特定用户只能使用SFTP,可以在sshd_config
文件中使用Match
指令:
Match User <username>
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
将<username>
替换为你想要限制的用户名。ChrootDirectory
指令将用户的根目录更改为他们的主目录,这样可以防止他们访问系统中的其他文件。ForceCommand internal-sftp
强制用户使用SFTP。AllowTcpForwarding
和X11Forwarding
设置为no
可以进一步提高安全性。
重启SSH服务: 为了使更改生效,你需要重启SSH服务:
sudo systemctl restart sshd
测试SFTP连接: 使用SFTP客户端(如FileZilla或其他支持SFTP的FTP客户端)来测试你的配置。确保使用正确的用户名和密码连接到服务器。
防火墙设置: 如果你的CentOS服务器运行着防火墙,确保开放了SSH端口(默认是22):
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
请注意,这些步骤假设你有一个基本的CentOS系统,并且你有root权限或者sudo权限来执行这些命令。如果你在进行这些操作时遇到任何问题,请检查系统日志(通常在/var/log/
目录下)以获取更多信息。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
相关推荐:SFTP在CentOS上的配置步骤