Linux搭建FTP站點

vsftpd是Linux下的一款小巧輕快、安全易用的FTP服務器軟件捌治。本教程以CentOS 7.2 64位操作系統(tǒng)為例列粪,介紹如何在Linux實例上安裝并配置vsftpd土至。

前提條件

使用本教程進行操作前,請確保您已經(jīng)注冊了阿里云賬號啡浊。如還未注冊觅够,請先完成賬號注冊胶背。

背景信息

Linux 實例搭建FTP站點具體步驟如下:

視頻教程

步驟一: 安裝vsftpd

完成以下操作,安裝vsftpd喘先。

  1. 遠程連接Linux實例钳吟。具體操作,請參見使用用戶名密碼驗證連接Linux實例窘拯。

  2. 運行以下命令安裝vsftpd红且。

    yum install -y vsftpd
    

    出現(xiàn)如下圖所示界面,表示安裝成功涤姊。

  3. 依次運行以下命令進入/etc/vsftpd目錄暇番,并查看該目錄下的文件。

    cd /etc/vsftpd
    
    ls
    

    說明

    • /etc/vsftpd/vsftpd.conf是vsftpd的核心配置文件思喊。
    • /etc/vsftpd/ftpusers是黑名單文件壁酬,此文件中的用戶不允許訪問FTP服務器。
    • /etc/vsftpd/user_list是白名單文件恨课,此文件中的用戶允許訪問FTP服務器厨喂。
  4. 運行以下命令設置FTP服務開機自啟動。

    systemctl enable vsftpd.service
    
  5. 運行以下命令啟動FTP服務庄呈。

    systemctl start vsftpd.service
    
  6. 運行以下命令查看FTP服務監(jiān)聽的端口蜕煌。

    netstat -antup | grep ftp
    

vsftpd安裝后默認開啟了匿名訪問FTP服務器的功能。使用匿名訪問诬留,您無需輸入用戶名密碼即可登錄FTP服務器斜纪,但沒有權限修改或上傳文件。

步驟二: 配置vsftpd

本節(jié)介紹以下兩種配置vsftpd的方法文兑,并提供了相關的參數(shù)說明盒刚,您可以根據(jù)具體需要進行參考。

  • 方法一:配置匿名用戶上傳文件權限
  • 方法二:配置本地用戶登錄

方法一:配置匿名用戶上傳文件權限

匿名訪問FTP服務器是一種不安全的訪問模式绿贞,任何人無需密碼驗證就可以登錄到FTP服務器因块,這種模式一般只用來保存不重要的公開文件,不推薦在生產(chǎn)環(huán)境中使用籍铁。配置匿名用戶上傳文件的權限的操作步驟如下:

  1. 修改配置文件/etc/vsftpd/vsftpd.conf涡上。

    1. 運行vim /etc/vsftpd/vsftpd.conf命令打開配置文件。
    2. 按i進入編輯模式拒名。
    3. 將寫權限修改為write_enable=YES吩愧。
    4. 將匿名上傳權限修改為anon_upload_enable=YES
    5. 按Esc退出編輯模式增显,然后輸入:wq并回車以保存并關閉文件雁佳。

    修改后的配置文件,如下圖所示。

  2. 依次運行以下命令更改/var/ftp/pub目錄的權限糖权,為FTP用戶添加寫權限堵腹,并重新加載配置文件。

    chmod o+w /var/ftp/pub/
    
    systemctl restart vsftpd.service
    

方法二:配置本地用戶登錄

