Centos下安裝FTP並進行虛擬使用者訪問方式配置

來源:互聯網
上載者:User

標籤:ftp

1、準備工作


    yum install pam*

    yum install db4*

    首先安裝PAM(用於使用者認證)和DB4(用於產生虛擬使用者的使用者名稱密碼的db檔案)。


2、安裝vsftpd


    yum install vsftpd   

    設定vsftpd開機啟動:

    chkconfig vsftpd on

    通過chkconfig --list 查看啟動項


3. 配置vsftpd.conf

  

    anonymous_enable=NO

    local_enable=YES

    write_enable=YES

    local_umask=022


    xferlog_enable=YES

    xferlog_file=/etc/vsftpd/vsftpd.log

    xferlog_std_format=YES


    connect_from_port_20=YES

    idle_session_timeout=600

    listen=YES


    pam_service_name=vsftpd

    userlist_enable=YES

    tcp_wrappers=YES


    guest_enable=YES

    guest_username=ftp

    user_config_dir=/etc/vsftpd/virtualuser_conf

   

    *重要參數說明:

        anonymous_enable=NO 不允許匿名訪問

        local_enable=YES 本機使用者可以訪問,如果設定成NO的話,ftp這個系統本機使用者沒法進行訪問了,所有的ftp用戶端當然也沒法進行上傳下載了。

        write_enable=YES #可寫(可上傳)


        xferlog_enable=YES

        xferlog_file=/etc/vsftpd/vsftpd.log

        xferlog_std_format=YES

        這3項由於設定log日誌,記得在/etc/vsftpd/下建立一個vsftpd.log檔案。


        guest_enable=YES  #啟用虛擬使用者

        guest_username=ftp  #虛擬使用者借用的系統本機使用者名

        user_config_dir=/etc/vsftpd/virtualuser_conf  #虛擬使用者的設定檔路徑,所以別忘了在/etc/vsftpd/目錄下建立一個virtualuser_conf檔案夾


4、配置虛擬使用者


    比如我要添加一個叫zhang使用者,ftp用戶端就使用該使用者名稱(密碼後面設定)進行上傳下載,在/etc/vsftpd/virtualuser_conf建立一個名叫zhang的檔案:touch zhang 。檔案裡面的內容為:

        local_root=/var/www/html

        write_enable=YES

        anon_umask=022

        anon_world_readable_only=NO

        anon_upload_enable=YES

        anon_mkdir_write_enable=YES

        anon_other_write_enable=YES


    *參數說明:

    local_root=/home/ftpuser  #該虛擬使用者上傳下載的根目錄

    write_enable=YES  #可寫(可上傳)

    anon_umask=022  #掩碼


    接下來在/etc/vsftpd/目錄建立一個記錄所有用戶端使用者(虛擬使用者)的使用者名稱密碼的文字文件:

    touch virtualuser_passwd.txt

    裡面的內容為:

        zhang

        passwd1

        zhang1

        passwd2

        奇數行是使用者名稱,偶數行是密碼,這裡建了兩個虛擬使用者,但是zhang1這個使用者沒有給設定。

   

    接著,產生虛擬使用者認證的db檔案

    db_load -T -t hash -f /etc/vsftpd/virtualuser_passwd.txt /etc/vsftpd/virtualuser_passwd.db

    注意:每一次在virtualuser_passwd.txt增加使用者名稱和密碼時候,都要執行db_load -T -t hash -f /etc/vsftpd/virtualuser_passwd.txt /etc/vsftpd/virtualuser_passwd.db重建虛擬使用者認證的db檔案,要不是生效不了。

    隨後,編輯認證檔案/etc/pam.d/vsftpd,全部注釋掉原來語句

    再增加以下兩句

    auth required pam_userdb.so db=/etc/vsftpd/virtualuser_passwd

    account required pam_userdb.so db=/etc/vsftpd/virtualuser_passwd


5、設定伺服器上的目錄許可權

    因為這裡設定的上傳下載的根目錄為/var/www/html,所以這個檔案夾的許可權很重要,開始建立的時候它是root:root,屬於root使用者,屬於root組,後來改成了root:ftp,即改成了ftp組,因為用戶端進行上傳下載是藉助伺服器上的ftp使用者,ftp使用者是屬於ftp組的。這樣能進行訪問下載,但是下載有問題,各種改許可權,最後直接將這個目錄改成ftp:ftp所有問題都沒有了,而且ftp使用者對該目錄具有rwx(可讀可寫可執行)的許可權:


    chown -R root:ftp /home/ftpuser

    chmod 077 /home/ftpuser


6、測試


本文出自 “系統營運網站開發” 部落格,請務必保留此出處http://cgc888.blog.51cto.com/3989433/1688153

Centos下安裝FTP並進行虛擬使用者訪問方式配置

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.