在CentOS系统上管理SFTP用户时,可以遵循以下技巧和步骤:
创建用户组:首先,创建一个专门用于SFTP用户的组,例如 sftp
。
sudo groupadd sftp
创建用户:使用 useradd
命令创建新用户,并将其添加到 sftp
组。
sudo useradd -g sftp -s /sbin/nologin -d /home/sftpuser sftpuser
其中,-s /sbin/nologin
禁止用户通过SSH登录系统,-d /home/sftpuser
指定用户的主目录。
设置密码:为新用户设置密码。
sudo passwd sftpuser
创建用户主目录:如果用户的主目录不存在,需要手动创建。
sudo mkdir /home/sftpuser
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
编辑SSH配置文件:打开 /etc/ssh/sshd_config
文件,添加或修改以下配置。
sudo vi /etc/ssh/sshd_config
添加或修改以下内容:
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
这些配置限制了SFTP用户只能访问其主目录(%h
表示用户的家目录),并且只能使用SFTP进行文件传输。
重启SSH服务:保存并退出编辑器后,重启SSH服务以应用更改。
sudo systemctl restart sshd
设置chroot目录权限:确保SFTP用户的根目录及其所有上级目录的所有者和权限设置正确。
sudo chown root:sftp /home/sftpuser
sudo chmod 755 /home/sftpuser
创建可写目录:如果用户需要在主目录中写入文件,可以创建一个特定的目录并设置相应的权限。
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftp /home/sftpuser/upload
sudo chmod 755 /home/sftpuser/upload
使用SFTP客户端连接到服务器,验证用户是否能够正确访问其主目录。
sftp sftpuser@your_server_ip
通过以上步骤,您可以在CentOS系统上有效地管理SFTP用户,确保文件传输的安全性和可靠性。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:如何优化CentOS上的SFTP性能