安全技术和防火墙(二)

接上一节

备份和还原

iptables-save > /opt/iptables.bak

iptables-restore < /opt/iptables.bak

snat和dnat

snat源地址转换

内网到外网 内网ip转换成可以访问外网的ip

内网的多个主机可以只有一个有效的公网ip地址访问外部网络

dnat 目的地址转发

外部用户,可以通过一个公网地址访问服务内部的私网服务。

私网的ip和公网ip做一个映射

snat源地址转换

iptables -t nat -A POSTROUTING -s 192.168.233.0/24 -o ens36 -j SNAT --to 10.0.0.10

-A POSTROUTING用于在包路由之后修改源地址(当包从内部网络路由到外部网络时)

-t nat 指定表为nat表

-A POSTROUTING A添加 离开本机之后规则

-s 指定源ip

-o指定输出网络设备

-j 控制类型 SNAT源地址

--to 指定整个网段 192.168.233.0/24 从ens36出去时做源地址转换 成 10.0.0.10

DNAT 目的地址转换

iptables -t nat -A PREROUTING -d 11.0.0.11 -i ens36 -p tcp --dport 80 -j DNAT --to 192.168.233.10

-A PREROUTING在路由决策之前修改目标地址

-d 11.0.0.11 指定做为目的地址转换的ip地址

-i从指定的设备进入本机

-p指定协议

--dport指定端口

-j DNAT使用目的地址转换

--to 192.168.233.10

外网想要访问内网的192.168.233.10:80的这个web服务。只需要访问11.0.0.11就可以访问内网的web服务。

12.0.0.100 > 11.0.0.11 > 192.168.233.10

linux当中如何抓包:

tcpdump linux自带的抓包工具 完全安装自带 最小化安装需要自己安装

静态和动态抓包

静态:

tcpdump tcp -i ens33 -t -s0 -c 10 and dst port 80 and src net 192.168.233.0/24 -w /opt/target.cap

tcp 指定抓包的协议 (tcp udp icmp) 第一个参数 可以不指定协议

-i 只抓经过指定设备(ens33)的包

-t:不显示时间戳

-s0:抓完整的数据包

-c10:抓几个数据包

dst port :指定抓包的目的端口

src net 192.168.233.0/24 :指定抓包的ip地址

写net代表网段

host代表主机(ip地址)

-w 保存指定路径

使用sz target.cap 把文件下载下来 可以直接用实体机 wireshark软件打开 分析

注意 如果要用wireshark对数据包进行分析, tcpdump在抓包时,要使用-s0,抓取完整格式, 否则wireshark无法分析。

动态抓包

tcpdump -i ens33 -s0 -w /opt/ens33.cap

firewalld

firewalld是centos7自带的 7以前的默认是iptables

firewalld是按照区域来进行划分 包过滤防火墙

public 公共区域(默认区域) 默认配置了ssh以及DHCPv6预定服务放通,其他拒绝

trusted 信任区域 允许所有的数据包放通

block 限制区域 拒绝所有

drop 丢弃区域 丢弃所有数据包

dmz 非军事区域 默认只允许ssh

home 家庭区域 默认只允许ssh

internal 内部区域 和home一样

external 外部区域 默认只允许ssh

work 工作区域 默认放通ssh

相关推荐
Johny_Zhao2 小时前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴8503 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
诗句藏于尽头3 小时前
完成ssl不安全警告
网络协议·安全·ssl
一心0924 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上4 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊4 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
tan180°5 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
代码老y5 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程5 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9985 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github