1. 一键批处理设置

    
  1. #!/bin/bash
  2. PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin:~/bin
  3. export PATH
  4. # Check if user is root
  5. if [ $UID != 0 ]; then echo "Error: You must be root to run the install script, please use root to install lanmps";exit;fi
  6. iptables-save >> _.iptables.up.rules #保存防火墙设置,以便没保存时使用
  7. iptables -L -n 2>&1 | tee -a "_.iptables.log"
  8. iptables -F        #清除预设表filter中的所有规则链的规则
  9. iptables -X        #清除预设表filter中使用者自定链中的规则
  10. iptables -Z        #计数器清零
  11. iptables -P INPUT DROP
  12. iptables -P OUTPUT ACCEPT
  13. iptables -P FORWARD ACCEPT
  14. #双向
  15. iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  16. #允许本机
  17. iptables -A INPUT -i lo -j ACCEPT
  18. #FTP
  19. iptables -A INPUT -p tcp --dport 21 -j ACCEPT
  20. #SSH
  21. iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  22. #www 80
  23. iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  24. #13306 映射转发到  mysql数据库 3306
  25. iptables -A PREROUTING -p tcp --dport 13306 -j REDIRECT --to-ports 3306 -t nat
  26. #3306 mysql数据库
  27. #iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
  28. #memache
  29. #iptables -A INPUT -p tcp --dport 11211 -j ACCEPT
  30. #对于OUTPUT规则,因为预设的是ACCEPT,所以要添加DROP规则,减少不安全的端口链接。
  31. iptables -A OUTPUT -p tcp --sport 31337 -j DROP
  32. iptables -A OUTPUT -p tcp --dport 31337 -j DROP
  33. #丢弃坏的TCP包
  34. iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
  35. #处理IP碎片数量,防止攻击,允许每秒100个
  36. #iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT
  37. #设置ICMP包过滤,允许每秒1个包,限制触发条件是10个包
  38. #iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
  39. #防止外部的ping和SYN洪水攻击
  40. iptables -A INPUT -p tcp --syn -m limit --limit 100/s --limit-burst 100 -j  ACCEPT
  41. #ping洪水攻击,限制每秒的ping包不超过10个
  42. iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s –limit-burst 10 -j ACCEPT
  43. #防止各种端口扫描,将SYN及ACK SYN限制为每秒钟不超过200个
  44. iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 20/sec --limit-burst 200 -j ACCEPT
  45. #最后规则拒绝所有不符合以上所有的
  46. iptables -A INPUT -j DROP
  47. if [ -z "`grep "iptables-save" /etc/network/interfaces`" ]
  48. then
  49. echo "#以下有防火墙需要的可以使用
  50. pre-up iptables-restore < /etc/iptables.up.rules #启动时应用防火墙
  51. post-down iptables-save > /etc/iptables.up.rules #关闭时保存防火墙设置,以便下次启动时使用  " >> /etc/network/interfaces
  52. else
  53. echo "iptables-save find "
  54. fi
  55. clear
  56. echo "iptables ok ";
  57. echo ""
  58. iptables -L -n
  59. cat /etc/network/interfaces

把上面的保存为 (如果还有其他端口规则请一起在上面配置,执行时清空规则):

  1. lanmps_iptables.sh

上传到服务器然后设置权限,并执行

  1. chmod 777 lanmps_iptables.sh
  2. ./lanmps_iptables.sh

那么  防火墙就设置完成了

2. ubuntu iptables 防火墙 启动

  1. modprobe ip_tables

3. ubuntu iptables 防火墙 关闭

ubuntu 并没有关闭命令,所以要通过变通方法解决防火墙

  1. iptables -F
  2. iptables -X  
  3. iptables -Z  
  4. iptables -P INPUT ACCEPT  
  5. iptables -P OUTPUT ACCEPT  
  6. iptables -P FORWARD ACCEPT  
  7. modprobe -r ip_tables  
  8. 依次执行以上命令即可关闭iptables,否则在执行modproble -r ip_tables时将会提示  FATAL: Module ip_tables is in use.

4. Iptables的保存和调用

防止每次开机或重启后都需要去调用一次,把它设置自动执行

第一步 更改网卡配置文件

  1. sudo vi /etc/network/interfaces

第二部 在最后增加配置

  1. #以下有防火墙需要的可以使用
  2. pre-up iptables-restore < /etc/iptables.up.rules #启动时应用防火墙
  3. post-down iptables-save > /etc/iptables.up.rules #关闭时保存防火墙设置,以便下次启动时使用

如果不明白的看 http://blog.csdn.net/fenglailea/article/details/12191607#t1

感谢:http://hongwei.im/iptables-setting-for-ubuntu-1304

