以下是Ubuntu SFTP的安全配置技巧:
安装OpenSSH服务器
sudo apt update && sudo apt install openssh-server
创建专用用户组与用户
sudo groupadd sftpuserssudo useradd -m -G sftpusers -s /usr/sbin/nologin sftpuser
sudo passwd sftpuser
配置SSH限制SFTP访问
编辑/etc/ssh/sshd_config,添加:
Match Group sftpusers
ChrootDirectory /home/%u # 限制用户仅能访问主目录
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
重启SSH服务:sudo systemctl restart ssh
设置目录权限
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo mkdir /home/sftpuser/uploads
sudo chown sftpuser:sftpusers /home/sftpuser/uploads
sudo chmod 700 /home/sftpuser/uploads
启用密钥认证
ssh-keygen -t rsa -b 4096ssh-copy-id sftpuser@server_ipsudo nano /etc/ssh/sshd_config
PubkeyAuthentication yes
PasswordAuthentication no
重启SSH服务:sudo systemctl restart ssh防火墙与访问控制
sudo ufw allow from trusted_ip to any port 22
sudo ufw enable
日志与监控
sudo tail -f /var/log/auth.log关键安全原则:
chroot隔离用户,禁止越权访问。