SYNOPSIS
iptables [-t table] {-A|-C|-D} chain rule-specification
ip6tables [-t table] {-A|-C|-D} chain rule-specification
iptables [-t table] -I chain [rulenum] rule-specification
iptables [-t table] -R chain rulenum rule-specification
iptables [-t table] -D chain rulenum

iptables 是linux下一款强大的防火墙,在不考虑效率的情况下,功能强大到足能够替代大多数硬件防火墙。可是强大的防火墙假设应用不当,可能挡住的可不光是那些潜在的攻击,还有可能是你自己哦。

这个带来的危害对于普通的个人PC来说可能无关紧要。可是想象一下,假设这是一台server,一旦发生这种情况。不光是影院正常的服务。还须要到现场去恢复。这会给你带来多少损失呢?

​

所以我想说的是,当你敲入每个iptables 相关命令的时候都要万分小心。

1.应用每个规则到DROP target时,都要细致检查规则。应用之前要考虑他给你带来的影响。

2.在redhat中我们能够使用service iptables stop来关闭防火墙,可是在有些版本号如ubuntu中这个命令却不起作用,大家可能在网上搜索到不少文章告诉你用iptables -F这个命令来关闭防火墙,可是使用这个命令前。千万记得用iptables -L查看一下你的系统中全部链的默认target。iptables -F这个命令仅仅是清除全部规则。仅仅不会真正关闭iptables.想象一下,假设你的链默认target是DROP,本来你有规则来同意一些特定的port,但一旦应用iptables
-L 。清除了全部规则以后。默认的target就会阻止不论什么訪问。当然包含远程ssh管理server的你。

所以我建议的关闭防火墙命令是

    iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F

总之,当你要在你的server上做不论什么变更时,最好有一个測试环境做过充分的測试再应用到你的server。

除此之外。要用好iptables,那就要理解iptables的执行原理,知道对于每个数据包iptables是怎么样来处理的。这样才干准确地书写规则,避免带来不必要的麻烦。

       iptables [-t table] -S [chain [rulenum]]
iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]
iptables [-t table] -N chain
iptables [-t table] -X [chain]
iptables [-t table] -P chain target
iptables [-t table] -E old-chain-name new-chain-name
rule-specification = [matches...] [target]
match = -m matchname [per-match-options]
target = -j targetname [per-target-options]

屏蔽ICMP ping请求

我们能够通过同意以下的命令屏蔽ping请求:

  1. # iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
  2. # iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -j DROP

也能够依照特定的网段和主机限制ping请求:

  1. # iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j ACCEPT

下面命令仅仅接受受限制的ping请求:

  1. #假定默认INPUT策略为丢弃数据包
  2. # iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
  3. # iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
  4. # iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
  5. #全部的server都对ping请求作出应答
  6. # iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

屏蔽或开启常见port

屏蔽或开启经常使用的TCP、UDPport:

  1. #能够使用DROP替换ACCEPT。实现端口屏蔽。
  2. #打开22端口(SSH)
  3. # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
  4. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT
  5. #打开TCP/UDP631端口(打印服务)
  6. # iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j ACCEPT
  7. # iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j ACCEPT
  8. # 打开123端口,同意局域网用户进行NTP时间同步
  9. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT
  10. #打开25端口(SMTP)
  11. # iptables -A INPUT -m state --state NEW -p tcp --dport 25 -j ACCEPT
  12. # 打开DNS端口
  13. # iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT
  14. # iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
  15. #打开http/https端口
  16. # iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
  17. # iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT
  18. #打开TCP110端口(POP3)
  19. # iptables -A INPUT -m state --state NEW -p tcp --dport 110 -j ACCEPT
  20. #打开TCP143端口
  21. # iptables -A INPUT -m state --state NEW -p tcp --dport 143 -j ACCEPT
  22. #为局域网用户开启Samba訪问
  23. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 137 -j ACCEPT
  24. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 138 -j ACCEPT
  25. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 139 -j ACCEPT
  26. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 445 -j ACCEPT
  27. #为局域网用户开启代理server訪问
  28. # iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 3128 -j ACCEPT
  29. #为局域网用户开启MySQL訪问
  30. # iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

版权声明:本文博主原创文章。博客,未经同意不得转载。

