ubuntu下vsftpd配置

一、安装vsftp和db4

sudo apt-get install vsftpd
sudo apt-get install db-util

二、建立虚拟用户口令库文件

sudo mkdir /etc/vsftpd

新建名为logins.txt的用户口令文件,

sudo vim /etc/vsftpd/logins.txt
奇数行为用户名。偶数行为密码,如下用户user1的密码为123456,user2的密码为12345

user1
123456
user2
123456
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 vim /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 ftpvi -d /www -s /bin/false
sudo chown ftpvi.ftpvi /www
sudo chown ftpvi.ftpvi /www/user1
sudo chown ftpvi.ftpvi /www/User2
sudo chmod 700 /www

六、设置vsftpd.conf配置文件:(记得先备份)

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_old #备份
sudo vim /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=ftpvi
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd.vu
local_enable=YES
allow_writeable_chroot=YES
pasv_enable=YES
pasv_min_port=9981
pasv_max_port=9983
pasv_address=58.20.207.137

七、 对不同的虚拟用户设置不同权限

sudo mkdir /etc/vsftpd_user_conf
sudo vim /etc/vsftpd_user_conf/user1

mkdir /www/user1

mkdir /www/user2

mkdir /www/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/user1


vim /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

vim /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

posted @ 2024-11-02 00:57  啊里个东  阅读(35)  评论(0编辑  收藏  举报