sftp 服务部署
环境:centos7
1.创建sftp用户服务组,以后新加sftp用户都要归类到sftp用户组里
groupadd sftp
2.创建sftp使用的目录
mkdir /home/sftp
3.创建sftp用户,sftpuser,并指定家目录位置
useradd -g sftp -s /sbin/nologin -d /home/sftp/sftpuser sftpuser
4.添加用户密码
passwd sftpuser
5.修改文件夹权限
chmod -R 755 /home/sftp
chown root:root /home/sftp/sftpuser
注释:可根据目录权限控制 普通用户的 上传和下载的 权限操作。也可创建普通用户加如sftp组。
6.配置sshd_config
vim /etc/ssh/sshd_config
把原来的Subsystem 行注释掉,添加如下配置:
Subsystem sftp internal-sftp
#限制的用户,多个用户以逗号隔开
Match User sftpuser
#限制的用户组,多个用户组以逗号隔开
#Match Group ftpuser
#不允许X11转发
X11Forwarding no
#不允许允许tcp端口转发,保护其他的tcp连接
AllowTcpForwarding no
#指定 sftp 命令
ForceCommand internal-sftp
#用户的根目录,用chroot将用户的根目录指定到%h,%h代表用户home目录,这样用户就只能在用户目录下活动。也可用%u,%u代表用户名
ChrootDirectory /home/sftp/%u
配置完成后重启服务
systemctl restart sshd
7.创建用于上传下载文件目录file,家目录无法用于上传下载文件
mkdir /home/sftp/sftpuser/file
chonw sftpuser:sftp /home/sftp/sftpuser/file
chmod -R /home/sftp/sftpuser/file
8.添加新用户
1.添加用户.
useradd -g sftp -s /sbin/nologin -d /home/sftp/sftpuser01 sftpuser01
2.修改目录权限.
chmod -R 755 /home/sftp/sftpuser01
3.添加配置文件.
vim /etc/ssh/sshd_config
Match User sftpuser,sftpuser01 #多用建议加到同一用户组内d.重启sshd,重复步骤7
问题:
1.ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主必须是root,也就是限制的目录属主属组必须为root;
2.要上传或下载文件,需要在ChrootDirectory下新建目录,属主属组需要属于sftpuser:sftp!

浙公网安备 33010602011771号