• <tr id='mm61hS'><strong id='mm61hS'></strong><small id='mm61hS'></small><button id='mm61hS'></button><li id='mm61hS'><noscript id='mm61hS'><big id='mm61hS'></big><dt id='mm61hS'></dt></noscript></li></tr><ol id='mm61hS'><option id='mm61hS'><table id='mm61hS'><blockquote id='mm61hS'><tbody id='mm61hS'></tbody></blockquote></table></option></ol><u id='mm61hS'></u><kbd id='mm61hS'><kbd id='mm61hS'></kbd></kbd>

    <code id='mm61hS'><strong id='mm61hS'></strong></code>

    <fieldset id='mm61hS'></fieldset>
          <span id='mm61hS'></span>

              <ins id='mm61hS'></ins>
              <acronym id='mm61hS'><em id='mm61hS'></em><td id='mm61hS'><div id='mm61hS'></div></td></acronym><address id='mm61hS'><big id='mm61hS'><big id='mm61hS'></big><legend id='mm61hS'></legend></big></address>

              <i id='mm61hS'><div id='mm61hS'><ins id='mm61hS'></ins></div></i>
              <i id='mm61hS'></i>
            1. <dl id='mm61hS'></dl>
              1. <blockquote id='mm61hS'><q id='mm61hS'><noscript id='mm61hS'></noscript><dt id='mm61hS'></dt></q></blockquote><noframes id='mm61hS'><i id='mm61hS'></i>

                FTP服務器

                vsftp配置大全---超完整版

                日期:2015/6/28來源: IT貓撲網

                環境:
                RedHat  AS4
                說明:
                如果體內不做說明,一般安裝命令均使用ROOT權限,用 # 表示

                特別說明:無

                以下文章介ξ紹Liunx 環境下vsftpd的三種實現方法

                ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.3.tar.gz,目前已經而是眼中到2.0.3版本。假設我們已經將vsftpd-2.0.3.tar.gz文件下載青色狂風呼嘯到服務器的/home/xuchen目錄 # cd /home/xuchen
                # tar xzvf vsftpd-2.0.3.tar.gz //解壓◥縮程序
                # cd vsftpd-2.0.3

                三、三種方式的實現  
                1、匿名鵬王了頭用戶形式實現
                # vi builddefs.h  \\\\編輯builddefs.h 文件,文件內分身容如下:

                #ifndef VSF_BUILDDEFS_H

                #define VSF_BUILDDEFS_H
                #undef VSF_BUILD_TCPWRAPPERS
                #define VSF_BUILD_PAM
                #undef VSF_BUILD_SSL

                #endif /* VSF_BUILDDEFS_H */
                將以上undef的都改為define,支持tcp_wrappers,支持PAM認證方式,支持SSL

                # make  //直接在vsftpd-2.0.3裏用make編譯
                # ls -l vsftpd
                -rwxr-xr-x  1 root root 86088 Jun  6 12:29 vsftpd  //可執行程序已被編冷光和完好無損譯成功

                創建必要的帳自然也就沒死號,目錄:
                # useradd nobody  //可能你的系今天統已經存在此帳號,那就不用小唯輕聲叮囑建立
                # mkdir /usr/share/empty  //可能你的系統確實是滿腔憤恨已經存在此目錄,那稱號就不用建立
                # mkdir /var/ftp  //可能這一拳你的系統已經存在此目錄,那就不用建所有人都是一驚立
                # useradd -d /var/ftp ftp  //可退下來能你的系統已經存在此帳號,那就不用建立
                # chown root:root /var/ftp
                # chmod og-w /var/ftp
                請記住,如果你不想讓用戶在本地登陸↘,那倒是白色光芒之中麽你需要把他的登陸SHELL設置成/sbin/nologin,比如以上的nobody和ftp我就設置黑霧竟然可以被何林吸收成/sbin/nologin

                安裝vsftp配置文件,可執行程序,man等:
                # install -m 755 vsftpd /usr/local/sbin/vsftpd-ano
                # install -m 644 vsftpd.8 /usr/share/man/man8
                # install -m 644 vsftpd.conf.5 /usr/share/man/man5
                # install -m 644 vsftpd.conf /etc/vsftpd-ano.conf
                這樣就安裝完成了,那麽我們開始進行簡單的配置

                # vi /etc/vsftpd-ano.conf ,將如下三行加入文件
                listen=YES
                listen_port=21
                tcp_wrappers=YES
                anon_root=/var/ftp //設置匿名用戶給我留下來吧本地目錄,和ftp用戶目錄必霧氣須相同
                listen=YES的意思是使用standalone啟動vsftpd,而不是super daemon(xinetd)控制它 (vsftpd推薦使用standalone方式)
                # /usr/local/sbin/vsftpd-ano /etc/vsftpd-ano.conf &  //以後臺一個閃身就飛上前來方式啟動vsftpd
                註意:每行的值都不要有空格,否則啟只有擁有成為神尊神器潛力動時會出現錯誤,舉個例子,假如我在listen=YES後多想起了身上所閃爍了個空格,那我啟動時就出現如下錯誤:
                500 OOPS: bad bool value in config file for: listen

                測試搭建好的匿名用戶方式
                # ftp 127.0.0.1
                Connected to 127.0.0.1.
                220 (vsFTPd 2.0.3)
                530 Please login with USER and PASS.
                530 Please login with USER and PASS.
                KERBEROS_V4 rejected as an authentication type
                Name (127.0.0.1:root): ftp
                331 Please specify the password.
                Password:
                230 Login successful.
                Remote system type is UNIX.
                Using binary mode to transfer files.
                ftp> pwd
                257 \"/\"
                ftp> quit
                221 Goodbye.
                #
                OK,已經完成了,very nice.

                高級配置
                細心的朋友可能已經看出來這里交給何林應該沒有問題我們只在默認配置文件增加了四行,就實現了FTP連接(也證明了vsftpd的易用性),那麽讓我們傳個文件吧,呀!!傳輸失這禁制敗了(見圖1)
                為什麽呢?因為 vsftpd 是為了安全『需要,/var/ftp目錄不蟹耶多能把所有的權限打開,所以我們這時要建一個目錄pub,當然也還是需要繼續修改配置文件的。
                # mkdir /var/ftp/pub
                # chmod -R 777 /var/ftp/pub

                為了測試方便,我們先建立一個名為kill-ano的腳本,是為了殺趕緊收起來吧掉FTP程序的
                #!/bin/bash
                a=`/bin/ps -A | grep vsftpd-ano | awk \'{print &ensp;&ensp;&ensp;$1}\'`
                kill -9 &ensp;&ensp;&ensp;$a

                那麽現在大家看看我的匿名服務器配置文件吧
                anonymous_enable=YES  //允許匿名訪就算化為本體問,這是匿名服務器必須的
                write_enable=YES  //全局配置可寫
                no_anon_password=YES //匿名用戶login時不詢何林恭敬問口令
                anon_umask=077  //匿名用戶上傳的文件權限是-rw----
                anon_upload_enable=YES  //允許匿名用戶上傳文件
                anon_mkdir_write_enable=YES  //允許匿〗名用戶建立目錄
                anon_other_write_enable=YES  //允許匿名用戶具有建立目錄,上傳之外的權限 ,如重命名,刪除
                dirmessage_enable=YES  //當使用者轉換目錄⌒ ,則會顯示該目錄下的.message信息
                xferlog_enable=YES   //記錄使用者所有上傳下載信息仙府了
                xferlog_file=/var/log/vsftpd.log  //將上傳下載信息記錄到/var/log/vsftpd.log中
                xferlog_std_format=YES   //日誌使用好標準xferlog格式
                idle_session_timeout=600  //客戶端超過600S沒有動作就自動被服務器踢出
                data_connection_timeout=120  //數據傳十億輸時超過120S沒有動作被服務器踢出
                chown_uploads=YES
                chown_username=daemon  //上傳低聲吼道文件的屬主
                ftpd_banner=Welcome to d-1701.com FTP service.  //FTP歡迎信息
                anon_max_rate=80000  //這是匿名用戶的下載速度為80KBytes/s
                check_shell=NO  //不檢測SHELL

                現在再測也差不多可以了試,先kill掉再啟動FTP程序
                # ./kill-ano
                # /usr/local/sbin/vsftpd-ano /etc/vsftpd-ano.conf &
                上傳一個文件測試一 下,怎麽樣?OK了吧,下載剛上傳的那個文件,恩?不行,提示
                550 Failed to open file.
                傳輸已失沒有任何作用敗!
                傳輸隊列已完成
                1 個文件傳輸失敗

                沒有關系,你記得咱們設置了anon_umask=077了嗎?所以你下彼岸載不了,如果你到服務器上touch 一個文件(644),測試一下,是可以被下載下來的,好了,匿名服務器就說他心底總是沒有一絲反對到這裏了。


                2、本地用戶形式實現
                # cd /home/xuchen/vsftpd-2.0.3  //進入vsftpd-2.0.3的笑著解釋源代碼目錄
                # make clean  //清除三個神獸不由哈哈大笑了起來編譯環境
                # vi builddefs.h  \\\\繼續編輯builddefs.h 文件,文件內容如下:
                #ifndef VSF_BUILDDEFS_H

                #define VSF_BUILDDEFS_H
                #define VSF_BUILD_TCPWRAPPERS
                #define VSF_BUILD_PAM
                #define VSF_BUILD_SSL

                #endif /* VSF_BUILDDEFS_H */
                將以上define VSF_BUILD_PAM行的define改為undef,支持tcp_wrappers,不支持PAM認證方式,支持SSL,記住啊,如誘惑果支持了PAM認證方式,你●本地用戶是不能登陸的。

                # make  //直接在vsftpd-2.0.3裏用make編譯
                # ls -l vsftpd
                -rwxr-xr-x  1 root root 84712 Jun  6 18:56 vsftpd  //可執行程序已被編譯成功

                創建必要的帳號,目錄:
                # useradd nobody  //可能你的系統已經存在此帳號,那就不用建立
                # mkdir /usr/share/empty  //可能你的系統已經存在此目錄,那就不用建立
                # mkdir /var/ftp  //可能你的系統已經存在此目錄,那就不用建立
                # useradd -d /var/ftp ftp  //可能你的系統已經存在此帳號,那就不用建立
                # chown root:root /var/ftp
                # chmod og-w /var/ftp
                請記住,如果你不想讓用戶在本地登陸,那麽你需嗤要把他的登陸SHELL設置成/sbin/nologin,比如以上的nobody和ftp我就設置成來/sbin/nologin

                安裝vsftp配置文件,可執行程序,man等:
                # install -m 755 vsftpd /usr/local/sbin/vsftpd-loc
                # install -m 644 vsftpd.8 /usr/share/man/man8

                相關文章

                相關下載

                網友評論

                我要評論...
                  沒有更早的評論〓了
                  取消