linux-ubuntu关闭防火墙的更多相关文章

  1. linux下关闭防火墙命令

    今天使用linux虚拟机搭建jenkins,但是在虚拟机内部使用浏览器可以访问jenkins主页,在物理机上却无法访问jenkins主页,查找原因后是因为linux虚拟机没有关闭防火墙,关闭防火墙后, ...

  2. RedHat Enterprise Linux 7关闭防火墙方法

    systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起 在之前的版本中关闭防火墙等服务的命令是 service iptables stop ...

  3. Linux如何关闭防火墙和查看防火墙的具体情况

    1.Linux下关闭和开启防火墙 1) 重启后生效 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后失效 开启: ser ...

  4. 我用过的Linux命令--关闭防火墙

    关闭防火墙: 防火墙的弄能是限制某一些端口的使用,可以通过linux命令关系它,相应的指令: 查看防火墙信息: #service iptables status 就能看到防火墙的状态: 关闭防火墙: ...

  5. linux怎么关闭iptables linux如何关闭防火墙

    Linux系统下面自带了防火墙iptables,iptables可以设置很多安全规则.但是如果配置错误很容易导致各种网络问题,那么如果要关闭禁用防火墙怎么操作呢,咗嚛本经验以centos系统为例演示如 ...

  6. [转]RedHat Enterprise Linux 7关闭防火墙方法

    在之前的版本中关闭防火墙等服务的命令是 service iptables stop /etc/init.d/iptables stop 在RHEL7中,其实没有这个服务 [root@rhel7 ~]# ...

  7. linux 启动 关闭 防火墙

    开启防火墙: systemctl start firewalld 关闭防火墙: systemctl stop firewalld

  8. Ubuntu 关闭防火墙

    关闭防火墙:service iptables stop

  9. Linux系统关闭防火墙端口

    1. 打开防火墙端口 # iptables -I INPUT -p tcp --dport -j ACCEPT # iptables -I INPUT -p tcp --dport -j ACCEPT ...

  10. Linux 开启关闭防火墙

    开放防火墙端口添加需要监听的端口 /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT/sbin/iptables -I INPUT -p tcp ...

随机推荐

  1. Web API Test Client 1.2.0

    使用方法 1 安装 matthewcv.WebApiTestClient 到你的Web API 项目 PM> Install-Package matthewcv.WebApiTestClient ...

  2. 对于Netty的十一个疑问(转)

    [说明]本文原载于码农 IO(manong.io)官方微信 developerWorks,转载.引用请注明出处及作者. 1.Netty 是什么? Netty 是一个基于 JAVA NIO 类库的异步通 ...

  3. hdu3572 任务分配/最大流量推论全流

    意甲冠军:将n分配的任务m机.到的每个任务需要的天数(如果没有持续的日常),并能做到在哪些天任务.询问是否有计划. 典型的任务(X)----日(Y)一半的最大流量,(因为这个任务是天之间的关系)处理器 ...

  4. hbase开放lzo压缩

    hbase仅仅支持对gzip的压缩,对lzo压缩支持不好. 在io成为系统瓶颈的情况下,一般开启lzo压缩会提高系统的吞吐量. 但这须要參考详细的应用场景,即是否值得进行压缩.压缩率是否足够等等.  ...

  5. SQL SERVER2005事务日志已满 解决方法

    DUMP TRANSACTION 数据库名称 WITH NO_LOG alter database 数据库名称 set recovery simple 3.右键你要压缩的数据库--所有任务--收缩数据 ...

  6. UIStepper使用的具体解释的控制

    UIStepper控件类似于UISlider控件,但它有"+"和"-"两个button,单击当中一个可使属性value值递增或递减. 如声音.速度.图片等的大小 ...

  7. 使用shell/python获取hostname/fqdn释疑(转)

    一直以来被Linux的hostname和fqdn(Fully Qualified Domain Name)困惑了好久,今天专门抽时间把它们的使用细节弄清了. 一.设置hostname/fqdn 在Li ...

  8. Hadoop Hive sql 语法详细解释

    Hive 是基于Hadoop 构建的一套数据仓库分析系统.它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,能够将结构 化的数据文件映射为一张数据库表,并提供完整的SQL查 ...

  9. 读改善c#代码157个建议:建议4~6

    目录: 建议4:TryParse比Parse好 建议5:使用int?确保值类型也可以为null 建议6:区别 readonly 和 const 的用法 一.建议4:TryParse比Parse 好 T ...

  10. boostrap-非常好用但是容易让人忽略的地方------Font Awesome

    font-awesome基本用法 官方代码传送门 font-awesome在bootstrap中的特殊用法(这个才是重点) 要点归纳1(官方) 官方代码传送门 要点归纳2(我的) <a href ...