以下是Ubuntu SFTP多用户管理技巧及关键步骤:
安装OpenSSH服务器
sudo apt update && sudo apt install openssh-server
创建用户与用户组
sudo groupadd sftp_users
sudo useradd -m sftpuser -g sftp_users
sudo passwd sftpuser
配置SSH限制SFTP访问
编辑/etc/ssh/sshd_config
,添加以下内容(限制用户组%h
为用户主目录):
Match Group sftp_users
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
说明:ChrootDirectory
需为root所有且权限为755,用户仅能访问自身目录。
设置目录权限
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
upload
):sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftp_users /home/sftpuser/upload
sudo chmod 700 /home/sftpuser/upload
重启SSH服务生效
sudo systemctl restart ssh
测试连接
使用SFTP客户端连接:
sftp sftpuser@your_server_ip
安全增强技巧:
sshd_config
中设置PubkeyAuthentication yes
,并将用户公钥添加至~/.ssh/authorized_keys
。sshd_config
中通过ListenAddress
指定允许的IP段,或使用防火墙规则(如ufw
)限制端口访问。/var/log/auth.log
监控SFTP登录异常。