搭建vsftpd服務並實現本地用戶訪問


原文參考:

https://help.aliyun.com/document_detail/92048.html

 

環境:

阿里雲ECS服務器:centos 7.6

防火牆狀態:關閉

安全組策略:放行21端口

 

安裝步驟:

(1)安裝vsftpd;

(2)配置本地用戶登錄;

(3)測試。

 

1. 安裝vsftpd

yum -y install vsftpd    # vsftpd是服務端的服務,ftp是客戶端安裝連接服務端ftp的工具

systemctl start vsftpd.service

systemctl enable vsftpd.service

netstat -anpt |grep vsftpd  # 檢測服務是否已經起來

 

 

 

2. 配置本地用戶登錄

(1)修改配置文件,橙色部分未修改內容,其他部分建議了解即可

anonymous_enable=NO      # 不允許匿名用戶登錄

local_enable=YES           # 允許本地用戶登錄

write_enable=YES           # 允許寫入

local_umask=022                         # 掩碼為022,表示755的權限

dirmessage_enable=YES           # 如果啟動這個選項,那么使用者第一次進入一個目錄時,會檢查該目錄下是否有.message這個檔案,如果有,則會出現此檔案的內容,通常這個檔案會放置歡迎話語,或是對該目錄的說明。默認值為開啟。

xferlog_enable=YES                    #是否啟用上傳/下載日志記錄。如果啟用,則上傳與下載的信息將被完整紀錄在xferlog_file 所定義的檔案中。預設為開啟。

connect_from_port_20=YES      # 指定FTP使用20端口進行數據傳輸,默認值為YES。

xferlog_std_format=YES              # 如果啟用,則日志文件將會寫成xferlog的標准格式,如同wu-ftpd 一般。默認值為關閉

listen=YES                                      # 監聽IPv4 sockets

listen_ipv6=NO                              # 關閉ipv6

pam_service_name=vsftpd         # 設置PAM使用的名稱,默認值為/etc/pam.d/vsftpd。

userlist_enable=YES                    # 是否啟用vsftpd.user_list文件

tcp_wrappers=YES                       # 如果啟用,則vsftpd服務器會檢查/etc/hosts.allow 和/etc/hosts.deny 中的設置,來決定請求連接的主機,是否允許訪問該FTP服務器

use_localtime=YES                      # vsftpd將顯示當前時區中包含時間的目錄列表

port_enable=YES                         # 如果為NO,則表示禁止用PORT方法獲取數據連接

chroot_local_user=YES        # 全部用戶被限制在主目錄

chroot_list_enable=YES       # 啟用例外用戶名單

chroot_list_file=/etc/vsftpd/chroot_list   # 指定例外用戶列表文件,列表中的用戶不被鎖定在主目錄

allow_writeable_chroot=YES     # 允許寫入

local_root=/home/ftptest              # 設置本地用戶登錄后所在的目錄

 

(2)創建登錄用戶ftptest【注意ftpuser不可以作為登錄用戶】
useradd ftptest

passwd ftptest

cd /home/ftptest/  # 注意我是直接放在/home下面的,所以ftptest 的屬主和屬組都是ftptest,如果在其它目錄這里需要修改屬主和屬組為ftptest

mdkir test

 

(3)連接測試

這里使用的工具是FileZIla(下載路徑:https://filezilla-project.org/download.php)

 

 

 

 出現【列出目錄成功】表示已經成功連接,然后在 / 下也可以創建一個新的文件kjk表明可以寫入。

並且可以看到服務端創建的test,但是如果在test里面創建卻不行,顯示“550 Create directory operation failed.”,查了一下大家都說這個是selinux沒有disable,然而我已經關閉了;后來才發現test使用root用戶創建的,屬主和屬組不是ftptest,所以客戶端的用戶ftptest是沒有權限創建文件的

 

 

 

 

 

 

 


免責聲明!

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



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