使用yum
安裝 vsftpd:
yum install vsftpd -y
安裝完成後,啟動 ftp 服務:
service vsftpd start
啟動後,可以看到系統已經[監聽了 21 埠]:
netstat -nltp | grep 21
此時,訪問 ftp://《您的 cvm ip 位址》 可瀏覽機器上的 /var/ftp 目錄了。
ftp 協議預設使用 21 埠作為服務埠目前 ftp 服務登陸允許匿名登陸,也無法區分使用者訪問,我們需要配置 ftp 訪問許可權
vsftpd 的配置目錄為 /etc/vsftpd,包含下列的配置檔案:
匿名訪問和切換根目錄都會給伺服器帶來[安全風險],我們把這兩個功能關閉。
編輯 /etc/vsftpd/vsftpd.conf,[找到下面兩處配置]並修改:
# 禁用匿名使用者
anonymous_enable=no
# 禁止切換根目錄
chroot_local_user=yes
service vsftpd restart
匿名訪問讓所有人都可以上傳檔案到伺服器上而無需鑑權,而允許切換根目錄則可能產生越權訪問問題。
在**編輯器中,用建立乙個使用者ctrl + f
進行搜尋,mac 使用者用cmd + f
進行搜尋
ftpuser
[?]:
useradd ftpuser
為使用者ftpuser
設定密碼 [?]:
echo "password" | passwd ftpuser --stdin
為了方便後面的實驗步驟,不建議使用其它的使用者名稱
下面命令中的密碼為實驗室為您生成,為了方便後面的實驗步驟,不建議使用其他密碼限制使用者
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
使用者的主目錄是使用者通過 ftp 登入後看到的根目錄
方便使用者登入後可以看到歡迎資訊,並且確定使用者確實登入到了主目錄上。
ping www.yourdomain.com
如果 ping 命令返回的資訊中含有你設定的解析的 ip 位址,說明解析成功。
注意替換下面命令中的www.yourmpdomain.com
為您自己的註冊的網域名稱
ftp 服務已安裝並配置完成,下面我們來使用該 ftp 服務
根據您個人的工作環境,選擇一種方式來訪問已經搭建的 ftp 服務
通過 windows 資源管理器訪問
ftp://ftpuser:password@《您的 cvm ip 位址》
通過 ftp 客戶端工具訪問
[主機]:
使用者:
ftpuser
密碼:
password
如果能夠正常連線,那麼大功告成,您可以開始使用屬於您自己的 ftp 伺服器了!
接下來,請上傳任意一張到您的 ftp 伺服器上的pub目錄下,然後,就可以在 /data/ftp/pub 中看到了。
注意:請不要直接上傳檔案到根目錄下
,您應該選擇上傳到pub
目錄下
如果您申請了網域名稱,可以將ip 位址替換為對應的網域名稱作為訪問憑據常用錯誤:
1. 解決方法 500 oops: vsftpd: refusing to run with writable root inside chroot()
#vi /etc/vsftpd.conf (或者是在/etc/vsftpd/vsftpd.conf,總之知道自己伺服器的配置檔案)
新增 allow_writeable_chroot=yes
儲存退出
service vsftpd restart 重啟vsftp服務,即可正常登入
2.出現上面的錯誤分析
/etc/vsftpd/vsftp.conf
檔案發現
修改下面2條記錄:
# users to not chroot().
chroot_list_enable=no
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
# default umask for local users is 077. you may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
#local_umask=022
之後問題解決。
或者chroot_list_enable=yes
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
在/etc/vsftpd/chroot_list
故障解決方案一:
server sent passive reply with unroutable address 172.18.202.164, using host address instead.
監測到超時!
無法獲得目錄列表
entering passive mode (172,18,202,164,78,195)
列出'/'的目錄項時出錯。
使用vsftpd搭建FTP服務
配置ftp服務 ftp工作在tcp ip模型的應用層,基於的傳輸協議是tcp,ftp客戶端和伺服器之間的連線是可靠的,面向連線的,為資料的傳輸提供了可靠的保證。使用yum工具安裝vsftpd包 yum install y epel release yum install y vsftpd db4 u...
利用vsftpd搭建ftp伺服器
昨天在實驗室內網的一台機器上搭建了乙個ftp伺服器,方便大家共享檔案。這個ftp server要滿足的要求是 有多個使用者,使用乙個共用目錄,每個人都能上傳檔案,但是只能對屬於自己的檔案進行修改 刪除 伺服器雖然在內網的機器上,但是要求在整個校園內都可以方便的訪問。首先,在這台內網機器上建立乙個資料...
實驗 利用vsftpd搭建FTP伺服器
一 準備ftp服務 yum info vsftpdyum y install vsftpdrpm ql vsftpd二 可以上傳和修改的ftpanonymous enable yes 預設是啟用匿名訪問,所以不需要修改 anon upload enable yes 匿名上傳,注意 檔案系統許可權 a...