<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    weidagang2046的專欄

    物格而后知致
    隨筆 - 8, 文章 - 409, 評論 - 101, 引用 - 0
    數據加載中……

    給VSFTP建立虛擬用戶

        上面配置的FTP服務器有一個特點,就是FTP服務器的用戶本身也是系統用戶。這顯然是一個安全隱患,因為這些用戶不僅能夠訪問FTP,也能夠訪問其它的系統資源。如何解決這個問題呢?答案就是創建一個虛擬用戶的FTP服務器。虛擬用戶的特點是只能訪問服務器為其提供的FTP服務,而不能訪問系統的其它資源。所以,如果想讓用戶對FTP服務器站內具有寫權限,但又不允許訪問系統其它資源,可以使用虛擬用戶來提高系統的安全性。

        在VSFTP中,認證這些虛擬用戶使用的是單獨的口令庫文件(pam_userdb),由可插入認證模塊(PAM)認證。使用這種方式更加安全,并且配置更加靈活。
        下面介紹配置過程。

        1.生成虛擬用戶口令庫文件。為了建立此口令庫文件,先要生成一個文本文件。該文件的格式如下,單數行為用戶名,偶數行為口令:

    #vi account.txt
    ylg
    1234
    zhanghong
    4321
    gou
    5678


        2.生成口令庫文件,并修改其權限:

    #db_load -T -t hash -f ./account.txt /etc/vsftpd/account.db
    #chmod 600 /etc/vsftpd/account.db


        3.新建一個虛擬用戶的PAM文件。加上如下兩行內容:

    #vi /etc/pam.d/vsftp.vu
    auth required /lib/security/pam_userdb.so db=/etc/vsftpd/account
    account required /lib/security/pam_userdb.so db=/etc/vsftpd/account


        4.建立虛擬用戶,設置該用戶所要訪問的目錄,并設置虛擬用戶訪問的權限:

    #useradd -d /ftpsite virtual_user
    #chmod 700 /ftpsite


        經過該步驟的設置,/ftpsite就是virtual_user用戶的主目錄,該用戶也是/ftpsite目錄的擁有者。除root用戶之外,只有該用戶具有對該目錄的讀、寫和執行的權限。

        5.生成一個測試文件。先切換至virtual_user用戶身份,然后在/ftpsite目錄下創建一個文件:

    #su -virtual_user
    $vi /ftpsite/mytest
    This is a test file.
    $su - root


        6.編輯/etc/vsftpd/vsftpd.conf文件,使其整個文件內容如下所示(去掉了注釋內容):

    anonymous_enable=NO
    local_enable=YES
    local_umask=022
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=YES
    write_enable=YES
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
    one_process_model=NO
    chroot_local_user=YES
    ftpd_banner=Welcom to my FTP server.
    anon_world_readable_only=NO
    guest_enable=YES
    guest_username=virtual_user
    pam_service_name=vsftp.vu


        上面代碼中,guest_enable=YES表示啟用虛擬用戶;guest_username=virtual則是將虛擬用戶映射為本地用戶,這樣虛擬用戶登錄后才能進入本地用戶virtual的目錄/ftpsite;pam_service_name=vsftp.vu指定PAM的配置文件為vsftp.vu。

        7.重新啟動VSFTP:
        #service vsftpd restart

        8.以虛擬用戶gou(Linux中并無該賬號)進行測試:

    # ftp 127.0.0.1
    Connected to 127.0.0.1 (127.0.0.1).
    220 Welcom to my FTP server.
    Name (127.0.0.1:root): gou
    331 Please specify the password.
    Password:
    230 Login successful. Have fun.
    Remote system type is UNIX.
    Using binary mode to transfer files.


        測試下載服務器目錄中的一個文件mytest:

    ftp> get mytest
    local: mytest remote: mytest
    227 Entering Passive Mode (127,0,0,1,159,19)
    150 Opening BINARY mode data connection for mytest (21 bytes).
    226 File send OK.
    21 bytes received in 0.00038 secs (54 Kbytes/sec)


        測試上傳本機目錄中的文件vsftpd.conf:

    ftp> !ls
    account.db  chroot_list  k  mytest  userconf  vsftpd.conf
    ftp> put vsftpd.conf
    local: vsftpd.conf remote: vsftpd.conf
    227 Entering Passive Mode (127,0,0,1,117,203)
    150 Ok to send data.
    226 File receive OK.
    4229 bytes sent in 0.00195 secs (2.1e+03 Kbytes/sec)


        可以看到,使用沒有系統賬號的虛擬用戶可以成功完成上傳、下載的工作。但該FTP虛擬服務器只允許虛擬用戶登錄,其它系統用戶無法登錄,如系統用戶user1不是虛擬用戶,則不能登錄該虛擬服務器。

    # ftp 127.0.0.1
    Connected to 127.0.0.1 (127.0.0.1).
    220 Welcom to my FTP server.
    Name (127.0.0.1:root): user1
    331 Please specify the password.
    Password:
    530 Login incorrect.
    Login failed.


        在虛擬FTP服務器中,也可以對各個用戶的權限進行設置。方法是在/etc/vsftpd.conf文件中添加如下一行:
        user_config_dir=用戶配置文件目錄

        然后在用戶配置文件目錄下創建相應的用戶配置文件,比如為上述名為gou的用戶創建一個配置文件(假設配置文件目錄為/etc/user_config_dir):

    #vi /etc/user_config_dir/gou
    write_enable=NO
    anono_upload_enable=NO


        重啟FTP服務器,這時再使用賬號gou來登錄,就已經沒有上傳的權限了。

    節選自:http://tech.ccidnet.com/pub/article/c737_a176689_p2.html

    posted on 2005-04-20 17:24 weidagang2046 閱讀(1765) 評論(1)  編輯  收藏 所屬分類: Linux

    評論

    # re: 給VSFTP建立虛擬用戶[未登錄]  回復  更多評論   

    2009-04-28 09:02 | harry
    主站蜘蛛池模板: 国产免费拔擦拔擦8X高清在线人| WWW亚洲色大成网络.COM| 成人免费ā片在线观看| 亚洲国产精品一区二区三区久久| 亚洲乱码中文字幕在线| 日韩免费一区二区三区| 亚洲成a人片在线观看天堂无码| 免费电视剧在线观看| 亚洲最大无码中文字幕| 毛片a级毛片免费观看免下载| 亚洲字幕AV一区二区三区四区| 中文字幕影片免费在线观看| ASS亚洲熟妇毛茸茸PICS| 久久久久国色AV免费看图片| 亚洲精品无码一区二区| 免费在线观看黄网| 国产精品小视频免费无限app| 亚洲无线码在线一区观看| 无码国产精品一区二区免费vr| 亚洲欧洲日韩综合| 永久免费av无码网站大全| 免费无码专区毛片高潮喷水| 国产aⅴ无码专区亚洲av麻豆 | 最近免费中文字幕MV在线视频3| 日本红怡院亚洲红怡院最新| 97青青草原国产免费观看| 亚洲一级特黄特黄的大片| 亚洲Av无码国产情品久久 | 亚洲成色www久久网站夜月| 无码av免费毛片一区二区| 亚洲AV第一成肉网| 国产v亚洲v天堂无码网站| 免费毛片a在线观看67194| 日日躁狠狠躁狠狠爱免费视频| 亚洲国产精品成人精品无码区| 成人免费在线看片| 一区二区三区免费视频观看| 亚洲黄色免费在线观看| 又粗又大又硬又爽的免费视频| 午夜理伦剧场免费| 韩国亚洲伊人久久综合影院|