vsftp的安装和配置
时间:2006-06-27 来源:thinkwzb
首先声明此贴部分参考了kinki_china的http://chinaunix.net/jh/4/98721.html,其它参考自vsftpd的ManPage
------------------------------------------------------------------------------------
vsftp的安装和配置
1. 安装vsftpd和Berkeley db
[root@IBM142 /]# rpm -qa |grep vsftp
vsftpd-1.1.3-8
[root@IBM142 /]# rpm -qa|grep db4
db4-4.0.14-20
2. 生成虚拟用户(ftp用户,不是系统用户)的数据库
使用pam_userdb来认证虚拟用户
[root@IBM142 /]# vi /root/logins.txt
peilei //ftp登录的用户,而不是本地系统用户
yaga //ftp登录的口令
upload //第二个用户
uploadpasswd //upload用户的口令
[root@IBM142 /]# db_load –T –t hash –f
/root/logins.txt /etc/vsftpd/vsftpd_login.db
[root@IBM142 /]# chmod 600 /etc/vsftpd/vsftpd_login.db
[root@IBM142 /]# vi /etc/pam.d/vsftpd //生成一个使用你的新的db的pam文件
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
[root@IBM142 /]# cp /etc/pam.d/vsftpd /etc/pam.d/ftp
3. 建立虚拟用户的目录
[root@IBM142 /]# /usr/sbin/useradd -d / peilei
//这里是系统用户peilei,主目录是/
[root@IBM142 /]# /usr/sbin/useradd -d /sharevol2/upload upload
//这里是系统用户upload,主目录是/sharevol2/upload
[root@IBM142 /]# chmod -R o+w /sharevol2/upload
[root@IBM142 /]# ls -la /sharevol2
drwxr-xrwx 2 root root 4096 Aug 15 16:42 upload
#保证upload 的主目录属主正确
4. 配置vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
[root@IBM142 /]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
[root@IBM142 /]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
#这禁止了匿名用户使用FTP 服务,并且允许非匿名用户的登录,就是虚拟用户所需要的权限
write_enable=YES
#打开写权限,使得用户 peilei 可以修改文件
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
#把vsftpd.chroot_list列表内的用户限制在相应主目录内
guest_enable=YES
#guest_enable 是很重要的- 它激活了虚拟用户的选项! 而各用户对应的系统用户见vsftpd_user_conf目录下的各文件
local_umask=022
anon_umask=0033
file_open_mode=0777
#file_open_mode决定了上传的文件的属性,和chmod一样
#anon_umask去掉file_open_mode中的属性位,两者共同决定上传文件的属性。
listen=YES
listen_port=21
# 使 vsftpd 以"standalone" 模式运行- 端口21
user_config_dir=/etc/vsftpd/vsftpd_user_conf
5. 创建限制用户列表文件,使得用户限制在相应主目录内。
[root@IBM142 /]# vi /etc/vsftpd/vsftpd.chroot_list
upload //只有一个用户
//用户peilei不作限制,所以不在此列表内
6. 进行多个不同权限用户的配置
[root@IBM142 /]# mkdir /etc/vsftpd/vsftpd_user_conf //创建用户配置文件的目录
在vsftpd.conf中添加一行
user_config_dir=/etc/vsftpd/vsftpd_user_conf
[root@IBM142 /]# touch /etc/vsftpd/vsftpd_user_conf/peilei
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES //保证可以写、删、修改
guest_username=root //用户 peilei 对应的是系统用户root
[root@IBM142 /]# touch /etc/vsftpd/vsftpd_user_conf/upload
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
guest_username=upload //用户upload 对应的是系统用户 upload
7. 重新启动vsftpd
8. 让vsftpd启动时自动运行,在 /etc/rc.d/rc.local中添加下面一行
vsftpd /etc/vsftpd/vsftpd.conf
------------------------------------------------------------------------------------
vsftp的安装和配置
1. 安装vsftpd和Berkeley db
[root@IBM142 /]# rpm -qa |grep vsftp
vsftpd-1.1.3-8
[root@IBM142 /]# rpm -qa|grep db4
db4-4.0.14-20
2. 生成虚拟用户(ftp用户,不是系统用户)的数据库
使用pam_userdb来认证虚拟用户
[root@IBM142 /]# vi /root/logins.txt
peilei //ftp登录的用户,而不是本地系统用户
yaga //ftp登录的口令
upload //第二个用户
uploadpasswd //upload用户的口令
[root@IBM142 /]# db_load –T –t hash –f
/root/logins.txt /etc/vsftpd/vsftpd_login.db
[root@IBM142 /]# chmod 600 /etc/vsftpd/vsftpd_login.db
[root@IBM142 /]# vi /etc/pam.d/vsftpd //生成一个使用你的新的db的pam文件
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
[root@IBM142 /]# cp /etc/pam.d/vsftpd /etc/pam.d/ftp
3. 建立虚拟用户的目录
[root@IBM142 /]# /usr/sbin/useradd -d / peilei
//这里是系统用户peilei,主目录是/
[root@IBM142 /]# /usr/sbin/useradd -d /sharevol2/upload upload
//这里是系统用户upload,主目录是/sharevol2/upload
[root@IBM142 /]# chmod -R o+w /sharevol2/upload
[root@IBM142 /]# ls -la /sharevol2
drwxr-xrwx 2 root root 4096 Aug 15 16:42 upload
#保证upload 的主目录属主正确
4. 配置vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
[root@IBM142 /]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
[root@IBM142 /]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
#这禁止了匿名用户使用FTP 服务,并且允许非匿名用户的登录,就是虚拟用户所需要的权限
write_enable=YES
#打开写权限,使得用户 peilei 可以修改文件
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
#把vsftpd.chroot_list列表内的用户限制在相应主目录内
guest_enable=YES
#guest_enable 是很重要的- 它激活了虚拟用户的选项! 而各用户对应的系统用户见vsftpd_user_conf目录下的各文件
local_umask=022
anon_umask=0033
file_open_mode=0777
#file_open_mode决定了上传的文件的属性,和chmod一样
#anon_umask去掉file_open_mode中的属性位,两者共同决定上传文件的属性。
listen=YES
listen_port=21
# 使 vsftpd 以"standalone" 模式运行- 端口21
user_config_dir=/etc/vsftpd/vsftpd_user_conf
5. 创建限制用户列表文件,使得用户限制在相应主目录内。
[root@IBM142 /]# vi /etc/vsftpd/vsftpd.chroot_list
upload //只有一个用户
//用户peilei不作限制,所以不在此列表内
6. 进行多个不同权限用户的配置
[root@IBM142 /]# mkdir /etc/vsftpd/vsftpd_user_conf //创建用户配置文件的目录
在vsftpd.conf中添加一行
user_config_dir=/etc/vsftpd/vsftpd_user_conf
[root@IBM142 /]# touch /etc/vsftpd/vsftpd_user_conf/peilei
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES //保证可以写、删、修改
guest_username=root //用户 peilei 对应的是系统用户root
[root@IBM142 /]# touch /etc/vsftpd/vsftpd_user_conf/upload
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
guest_username=upload //用户upload 对应的是系统用户 upload
7. 重新启动vsftpd
8. 让vsftpd启动时自动运行,在 /etc/rc.d/rc.local中添加下面一行
vsftpd /etc/vsftpd/vsftpd.conf
相关阅读 更多 +