Debian上配置vsftpd常見問答集錦
編者按:本文總結(jié)Debian上安裝、配置、使用vsftpd服務(wù)器的一些常見問題。有關(guān)更多vsftpd的技巧,可以參考51CTO的vsftpd專題。vsftpd官方也有個通用的常見問題解答:vsftpd faqs,讀者可以進(jìn)行參考。
1.debian上如何安裝vsftpd
很簡單:
apt-get install vsftpd
2.vsftpd的去除匿名用戶登錄問題
vi /etc/vsftpd.conf anonymous_enable=YES
修改為
anonymous_enable=NO
3.如何更改vsftpd的默認(rèn)端口
vi /etc/vsftpd.conf
新增一行
listen_port=2010
4.如何允許本地用戶登錄
#local_enable=YES
前面的#去掉
5.如何允許用戶可以上傳文件
#write_enable=YES
前面的#去掉
6.如何添加一個新用戶
由于我是用本地用于登錄的模式,所以確定你的local_enable=YES已經(jīng)開啟,再做下面的工作
首先添加一個用戶組
groupadd ftpgroup
然后添加用戶
useradd blogguy_cn –g ftpgroup –d /home/blogguy.cn –s /bin/bash passwd blogguy_cn
輸入新密碼,即可生效
7.如何限制新添加的用戶不能使用bash登錄
首先檢查的你的shells文件
vi /etc/shells
看看有沒這兩行
/sbin/nologin /bin/false
沒有的話加上,然后更新用戶的bash
usermod -s /sbin/nologin blogguy_cn
或者
usermod -s /bin/false blogguy_cn
查看你的passwd文件是否生效
cat /etc/passwd
8.如何鎖定用戶在自己的主目錄
有兩個方法,我分別說
***個方法:一刀切,把所有的用戶都限制在自己的主目錄
#chroot_local_user=YES
把前面的注釋去掉即可
第二個方法:限制部分用戶在自己的主目錄
首先
vi /etc/vsftpd.chroot_list
把你要限制的用戶一行一個的添加進(jìn)去
然后開啟vsftpd.conf的
#chroot_list_enable=YES #chroot_list_file=/etc/vsftpd.chroot_list
把#號去掉即可
9.如何只允許部分系統(tǒng)用戶登錄ftp
首先新建一個允許登錄的用戶文件
vi /etc/vsftpd.user_list
輸入允許登陸的用戶名blogguy_cn,一行一個
然后
vi /etc/vsftpd.conf
添加以下幾行
userlist_enable=YES userlist_deny=NO userlist_file=/etc/vsftpd.user_list
解釋:userlist_file是用文件地址
userlist_enable=YES表示是否開啟用戶用戶列表也能,如果設(shè)置為YES就會讀取userlist_file文件內(nèi)容,但只此刻什么事都都不做。
userlist_deny表示允許或者拒絕,若果設(shè)置為userlist_deny=NO表示若設(shè)為NO , 則只有在/etc/vsftpd.user_list 中的使用者才能登入,而且此項功能可以在詢問密碼前就出現(xiàn)錯誤訊息,而不需要檢驗密碼的程序。 若果設(shè)置為userlist_deny=YES,表示在userlist的用戶不能登錄
10.如何上匿名訪問、上傳,并支持下載和執(zhí)行?
在默認(rèn)的情況下,vsftp是不支持匿名用戶的訪問的,所以我們要自己打開相應(yīng)的選項?,F(xiàn)在我針對這個問題,我們要打開如下的選項。
anonymous_enable=YES 注:允許匿名訪問 anon_upload_enable=YES 注:允許上傳 anon_mkdir_write_enable=YES 注:允許建立相應(yīng)的目錄 anon_umask=022 把上傳到FTP的文件或者目錄改變權(quán)限
當(dāng)然打開這些選項還是不行的,我們還要讓匿名寫入文件的上一級目錄有寫入權(quán),以我所做的FTP為例,我所做的FTP的匿名訪問的目錄是/var /ftp,在vsFTPd中,/var/ftp這個目錄是不能讓匿名用戶有寫入權(quán)限的,這是為了安全考慮,所以我們必須自己在/var/ftp目錄中建一 個目錄,讓這個目錄有寫入權(quán)。
比如:我在/var/ftp目錄建一個upload目錄,然后把它的權(quán)限設(shè)置成777,這樣匿名用戶就能寫入了。
#mkdir /var/ftp/upload #chmod 777 /var/ftp/upload
改了一系列的文件,不要忘記重啟vsFTPd服務(wù)器
11.如何解決vsftp上傳的文件與apache或者nginx的權(quán)限問題
這個問題不少人問,但是回答的很少,這里我給一個的回答
vi /etc/vsftpd.conf
找到#local_umask=022把前面的#去掉
重啟服務(wù)器試試
具體各項代表什么意思,抄錄一段臺灣人的
設(shè)定值 結(jié)果 代表的使用權(quán)限 666 002 664 rw-rw-r-- 666 022 644 rw-r--r-- 666 037 640 rw-r----- 666 077 600 rw-------
目錄權(quán)限的***值
設(shè)定值 結(jié)果 代表的使用權(quán)限 777 002 775 rwxrwxr-x 777 022 755 rwxr-xr-x 777 037 740 rwxr----- 777 077 700 rwx------
【編輯推薦】