本地用戶登錄是指用戶使用Linux操作系統(tǒng)的賬號和密碼登錄FTP服務器星澳。vsftpd安裝后默認只支持匿名訪問FTP服務器秸滴,如果您試圖使用本地用戶登錄服務器,將會被vsftpd服務拒絕募判。配置本地用戶訪問FTP服務器的操作步驟如下:

  1. 運行以下命令為FTP服務創(chuàng)建一個Linux用戶荡含。本示例中,該用戶名為ftptest届垫。

    useradd ftptest
    
  2. 運行以下命令修改ftptest用戶的密碼释液。

    passwd ftptest
    
  3. 運行以下命令創(chuàng)建一個供FTP服務使用的文件目錄。

    mkdir /var/ftp/test
    
  4. 運行以下命令更改/var/ftp/test目錄的擁有者為ftptest装处。

    chown -R ftptest:ftptest /var/ftp/test
    
  5. 修改vsftpd.conf配置文件误债。

    1. 運行vim /etc/vsftpd/vsftpd.conf命令打開配置文件。

    2. 按i進入編輯模式妄迁。

    3. 根據(jù)實際需要寝蹈,配置FTP服務器為主動模式或被動模式。

      • 主動模式下登淘,客戶端向服務端發(fā)送數(shù)據(jù)端口的信息箫老,由服務端主動連接客戶端發(fā)送的數(shù)據(jù)端口。配置FTP為主動模式的參數(shù)如下:

        #禁止匿名登錄FTP服務器
        anonymous_enable=NO
        #允許本地用戶登錄FTP服務器
        local_enable=YES
        #設置本地用戶登錄后所在的目錄
        local_root=/var/ftp/test
        #全部用戶被限制在主目錄
        chroot_local_user=YES
        #啟用例外用戶名單
        chroot_list_enable=YES
        #指定例外用戶列表黔州,這些用戶不被鎖定在主目錄
        chroot_list_file=/etc/vsftpd/chroot_list
        
        #配置其他參數(shù)
        allow_writeable_chroot=YES
        local_umask=022
        dirmessage_enable=YES
        xferlog_enable=YES
        connect_from_port_20=YES
        xferlog_std_format=YES
        listen=YES
        pam_service_name=vsftpd
        userlist_enable=YES
        tcp_wrappers=YES
        
      • 被動模式下耍鬓,服務端開啟并發(fā)送數(shù)據(jù)端口的信息給客戶端,由客戶端連接服務端開啟的數(shù)據(jù)端口流妻,服務端被動接受連接牲蜀。在被動模式下,您需要配置服務端可以開啟的數(shù)據(jù)端口范圍绅这。配置FTP為被動模式的參數(shù)如下:

        #禁止匿名登錄FTP服務器
        anonymous_enable=NO
        #允許本地用戶登錄FTP服務器
        local_enable=YES
        #設置本地用戶登錄后所在目錄
        local_root=/var/ftp/test
        #全部用戶被限制在主目錄
        chroot_local_user=YES
        #啟用例外用戶名單
        chroot_list_enable=YES
        #指定例外用戶列表涣达,這些用戶不被鎖定在主目錄
        chroot_list_file=/etc/vsftpd/chroot_list
        #開啟被動模式
        pasv_enable=YES
        #FTP服務器公網(wǎng)IP
        pasv_address=<FTP服務器公網(wǎng)IP>
        #設置被動模式下,建立數(shù)據(jù)傳輸可使用port范圍的最小值
        pasv_min_port=port number
        #設置被動模式下证薇,建立數(shù)據(jù)傳輸可使用port范圍的最大值
        pasv_max_port=port number
        
        #配置其他參數(shù)
        local_umask=022
        dirmessage_enable=YES
        xferlog_enable=YES
        xferlog_std_format=YES
        tcp_wrappers=YES
        allow_writeable_chroot=YES
        listen=YES
        listen_ipv6=NO
        pam_service_name=vsftpd
        userlist_enable=YES
        

        說明 建議您把端口范圍設在比較高的一段范圍內(nèi)度苔,例如50000-50010,有助于提高訪問FTP服務器的安全性棕叫。

    4. 按Esc退出編輯模式林螃,然后輸入:wq并回車以保存并關閉文件。

  6. 創(chuàng)建chroot_list文件俺泣,并在文件中寫入例外用戶名單。

    1. 運行vim /etc/vsftpd/chroot_list命令創(chuàng)建chroot_list文件。
    2. 按i進入編輯模式伏钠。
    3. 輸入例外用戶名單横漏。此名單中的用戶不會被鎖定在主目錄,可以訪問其他目錄熟掂。
    4. 按Esc退出編輯模式缎浇,然后輸入:wq并回車以保存并關閉文件。

    說明 如果沒有例外用戶也必須要有chroot_list文件赴肚,內(nèi)容可為空素跺。

  7. 運行以下命令重啟vsftpd服務。

    systemctl restart vsftpd.service
    

配置文件vsftpd.conf參數(shù)說明

運行命令cat /etc/vsftpd/vsftpd.conf可以查看配置文件內(nèi)容誉券。

  • 用戶登錄控制參數(shù)說明如下表所示指厌。

    <caption></caption>

    參數(shù) 說明
    anonymous_enable=YES 接受匿名用戶
    no_anon_password=YES 匿名用戶login時不詢問口令
    anon_root=(none) 匿名用戶主目錄
    local_enable=YES 接受本地用戶
    local_root=(none) 本地用戶主目錄
  • 用戶權限控制參數(shù)說明如下表所示。

    <caption>
    </caption>

    參數(shù) 說明
    write_enable=YES 可以上傳(全局控制)
    local_umask=022 本地用戶上傳文件的umask
    file_open_mode=0666 上傳文件的權限配合umask使用
    anon_upload_enable=NO 匿名用戶可以上傳
    anon_mkdir_write_enable=NO 匿名用戶可以建目錄
    anon_other_write_enable=NO 匿名用戶修改刪除
    chown_username=lightwiter 匿名上傳文件所屬用戶名

