一、Iptables防火墙
----------
**三表五链:**
三表:
五链:
filter:默认使用INPUT FORWARD OUTPUT链
NAT:默认PREROUTING OUTPUT POSTROUTING链
Mangle:五个链
一般:从内网---->外网 可控的
INPUT链使用最多
匹配动作:
允许(ACCEPT)
拒绝(REJECT)--->看到你的信息 拒绝扔掉 --->告诉你
登记(LOG)
不理睬(DROP)--->看到信息不理你(把你的消息扔掉)
**基本的命令参数:**
**iptables命令一般根据源地址 目的地址 协议 服务类型等**
![这里写图片描述](https://s2.51cto.com/images/blog/202310/20182645_653255e515c8f37149.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
例如设置INPUT默认为DROP拒绝,
iptables -P INPUT DROP
此时远程ssh连接会断开,并且无法Ping通该服务器IP
允许ICMP流量放行和SSH 22
执行:iptables -I INPUT --p icmp -j ACCEPT 则可以Ping通该服务器IP
执行:iptables -I INPUT -p tcp --dport 22 -j ACCEPT 则可以远程SSH连接
二、firewalld
-----------
RHEL7默认的防火墙管理工具
基于CLI 也可以基于GUI
支持动态更新技术 加入区域zone概念
区域---->策略
规则
1.在家中允许所有服务
2.办公室允许文件共享服
3.咖啡厅只能浏览网页规则:常见区域:默认区域public
区域 默认规则策略
![这里写图片描述](https://s2.51cto.com/images/blog/202310/20182645_653255e55978745380.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
**firewalld命令**
![这里写图片描述](https://s2.51cto.com/images/blog/202310/20182645_653255e5dda4b8783.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
**使用firewalld配置的防火墙策略--->默认运行模式 Runtime模式,当前生效模式--系统重启会失效**
**永久模式 Permanent--->需要参数 --permanent**
**设置的策略必须经过重启才生效**
**立刻生效 --reload**
事例:把原本访问本机的888端口的流量转发到 22端口 要求当前和长期都有效
![这里写图片描述](https://s2.51cto.com/images/blog/202310/20182646_653255e61b81114911.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
Firewall优先级最高!!!
--------
**SNT--为了解决ip地址缺乏**
服务的访问控制列表
TCP Wrappers 是THEL7 默认启用的流量监控系统
根据主机地址 和本机的目标服务
两个原则
1.编写拒绝规则时 填写的是服务名称 不是协议名称
2.建议先写拒绝
Iptables--firewall--->软件层次 数据层次
-------------------------------
Selinux--->Linux内核
------------------
**Selinux--->Linux内核保护**
**Setenforce 改变运行状态**
**Getenforce 获取selinux状态**
**状态:**
**Enforcing--记录警告 并且阻止**
**Permissive--允许 记录警告但是不阻止**
**Disabled--禁用**
**RHEL、CentOS 、Fedora 默认是Enforcing**
**其余是Permissive**