创建用户 sftp,并禁止 ssh 登录,不创建家目录:
useradd -s /sbin/nologin -M sftp
设置密码:
passwd sftp创建 sftp 家目录:
mkdir /data/sftp chown root:root /data/sftp chmod 755 /data/sftp创建文件上传目录:
mkdir /data/sftp/upload chown root:sftp /data/sftp/upload chmod 755 /data/sftp/upload配置 sshd_config ```bash vim /etc/ssh/sshd_config
注释下面一行
Subsystem sftp /usr/libexec/openssh/sftp-server
添加下面几行
指定使用 sftp 服务使用系统自带的 internal-sftp
如果不添加,用户无法通过 sftp 登录。
Subsystem sftp internal-sftp
匹配用户
Match User sftp
chroot 指定用户根目录
ChrootDirectory /data/sftp/upload
指定 sftp 命令
ForceCommand internal-sftp
限制端口转发
X11Forwarding no AllowTcpForwarding no
6. 重启 sshd 服务器
```bash
systemctl restart sshd.service
- 登录测试
sftp sftp@127.0.0.1
