CentOS 安装 VSFTP
配置 FTP 服务
1.安装 vsFTP
1
|
yum install vsftpd
|
编辑配置文件
1
|
vi /etc/vsftpd/vsftpd.conf
|
我们这里使用虚拟用户的形式, 配置如下.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
connect_from_port_20=YES
ftpd_banner=Welcome to My FTP Server ^_^.
chroot_local_user=YES
ls_recurse_enable=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
one_process_model=no
#以下是手动添加的
pasv_min_port=30000
pasv_max_port=35000
allow_writable_root=YES
guest_enable=YES
guest_username=root
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/user_conf
|
2.生成vsftpd虚拟用户数据库文件:
建立虚拟用户名单文件:
1
|
vi /etc/vsftpd/ftpuser.txt
|
内容如下:
1
2
3
4
|
ftp1
1234
ftp2
5678
|
格式很简单:“一行用户名,一行密码!”。
3.生成虚拟用户数据文件:
1
2
|
db_load -T -t hash -f /etc/vsftpd/ftpuser.txt /etc/vsftpd/users.db
chmod 600 /etc/vsftpd/users.db
|
4.配置PAM验证文件:
1
|
vi /etc/pam.d/vsftpd
|
将原有内容注释或删除, 将以下内容加入到文件中.
32位系统:
1
2
3
|
#db=/etc/vsftpd/users , 这里的users 是上一步创建的数据库名, 去掉后缀.
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/users
account required /lib/security/pam_userdb.so db=/etc/vsftpd/users
|
64位系统:
1
2
3
|
#db=/etc/vsftpd/users , 这里的users 是上一步创建的数据库名, 去掉后缀.
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/users
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/users
|
5.创建虚拟用户独立配置文件
每个虚拟用户必需有一个同用户名相同的配置文件, 这个文件里保存着对这个用户的个性化配置, 里面的属性可以是 vsftpd.conf 中的任何属性.
创建虚拟用户配置文件目录, 这个目录是在 vsftpd.conf 中 user_config_dir= 配置的.
1
|
mkdir /etc/vsftpd/user_conf
|
创建用户配置文件,以用户名命名.
1
|
vi /etc/vsftpd/user_conf/ftp1
|
1
2
3
4
5
6
|
local_root=/var/www/html
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
|
6.启动服务
1
|
service vsftpd start
|
设置开机启动
1
|
chkconfig --level 3 vsftpd on
|
7.允许通过防火墙
1
2
3
|
iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 30000:35000 -j ACCEPT
|
至此,ftp 服务配置完成,用客户端连接试试吧.