我有一台装有 debian + proftpd 的服务器,我的想法是让这些用户启用 ftp 和 sftp 服务。为此,我在 /home/sftpserver 中创建了一个文件夹,并在其中创建了不同的用户。
我执行的命令如下
mkdir /home/sftpserver
mkdir /home/sftpserver/user1
mkdir /home/sftpserver/user2
usermod -m -d /home/sftpserver/user1 user1
usermod -m -d /home/sftpserver/user2 user2
useradd -g sftpserver -s /bin/false -d /home/sftpserver/user1 user1
useradd -g sftpserver -s /bin/false -d /home/sftpserver/user2 user2
chown user1:sftpserver /home/sftpserver/user1/
chown user2:sftpserver /home/sftpserver/user2/
如果我通过 ftp 与每个用户连接,则“/”是该用户的主目录,我只能在此文件夹内创建文件和目录。
另一方面,如果我通过 sftp 访问,我会看到主目录“/ home / sftpserver”,并且用户 user1 会看到文件夹 user1 和 user2,而 user2 会看到 user1 的文件夹,除此之外,通过 sftp 我可以在系统中移动...但我不想允许。
这就是为什么我有proftpd配置文件像这样的文件
# Use this to jail all users in their homes
DefaultRoot ~
以及文件/etc/ssh/sshd_config
Match Group sftpgroup
ChrootDirectory /home
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no