Debian系统SFTP怎么设置
导读:Debian系统SFTP配置步骤 1. 安装OpenSSH服务器 Debian系统默认包含OpenSSH服务器,若未安装,可通过以下命令完成安装: sudo apt update sudo apt install openssh-serve...
Debian系统SFTP配置步骤
1. 安装OpenSSH服务器
Debian系统默认包含OpenSSH服务器,若未安装,可通过以下命令完成安装:
sudo apt update
sudo apt install openssh-server
2. 调整SSH服务器配置
编辑SSH配置文件/etc/ssh/sshd_config,启用SFTP子系统并定制访问规则:
sudo nano /etc/ssh/sshd_config
- 启用内部SFTP服务:找到
# Subsystem sftp /usr/lib/openssh/sftp-server行,取消注释并将路径改为internal-sftp(更轻量且无需额外进程):Subsystem sftp internal-sftp - 限制用户访问范围:在文件末尾添加以下配置,将
sftpusers组的用户限制在自家目录(ChrootDirectory),禁止SSH登录及端口转发:Match Group sftpusers ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
3. 创建SFTP专用用户组(可选但推荐)
为便于管理,创建专门的用户组 sftpusers:
sudo groupadd sftpusers
4. 新增SFTP用户并加入组
- 创建用户:使用
adduser命令创建用户(如sftpuser),并设置密码:sudo adduser sftpuser - 加入用户组:将用户添加到
sftpusers组(-aG表示追加组,避免移除原有组):sudo usermod -aG sftpusers sftpuser
5. 配置用户主目录权限
SFTP要求用户主目录的所有者为用户自身(而非组或其他),且权限为755(允许用户读写执行,其他用户仅读执行):
sudo chown sftpuser:sftpuser /home/sftpuser
sudo chmod 755 /home/sftpuser
- 创建上传目录:若需允许用户上传文件,需在主目录下创建子目录(如
upload),并设置用户为所有者:sudo mkdir /home/sftpuser/upload sudo chown sftpuser:sftpusers /home/sftpuser/upload
6. 重启SSH服务
使配置生效,重启SSH服务:
sudo systemctl restart sshd
7. 验证SFTP连接
使用SFTP客户端从本地机器连接服务器,测试功能:
sftp sftpuser@your_server_ip
- 登录成功后,输入
ls查看目录内容,put local_file上传文件,get remote_file下载文件,验证传输功能是否正常。
注意事项
- 日志排查:若连接失败,可查看SSH日志
/var/log/auth.log获取详细错误信息。 - 安全强化:建议禁用root登录(在
sshd_config中设置PermitRootLogin no)、修改默认SSH端口(Port 22改为其他端口),并配置防火墙(如ufw)允许SSH端口。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian系统SFTP怎么设置
本文地址: https://pptw.com/jishu/734986.html
