Linux:搭建SFTP服務器

系統Centos
工具,自帶的internal-sftp
1.首先查看openssh版本

ssh -V

這裏寫圖片描述
版本必須大於4.8p1,低於的這個版本需要升級。

2.創建sftp組

groupadd bmssftp

3.創建sftp用戶

useradd -g bmssftp -s /bin/false bmssftp  //用戶名
passwd bmssftp123  //密碼

4.將sftp組的用戶home目錄統一指定到/data/sftp下,按用戶名區分,這裏先新建一個bmssftp目錄,然後指定bmssftp的home爲/data/sftp/bmssftp。

mkdir -p /data/sftp/bmssftp
usermod -d /data/sftp/bmssftp bmssftp  

5.配置sshd_config

vim /etc/ssh/sshd_config

註釋掉Subsystem sftp /usr/libexec/openssh/sftp-server 這句話
並且在文件末尾添加如下語句

Subsystem sftp internal-sftp    
Match Group mysftpg    
ChrootDirectory /data/sftp/%u    
ForceCommand    internal-sftp    
AllowTcpForwarding no    
X11Forwarding no

我這裏把data該成了data2,
這裏寫圖片描述

6.設定權限

chown root:bmssftp /data/sftp/bmssftp  
chmod 755 /data/sftp/bmssftp

7.現在其實已經可以通過bmssftp賬號密碼登入了,但是在bmssftp文件夾中還不能上傳文件,所以需要新建一個文件夾來供bmssftp用戶上傳文件。

mkdir /data/sftp/bmssftp/upload  
chown bmssftp:bmssftp /data/sftp/bmssftp/upload 
chmod 755 /data/sftp/bmssftp/upload

8.編輯/etc/selinux/config

vim /etc/selinux/config

將文件中的SELINUX=enforcing 修改爲 SELINUX=disabled ,
然後保存並執行

setenforce 0

9.重啓sshd服務
輸入命令重啓服務。

service sshd restart

然後就可以嘗試因Xftp,Winscp等工具登入了,如下,在upload同目錄下應該是無法上傳修改文件的,在upload文件夾裏就可以了。
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章