工作需要,用户上传文件到目录下,用ftp不太安全,选择sftp。让用户在自己的home目录下活动,不能ssh到机器进行操作。
下面开始干活。 查看ssh版本 ssh -V,我的系统是CentOS6.4 ssh版本是5.3(大于4.8)的没有问题。
0, 创建用户目录root权限下创建用户和属组都是root
mkdir -p /opt/sftp/dir1/{upload,public}
1,创建 groupadd sftp
2. 创建 user -s /sbin/nologin -G sftp davis
user -s /sbin/nologin -G sftp davis1
3, 创建 davis 密码
passwd davis or echo davis:123456|chpasswd
passwd davis1
4, 修改sshd_config文件
#Subsystem sftp /usr/libexec/openssh/sftp-server(注释掉)
添加下面行
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /opt/sftp/dir1
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
重启sshd /etc/init.d/sshd restart
5, 给目录附属权限
chown davis:sftp /opt/sftp/dir1/upload
chown davis1:sftp /opt/sftp/dir1/public
chmod 700 /opt/sftp/dir1/upload
chmod 700 /opt/sftp/dir1/public
6, 将upload 给davis用户