VSFTPD虚拟用户配置
2008-03-20 13:44
323 查看
一. 虚拟用户配置
目前机器上安装的vsftpd是rpm而不是gz结尾的软件包,版本是2.0.1,配置虚拟用户有2种方法,一种是用mysql,另一种是用 Berkeley DB 的db_load工具实现,我就是用db_load实现虚拟用户的。具备这2个主要的程序后就可以开始配置了
1. 生成虚拟用户口令库文件。为了建立此口令库文件,先要生成一个文本文件 logins.txt 该文件的格式如下,单数行为用户名,偶数行为口令:
K wol
K wol
A dmin
admin
2.生成口令库文件,并修改其权限:
#db_load -T -t hash -f ./ logins .txt /etc/vsftpd/account.db
#chmod 600 /etc/vsftpd/account.db
3.新建一个虚拟用户的PAM文件。加上如下两行内容:
#vi /etc/pam.d/vsftp.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib/security/pam_userdb.so db=/etc/vsftpd/account
4.建立虚拟用户,设置该用户所要访问的目录,并设置虚拟用户访问的权限:
#useradd -d /home/ftpsite suny
#chmod 700 /home/ftpsite
经过该步骤的设置,/home/ftpsite就是 suny 用户的主目录,该用户也是ftpsite目录的拥有者。除root用户之外,只有该用户具有对该目录的读、写和执行的权限。
5.编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示( 这是我服务器上的配置文件 ):
user_config_dir=/etc/vsftpd 虚拟用户的配置文件
local_enable=YES
write_enable=NO
local_umask=022
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
pasv_enable=YES
ftpd_banner=Welcome to blah FTP service suny.
chroot_local_user=NO
listen=YES
tcp_wrappers=YES
guest_enable=YES 激活虚拟用户
guest_username=suny 虚拟用户在linux里的用户名
pam_service_name=vsftp.vu 判断虚拟用户的数据文件
use_localtime=YES 时间设置成与系统时间一致
上面代码中,guest_enable=YES表示启用虚拟用户;guest_username= suny 则是将虚拟用户映射为本地用户,这样虚拟用户登录后才能进入本地用户 suny 的目录/ftpsite;pam_service_name=vsftp.vu指定PAM的配置文件为vsftp.vu。
6.重新启动VSFTP:
#service vsftpd restart
然后就可以使用虚拟用户登录。
二. 配置虚拟用户的权限
user_config_dir=/etc/vsftpd ,这段配置文件就是告诉vsftpd,当虚拟用户登录成功后(也许是在登陆时)就会读取这个目录下的与虚拟用户名一直的配置文件,注意 user_config_dir 的值是目录的名称,而且此目录下一定要有和虚拟用户名称一样的配置文件,我以虚拟用户admin的配置文件做例子:
local_root=/data/userspace 设置虚拟用户登录后的主目录
anon_world_readable_only=no 匿名是否允许下载可阅读的文件
write_enable=yes 允许上传
anon_upload_enable=yes 匿名用户 允许上传
anon_other_write_enable=yes 匿名用户其它的写权利
此用户就有了上传、下载、删除文件目录、修改文件名和浏览的权限
三. 补充
配置文件的其他参数可以到一下的网站查看
http://www.chuhu.com/thread-83-1-1.html
http://vsftpd.beasts.org/
当出现 500 OOPS: cannot change directory:/home/xxxx 的情况,可以常试一下命令
setsebool ftpd_disable_trans 1
service vsftpd restart
目前机器上安装的vsftpd是rpm而不是gz结尾的软件包,版本是2.0.1,配置虚拟用户有2种方法,一种是用mysql,另一种是用 Berkeley DB 的db_load工具实现,我就是用db_load实现虚拟用户的。具备这2个主要的程序后就可以开始配置了
1. 生成虚拟用户口令库文件。为了建立此口令库文件,先要生成一个文本文件 logins.txt 该文件的格式如下,单数行为用户名,偶数行为口令:
K wol
K wol
A dmin
admin
2.生成口令库文件,并修改其权限:
#db_load -T -t hash -f ./ logins .txt /etc/vsftpd/account.db
#chmod 600 /etc/vsftpd/account.db
3.新建一个虚拟用户的PAM文件。加上如下两行内容:
#vi /etc/pam.d/vsftp.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib/security/pam_userdb.so db=/etc/vsftpd/account
4.建立虚拟用户,设置该用户所要访问的目录,并设置虚拟用户访问的权限:
#useradd -d /home/ftpsite suny
#chmod 700 /home/ftpsite
经过该步骤的设置,/home/ftpsite就是 suny 用户的主目录,该用户也是ftpsite目录的拥有者。除root用户之外,只有该用户具有对该目录的读、写和执行的权限。
5.编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示( 这是我服务器上的配置文件 ):
user_config_dir=/etc/vsftpd 虚拟用户的配置文件
local_enable=YES
write_enable=NO
local_umask=022
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
pasv_enable=YES
ftpd_banner=Welcome to blah FTP service suny.
chroot_local_user=NO
listen=YES
tcp_wrappers=YES
guest_enable=YES 激活虚拟用户
guest_username=suny 虚拟用户在linux里的用户名
pam_service_name=vsftp.vu 判断虚拟用户的数据文件
use_localtime=YES 时间设置成与系统时间一致
上面代码中,guest_enable=YES表示启用虚拟用户;guest_username= suny 则是将虚拟用户映射为本地用户,这样虚拟用户登录后才能进入本地用户 suny 的目录/ftpsite;pam_service_name=vsftp.vu指定PAM的配置文件为vsftp.vu。
6.重新启动VSFTP:
#service vsftpd restart
然后就可以使用虚拟用户登录。
二. 配置虚拟用户的权限
user_config_dir=/etc/vsftpd ,这段配置文件就是告诉vsftpd,当虚拟用户登录成功后(也许是在登陆时)就会读取这个目录下的与虚拟用户名一直的配置文件,注意 user_config_dir 的值是目录的名称,而且此目录下一定要有和虚拟用户名称一样的配置文件,我以虚拟用户admin的配置文件做例子:
local_root=/data/userspace 设置虚拟用户登录后的主目录
anon_world_readable_only=no 匿名是否允许下载可阅读的文件
write_enable=yes 允许上传
anon_upload_enable=yes 匿名用户 允许上传
anon_other_write_enable=yes 匿名用户其它的写权利
此用户就有了上传、下载、删除文件目录、修改文件名和浏览的权限
三. 补充
配置文件的其他参数可以到一下的网站查看
http://www.chuhu.com/thread-83-1-1.html
http://vsftpd.beasts.org/
当出现 500 OOPS: cannot change directory:/home/xxxx 的情况,可以常试一下命令
setsebool ftpd_disable_trans 1
service vsftpd restart
相关文章推荐
- centos6.5下vsftpd服务的安装及配置并通过pam认证实现虚拟用户文件共享
- vsftpd服务部署及虚拟用户添加与配置
- vsftpd_虚拟用户配置
- Vsftpd虚拟用户配置
- vsftpd配置虚拟用户(实战)
- vsftpd虚拟用户的配置
- vsftpd高级用法之虚拟用户配置
- CentOS6.6下vsftpd虚拟用户配置
- ubuntu vsftpd虚拟用户配置/ubuntu12.04上搭建vsftpd服务示例linux
- RHEL6---VSFTPD服务器配置之一:使用mysql实现虚拟用户的访问
- VSFTPD配置(匿名――本地用户――虚拟用户)
- Centos6.7安装配置vsftpd虚拟用户
- vsftpd基于pam_mysql的认证和hash编码的方式配置虚拟用户
- 为VSFTPD配置虚拟用户
- CentOS 6.4 下安装vsftpd并配置虚拟用户
- CentOS6/5下vsftpd(虚拟用户)的配置
- ubuntu LAMP配置实例+VSFTPD虚拟用户管理网站
- vsftpd 虚拟用户的配置
- ubuntu下vsftpd虚拟用户配置
- “pam+vsftpd创建虚拟用户“补充帖-http下载配置!