目前愈来愈多的FTP客户端软件开始支持SSH协议上传和下载文件,这种协议方式就是SFTP。vim
SFTP的优点主要有两点,一是不须要再配置个FTP服务端;二是SSH协议是安全传输,上传和下载是通过加密的。安全
下面介绍下在最经常使用的服务器系统 CentOS Linux 7 上配置 SFTP 的方式!
服务器
1、sftp 安装ssh
第一步:建立sftp服务用户组,建立sftp服务根目录:测试
groupadd sftp #此目录及上级目录的全部者(owner)必须为root,权限不高于755,此目录的组最好设定为sftp chown -R root /var/sftp chmod -R 755 /var/sftp
第二步:建立sftp服务用户:加密
#添加用户 使用参数 -s /sbin/nologin禁止用户经过命令行登陆
useradd -g sftp -d /home/sftp/silent -s /sbin/nologin silent
第三步:为sftp服务用户添加密码spa
passwd silent
第四步:配置sshd_config:命令行
vim /etc/ssh/sshd_config
注释掉下面这一行:
Subsystem sftp /usr/libexec/openssh/sftp-server
在sshd_config最后加入下面这几行:rest
Subsystem sftp internal-sftp Match Group sftp ChrootDirectory /home/sftp/%u X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
注:这里要注意一下,上面这些代码务必放在最后,由于必需要“UseDNS no”后面code
第五步:重启sshd:
systemctl restart sshd
如今能够正常链接了,可是可能还有个问题,就是没法上传,因而咱们须要设置下写入权限:
chown root -R /var/sftp/silent chmod -R 755 /var/sftp/silent
2、sftp 简单操做
测试
sftp silent@127.0.0.1 silent@127.0.0.1's password: