vsftp 环境搭建 以及iptables设置

ftp链接方式有两种,一种是PORT,也就是主动链接,一种是PASV,也就是被动模式。二者的具体区别就不讲了,网上资料不少。html

咱们采用客户端PASV被动模式linux

 

首先咱们配置linux系统的防火墙iptables(防火墙必定要配好,否则会致使链接不上报227 Entering Passive Mode (182,92,150,235,145,19).错误)web

一、编辑/etc/sysconfig/iptables-config文件,添加如下两行:
shell

IPTABLES_MODULES="ip_conntrack_ftp"
IPTABLES_MODULES="ip_nat_ftp"

      请必定注意两行内容的位置关系不要搞反了。若是将"ip_nat_ftp"放到前面是加载不到的。若是你的ftp服务是过路由或者防火墙(即内网映射方式必定须要此模块)。以上等同于在加载iptables以前运行modprobe命令加载"ip_nat_ftp"和"ip_conntrack_ftp"模块。服务器

二、iptables文件添加以下两行:tcp

 [root@a ~]# vi /etc/sysconfig/iptables
-A -INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A -INPUT -p tcp -m state --state NEW -m tcp --sport 21 -j ACCEPT
-A -OUTPUT -P tcp --dport 20 -j ACCEPT

三、检查iptables文件是否存在如下行(默认是有的),如没有则添加;编辑器

 -A -INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

如今咱们开始配置vsftpspa

安装vsftpdrest

一、以管理员(root)身份执行如下命令(yum安装vsftp)code

yum install vsftpd

二、设置开机启动vsftpd ftp服务

chkconfig vsftpd on

三、启动vsftpd服务

service vsftpd start

管理vsftpd相关命令:

中止vsftpd:  service vsftpd stop

重启vsftpd:  service vsftpd restart

配置vsftpd服务器

默认的配置文件是/etc/vsftpd/vsftpd.conf,你能够用文本编辑器打开。

vi /etc/vsftpd/vsftpd.conf

添加ftp用户

下面是添加user用户,设置根目录为/home/wwwroot/user,禁止此用户登陆SSH的权限,并限制其访问其它目录。

1、修改/etc/vsftpd/vsftpd.conf

将底下三行

#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list

改成

chroot_list_enable=YES


# (default follows)


chroot_list_file=/etc/vsftpd/chroot_list

修改如下参数

 anonymous_enable=NO //禁用匿名用户登录 
 local_enable=YES //开启本地用户登录
 userlist_enable=NO
 userlist_deny=YES

禁止用户登陆目录userlist_file=/etc/vsftpd.user_list 若上面userlist_deny=YES 这样/etc/vsftpd.user_list就没法登录了

三、增长用户ftpuser,指向目录/home/wwwroot/ftpuser,禁止登陆SSH权限。

useradd -d /home/wwwroot/user -g ftp -s /sbin/nologin user

四、设置用户口令

passwd ftpuser

五、编辑文件chroot_list:(用来禁止访问用户根目录的上级目录)

vi /etc/vsftpd/chroot_list
  1. peter


  2.  

  3.  

  4.  

  5. john

六、从新启动vsftpd

service vsftpd restart

详细参数设置请看 http://vsftpd.beasts.org/vsftpd_conf.html

相关文章
相关标签/搜索