1,修改ssh配置
首先,查看一下系统的ssh版本,只有4.8以上的版本有该功能。此外,修改ssh配置前最好备份一下ssh_config文件。
[root@backup ~]# ssh -VOpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb2013 以下操作都是在root下[root@backup ~]# cp/etc/ssh/sshd_config{,.old}[root@backup ~]# vim /etc/ssh/sshd_config……#Subsystem sftp /usr/libexec/openssh/sftp-server <===注释这一行增加下面4行Subsystem sftp internal-sftpMatch Group chrootChrootDirectory /chroot/%uForceCommand internal-sftp
创建SFTP登录用户并设置密码
[root@backup ~]# cd /[root@backup /]# mkdir chroot[root@backup /]# groupadd chroot[root@backup /]# useradd -d /chroot/work -gchroot -s /bin/false sftp更改用户 sftp 的密码。passwd:所有的身份验证令牌已经成功更新。[root@backup /]# chown root /chroot/sftp[root@backup /]# chmod 750 /chroot/sftp
重启ssh
/etc/init.d/sshd restart
PS: 按照上述方法已完成了SFTP用户的根目录设置。但如果我们在该用户的根目录下创建一个videos子目录,然后把videos子目录用ln命令链接到apache项目里当作视频文件存储目录时,直接用浏览器查看该文件时会显示Apache 403 Forbidden页面。这是因为apache没有权限访问该目录内的文件。解决办法是把apache用户添加到chroot组里。
sudo usermod -a -G chroot apache
参考URL: http://t296917342.blog.51cto.com/8068255/1771377