Ubuntu系统架设Vsftpd,虚拟用户配置

1. 安装vsftp和db4
sudo apt-get install vsftpd
sudo apt-get install db4.6-util

2.建立虚拟用户口令库的目录
sudo mkdir /etc/vsftpd

然后新建名为logins.txt的用户口令文件, (帐户/目录 都区分大小写)
sudo gedit /etc/vsftpd/logins.txt

奇数行为用户名,偶数行为密码,如下用户User1的密码为123456,User2的密码为123456

User1
123456
User2
123456
admin
admin


3.生成vsftpd的认证文件

使用db_load命令生成认证文件:

sudo db4.6_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db

将vsftpd_login.db的权限设为只对root可读写,即600
sudo chmod 600 /etc/vsftpd/vsftpd_login.db

4.建立虚拟用户所需的PAM配置文件

在/etc/pam.d目录中建立vsftpd.vu内容如下
sudo gedit /etc/pam.d/vsftpd.vu


以下为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


5.建立虚拟用户所需的系统用户和主目录

sudo mkdir /www
sudo mkdir /www/User1
sudo mkdir /www/User2
sudo useradd Missll -d /www -s /bin/false
sudo chown Missll.Missll /www
sudo chown Missll.Missll /www/User1
sudo chown Missll.Missll /www/User2
sudo chmod 700 /www


6.设置vsftpd.conf配置文件:(记得先备份)
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_old
sudo gedit /etc/vsftpd.conf


以下为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=Missll
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd.vu
local_enable=YES



7.对不同的虚拟用户设置不同权限
sudo mkdir /etc/vsftpd_user_conf
sudo gedit /etc/vsftpd_user_conf/User1


以下为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


以下为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


以下为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


8.重启vsftpd
/etc/init.d/vsftpd restart

--------------------------------------------------------------
本文来自CSDN博客,http://blog.csdn.net/wkjs/archive/2008/08/19/2796802.aspx
Missll 修改部分,如果你是以Root身份执行可以去掉sudo, 在其他用户下#:sudo -i -u root
可以转到root身份下.


鳥哥的 Linux 私房菜,这里有些详细的配置信息.
http://linux.vbird.org/linux_server/0410vsftpd.php#server_anon



[本日志由 Missll 于 2010-03-24 03:35 PM 编辑]
From: 本站原创 TagsTags: UBUNTU vsftpd
相关日志:
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.