步驟三: 設置安全組

搭建好FTP站點后踊跟,您需要在實例安全組的入方向添加放行下列FTP端口的規(guī)則踩验。

  • FTP為主動模式時:端口21。
  • FTP為被動模式時:端口21商玫,以及配置文件/etc/vsftpd/vsftpd.conf中參數(shù)pasv_min_port和pasv_max_port之間的所有端口箕憾。

添加安全組規(guī)則的具體步驟,請參見添加安全組規(guī)則拳昌。

步驟四: 客戶端測試

您可以通過FTP客戶端或瀏覽器訪問FTP服務器進行測試袭异。本教程以windows自帶的IE(Internet Explorer)瀏覽器為例,分別為您介紹FTP服務器配置為主動模式或被動模式時的訪問步驟炬藤。

  • FTP服務器為主動模式
    1. 打開客戶端的IE瀏覽器扁远。
    2. 將瀏覽器設置為主動訪問模式。選擇設置 >Internet 選項 > 高級刻像。選中啟用 FTP 文件夾視圖畅买,取消勾選使用被動 FTP。
    3. 在地址欄中輸入ftp://<FTP服務器IP地址>:FTP端口细睡,例如:ftp://39.10.0.28:21谷羞。
    4. 在彈出的對話框中,輸入用戶名和密碼溜徙,即可對FTP文件進行相應權限的操作湃缎。
  • FTP服務器為被動模式
    1. 打開客戶端的IE瀏覽器。
    2. 將瀏覽器設置為被動訪問模式蠢壹。選擇設置 > Internet 選項 > 高級嗓违。選中啟用FTP文件夾視圖和使用被動FTP。
    3. 在地址欄中輸入ftp://<FTP服務器IP地址>:FTP端口图贸,例如:ftp://39.10.0.28:21蹂季。
    4. 在彈出的對話框中冕广,輸入用戶名和密碼,即可對FTP文件進行相應權限的操作偿洁。

摘自:https://help.aliyun.com/document_detail/92048.html?spm=a2c4g.11186623.6.1122.36627bfesFpCEY

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末撒汉,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子涕滋,更是在濱河造成了極大的恐慌睬辐,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,542評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宾肺,死亡現(xiàn)場離奇詭異溯饵,居然都是意外死亡,警方通過查閱死者的電腦和手機锨用,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評論 3 385
  • 文/潘曉璐 我一進店門丰刊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人黔酥,你說我怎么就攤上這事藻三。” “怎么了跪者?”我有些...
    開封第一講書人閱讀 158,021評論 0 348
  • 文/不壞的土叔 我叫張陵棵帽,是天一觀的道長。 經(jīng)常有香客問我渣玲,道長逗概,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,682評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上玖院,老公的妹妹穿的比我還像新娘气笙。我一直安慰自己付呕,他們只是感情好,可當我...
    茶點故事閱讀 65,792評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般星掰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嫩舟,一...
    開封第一講書人閱讀 49,985評論 1 291
  • 那天氢烘,我揣著相機與錄音,去河邊找鬼家厌。 笑死播玖,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的饭于。 我是一名探鬼主播蜀踏,決...
    沈念sama閱讀 39,107評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼维蒙,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了脓斩?” 一聲冷哼從身側響起木西,我...
    開封第一講書人閱讀 37,845評論 0 268
  • 序言:老撾萬榮一對情侶失蹤畴栖,失蹤者是張志新(化名)和其女友劉穎随静,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體吗讶,經(jīng)...
    沈念sama閱讀 44,299評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡燎猛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,612評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了照皆。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片重绷。...
    茶點故事閱讀 38,747評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖膜毁,靈堂內(nèi)的尸體忽然破棺而出昭卓,到底是詐尸還是另有隱情,我是刑警寧澤瘟滨,帶...
    沈念sama閱讀 34,441評論 4 333
  • 正文 年R本政府宣布候醒,位于F島的核電站,受9級特大地震影響杂瘸,放射性物質發(fā)生泄漏倒淫。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,072評論 3 317
  • 文/蒙蒙 一败玉、第九天 我趴在偏房一處隱蔽的房頂上張望敌土。 院中可真熱鬧,春花似錦运翼、人聲如沸返干。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽矩欠。三九已至,卻和暖如春六剥,著一層夾襖步出監(jiān)牢的瞬間晚顷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評論 1 267
  • 我被黑心中介騙來泰國打工疗疟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留该默,地道東北人。 一個月前我還...
    沈念sama閱讀 46,545評論 2 362
  • 正文 我出身青樓策彤,卻偏偏與公主長得像栓袖,于是被迫代替她去往敵國和親匣摘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,658評論 2 350