Chinaunix首页 | 论坛 | 博客
  • 博客访问: 389813
  • 博文数量: 67
  • 博客积分: 1742
  • 博客等级: 上尉
  • 技术积分: 753
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-15 01:54
文章分类

全部博文(67)

文章存档

2014年(1)

2013年(4)

2012年(1)

2011年(9)

2010年(29)

2009年(23)

我的朋友

分类: LINUX

2009-07-02 13:05:13

vsftp的配置参数总共也就10来行,但是想要使用好它,绝没有单单理解这10来行这么简单,需要对每一行所定义的参数都理解透彻才可以.
网上很多文章都是错误的,我把自己亲自配置的一些过长发布出来以供大家分享.
-------------------------------------------匿名用户的配置-----------------------------------------------
anonymous_enable=YES  //允许匿名用户登录
anon_root=/var/ftp/anonymous //设定匿名用户登录后的根目录
anon_upload_enable=YES  //允许匿名用户上传文件
只需要打开如上的参数即可,不用做其他的设置.
--------------------------------------------本地用户登录配置---------------------------------------------
首先说一下概念,什么是本地用户,本地用户就是你系统/home目录下的用户,当然有的用户建立时候使用-m命令,使用户在/home下没有目录,但是这个词的意思就是系统里面有的用户.
local_enable=YES   //允许本地用户登录
local_root=/home   //限制本地用户登录后的根目录
eg:
[root@centos ftp]# ftp 192.168.0.125
Connected to 192.168.0.125.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.0.125:root): xu
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,0,125,135,123)
150 Here comes the directory listing.
drwx------    2 505      503          4096 Jun 26 09:42 chuan
drwx------    2 507      507          4096 Jun 30 22:26 ftp
drwx------    2 504      502          4096 Jun 26 09:42 joe
drwx------    2 506      503          4096 Jun 26 09:43 laomeng
drwx------    2 502      504          4096 Jun 26 09:42 master
drwx------    2 503      502          4096 Jun 26 09:42 mike
drwx------    2 500      500          4096 Jun 25 21:34 xiaochuan
drwxrwxrwx    2 508      508          4096 Jun 30 22:39 xu
drwx------    2 501      501          4096 Jun 25 20:25 xujunchuan
226 Directory send OK.
ftp> pwd
257 "/home"
--------------------------------------限制用户目录部分---------------------------------------------------
chroot_local_user=YES|NO  //是否将本地用户锁定在家目录
chroot_list_enable=YES|NO  //是否锁定使用者在家目录中
chroot_list_file=/etc/vsftpd/chroot_list //一般情况下都将这个文件写在/etc/vsftpd目录下,这个文件就是设置锁定用户的一个列表文件,其中一行就代表一个用户
------------------------------------------设置欢迎信息---------------------------------------------------
dirmessage_enable=YES
message_file=.message
[root@centos ftp]# cd /home
[root@centos home]# vi .message
welcomt to VSFTP.............
C:\Documents and Settings\Administrator>ftp 192.168.0.125
Connected to 192.168.0.125.
220 (vsFTPd 2.0.5)
User (192.168.0.125:(none)): xu
331 Please specify the password.
Password:
230-welcomt to VSFTP.............
230 Login successful.
ftp>
--------------------------------------虚拟账户配置-----------------------------------
本地账户vuser,目录定在/var/ftp/vuser.虚拟账户may密码123;ccc密码123
随意哪个目录建立vuser.txt,按行将虚拟账户及其密码输入进去,我在/目录下设置的,格式如下:
may
123
ccc
123
[root@centos /]# db_load -T -t hash -f vuser.txt /etc/vsftpd/vuser.db
[root@centos /]# cd /etc/vsftpd/
[root@centos vsftpd]# ls
ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh  vuser.db
[root@centos vsftpd]# vi chroot_list
vuser
[root@centos vsftpd]# ls
chroot_list  ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh  vuser.db
[root@centos vsftpd]# vi vsftpd.conf   //进入配置文件,更改如下配置
anonymous_enable=NO
local_enable=YES    //虚拟帐户对应的是系统本地用户,所以必须开启这一项
anon_upload_enable=YES   //开启此项以后,使用虚拟账户后可以上传文件.
write_enable=YES    //开启用户写权限.与上面那个参数需要同时开启,才可以上传文件
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=vuser
chroot_list_enable=YES   //将虚拟用户锁定在其对应本地账户设置时的根目录下.
chroot_list_file=/etc/vsftpd/chroot_list
---------------------------------多虚拟账户对应不同目录的VSFTP-------------------------------------
本地用户vuser,ftpvip.虚拟账户ftp1,ftp2密码均是123.ftp1对应vuser,ftp2对应ftpvip.
修改vuser.txt,添加新的虚拟账户.
[root@centos vsftpd]# vi /vuser.txt
may
123
ccc
123
ftp1
123
ftp2
123
[root@centos vsftpd]# useradd -d /var/ftp/vip ftpvip
修改主conf参数,增加以下配置,填写"user_config_dir=/ftpconfig",这个就是定义不同账户对应不同目录的重要所在.
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
user_config_dir=/ftpconfig
ftp1和ftp2用户的具体参数配置都需要/ftpconfig下的ftp1和ftp2文件来定义.我将已经写好的配置如下:
[root@centos vsftpd]# cat /ftpconfig/ftp1
local_root=/var/ftp/vuser
guest_username=vuser
anon_world_readable_only=no
[root@centos vsftpd]# cat /ftpconfig/ftp2
local_root=/var/ftp/vip
guest_username=ftpvip
anon_world_readable_only=no
阅读(1400) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~