转自:http://litvip.com/2011/02/19/109
一.前提
你已经安装了vsftpd,如果没有安装,请执行yum -y install vsftpd
二.我们的目标是创建符合如下条件的2个ftp用户
用户名 密码 权限 用户目录
testuser1 pass1 只读权限 /home/vsftpd/testuser1
testuser2 pass2 读写权限 /home/vsftpd/testuser2
用户信息我们将保持到文件里,关于和MySql或者LDAP的联动教程,将在今后的博客中更新。
三.配置步骤
1.首先我们创建用于用户的数据库
|
1
2
3
4
5
6
7
8
9
|
[root@rhel5 ~]# vi /tmp/userinfo.txt testuser1 pass1 testuser2 pass2 [root@rhel5 ~]# yum install db4-utils [root@rhel5 ~]# db_load -T -t hash -f /tmp/userinfo.txt /etc/vsftpd/vsftpd_login.db [root@rhel5 ~]# rm -f /tmp/userinfo.txt [root@rhel5 ~]# chmod 600 /etc/vsftpd_login.db |
2.配置PAM文件vsftpd.vu
|
1
2
3
|
[root@rhel5 ~]# vi /etc/pam.d/vsftpd.vu auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login.db account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login.db |
3.创建虚拟用主目录/home/vsftpd,并创建属于testuser1,testuser2各自的目录。
|
1
2
|
[root@rhel5 ~]# useradd -d /home/vsftpd -s /bin/false vsftpd [root@rhel5 ~]# mkdir /var/ftpvirtual/{testuser1,testuser2} |
4.设置vsftpd主文件/etc/vsftpd/vsftpd.conf
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
[root@rhel5 ~]# vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES guest_enable=YES guest_username=vsftpd user_config_dir=/etc/vsftpd/virtual_user_confpam_service_name=vsftpd.vu |
5.创建并配置各个用户的属性文件
|
1
2
3
4
5
6
7
8
9
10
11
12
|
[root@rhel5 ~]# mkdir /etc/vsftpd/virtual_user_conf [root@rhel5 ~]# touch /etc/vsftpd/virtual_user_conf/testuser1 [root@rhel5 ~]# vi /etc/vsftpd/virtual_user_conf/testuser1 local_root=/home/vsftpd/testuser1[root@rhel5 ~]# touch /etc/vsftpd/virtual_user_conf/testuser2 [root@rhel5 ~]# vi /etc/vsftpd/virtual_user_conf/testuser2 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/home/vsftpd/testuser2 |
6.重启vsftpd
|
1
|
[root@rhel5 ~]# /etc/init.d/vsftpd restart |
7.大功告成,测试你的用户吧。
注:如果登陆不成功
1.再检查一遍你的设置
2.确认防火墙
3.确认selinux
评论