天天看點

linux(ubuntu)上配置vsftpd匿名使用者和虛拟使用者的注意事項

1.安裝

apt-get install vsftpd
           

2 . 修改配置檔案

 vi /etc/vsftpd.conf
           

2.1 配置匿名使用者

anonymous_enable=YES           (YES表示允許匿名登陸)
anon_root=/home/ftp            (匿名使用者登陸後的根目錄,預設為/srv/ftp)
anon_mkdir_write_enable=YES    (YES表示允許匿名使用者建立檔案夾)
anon_other_write_enable=YES    (YES表示允許匿名使用者修改或删除檔案夾)
anon_upload_enable=YES         (YES表示允許匿名使用者上傳檔案)
anon_mask=022                  (表示上傳下載下傳檔案的掩碼,此處權限為777-022=755)
           

以上配置為對匿名使用者權限的配置,安裝vsftpd之後,linux系統會自動添加一個名為ftp的使用者

cat /etc/passwd  (可檢視是否添加)
           

以上述anon_root = /home/ftp為例,要保證/home/ftp目錄為其他使用者可讀,然後在該路徑下建立一個檔案夾

sudo mkdir /home/ftp/public
sudo chown ftp /home/ftp/public
           

注意一定要把public檔案夾的所有者改成ftp,這樣匿名使用者對應在系統中的ftp使用者才可以在public檔案夾中操作。

ftp localhost
           

輸入使用者名: anonymous或ftp

密碼: 直接Enter

此時匿名使用者登陸到了/home/ftp中

cd public
           

必須切換到public下才能進行相應權限的操作。

2.2 配置虛拟使用者

guest_enable=YES                            (允許虛拟使用者登陸)
guest_username=vsftpd                       (虛拟使用者對應的系統使用者名)
allow_writeable_chroot=YES                  (禁止虛拟使用者通路根目錄外的其他目錄)
pam_service_name=vsftpd                     (pam認證)
user_config_dir=/etc/vsftpd/vuser_dir       (虛拟使用者外部配置權限檔案的路徑)
           

第1步:建立虛拟使用者資料庫檔案:

vi /etc/vsftpd/user.txt
           

user.txt中單數行放使用者名,雙數行放密碼。

然後生成資料庫:

sudo apt-get install db5.3-util
db5.3_load -T -t hash -f /etc/vsftpd/user.txt /etc/vsftpd/login.db
           

第2步:建立FTP根目錄及虛拟使用者映射的系統使用者:

sudo su mkdir -p /var/ftp
sudo useradd -d /var/ftp -s /usr/sbin/nologin vsftpd
sudo chmod 755 /var/ftp
           

第3步:建立支援虛拟使用者的PAM認證檔案。

vim /etc/pam.d/vsftpd
在首行加入以下配置
auth       required     pam_userdb.so db=/etc/vsftpd/login
account    required     pam_userdb.so db=/etc/vsftpd/login
           

第4步:為虛拟使用者設定不同的權限。

 在/etc/vsftpd/vuser_dir下建立一個檔案,檔案名與虛拟使用者名一緻,在該檔案中即可配置虛拟使用者的權限。

繼續閱讀