zoukankan      html  css  js  c++  java
  • 阿里云CentOS配置iptables防火墙[转]

      虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT。OUTPUT和FORWORD都是ACCEPT的规则

    一、检查iptables服务状态

      首先检查iptables服务的状态

    1 [root@woxplife ~]# service iptables status
    2 iptables: Firewall is not running.

      说明iptables服务是有安装的,但是没有启动服务。
      如果没有安装的话可以直接yum安装

    yum install -y iptables

      启动iptables

    [root@woxplife ~]# service iptables start
    iptables: Applying firewall rules:                         [  OK  ]

      看一下当前iptables的配置情况

    [root@woxplife ~]# iptables -L -n

     

    二、清除默认的防火墙规则

    #首先在清除前要将policy INPUT改成ACCEPT,表示接受一切请求。
    #这个一定要先做,不然清空后可能会悲剧
    iptables -P INPUT ACCEPT
     
    #清空默认所有规则
    iptables -F
     
    #清空自定义的所有规则
    iptables -X
     
    #计数器置0
    iptables -Z

     

    三、配置规则

    #允许来自于lo接口的数据包
    #如果没有此规则,你将不能通过127.0.0.1访问本地服务,例如ping 127.0.0.1
    iptables -A INPUT -i lo -j ACCEPT 
     
    #ssh端口22
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
     
    #FTP端口21
    iptables -A INPUT -p tcp --dport 21 -j ACCEPT
     
    #web服务端口80
    iptables -A INPUT -p tcp --dport 80 -j ACCEP
     
    #tomcat
    iptables -A INPUT -p tcp --dport xxxx -j ACCEP
     
    #mysql
    iptables -A INPUT -p tcp --dport xxxx -j ACCEP
     
    #允许icmp包通过,也就是允许ping
    iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
     
    #允许所有对外请求的返回包
    #本机对外请求相当于OUTPUT,对于返回数据包必须接收啊,这相当于INPUT了
    iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
     
    #如果要添加内网ip信任(接受其所有TCP请求)
    iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
     
    #过滤所有非以上规则的请求
    iptables -P INPUT DROP

     

    四、保存

    首先iptables -L -n看一下配置是否正确。
    没问题后,先不要急着保存,因为没保存只是当前有效,重启后就不生效,这样万一有什么问题,可以后台强制重启服务器恢复设置。
    另外开一个ssh连接,确保可以登陆。

    确保没问题之后保存

    #保存
    [root@woxplife ~]# service iptables save
     
    #添加到自启动chkconfig
    [root@woxplife ~]# chkconfig iptables on

     

     
  • 相关阅读:
    Java中会存在内存泄漏吗,请简单描述。
    什么是类加载器
    通俗易懂 索引、单列索引、复合索引、主键、唯一索引、聚簇索引、非聚簇索引、唯一聚簇索引 的区别与联系
    Redis真的那么好用吗
    java中public,private,protected和default的区别
    聚集和非聚集索引
    我以为我对Mysql索引很了解,直到我遇到了阿里的面试官(转)
    Java中存储金额用什么数据类型
    InnoDB在MySQL默认隔离级别下解决幻读
    android应用程序第一次启动时显示引导界面
  • 原文地址:https://www.cnblogs.com/fjdingsd/p/5724655.html
Copyright © 2011-2022 走看看