0416 日常运维(二)
一、firewalld和netfilter

1、临时关闭或者永久关闭防火墙
永久关闭:编辑配置文件,将selinux后的内容改为disabled


使用两种命令查看防火墙状态

2、netfilter(7版本以前)与firewalld(7版本以后)
如何关闭firewalld开机启动的命令:systemctl disable firewalld

再将服务关闭:systemctl stop firewalld并安装包iptables-services

开启systemctl start iptables 服务

使用命令iptables -nvl 查看iptables默认自带的规则

二、netfilter5表5链介绍

1、filter表用于过滤包,三个内置链

Input链:数据包进入本机时使用的链,查看访问端口的包的源ip,发现可疑的ip要禁掉。
Forward链:数据包到了机器后并不会进入到内核,此时需要判断目标地址是否是本机,如果不是本机会经过forward链,就会对经过forward的链的目标地址需要更改,或者转发
Output链:本机产生的一些包,出去之前需要做的一些操作,发现发送到可疑ip的包,需要将该ip禁掉。
2、net表用于路由器共享上网等,也有三个链

Prerouting链:用来更改进来那一刻的数据包
Postrouting链:用来更改出去那一刻的数据包

总结:如果数据包是本机的,数据流向为prerouting——input——output——postrouting链
如果数据包不是本机的,数据流向为prerouting——forward——postrouting链
然后针对数据包所在的链做想要的规则处理
三、iptables语法

1、iptables规则储存于配置文件cat /etc/sysconfig/iptables 中,重启服务service iptables restart,并使用iptables -nvL查看规则,保存规则service iptables save。
2、清空计数器iptables -Z

4、对来源ip进行封禁

5、简写只写目标端口,插入到规则表的最前列,过滤时会优先过滤前列端口。

6、删除规则

7、打印规则的序列号,针对序列号进行操作

8、删除对应序列号规则

9,output链未加任何规则,则会走默认的策略,但是可以更改默认策略(谨慎执行)drop,容易误操作,更改后只能进虚拟主机重新修改回来。

四、iptables filter表小案例
需求:需要把80/22/21端口放行,22端口需要指定ip段,只有该ip段可以访问到,其他ip段拒绝

1、定义全局变量ipt
先清空规则表,然后把默认策略定义下,再加规则指定状态,针对这些状态放行,再把网段访问22端口的数据包放行,再把访问80端口、21端口的数据包放行。



2、icmp规则示例
需求:可以ping通外部的机器,外部机器ping本机不能ping通

五、iptables nat表应用

1、给A机器添加网卡


默认完成,再选LAN区段,然后确定

2、给B机器添加网卡,与A机器相同的LAN区段
3、启动机器:A机器ens37网卡为新增的,设置其ip



4、在虚拟机B中给B机器设置ip,准备工作完成

5、让B机器连接外网

查看并设置B机器网关,检查后能够与公网通信(B机器相当于手机)

6、端口映射,把100.100端口映射为其他端口

增加规则之前先把之前iptables的规则使用-D删除,使其变为空表

增加规则:做进去包的端口转发,从100.100回来的包,做SNAT操作

给B机器加上网关(如之前已做过,则不需要再做,方法见上方),新建会话连接,查看B机器能否ping通外网,实现需求。

0416 课堂笔记
1、数据包流向及各状态控制

2、关于iptables中DNAT、SNAT和MASQUERADE的理解
http://ask.apelearn.com/question/7255
3、关于CentOS6默认的iptables状态


4、关于限速的用法
http://ask.apelearn.com/question/985 ;
http://jamyy.us.to/blog/2006/03/206.html

https://www.centos.bz/2018/10/iptables-%E7%9A%84limit%E6%A8%A1%E5%9D%97/

被折叠的 条评论
为什么被折叠?



