FTP 伺服器(四)之實戰搭建
阿新 • • 發佈:2019-01-01
參考部落格:
一. 專案需求及前期準備
FTP 伺服器 IP 地址為 10.6.3.43,其他客戶端可以通過匿名方式
- 上傳檔案
- 下載檔案
- 刪除目錄
- 建立目錄
- 登陸無需密碼
當然這樣做的好處就是極大的方便,缺點就是不安全!但是因為在內部使用,也就不在意這些了。
二. FTP 搭建
在 10.6.3.43 的主機上,以 root 身份編輯 FTP 配置檔案
2.1 編輯 vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
清除原來的配置檔案內容,新增如下
# 允許匿名使用者(ftp或anonymous)登入
anonymous_enable=YES
# 匿名登入時,系統不會檢驗密碼
no_anon_password=YES
# 資料流聯機的 timeout 為 60 秒
data_connection_timeout=60
# 匿名者發呆超過 10 分鐘就斷線
idle_session_timeout=600
# FTP上本地的檔案許可權,drwxr-xr-x
anon_umask=022
# 本地使用者寫的許可權
write_enable=yes
# 匿名帳號可以有刪除的許可權
anon_other_write_enable=yes
# 建立目錄的同時可以在此目錄中上傳檔案
anon_mkdir_write_enable=YES
# 匿名使用者瀏覽許可權
anon_world_readable_only=NO
# 匿名使用者上傳許可權
anon_upload_enable=yes
# 不允許使用本地使用者來登陸ftp
local_enable=NO
# 使用本地時間
use_localtime=YES
# 設定這個專案來讓 vsftpd 尋找該檔案來顯示訊息
dirmessage_enable=YES
# 使用者上傳與下載檔案都會被紀錄起來。記錄的檔案與下一個設定專案有關
xferlog_enable=YES
# 支援主動式聯機功能
connect_from_port_20=YES
# 支援 WuFTP 的登入檔格式
xferlog_std_format=YES
# 使用 stand alone 方式啟動 vsftpd
listen=YES
# 支援 PAM 模組的管理
pam_service_name=vsftpd
# 支援 TCP Wrappers 的防火牆機制
tcp_wrappers=YES
# 使用者連線後歡迎資訊使用的是此檔案
banner_file=/etc/vsftpd/anon_welcome.txt
2.2 編輯 banner_file 檔案
如果沒在 vsftpd.conf 中設定 banner_file 引數的話,則無需編輯該檔案,此檔案主要就是在使用者登入 ftp 時,螢幕顯示的歡迎語。
在 /etc/vsftpd 下新建 anon_welcome.txt 檔案,並新增內容:
vim /etc/vsftpd/anon_welcome.txt
# 新增如下內容
Welcome to BigData's ftp
2.3 建立匿名下載目錄
因為匿名登入時是以 ftp 為使用者名稱進行登入的,因為匿名使用者的 ftp 根目錄為 /var/ftp,匿名使用者登入時會被 chroot 到該根目錄下,且該根目錄的許可權為 drwxr-xr-x ,所以匿名使用者並沒有在 /var/ftp 的目錄下建立檔案的許可權。
如果將 /var/ftp 的許可權設定最大行不行?答案是否定的。 vsftpd 出於安全考慮對 /home/ftp 是不允許沒有限制的,否則會出現如下錯誤:
500 OOPS: vsftpd: refusing to run with writable anonymous root
我們可以在 /etc/vsftpd 下建立一個 upload 的目錄,專門用於存放匿名使用者上傳的檔案及新建立的目錄。
cd /var/ftp
mkdir upload
chown ftp:ftp upload
三. 啟動 FTP 服務
以 root 身份執行以下命令:
/etc/init.d/vsftpd restart
或者
service vsftpd restart
檢驗 ftp 服務是否已經啟動了:
service vsftpd status
vsftpd (pid 7906) is running…