ubuntu 14.04/14.10 iptables 防火墙设置的更多相关文章

  1. IPTables系列:如何配置Ubuntu 14.04中的IPTables防火墙

    IPTables基本命令 在向大家介绍复杂防火墙规则之前,还是先上一些简单的料,让大家对IPTables最为基本的命令有一些简单了解. 首先要说明的是IPTables命令必需以root权限运行,这意味 ...

  2. CVE-2015-1328 Ubuntu 12.04, 14.04, 14.10, 15.04 overlayfs Local Root

    catalog . 引言 . Description . Effected Scope . Exploit Analysis . Principle Of Vulnerability . Patch ...

  3. Fix catalyst driver in Ubuntu 13.04 / 13.10

    Fix catalyst driver in Ubuntu 13.04 / 13.10(墙外文章备份) 1. Introduction I found lots of people strugglin ...

  4. Ubuntu 13.04/12.10安装Oracle 11gR2图文教程(转)

    Ubuntu 13.04/12.10安装Oracle 11gR2图文教程 原文标题:How to Install Oracle 11G R2 Enterprise Edition Database U ...

  5. Get back Typing Break in Ubuntu 12.04 & 11.10(转载)

    转自:http://ubuntuguide.net/get-back-typing-break-in-ubuntu-12-04-11-10 Since Ubuntu 11.10 Oneiric, th ...

  6. Ubuntu 16.04/16.10安装 KDE Plasma

    KDE目前的最新版本是Plasma 5.7(2016-10).Ubuntu默认的桌面环境是Unity,下面记录怎么在Ubuntu 16.04/16.10上安装KDE. Ubuntu 16.04/16. ...

  7. Ubuntu 14.04/14.10下安装VMware Workstation 11图文教程

    VMware workstation 是一个可以进行桌面操作的虚拟软件.它可以让我们在一台电脑或者虚拟机中运行多个虚拟机. 由VMware公司研发和维护.由于是商业软件,我们需要买他们家的许可证或者说 ...

  8. [转] Ubuntu 14.04/14.10下安装VMware Workstation 11图文教程

    点击这里查看原文 译者:GuiltyMan 本文由 Linux公社翻译组 原创翻译  Linux公社 诚意奉献 更多请访问此处博客网站 VMware workstation 是一个可以进行桌面操作的虚 ...

  9. Vmware下Ubuntu 14.04静态IP地址的设置方法

    一.环境 宿主机 Win 8.1 虚拟机工具 VMware 10.0 虚拟主机系统 Ubuntu 14.04   二.说明 这里需要注意的是:VMware对于VMnet8采用如下规则(192.168. ...

随机推荐

  1. 【转载】Analysis Service Tabular Model #002 Analysis services 的结构:一种产品 两个模型

    Analysis Service 2012 Architecture – One Product, Two Models 在之前SQL Server 2008 R2 版本中的分析服务实际上只有一个版本 ...

  2. Python数据结构之序列及其操作

    数据结构是计算机存储,组织数据的方式.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合. 在Python中,最基本的数据结构为序列(sequence).序列中的每个元素都有编号:从0开始递增 ...

  3. HDU - 6096 处理后缀的字典树

    题意:给定n个字符串,m次询问,每次询问多少个字符串前缀是pre且后缀是suf,前后缀不可相交 字典树同时存储前后缀,假设字符串长为len则更新2*len个节点,依次按s[0],s[len-1],s[ ...

  4. 思科设备配置DHCP服务

    路由器,三层交换机都是可以做DHCP服务的,下面以Cisco 3750G-24TS-S为例配置DHCP服务,指令如下: ip dhcp pool DHCP-Server network 192.168 ...

  5. Flask中路由系统以及蓝图的使用

    一.Flask的路由系统 1.@app.route()装饰器中的参数 methods:当前URL地址,允许访问的请求方式 @app.route("/info", methods=[ ...

  6. JVectorMap地图插件.Net版开源

    jVectorMap地图插件只要浏览器技术JavaScript.CSS,HTML,SVG或VML就可以浏览使用,不需要Flash或其他专有的浏览 器插件.所以jVectorMap在所有现代移动浏览器上 ...

  7. 【HADR】常见的问题

    [hadrpri@oc0644314035 ~]$ db2 start hadr on db org as primary SQL1768N  Unable to start HADR. Reason ...

  8. 设置npm的镜像源

    将npm的镜像源设置为淘宝镜像源 1.执行命令修改镜像源地址:npm config set registry https://registry.npm.taobao.org 2.重新加载修改后的地址: ...

  9. 时间格式为yyyymmdd的String类型的时间,计算时间间隔有错误

    时间格式类型为yyyymmdd,并且为String类型,计算时间间隔有误,一直搞不清楚是什么原因.网上百度了许多,时间格式基本都是yyyy-mm-dd这样的时间格式的,但是yyyymmdd这样的时间格 ...

  10. python-FTP模块

    #!/user/bin/python #coding=utf-8 import ftplib import os import socket HOST = 'ftp.kernel.org' DIRN ...