使用vsftpd搭建ftp环境

1. 安装vsftpd,在CentOS环境下,直接执行 yum install vsftpd即可。

2. 配置vsftpd
2.1 创建用户,指定根目录以及禁止登录
useradd -d /data/ftp -s /sbin/nologin vftpuser

2.2 配置基本信息,修改vsftpd.conf文件
vi /etc/vsftpd/vsftpd.conf

注意,等号“=”两边不能有空格
#1.与匿名用户相关的信息,允许匿名用户登录,并且允许列举以及切换目录
anonymous_enable=YES
anon_world_readable_only=NO

#2.与实体用户相关的信息
#可写入,且新增目录、文件权限为775
local_enable=YES
local_umask=002
write_enable=YES
chroot_local_user=YES

#虚拟账户设置
guest_enable=YES
guest_username=vftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_user_conf

#3.与主机有关的设置
use_localtime=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
pam_service_name=vsftpd
listen=YES
tcp_wrappers=YES
banner_file=/etc/vsftpd/welcome.txt
local_root=/data/ftp
anon_root=/data/ftp

#限制下载带宽,单位是Bytes/s
local_max_rate=100000
#限制最大上线人数与同一IP的来源数
max_clients=100
max_per_ip=5

2.3 新建虚拟用户
新建用户文件 vftpuser.txt(奇数行是用户名,偶数行是密码),然后使用db_load命令转化为用户认证数据库文件
vi /etc/vsftpd/vftpuser.txt
db_load -T -t hash -f vftpuser.txt vftpuser.db

用户文件示例
superadmin
7654321
admin
654321
test
123456

2.4 修改pam.d中vsftpd的相关配置
vi /etc/pam.d/vsftpd

如果系统不是64位的,需要把lib64修改为lib
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

2.5 修改虚拟用户配置
mkdir /etc/vsftpd/vsftpd_user_conf
vi /etc/vsftpd/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=/data/ftp/html

然后也可以修改下superadmin和test用户的权限,分别编辑/etc/vsftpd/vsftpd_user_conf/superadmin文件和/etc/vsftpd/vsftpd_user_conf/test文件即可
2.6 修改/data/ftp目录的权限,注意不能是777,vsftp会禁止匿名用户访问777目录的权限(为了安全起见)
chmod -R 755 /data/ftp


3.重启vsftpd
service vsftpd restart

猜你喜欢

转载自ajita.iteye.com/blog/2122832
今日推荐