234rew 发表于 2015-11-30 09:47:24

vsftp安装与配置

环境:CentOS 6.5 64位

yum install -y vsftpd
vim /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
#禁止匿名用户登录
anonymous_enable=NO
#允许本地用户登录
local_enable=YES
#具有写权限
write_enable=YES
#本地用户创建文件或目录的掩码

local_umask=022
dirmessage_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
#屏蔽本地所有用户浏览其他目录的权限
chroot_local_user=YES
#使用/etc/vsftpd/user_list配置文件
userlist_enable=YES
userlist_deny=NO
#pam模块
pam_service_name=vsftpd
#passive mode 连接端口

pasv_min_port=20000
pasv_max_port=20009
listen=YES




vim /etc/vsftpd/ftpusers 去掉ftp用户
#增加用户,不让他登录服务器
useradd upuser -s /sbin/nologin
#设置密码
passwd upuser
#设置家目录
usermod -d /data/upuser upuser
vim /etc/vsftpd/user_list
增加upuser一行
vim /etc/sysconfig/iptables
#ftp监听端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
#Passive模式 随机打开的端口
-A INPUT -p tcp -m state --state NEW -m multiport --dports 20000:20009 -j ACCEPT
重启iptables
service iptables restart
service vsftpd restart

Ps:
被动和主动模式简介Port模式FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到 Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。
userlist_enable与userlist_deny


[*]userlist_enable和userlist_deny两个选项联合起来针对的是:本地全体用户(除去ftpusers中的用户)和出现在user_list文件中的用户以及不在在user_list文件中的用户这三类用户集合进行的设置。

[*]当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP

[*]当userlist_enable=YES时,userlist_deny=YES时:user_list是一个黑名单,即:所有出现在名单中的用户都会被拒绝登入;

[*]当userlist_enable=YES时,userlist_deny=NO时:user_list是一个白名单,即:只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入);另外需要特别提醒的是:使用白名单后,匿名用户将无法登入!除非显式在user_list中加入一行:anonymous


页: [1]
查看完整版本: vsftp安装与配置