華為雲線上搭建FTP伺服器(CentOS7.6)
阿新 • • 發佈:2020-08-08
安裝vsftpd
- 登入伺服器
- 執行以下命令安裝vsftpd
yum install -y vsftpd
回顯如下類似資訊時,表示軟體安裝成功:
3. 設定FTP服務開機自啟動
systemctl enable vsftpd.service
- 啟動/停止FTP服務
systemctl start vsftpd.service
systemctl stop vsftpd.service
或者
service vsftpd start/stop/restart
- 檢視FTP服務埠
netstat -antup | grep ftp
回顯如下類似資訊:
配置vsftpd
vsftpd安裝後預設開啟了匿名FTP的功能,使用匿名FTP,使用者無需輸入使用者名稱密碼即可登入FTP 伺服器,但沒有許可權修改或上傳檔案。使用者如果試圖使用Linux作業系統中的賬號登入伺服器,將會被vsftpd拒絕,但可以在vsftpd裡配置使用者賬號和密碼登入。以下操作以在vsftpd 裡配置使用者賬號和密碼登入FTP伺服器為例
- 建立“ftpadmin”使用者
此處“ftpadmin”使用者為示例,可根據實際情況建立相應的使用者
useradd ftpadmin
- 執行以下命令並按照提示設定“ftpadmin”使用者密碼
passwd ftpadmin
- 執行以下命令建立供FTP使用的檔案目錄,此處以“/var/ftp/diyuan”為例。
mkdir /var/ftp/diyuan
- 執行以下命令將建立的檔案目錄所有者改為用於登入FTP的本地使用者。
chown -R ftpadmin:ftpadmin /var/ftp/diyuan
- 修改“vsftpd.conf”配置檔案
vi /etc/vsftpd/vsftpd.conf
可根據實際需求選擇將FTP配置為主動模式或者被動模式。如果華為雲上的伺服器需要通過公網IP地址訪問華為雲上的例項搭建的FTP伺服器時,需要將FTP伺服器配置為被動模式。
- 主動模式需要配置的引數如下:
#設定以下引數,不允許匿名登入FTP伺服器,允許本地使用者登入FTP伺服器,並指定FTP本地使用者使用的檔案目錄。 anonymous_enable=NO #不允許匿名登入FTP伺服器 local_enable=YES #允許本地使用者登入FTP伺服器 local_root=/var/ftp/diyuan #新增這一行:FTP本地使用者使用的檔案目錄 #設定以下引數,限制使用者只能訪問自身的主目錄。 chroot_local_user=YES #所有使用者都被限制在其主目錄 chroot_list_enable=YES #啟用例外使用者名稱單 chroot_list_file=/etc/vsftpd/chroot_list #例外使用者名稱單 allow_writeable_chroot=YES #新增這一行
- 被動模式除了需要配置主動模式所需的所有引數外,還需要配置的引數如下:
#設定以下引數,配置FTP支援被動模式。並指定FTP伺服器的公網IP地址,以及可供訪問的埠範圍,埠範圍請根據實際環境進行設定。
listen=YES
listen_ipv6=NO
pasv_address=xx.xx.xx.xx #新增這一行:FTP伺服器的公網IP地址
pasv_min_port=3000 #新增這一行:被動模式下的最小埠
pasv_max_port=3100 #新增這一行:被動模式下的最大埠
- 在“/etc/vsftpd/”目錄下建立“chroot_list”檔案
cd /etc/vsftpd
touch chroot_list
設定完畢後,重啟服務
service vsftpd restart
設定安全組
根據FTP的不同模式需要放通的埠如下:- FTP為主動模式時:埠21。
- FTP為被動模式時:埠21,以及配置檔案“/etc/vsftpd/vsftpd.conf”中引數“pasv_min_port”和“pasv_max_port”之間的所有埠
客戶端測試
開啟客戶端的計算機,在路徑欄輸入“ftp://FTP伺服器IP地址:FTP埠”(如果不填埠則預設訪問21埠) 。彈出輸入使用者名稱和密碼的對話方塊表示配置成功,正確的輸入使用者名稱和密碼後,即可對FTP檔案進行相應許可權的操作。