紅帽7(centos 7)配置VSFTP

VSFTP是一個基於GPL發佈的類Unix系統上使用的FTP服務器軟件,它的全稱是Very Secure FTP 今後名稱能夠看出來,編制者的初衷是代碼的安全。它是一個安全、高速、穩定的FTP服務器。vsftpd有三種模式。匿名模式。用戶模式,還有虛擬用戶模式。咱們分別來配置一下這幾種模式。數據庫


yum install vsftpd -y           #安裝vim

systemctl restart vsftpd        #重啓安全

systemctl stop firewalld        #關閉防火牆(後面實驗成功後再開啓)服務器




匿名用戶:ide

默認狀況下,vsftpd的匿名用戶是打開的,客戶端是能夠訪問的。測試


客戶端訪問:OK(輸入ftp://ftp服務器IP地址)spa

wKioL1lHls2Si9gfAACUISWw7pM237.jpg


默認是沒有權限寫入的。咱們去主配置文件配置寫入權限吧。3d

wKioL1lHlz-wVyaDAAC6JEoWGSg792.jpg


vim /etc/vsftpd/vsftpd.conf   #打開主配置文件,添加以下內容,注意不要與文中重疊rest


wKiom1lHmKCAPUWHAAC5xtIZn0g819.jpg


解釋:orm

anonymous_enable=yes#容許匿名訪問模式

anon_upload_enable=yes#容許匿名用戶上傳文件

anon_mkdir_write_enable=yes#容許匿名用戶建立目錄

anon_other_write_enable=yes#容許匿名用戶修改目錄名和刪除目錄

anon_world_readable_only=no#容許匿名用戶下載可閱讀文件(默認yes,拒絕)


chown ftp /var/ftp/pub                  #修改屬主爲ftp

ls -ld /var/ftp/pub                     #查看權限/var/ftp/pub默認爲ftp匿名路徑

wKioL1lHmfHDg5LtAABHj0-FPiQ428.jpg


getsebool -a | grep ftp#查看全部與ftp相關的SELinux規則

setsebool -P ftpd_full_access=on#設置SELinux服務隊ftp服務訪問規則策略爲容許

注意:(這裏能夠先無論,暫時關閉命令  setenforce 0  )

wKiom1lHmoKhSYjfAACm2mgnOwE985.jpg


systemctl restart vsftpd        #重啓


客戶端測試OK(有讀取權限)

wKiom1lHm-_QNIjNAACo366d7jY453.jpg


匿名用戶的默認路徑是/var/ftp/pub,咱們是能夠修改默認路徑的

mkdir -p /var/tang/laotang6            #建立匿名路徑

vim /etc/vsftpd/vsftpd.conf       #打開主配置文件,添加以下命令

anon_root=/var/tang         #指明匿名用戶的路徑爲/var/tang

wKiom1lHnbDwehC7AABPenjj9xY031.jpg

記得修改屬主,纔有權限寫入哦!!

chown ftp /var/tang/laotang6                #修改屬主爲ftp

chmod o+w /var/tang                         #給予目錄讀寫權限


客戶端測試: OK(有讀取權限)

wKiom1lHn0-i9rMRAACWsBC2zOY785.jpg


本地用戶:

本地用戶配置仍是比較簡單,只要系統存在用戶就能夠登陸,默認本地用戶也是開啓的。

useradd tang            #建立賬號tang

password tang           #修改用戶tang的密碼

wKiom1lHoDWhkJolAABhL6fleY4636.jpg


vim /etc/vsftpd/vsftpd.conf       #打開主配置文件,關閉匿名用戶

wKiom1lHoYLh093nAACvCqAHptM058.jpg

注意,這裏只要把匿名用戶no掉就好了,不用一條條註釋它們。


systemctl restart vsftpd        #重啓



客戶端測試:OK (有讀取權限)

wKioL1lHohLgTrQjAACU9eZZOoM966.jpg


登陸成功(路徑是用戶的家目錄例如個人路徑是:/home/tang)

wKioL1lHriyxGo2KAACea13TFHM325.jpg

本地用戶的默認路徑是/home/用戶名,咱們是能夠修改默認路徑的

mkdir -p /var/laotang/tang            #建立本地路徑

vim /etc/vsftpd/vsftpd.conf       #打開主配置文件,添加以下命令

local_root=/var/laotang6             #指明本地用戶的路徑爲/var/laotang6

wKioL1lHsPix1wdAAAArVEzn42k097.jpg


chmod o+w /var/laotang6            #給予目錄讀寫權限


客戶端測試: OK(有權限寫入)

wKiom1lHsWnAtT45AACbl4W7OG0236.jpg



虛擬用戶:

虛擬用戶相對來講是比較安全的,由於賬號,是虛擬出來的,不存在於本地,

虛擬用戶咱們來作個實驗,讓張三(有讀寫權限),李四(只有讀取權限),

分別指向不一樣的文件目錄。


mkdir /etc/ftp              #建立目錄

cd /etc/ftp

vim/etc/ftp/user.txt        #添加以下內容,單行爲賬號,雙行爲密碼

wKiom1lHtJ-STLPbAAAsafTBjdY523.jpg


將上面建立的賬號密碼轉化爲數據庫文件

db_load -T -t hash -f user.txt user.db

wKiom1lHtdeR5EyeAAAyzA9jS6Q260.jpg


vim /etc/pam.d/laotang6        #創建pam配置文件,文件名自定義。進行如下配置

wKiom1lHttGTLBF4AAA9XmyM8sk413.jpg


建立本地用戶,給虛擬用戶映射。

useradd laotang6            #建立賬號laotang6

password laotang6           #修改用戶laotang6的密碼


vim /etc/vsftpd/vsftpd.conf

wKioL1lHt_rAPHTRAABFvCiW5Hk434.jpg


注意:修改主配置文件中最下面的pam_service_name=vsftpd 爲咱們建立的laotang6

wKioL1lHuU6SSLPHAAA0RBiHxo0876.jpg


解釋:

guest_enable=yes                 #開啓虛擬用戶模式

guest_username=laotang6  #隱射本地用戶帳號

user_config_dir=/etc/ftp         #建立用戶獨立的權限配置文件存放目錄

chroot_local_user=yes            #將用戶限制在主目錄

pam_service_name=laotang6        #指定咱們前面建立的pam文件



mkdir -p /home/laotang6/zhangsan/zs           #建立張三的共享目錄

mkdir -p /home/laotang6/lisi/ls               #建立李四的共享目錄


在指定的目錄下cd /etc/ftp,以虛擬用戶名建立的文件權限配置文件

cd /etc/ftp

vim zhangsan          #建立張三的權限配置文件(要以虛擬用戶名作文件名)

wKiom1lHvZ6CrPn7AAA_pQsagYs172.jpg


chmod o+w /home/laotang6/zhangsan/zs          #給予目錄讀寫權限


vim lisi

wKioL1lHv53x9yuSAAAsksADqfY854.jpg


systemctl restart vsftpd        #重啓


客戶端測試: OK

 

張三(有讀寫權限)

wKioL1lHwFXR0uy7AADRWFh6k-s954.jpg

wKiom1lHwFXh3BiwAACiB1oX9XE052.jpg


李四(只有讀取權限)

wKioL1lHwFaR7TzCAADccbA7UIY626.jpg

wKioL1lHwFbzn8L4AADELLmXlcg822.jpg




systemctl restart firewalld        #開啓防火牆


容許防火牆

firewall-cmd --permanent --add-service=ftp

firewall-cmd --reload





以上實驗配置完畢。

相關文章
相關標籤/搜索