搭建vsftp伺服器實驗
1.搭建vsftp伺服器實驗
1.1.檢視是否安裝vsftp安裝包,沒有直接安裝vsftp
vsftp是very secure ftp 的縮寫。
ps -ef |grep vsftpd
rpm -qa | grep vsftpd
yum -y install vsftpd
1.2.啟動服務並設定開機自啟動
systemctl start vsftpd.service
systemctl enable vsftpd.service
systemctl status vsftpd.service
1.3.配置/etc/vsftpd目錄下檔案
ftpusers //用來指定哪些使用者不能訪問ftp
user_list //這個檔案中的使用者是否可以登入到伺服器,取決於vsftpd.conf檔案中的userlist_enable和userlist_deny這兩個選項。
vsftpd.conf //ftp伺服器的主配置檔案
注:配置檔案中的解釋
anonymous_enable=YES開啟匿名使用者登入
local_enable=YES開啟本地使用者登入
write_enable=YES開啟寫許可權以便上傳
local_umask=022設定上傳後文件為user=rwx, group=, other=
這樣,使用者上傳檔案後,是不能刪除和修改了。因為使用者屬於group組。
解決方法是,設定
最終檔案許可權是777-資料夾掩碼-local_umask掩碼
anon_upload_enable=YES開啟匿名使用者上傳許可權
統一匿名上傳使用者上傳的檔案的屬性
chown_uploads=YES
chown_username=ftp
設定chroot配置,禁止特定使用者訪問上一級目錄
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=YES這個選項如果是YES,那/etc/vsftpd/user_list中的使用者將被禁止訪問ftp。如果是NO
1.3.1.匿名使用者訪問配置
vi /etc/vsftpd/vsftpd.conf
將這兩個選項設定為YES :anon_upload_enable=YES和 anon_mkdir_write_enable=YES (一般預設已經有了的,將前面的'#'去掉就行了)。這樣實現匿名使用者上傳和下載檔案了。
anonymous_enable=YES
註釋:
注:ftp訪問失敗請清除防火牆配置(iptables -F),方可訪問
1.3.2.非匿名使用者訪問
vi /etc/vsftpd/vsftpd.conf
先將匿名使用者訪問關掉:
anon_upload_enable=NO
在配置檔案末尾新增:
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
建立使用者
useradd ftp1
passwd ftp1
測試一下,直接使用ftp1登入,發現是登入不上的。
將使用者ftp1放入/etc/vsftpd/vsftpd.user_list檔案中
再次訪問,使用ftp1使用者,可以登入到ftp伺服器
注:非匿名使用者目錄在home目錄下
1.4.使用 TLS 加密 vsftpd 連線(待續)
為了對抗 FTP 固有的不安全性(使用明文傳輸)。vsftpd 程序可以使用 TLS 來對連線和傳輸進行加密。FTP 客戶端必須支援 TLS。
vsftpd.conf 設定 ssl_enable 為 YES 開啟 TLS 的支援。
vi /etc/vsftpd/vsftpd.conf