基於CentOS 搭建 FTP 文件服務

系統要求: CentOS 7.2 64 位操做系統html

一. 安裝 VSFTPD安全

  (vsftpd 是在 Linux 上被普遍使用的 FTP 服務器,根據其[官網介紹][https://security.appspot.com/vsftpd.html],它多是 UNIX-like 系統下最安全和快速的 FTP 服務器軟件。)服務器

yum install vsftpd -y

  啓動 VSFTPD(安裝完成後,啓動 FTP 服務)app

service vsftpd start

  啓動後,能夠看到系統已經[監聽了 21 端口]:FTP 協議默認使用 21 端口做爲服務端口工具

netstat -nltp | grep 21

此時,訪問 ftp://<您的 CVM IP 地址> 可瀏覽機器上的 /var/ftp 目錄了。spa

二. 配置 FTP 權限操作系統

  目前 FTP 服務登錄容許匿名登錄,也沒法區分用戶訪問,咱們須要配置 FTP 訪問權限rest

vsftpd 的配置目錄爲 /etc/vsftpd,包含下列的配置文件:code

vsftpd.conf 爲主要配置文件
ftpusers 配置禁止訪問 FTP 服務器的用戶列表
user_list 配置用戶訪問控制

閱讀上述配置以瞭解更多信息。若是您準備好了,點擊下一步開始修改配置來設置權限。htm

  阻止匿名訪問和切換根目錄(匿名訪問和切換根目錄都會給服務器帶來[安全風險],咱們把這兩個功能關閉)編輯 /etc/vsftpd/vsftpd.conf

# 禁用匿名用戶 
anonymous_enable=NO
# 禁止切換根目錄 
匿名訪問讓全部人均可以上傳文件到服務器上而無需鑑權,而容許切換根目錄則可能產生越權訪問問題。
chroot_local_user=YES

從新啓動 FTP 服務:

service vsftpd restart

三. 建立 FTP 用戶

#建立一個用戶 ftpuser
useradd ftpuser     
#爲用戶 ftpuser 設置密碼
echo "Password" | passwd ftpuser --stdin

限制該用戶僅能經過 FTP 訪問:限制用戶 ftpuser 只能經過 FTP 訪問服務器,而不能直接登陸服務器

usermod -s /sbin/nologin ftpuser

爲用戶分配主目錄
爲用戶 ftpuser 建立[主目錄]並約定:
/data/ftp 爲主目錄, 該目錄不可上傳文件
/data/ftp/pub 文件只能上傳到該目錄下

mkdir -p /data/ftp/pub

建立登陸歡迎文件:

echo "Welcome to use FTP service." > /data/ftp/welcome.txt

設置訪問權限:

chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub

設置爲用戶的主目錄:

usermod -d /data/ftp ftpuser

四. 準備域名和證書(雲主機)

,將域名解析到實驗雲主機上,域名設置解析後須要過一段時間纔會生效,經過 ping 命令檢查域名是否生效 :若是 ping 命令返回的信息中含有你設置的解析的 IP 地址,說明解析成功。

ping jikexianfeng.xyz

五. 訪問 FTP 服務

經過 Windows 資源管理器訪問:Windows 用戶能夠複製下面的[連接]到資源管理器的地址欄訪問:

ftp://ftpuser:xoAEUG5c@118.89.65.22

經過 FTP 客戶端工具訪問:

FTP 客戶端工具衆多,下面推薦兩個經常使用的:
WinSCP - Windows 下的 FTP 和 SFTP 鏈接客戶端
FileZilla - 跨平臺的 FTP 客戶端,支持 Windows 和 Mac

下載和安裝 FTP 客戶端後,使用下面的憑據進行鏈接便可:

主機ip:您的主機ip

用戶:ftpuser

密碼:xoAEUG5c

相關文章
相關標籤/搜索