linux系統的Web伺服器集成vsftp的方法

來源:互聯網
上載者:User
關鍵字 Linux Apache

仲介交易 HTTP://www.aliyun.com/zixun/aggregation/6858.html">SEO診斷 淘寶客 雲主機 技術大廳

昨天我們寫了一篇《linux(fedora、redhat)下配置web+ftp伺服器全教程》說完了Web伺服器的安裝全過程,今天我們繼續說下在apahce伺服器上集成vsftp, 以及apache和vsftp虛擬帳戶的許可權配置。

三、web伺服器下的ftp安裝配置

linux下的ftp開源軟體很多,我們這裡選擇的是vsftp,它的資訊你可以去問度娘,不解釋,直接進入安裝配置,同樣我們使用yum命令。

yum install vsftpd pam db4 【安裝vsftpd主程式/pam驗證/db4工具】

chkconfig vsftpd on 【設置vsftpd開機啟動】

service vsftpd start 【啟動vsftpd服務】

1、配置vsftpd設定檔:

vsftpd的設定檔預設位置在:/etc/vsftpd/vsftpd.conf,通常情況下我們選擇先備份一份原始的設定檔,然後編輯,具體步驟如下:

mv vsftpd.conf vsftpd.conf-old 【將vsftpd.conf檔改名為vsftpd.conf-old 備份】

vi /etc/vsftpd/vsftpd.conf 【新建並編輯vsftpd.conf檔】

我的習慣是直接更名原始設定檔然後新建一個檔寫入需要的配置資訊,你同樣可以複製一份原始檔案,然後修改。

接上打開新建vsftpd.conf檔,按照如下配置寫入:

anonymous_enable=NO

禁止匿名使用者登錄,通常我們web伺服器上的ftp都不允許匿名登入

local_enable=NO

禁止(或允許)本地使用者登錄

write_enable=YES

賦予可寫入權限

chroot_local_user=YES

鎖定使用者目錄,ftp使用者登錄ftp只能在自己的目錄下操作

anon_upload_enable=NO

anon_mkdir_write_enable=NO

禁止匿名使用者的上傳、新建目錄許可權

dirmessage_enable=YES

允許ftp使用者列出檔目錄

xferlog_enable=YES

寫入日誌

connect_from_port_20=YES

listen=YES

使用埠20,通常這幾項是預設的

pam_service_name=vsftpdpamconf

userlist_enable=YES

tcp_wrappers=YES

第一行比較重要,指定了pam驗證的設定檔

guest_enable=YES

開啟虛擬使用者

guest_username=apache

指定虛擬使用者使用本地使用者apache的許可權*這項特別重要,web伺服器上面的ftp虛擬使用者一定要設置成apache許可權,否則ftp上傳的檔不能被正常訪問,也無法修改網站生成的檔。

user_config_dir=/etc/vsftpd/vuser_conf

虛擬使用者的設定檔存放位置

virtual_use_local_privs=YES

虛擬使用者使用本地使用者許可權,這項要有,否則ftp使用者無法更改檔許可權

然後保存並退出vi編輯器,這一步我們的vsftp.conf就配置好了,執行:service vsftpd restart 重啟vsftpd服務測試組態檔書寫是否正確。

2、添加vsftpd虛擬帳戶:

上面我們配置了虛擬使用者的驗證檔案類型是pam,檔案名是vsftpdpamconf,下面步驟我們要進入目錄/etc/vsftpd 中建立虛擬使用者db庫:

vi vuservsftpd.txt 【新建並編輯檔vuservsftpd.txt】

寫入你要建立的虛擬使用者和密碼,單行為使用者名雙行為密碼,注意此不能有空格,示例:

vuser1

password1

vuser2

password2

..................

建立完成後保存退出,然後通過db命令來生成vsftpd驗證需要使用的虛擬使用者庫檔:

db -T -t hash -f vuservsftpd.txt vsftpdpamconf.db

注意db檔案名要與vsftpd.conf中設置的pam認證名相同

組後我們為了安全可以刪掉剛剛新建的vuservsftpd.txt,下次需要添加使用者名的時候再新建即可,還可以將vsftpdpamconf.db檔許可權設置為644。

3、添加vsftpd虛擬帳戶設定檔:

只新建了帳戶驗證還是不夠的,因為虛擬帳戶沒有對應的設定檔並不會生效,1步裡面我們在vsftpd.conf檔中確定了虛擬帳戶的設定檔目錄為:/etc/vsftpd/vuser_conf,下面我們進入這個目錄工作:

設定檔的命名必須是與虛擬帳戶名相同,所以我們新建了兩個檔:vuser1、vuser2,並根據需要寫入如下配置資訊:

local_root=/var/www/html/demo

設定虛擬使用者的更目錄,因為我們需要實現每一個網站一個ftp帳號管理,所以他的根目錄就是我們需要管理的網站虛擬目錄。

write_enable=YES

download_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

賦予虛擬使用者寫入、下載上傳、新建目錄等其它許可權

anon_world_readable_only=no

目前不明白這個的意義,但是必須存在

上面是我的設定檔,你可根據需要添加或者登出部分許可權,登出只需要在語句前面加上「#」號,當然你也可以直接刪掉。

到這裡我們的linux下web+ftp就可以配置成功了,你也可以使用ftp軟體登錄上傳程式並安裝你的網站。

上面都配置完成網站還是無法訪問也無法登錄ftp怎麼辦?

在做了如上配置,並且保證你所做的配置都沒有問題的情況下,你就要考慮下防火牆和linux的預設安全機制,有些系統預設是開啟SElinux和iptable防火牆的,這時我們需要將其關閉來檢驗是否配置成功:

setenforce 0

service iptables stop

臨時關閉selinux和iptables防火牆,重啟後恢復

上面是臨時關閉安全機制selinux和防火牆iptables的方法,通常馮志強不建議永久關閉,因為我們的服務需要保護,如果關閉後測試以上web和vsftp都可以正常訪問那我們再來慢慢配置防火牆規則, 有關88iptables的配置我們下篇文章繼續討論。

本文作者:馮志強,原文首發: HTTP://www.crazyer.org 轉載注明。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.