Linux系统安全配置iptables服务介绍

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统安全配置iptables服务介绍

Linux系统安全配置iptables服务介绍

Linux防火墙介绍

Linux系统防火墙功能是由内核实现的,从2.4版本之后的内核中,包过滤机制是netfilter,管理工具是iptables

netfilter

位于系统内核中的包过滤防火墙功能体系,被称为Linux防火墙的“内核态”

iptables

位于/sbin/iptables,是用来管理防火墙的命令工具,被称为linux防火墙的“用户态”

iptables的表与链介绍

链是防火墙规则或策略的集合,对于数据包进行过滤或处理,要把处理机制的不同,将各种规则放入不同的“链”中

默认的5种链如下:

INPUT:处理入站的数据包

OUTPUT:处理出站的数据包

FORWARD:处理转发数据包

POSTROUTING:在进行路由选择后处理数据包

PREROUTING:在进行路由选择前处理数据包

表是规则链的集合,具有某一类相似作用的规则,按不同的机制到不同的链之后,再被收入到不同的表中

默认的4个表如下:

raw表:确定是否对数据包进行状态跟踪

mangle表:为数据设置标记

nat表:修改数据包中的源、目IP或端口

filter表:过滤数据包或对数据包进行相关处理

iptables的表与链的结构如下

Linux系统安全配置iptables服务介绍

Iptables数据包过滤匹配介绍

表与表之间的优先顺序

raw— mangle–nat—filter

链之间的匹配顺序

入站数据:PREROUTING–INPUT

出站数据:OUTPUT—POSTROUTING

转发数据:PRETOUTING–FORWARD—POSTROUTINGS

链内的匹配顺序

1、按顺序依次检查,找到匹配的规则就停止检查

2、找不到匹配的规则,则按默认的策略处理

数据包匹配的流程图如下

Linux系统安全配置iptables服务介绍

iptables管理与配置

命令语法格式

iptables [-t 表名] 选项 [链名] [匹配条件] [-j 目标动作]

注:不指定表名时默认是filter表

不指定链名时默认是表内的所有链

除设置链的默认策略,否则需要指定匹配条件

[root@host ~]# iptables -t filter -A INPUT -p tcp -j ACCEPT

[root@host ~]# iptables -I INPUT -p udp -j ACCEPT

[root@lhost ~]# iptables -I INPUT 2 -p icmp -j ACCEPT

[root@host ~]# iptables -P INPUT DROP

[root@host ~]# iptables -L INPUT –line-numbers

Chain INPUT (policy DROP)

num  target     prot opt source     destination

1    ACCEPT     udp  –  anywhere   anywhere

2    ACCEPT     icmp –  anywhere   anywhere

3    ACCEPT     tcp  –  anywhere   anywhere

配置匹配数据包的条件命令

协议匹配(tcp/udp/icmp)

-p  协议名

iptables -A FORWARD -p ! icmp -j ACCEPT

iptables -A FORWARD -p tcp -j ACCEPT

**地址匹配  **

-s 源地址 -d 目标地址

iptables -A FORWARD -s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -i eth0 -s 100.0.0.100 -j ACCEPT

端口匹配

–sport 源端口   –dport 目标端口

iptables -A FORWARD  -p tcp –dport 22 -j ACCEPT

iptables -A OUTPUT -p tcp –sport 20:80 -j ACCEPT

常见数据包的处理动作

ACCEPT:放行数据包

DROP:丢弃数据包

REJECT:拒绝数据包

iptables规则导入、导出管理

导出:iptables-save /etc/sysconfig/iptables

导入:iptables-restore /etc/sysconfig/iptables

Linux系统安全配置iptables服务介绍 Linux系统安全配置iptables服务介绍
本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统安全配置iptables服务介绍


 上一篇
Linux系统Memcached服务介绍 Linux系统Memcached服务介绍
Memcached是一个免费开源的、高性能的、具有分布式内存对象缓存系统,它通过减轻数据库负载来提高WEB的访问性能,Memcached是服务端的主程序,这些缓存一般是用来保存一些经常存取的对象或数据(比如浏览器会缓存常访问的网页缓存一
2021-04-05
下一篇 
Redis集群生产环境高可用方案实战过程 Redis集群生产环境高可用方案实战过程
布署方案说明 1、sentinel负责对redis集群中的主从服务监控、提醒和自动故障转移 2、redis集群负责对外提供相关服务 Sentinel原理介绍 原理:          sentinel是一个分布式系统,可以在一个架构中运
2021-04-05