sftp
sftp比ftp更可取,加密傳輸,設置也簡單。ftp過于繁瑣,且是不安全的協議
先決條件
服務器 OpenSSH-Server 版本最低4.8
? ~ ssh -V
OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013
設置sftp用戶
添加用戶組
? ~ sudo groupadd sftp
添加用戶
? ~ sudo useradd -g sftp -s /sbin/nologin -M sftpUser
參數說明:
-g # 加入用戶組
-s # 指定用戶登入后所使用的shell
/sbin/nologin # 用戶不允許登錄
-M # 不要自動建立用戶的登入目錄
設置用戶密碼:
? ~ sudo passwd sftpUser
Changing password for user sftpUser.
New password:
設置sftp
組根目錄權限
? ~ sudo chown root:sftp /home/wwwroot
? ~ sudo chmod 755 /home/wwwroot
文件夾所有者必須是root,用戶組可以不是root。
設置具體的站點目錄權限:
? wwwroot sudo chown www:sftp -R /home/wwwroot/default
? wwwroot sudo chmod 775 -R /home/wwwroot/default
配置 sshd_config
? ~ sudo vim /etc/ssh/sshd_config
Subsystem sftp internal-sftp
Match Group sftp #限制的用戶組
ChrootDirectory /home/wwwroot #根目錄
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sshd_config配置
檢測配置:
? ~ sudo sshd -t
重啟配置:
? ~ sudo systemctl restart sshd
測試連接
? ~ sftp -P 2222 sftpUser@127.0.0.1
upload