• 设置iptables允许ssh、http、ftp服务


    系统环境:centos-6.5

    服务器:thinkserver

    知识扫盲:

    NEW:这个包是我们看到的第一个包

    ESTABLISHED:一个连接要从NEW变 为ESTABLISHED,只需要接到应答包即可,不管这个包是发往防火墙的,还是要由防 火墙转发的。

    FTP服务器有两种工作模式:主动模式和被动模式。这两种方式的特点如下:
     (1)主动模式下:
      tcp, 20(20号端口用于数据传输),21(21号端口用于控制连接)
     (2)被动模式:
      tcp, 21(用于控制连接) >1023(端口号大于1023的随机端口用于数据传输)
      所以如果FTP工作在被动模式下,无法指定数据传输的端口,于是引入了RELATED状态。RELATED主要用于追踪与其相关的端口。注意:ftp工作在主动模式或者被动模式与客户端的请求有关。

    ssh、http服务分别工作在22、80端口,第一次进入server端的包为NEW状态,所以要求INPUT链能过ACCEPT客户端的第一次发来的数据包。而后,发给客户端的包,使得该客户端与服务端通信来往包的状态变为ESTABLISHED,所以INPUT链允许通过的状态为NEW、ESTABLISHED,而OUTPUT链,只需ESTABLISHED。

    1、设置21,22,80端口INPUT链和OUTPUT链,设置INPUT、FORWORD、OUTPUT链的默认策略为DROP

    [plain] view plain copy
     
    1. iptables -I INPUT -d 10.79.32.22 -p tcp -m multiport --destination-ports 21,22,80 -m state --state NEW -j ACCEPT  
    2. iptables -I INPUT 1 -d 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT  
    3. iptables -I OUTPUT 1 -s 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT  
    4. iptables -P FORWARD DROP  
    5. iptables -P OUTPUT DROP  
    6. iptables -P INPUT DROP  


    2、查看iptables状态

    [plain] view plain copy
     
    1. # iptables -L -n  



    3、保存iptables当前配置,该配置文件位于/etc/sysconfig/iptables

    [plain] view plain copy
     
    1. #service iptables save  
    [plain] view plain copy
     
    1. <p>#vim /etc/sysconfig/iptables</p>  

    4、修改iptables启动时装载模块,这里增加的两个模块可以为“nf_nat_ftp nf_conntrack_ftp”,也可以写成“ip_nat_ftp ip_conntrack_ftp”

    #vim /etc/sysconfig/iptables-config


    5、重新启动iptables服务

    # service iptablesrestart

    6、查看内核是否装载有上述配置的两个有关ftp模块

  • 相关阅读:
    37 图的存储结构
    hdu 1272 使用set和并查集
    题目数据输入中间读入字符
    第六篇 模块基础
    第十二章 并发编程
    并发编程(四)
    第五篇 函数进阶
    第四篇 函数基础
    并发编程(三)
    并发编程(二)
  • 原文地址:https://www.cnblogs.com/Devopser/p/7053871.html
Copyright © 2020-2023  润新知