zoukankan      html  css  js  c++  java
  • 服务器上的iptables

    服务器上的iptables 防火墙设置脚本规则

    完整脚本如下:
     

    复制代码代码示例:

    #!/bin/bash
    # by www.jbxue.com
    iptab="/sbin/iptables"
    #----------------------- 清空所有规则  -----------------------------------#
    $iptab -F
    $iptab -X
    $iptab -Z
    $iptab -t nat -F
    $iptab -t nat -X
    $iptab -t nat -Z

    #------------------- 拒绝默认规则之前开放SSH 端口(33169)----------------#
    $iptab -A INPUT -p tcp --dport 33169  -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 33169 -m state --state RELATED,ESTABLISHED -j ACCEPT

    #----------------------- 拒绝所有的规则  ---------------------------------#
    $iptab -P INPUT DROP
    $iptab -P OUTPUT DROP
    $iptab -P FORWARD  DROP

    #-------------------------- 打开回环设备  ----------------------------------#
    $iptab -A INPUT -p tcp -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
    $iptab -A OUTPUT -p tcp -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

    $iptab -A INPUT -i lo -j ACCEPT
    $iptab -A OUTPUT -o lo -j ACCEPT

    #----------------------- 打开FTP服务端口(21)-------------------------------#
    $iptab -A INPUT -p tcp --dport 21 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 21 -m state --state RELATED,ESTABLISHED -j ACCEPT

    #--------------------------- 开放SMTP 服务端口(25) -------------------------#
    $iptab -A INPUT -p tcp --dport 25 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 25 -j ACCEPT

    $iptab -A INPUT -p tcp --sport 25 -j ACCEPT
    $iptab -A OUTPUT -p tcp --dport 25  -j ACCEPT

    #------------------------ 开放DNS解析服务端口(53) ---------------------------#
    $iptab -A INPUT -p udp --dport 53 -j ACCEPT
    $iptab -A OUTPUT -p udp --sport 53 -j ACCEPT

    $iptab -A INPUT -p udp --sport 53 -j ACCEPT
    $iptab -A OUTPUT -p udp  --dport 53  -j ACCEPT

    #------------------- 开放http 服务端口(80)--------------------------------#
    $iptab -A INPUT -p tcp --dport 80 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport  80 -m state --state RELATED,ESTABLISHED -j ACCEPT

    #------------- imp3(143) imp3s(995) pop3(110) pop3s(993) port ----------------#
    $iptab -A INPUT -p tcp --dport 110 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 110 -j ACCEPT

    $iptab -A INPUT -p tcp --dport 143 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 143 -j ACCEPT

    $iptab -A INPUT -p tcp --dport 993 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 993 -m state --state RELATED,ESTABLISHED  -j ACCEPT

    $iptab -A INPUT -p tcp --dport 995 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 995 -m state --state RELATED,ESTABLISHED  -j ACCEPT

    #--------------------开放 Mysql 服务端口(3306)----------------------------#
    $iptab -A INPUT  -p tcp --dport 3306 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 3306 -j ACCEPT

    #---------------------开放所有tomcat所依赖端口  ----------------------------#
    $iptab -A INPUT -p tcp --dport 8005 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8005 -j ACCEPT

    $iptab -A INPUT -p tcp --dport 8009 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8009 -j ACCEPT

    $iptab -A INPUT -p tcp --dport 8080 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8080 -m state --state RELATED,ESTABLISHED -j ACCEPT

    $iptab -A INPUT  -s 222.35.140.70 -p tcp --dport 8080 -j ACCEPT
    $iptab -A OUTPUT -d 222.35.140.70 -p tcp --sport 8080 -j ACCEPT

    $iptab -A INPUT -p tcp --dport 8081 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8081 -m state --state RELATED,ESTABLISHED -j ACCEPT

    #---------------------- 开放http监听端口(8084)  --------------------------#
    $iptab -A INPUT -p tcp --dport 8084 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8084 -m state --state RELATED,ESTABLISHED -j ACCEPT

    $iptab -A INPUT -p tcp --dport 8250 -j ACCEPT
    $iptab -A OUTPUT -p tcp --sport 8250 -j ACCEPT

    #----------------- 开放SSH服务端口(33169)--------------------------------#
    $iptab -A INPUT -p tcp --sport 33169 -j ACCEPT
    $iptab -A OUTPUT -p tcp --dport 33169  -m state --state RELATED,ESTABLISHED -j ACCEPT

    #注意:最有一条规则是在SSH服务器再次的使用SSH服务访问他人的SSH服务所制定的规则。

    总结:
    在 linux中配置防火墙时,一定要注意iptables中规则的顺序,哪个在前,哪个在后,这点不能乱。
    另外,配置iptables规则,建议在本机测试好,然后在放到生产环境的主机上。

  • 相关阅读:
    Centos7安装teamviewer 32/64位
    Centos7安装32位库用来安装32位软件程序
    linux环境下配置mysql双主复制
    zabbix自定义触发器进行监控
    VM安装系统时提示硬件不支持(unsupported hardware detected)
    mysql新建用户在本地无法登录
    msyql开启慢查询以及分析慢查询
    zabbix怎么把英文界面换成中文
    xencenter如何安装系统
    mysql优化查询
  • 原文地址:https://www.cnblogs.com/hllnj2008/p/4053601.html
Copyright © 2011-2022 走看看