• 阿里云  >  教程中心   >  linux教程  >  Centos6.9配置防火墙iptables规则  
  • Centos6.9配置防火墙iptables规则
  • 发布时间:2018-01-19 来源:网络 上传者:用户
    关键字: 防火墙 iptables 规则 配置 CentOS 6.9 发表文章
  • 摘要:阿里云centos服务器需要设置iptables防火墙规则,才能使用端口访问。目前只配置INPUT,OUTPUT和FORWORD都是ACCEPT的规则。一、检查iptables服务状态serviceiptablesstatusiptables:Firewallisnotrunning.如果显示如下,则说明iptables服务是有安装的,但是没有启动服务。如果没有安装的话可以直接yum安装yuminstall-yiptables生成配置文件vi/etc/sysconfig/ip
  • 阿里云centos服务器需要设置iptables防火墙规则,才能使用端口访问。目前只配置INPUT,OUTPUT和FORWORD都是ACCEPT的规则。一、检查iptables服务状态 service iptables status iptables: Firewall is not running. 如果显示如下,则说明iptables服务是有安装的,但是没有启动服务。如果没有安装的话可以直接yum安装yum install -y iptables 生成配置文件vi /etc/sysconfig/iptables 保存退出按 Esc 再按 shift + : 输入wq回车退出启动iptablesservice iptables start iptables: Applying firewall rules: [ OK ] 看一下当前iptables的配置情况
iptables -L -n 
#会显示如下 
Chain INPUT (policy ACCEPT) 
target prot opt source destination 
Chain FORWARD (policy ACCEPT) 
target prot opt source destination 
Chain OUTPUT (policy ACCEPT) 
target prot opt source destination
  • 如果显示这样就说明iptables服务已经启动了二、配置规则 常用添加端口规则#允许对外请求的返回包 
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
#允许icmp包通过,也就是允许ping 
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT 
iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT
  • #允许来自于lo接口的数据包,如果没有此规则,将不能通过127.0.0.1访问本地服务 iptables -A INPUT -i lo -j ACCEPT #常用端口 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 23 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT 
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT

  • #过滤所有非以上规则的请求 
    iptables -P INPUT DROP 
    #如果要添加内网ip信任(接受其所有TCP请求) 
    #注:(**.**.**.**)为IP,下同 
    iptables -A INPUT -p tcp -s **.**.**.** -j ACCEPT 
    #要封停一个IP,使用下面这条命令 
    iptables -I INPUT -s **.**.**.** -j DROP 
    #要解封一个IP,使用下面这条命令 
    iptables -D INPUT -s **.**.**.** -j DROP 

    保存重启防火墙
    /etc/init.d/iptables save 
    service iptables restart 

    其他方法:
    # 打开配置文件 
    vi /etc/sysconfig/iptables 
    # 加入如下语句: 
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 
    # 保存(按Esc退出编辑) 
    :wq 
    # 重启防火墙,修改完成 
    service iptables restart 

    其他常用命令(不是一定要做)
    #允许所有入栈规则 
    iptables -P INPUT ACCEPT 
    #清空默认所有规则 
    iptables -F 
    #清空自定义的所有规则 
    iptables -X 
    #计数器置0 
    iptables -Z 

    三、关闭端口 
    常用删除端口规则
    # 查看当前端口所在行数 
    iptables -L -n --line-number 
    # 删除指定序列的端口(下面是删除第五条端口) 
    iptables -D INPUT 5 
    # 确认是否已经删除,可以重新查看列表 
    iptables -L -n --line-number 

    其他方法:
    # 打开配置文件 
    vi /etc/sysconfig/iptables 
    # 直接删除对应端口的那句 !!!! 
    # 保存(按Esc退出编辑) 
    :wq 
    # 重启防火墙,修改完成 
    service iptables restart 

    四、保存规则,重启iptables服务 
    #保存修改 
    /etc/init.d/iptables save 
    #查看规则是否添加成功 
    vi /etc/sysconfig/iptables 
    #添加到iptables服务自启动 
    chkconfig iptables on 
    #重启iptables服务 
    service iptables restart 

    查看正在启用的端口情况,看上面有没有你刚加上的端口
    netstat -tl 

    查看所有添加进去的端口(包含启用的和未启用的端口)
    /etc/init.d/iptables status 

    按 i 进入编辑状态,按esc可退出编辑状态
    #退出 
    :q 
    #保存并退出 
    :wq 
    #保存并退出。 
    :x 
    #强制退出,但不保存 
    :q!