zoukankan      html  css  js  c++  java
  • vsftp被动模式启用iptables访问设置

    vsftpd服务搭建好之后,如果是使用主动模式访问。那么启用iptables只需添加以下规则即可:

    1 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    2 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --sport 20 -j ACCEPT

    这样客户端需要更改为主动模式即可连接成功并可进行数据传输。
    但是浏览器或者ftp连接工具一般默认都是使用pasv方式进行默认连接。为了保证客户端尽可能简单设置的原则,那么需要设置服务器端能够支持默认的pasv方式连接。


    1、编辑/etc/sysconfig/iptables-config文件,添加以下两行:

    1 IPTABLES_MODULES="ip_conntrack_ftp"
    2 IPTABLES_MODULES="ip_nat_ftp"

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

    2、编辑iptables文件添加如下两行:

    1 [root@xmydlinux ~]# grep 21 /etc/sysconfig/iptables
    2 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
    3 -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --sport 21 -j ACCEPT

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

    1 -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    4、重启iptables服务

    1 service iptables restart

    可以使用以下命令查看模块是否加载成功

    1 [root@xmydlinux ~]# lsmod |grep ftp
    2 ip_nat_ftp 8881 0
    3 iptable_nat 27237 1 ip_nat_ftp
    4 ip_conntrack_ftp 76273 1 ip_nat_ftp
    5 ip_conntrack 45957 4 ip_nat_ftp,iptable_nat,ip_conntrack_ftp,ipt_state

    以上说明模块加载成功。。

    现在就可以使用被动模式连接试试是否成功。

    还有另外一种比较简单的方法:

    在vsftpd.conf配置文件添加以下一句就搞定了

    1 vi /etc/vsftpd/vsftpd.conf
    2 pasv_enable=YES
  • 相关阅读:
    Emmet Documentation
    微软雅黑的Unicode码和英文名
    Eclipse让代码自动换行(WordWarp)
    如何更改MyEclipse代码自动换行的长度?
    PHP之道推荐使用PHP版本,数据库方式,以及虚拟机的创建程序
    ime-mode:disabled是什么?
    document.getElementsByClassName在ie8及其以下浏览器的兼容性问题
    Unobtrusive JavaScript 不唐突的JavaScript的七条准则
    详解 arguments, callee, caller, call, apply的区别
    怎样在谷歌浏览器上加载金山词霸的取词插件?
  • 原文地址:https://www.cnblogs.com/mityaya/p/4439919.html
Copyright © 2011-2022 走看看