搭建SFTP服務器,允許一個或多個用戶擁有一個或多個目錄的rwx權限


 


2019-08-28

1、引言

  sftp可以為傳輸文件提供一種安全的網絡的加密方法。sftp 與 ftp 有着幾乎一樣的語法和功能。SFTP 為 SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。其實在SSH軟件包中,已經包含了一個叫作SFTP(Secure File Transfer Protocol)的安全文件信息傳輸子系統,SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(端口號默認是22)來完成相應的連接和答復操作,所以從某種意義上來說,SFTP並不像一個服務器程序,而更像是一個客戶端程序。SFTP同樣是使用加密傳輸認證信息和傳輸的數據,所以,使用SFTP是非常安全的。但是,由於這種傳輸方式使用了加密/解密技術,所以傳輸效率比普通的FTP要低得多,如果您對網絡安全性要求更高時,可以使用SFTP代替FTP。

2、搭建SFTP前期准備


 

 OS : CentOS/RHEL 7/6

 Openssh version 4.8以上

目的:實現某一個或多個用戶只可以訪問一個或多個目錄。(User kunlun對目錄A和B有rwx權限,User kunlunsun 對目錄C和B擁有rwx權限)


#ssh -V           #查看openssh版本

 


3、創建管理組和用戶


 

#groupadd sftp

#useradd -g sftp -s /bin/false kunlun          #  /bin/false   沒有可以登錄的shell,只能使用sftp登錄

#passwd kunlun

#useradd -g sftp -s /bin/false kunlunsun

#passwd kunlunsun

創建組(用於管理目錄和授權用戶的組)

#groupadd A

#groupadd B

#groupadd C


 4、創建要訪問的目錄


 

#mkdir -p  /Data/SFTP/A/

#mkdir -p  /Data/SFTP/B/

#mkdir -p  /Data/WEB/C/


 5、配置SFTP服務器

注:由於上述中講到sftp與ssh的關系,所以我們進行以下操作。


 

# vim /etc/ssh/sshd_config            #進入配置文件

# PasswordAuthentication yes        #如果您的服務器在Cloud上,那么請注意該雲平台是否默認只允許密鑰登錄。

#Subsystem sftp /usr/libexec/openssh/sftp-server  #注釋掉

Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /Data/
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no

注:ChrootDirectory /Data/   目錄屬主(指User)和屬組(Group組)必須都是root。

可以通過getfacl /Data查看owner(user)和group(group)


6、將用戶加入到要訪問的“目錄”組


 

#usermod -a -G A  kunlun          #將用戶加入到要訪問的目錄組

#usermod -a -G B kunlun

#usermod -a -G B kunlunsun

#usermod -a -G C kunlunsun


 7、修改目錄的owner和group


 

==============User kunlun的授權=========
#chgrp  A  A/
#chmod 770 A/
#chmod g+w A/
#chown kunlun:A A/

#chgrp  B  B/
#chmod 770 B/
#chmod g+w B/
#chown kunlun:B B/
==============User kunlunsun授權=========

#chgrp  C  C/
#chmod 770 C/
#chmod g+w C/
#chown kunlunsun:C C/

注:由於前面已經給過目錄B做過授權所以只需要將用戶kunlunsun加入到目錄B的組即可(加入組的操作在第6步完成)


 

通過getfacl B/或A/目錄查看目錄的owner和group權限

親測:經過以上操作,用戶將對相應的目錄有rwx權限

 

另:

  通過setfacl授權,經過測試無效果。

  個人感覺這種做法還可以更簡便,歡迎各位多多測試,有更簡便的方法歡迎留言,有問題也可以留言提出,看到會第一時間回復。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM