目前愈來愈多的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: