1.selinux 关闭

 vim /etc/sysconfig/selinux设置方法:
1      #SELINUX=enforcing     #注释掉2      #SELINUXTYPE=targeted  #注释掉3      SELINUX=disabled  #增加4     :wq  #保存,关闭。5     shutdown -r now   #重启

View Code

2.iptables 内网关闭,外网打开,大并发情况下,不能开iptables,影响性能,硬件防火墙。

iptables 工作流程小结

1.防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。

2.如果匹配上规则,即明确表明是阻止还是通过,此时数据包就不再向下匹配新规则了。

3.如果所有规则中没有明确表明是阻止还是通过这个数据包,也就是没有匹配上规则,向下进行匹配,直到匹配默认规则得到明确的阻止还是通过。

4.防火墙的默认规则是对应链的所有的规则执行完才会执行的。

5.iptables 配置实战:

iptables  -V 查看iptables 版本

man iptables 查看iptables帮助

查看防火墙的状态

/etc/init.d/iptables status

iptables  -nL

6.查看liunx内核默认加载模块

lsmod |egrep "nat|filter"

加载如下模块到linux内核

modprobe ip_tables

modprobe iptable_filter

modprobe iptable_nat

modprobe ip_conntrack

modprobe ip_conntrack_ftp

modprobe ip_nat_ftp

modprobe ipt_state

7.iptables 命令

 -n 数字

 -L 列表

 -F   清除所有规则 ,只留下默认规则,允许所有通过。

 -X   删除用户自定义的链

 -Z  链的计数器清零

 -t 指定表

--line-numbers 显示序号 

-A添加规则到指定链的结尾,最后一条

-I添加规则到指定链的开头,是第一条

-D 删除规则  ##删除指定规则  iptables -D INPUT  -p tcp --dport 1000 -j ACCEPT

这个区别的意义在意,规则是由上先下执行匹配;可以应用与防DDOS。

测试规则端口是否生效,可以再 cmd 上  telnet 10.0.0.18 80 看是否能连接。

iptables -I INPUT 2 -p tcp --dort 1000 -j ACCEPT         (2为第二行,插入在第二行的前面)

 -p协议 (all,tcp , udp,icmp). 默认all

--dport目的端口

--sport 源端口

 -j  (jump)处理的行为

 -s 指定源地址

-d 指定目的地址

-i INPUT  匹配进入的网卡接口

-o OUTPUT 匹配出去的网卡接口

==========================

基本的处理行为:ACCEPT(接受),DROP(丢弃),REJECT(拒绝)

8. 查看某个服务的端口

netstat -lntup|grep mysql

netstat -lntup|grep ssh

拒绝ssh远程连接(加了这条无法用xshell进行远程连接了),iptables默认的就是filter表,可以不指定,下面两条相等。

iptables -t filter -A INPUT -p tcp --dport  22  -j  DROP

iptables  -A INPUT -p tcp --dport  22  -j  DROP

-t指定filter表(不加这条,默认也是filter), -A增加规则,-p指定协议 --dport 指定端口,-j指定行为 DROP 为拒绝。

断掉后,得在远程主机,删除这条规则,或者清空规则才可以进行远程连接。

9.禁止网段连入

iptables  -A INPUT -i  etho -s 10.0.0.0/24  -j DROP

10.匹配端口范围(用冒号连接)--最佳写法

iptables -I INPUT -p tcp --dport 8080:8090  -j ACCEPT

还可以用列表形式添加多端口匹配 -m multiport

iptables -I INPUT -p tcp -m multiport --dport 21,80,8088,8080,3306 -j ACCEPT ,第一天允许,下面的不DROP 规则不匹配;

11.禁止ping (--imcp type8为ping)

iptables  -I INPUT -p icmp  --icmp-type 8 -j DROP

12 匹配网络状态

-m  state --state

NEW :已经或将启动新的连接

ESTABLISHED : 已经建立的连接

RELATED:正在启动的新连接

INVALID:非法或无法识别的

13.允许关联的数据包通过(web服务不要使用FTP服务)

#others RELATED ftp协议

#允许关联的状态包

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

14.生产环境中iptables 配置

#清除所有规则

ipatbles -F#清除用户自定义的链
iptables -X#清除当前所有链的计数器
iptables -Z#允许ssh远程连接端口

iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 允许网卡回环接口(服务器本机)
iptables -A INPUT -i lo -j ACCEPTiptables -A OUTPUT -o lo -j ACCEPT#设置DROP掉FORWARD,INPUT链,允许OUTPUT链
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT#允许指定网段通过(外网网段与内网网段)
iptables -A INPUT -s  211.154.152.0/24 -p all -j ACCEPT
iptables -A INPUT -s  192.168.152.0/24 -p all -j ACCEPT#允许对外提供服务80端口
iptables -A INPUT -p tcp  --dport 80 -j ACCEPT#允许icmp类型通过(所有ip都能ping)
iptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT# 允许关联的包通过(一般应用与ftp)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT#永久保存防火墙配置,预防重启后失效
/etc/init.d/iptables save
或用重定向方式保存(很少用)
iptables-save >/etc/sysconfig/iptables

iptables

 生产环境中

使用iptables  -F 切忌(特别是托管机房)

要先执行 

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT

/etc/init.d/iptables save

然后执行

 iptables -F

要不然,没有规则,全部是drop ,ssh 断开了,所有连接失效,很严重;

15.生产环境中iptables 维护

#编辑规则
vim /etc/sysconfig/iptables#加入想要的规则
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT/etc/init.d/iptables reload##改DROP 一定要线下先测试一通,避免把自己DROP掉#封IP,第一行封,范围小,影响不大

iptables -I INPUT -p tcp  -s 10.0.0.106 --dport 80 -j DROP

