1.創建一個組 groupadd 組名
groupadd sftp
2.組下創建一個用戶 useradd -g 組名 -s /bin/false 用戶名
useradd -g sftp -s /bin/false sftpuser
3.給上述步驟創建的用戶設置密碼 passwd 用戶名
passwd sftpuser
然后按照 提示輸入密碼 ,輸入兩遍。組及組名創建完成。
4.修改配置文件
vim /etc/ssh/sshd_config 打開配置文件,找到如下行 ,並注釋掉 #Subsystem sftp /usr/libexec/openssh/sftp-server #注釋掉該行 添加如下行 Subsystem sftp internal-sftp #使用系統自帶的internal-sftp Match User sftpuser #匹配用戶名 ChrootDirectory /datas/www #匹配用戶的根目錄,限制用戶活動范圍 ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
保存退出。
5.設置目錄權限
chown -R root:root /datas/www chmod 755 /datas/www
6.創建sftp用戶登陸后上傳目錄,並授權
mkdir /datas/www/upload chown -R sftpuser:sftp /datas/www/upload/ chmod 755 /datas/www/upload/
7.重啟sshd服務
service sshd restart
8.關閉SElinux
vim /etc/sysconfig/selinux #找到如下這行 SELINUX=enforcing #修改為 SELINUX=disabled
保存退出。
9.重啟Linux系統
可不啟動,如果訪問成功。
10.登錄sshd服務
sftp sftpuser@127.0.0.1
11、linux sftp connection reset by peer 報錯解決方法
/datas/www 這個路徑 只能是 root:root 所屬 ,而且 權限 必須小於等於 755 一般設置 755 即可 出現這種報錯 重新執行 第 5 第 6 步驟一遍即可