在CentOS上实现SFTP多用户并发连接,你需要遵循以下步骤:
-
安装OpenSSH服务器: 如果你还没有安装OpenSSH服务器,请运行以下命令来安装它:
sudo yum install openssh-server
-
创建一个新的用户组(可选): 为了更好地管理SFTP用户,你可以创建一个新的用户组。例如,创建一个名为
sftp_users
的用户组:sudo groupadd sftp_users
-
创建新用户并设置密码: 使用
adduser
命令创建一个新用户,并将其添加到sftp_users
组(如果你创建了这个组):sudo adduser your_username sudo passwd your_username
确保将
your_username
替换为你想要创建的用户名。 -
限制用户的shell访问: 编辑
/etc/passwd
文件,找到你刚刚创建的用户,并将其shell更改为/sbin/nologin
或者创建一个自定义的shell脚本,该脚本只允许SFTP访问。例如:your_username:x:1001:1001::/home/your_username:/sbin/nologin
-
配置SSH和SFTP: 编辑
/etc/ssh/sshd_config
文件,找到或添加以下配置:Subsystem sftp internal-sftp Match Group sftp_users ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
这将限制
sftp_users
组的用户只能使用SFTP,并将其根目录更改为他们的主目录。同时,禁止TCP转发和X11转发。 -
重启SSH服务: 保存并关闭
sshd_config
文件后,重启SSH服务以应用更改:sudo systemctl restart sshd
-
测试SFTP连接: 使用SFTP客户端(如FileZilla或其他支持SFTP的客户端)尝试连接到你的CentOS服务器。使用你在步骤3中创建的用户名和密码进行连接。
现在,你应该能够实现CentOS上的SFTP多用户并发连接。每个用户都将被限制在其主目录中,并且可以同时进行多个并发连接。