ubuntu下vsftpd配置

啊里个东發表於2024-11-01

一。 安裝vsftp和db4
sudo apt-get install vsftpd
sudo apt-get install db-util
二。建立虛擬使用者口令庫檔案
sudo mkdir /etc/vsftpd
新建名為logins.txt的使用者口令檔案,
sudo gedit /etc/vsftpd/logins.txt
奇數行為使用者名稱。偶數行為密碼,如下使用者User1的密碼為123456,User2的密碼為12345
User1
123456
User2
12345
admin
admin

三。生成vsftpd的認證檔案

使用db_load命令生成認證檔案:

db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db
將vsftpd_login.db的許可權設為只對root可讀寫,即600
chmod 600 /etc/vsftpd/vsftpd_login.db
四。建立虛擬使用者所需的PAM配置檔案

在/etc/pam.d目錄中建立vsftpd.vu內容如下

注意pam_userdb.so這個檔案先確定你的檔案位置,可使用find -name pam_userdb.so

sudo gedit /etc/pam.d/vsftpd.vu

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

五。建立虛擬使用者所需的系統使用者和主目錄
sudo useradd jtmvi -d /www -s /bin/false
sudo chown jtmvi.jtmvi /www
sudo chown jtmvi.jtmvi /www/User1
sudo chown jtmvi.jtmvi /www/User2
sudo chmod 700 /www

六。設定vsftpd.conf配置檔案:(記得先備份)
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_old #備份
gedit /etc/vsftpd.conf

listen=YES
anonymous_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_local_user=YES
guest_enable=YES
guest_username=jtmvi
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd.vu
local_enable=YES
allow_writeable_chroot=YES

七 。 對不同的虛擬使用者設定不同許可權

sudo mkdir /etc/vsftpd_user_conf
gedit /etc/vsftpd_user_conf/User1

write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/www/User1


gedit /etc/vsftpd_user_conf/User2

write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/www/User2

gedit /etc/vsftpd_user_conf/admin

write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/www

八。重啟vsftpd
/etc/init.d/vsftpd restart

相關文章