View Code

16 nat 表的核心功能: IP及端口的映射转换

1.共享上网

2.端口映射

17

扩展匹配
指定-m选项,表示用什么模块来匹配,如:
-m state --state
NEW,ESTABLISHED,RELATED 表示用state模块来匹配当前连接状态为这三种状态的连接
-m iprange
--src-range 用iprange模块匹配来源的ip地址范围
--dst-range 用iprange模块匹配目的的ip地址范围
-m multiport
--source-ports 用multiport模块来匹配来源的端口范围
--destination-ports 用multiport模块来匹配目的的端口范围
我们看如下一条例子来解读:
-A INPUT -p tcp -m iprange --src-range 121.21.30.36-121.21.30.100 -m multiport --destination-ports 3326,3327,3328 -m state --state NEW -j ACCEPT
这表示来自121.21.30.36-121.21.30.100这个地址范围的,请求端口为3326,3327,3328并且是新建的连接,都给予放行

转载于:https://www.cnblogs.com/wolfboy55-163-com/p/8149632.html

linux下iptables详解相关推荐

  1. 弱网环境搭建之 Linux tc iptables 详解

    弱网环境搭建之 Linux tc 详解 0. 背景 1. 工具选择 2. 搭建流程 2.1 Linux tc 简介 2.2 弱网搭建思路 2.3 完整代码展示 0. 背景 笔者有一个需要搭建弱网环境来 ...

  2. Linux下命令详解(-)

    linux 下的命令详解 今天的是linux下tar包的打包和解包  打包并压缩  解包解压缩的命令详解 要是有不对的地方请各位指正,和有补充的请留言 在此表示感谢 By:黑风 打包 (把多个文件放在 ...

  3. Linux下task_struct详解

       背景:为了管理进程,操作系统必须对每个进程所做的事情进行清楚地描述,为此,操作系统使用数 据结构来代表处理不同的实体,这个数据结构就是通常所说的进程描述符或进程控制块. 在linux系统中,这就 ...

  4. Oracle10g在linux下安装详解

    Oracle数据库我想大家都知道我在这里就不多介绍了,它也有很多的版本,我们今天来安装一下oracle10g,根据我的理解oracle数据库大部分都安装在linux下,所以我们就在linux下来安装o ...

  5. 登陆linux主机提示all,修改 linux 的命令行提示符PS1-限制IP通过SSH登陆linux服务器-linux下系统服务详解_169IT.COM...

    很多朋友可能对windows下的服务比较了解,但对于linux下的系统服务(守护进程)可能有些陌生. 这里收集了57个linux下的系统服务的详细解释,供大家学习参考. 1. NetworkManag ...

  6. linux路由表命令,linux下路由表详解

    主机想要发送数据的时候,参考的对象就是路由表. 如果两个不同网段的主机想要发送数据,经过的具体的经过: 1.查询IP数据包的目标IP地址,主机会查阅Ip数据包报头的目标IP地址. 2.查询是否存在与本 ...

  7. 【Linux】iptables详解

    文章目录 iptables简介 iptables基础 iptables和netfilter的关系 iptables传输数据包的过程 iptables的规则表和链 表(tables) 链(chains) ...

  8. linux setcap指令,Linux下setcap详解

    为啥要讲setcap这个玩意呢,因为最近在做国产化系统编译安装产品,遇到普通用户下Nginx不能够小于1024一下端口的问题. CAPABILITIES(7) 文档有一段: For the purpo ...

  9. linux下udev详解

    一.udev简介 udev是一个设备管理工具,udev以守护进程的形式运行,通过侦听内核发出来的uevent来管理/dev目录下的设备文件.udev在用户空间运行,而不在内核空间 运行.它能够根据系统 ...

  10. LINUX下 Udev详解

    如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略.在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev ...

最新文章

  1. C# 3.0下有限状态机的一种优雅的实现
  2. mysql日期加一天的公式_2020国考行测冲刺指导:数学运算常用公式大盘点
  3. jqgrid实现客户端导出Excel、txt、word、json等数据格式的文件
  4. PC端自适应使用rem
  5. 无人机航拍高空全景图的四个步骤
  6. 一、肿瘤全基因组分析概况(Pan-cancer analysis of whole genomes,PCAWG)
  7. ROS话题通信c++和python实现
  8. Windows 10打开蓝牙已关闭解决方法
  9. 扫描文件存电子版方法
  10. 为什么你的人脉都没什么用!
  11. java实现CORBA
  12. 如何使用Python实现图像文字识别OCR
  13. 那些年啊,那些事——一个程序员的奋斗史 ——72
  14. 计算机网络基础中国石油大学,2017中国石油大学继续教育计算机网络基础答案...
  15. Xilinx与Altera的FPGA区别
  16. Python办公自动化之收发邮件--163和qq邮箱
  17. 架构和框架(Framework)的区别
  18. 【调剂】华东交通大学软件学院2020年硕士研究生招生调剂信息
  19. 1/cos^3的不定积分 cos^3分之一的不定积分
  20. c语言序数英文,(英语 )序数词第一至40怎么写序数词第一至40怎么写?谁帮个忙...

热门文章

  1. 墙裂推荐!2020Android阿里腾讯百度字节美团网易爱奇艺校招面试汇总
  2. HashMap 和 currentHashMap 我们终于给你总结清楚了!
  3. 阿里大佬浅谈大型项目前端架构设计
  4. 寒心!一个开发者就这样离开了!
  5. php使用正则表达式标记标题,PHP正则表达式以匹配HTML标记a之外的关键字
  6. python操作excel的读写
  7. 【DSP开发】DSP程序优化
  8. ecmall挂件开发实例二(转)
  9. centof7无法上网问题
  10. Java课程设计---Eclipse基本环境配置