期中架构&防火墙¥四表五链
今日内容
- 架构图
- 包过滤防火墙
- Iptables
- 新建虚拟机
内容详细
一、架构图
用户通过域名访问一个网站类比开车去饭店用餐
访问网站的流程
1、浏览器输入网站的域名(www.baidu.com),向网站请求资源
2、域名发送给 DNS 服务器解析成网站的 IP 地址,通过 IP 地址可以找到该网站的服务器地址
3、经过整个网站服务器的防火墙检验,进入内部
4、访问流量通过负载均衡引向各个 web 服务器
5、服务器首先在缓存带中寻找资源(提前准备好的比较快)
6、缓存带没有则去数据库服务器中找
7、再去静态文件 NFS 服务器中找
8、在底层有 跳板机 、监控、 备份
9、以上所有服务器运行在一些相应的平台中:Vmware 、docker
流程图
图1:
图二 :
二、包过滤防火墙
1、什么是包过滤防火墙
什么是包
在数据传输的过程中,并不是一次性全部传输完成的;
而是将数据分成若干个数据包,一个个一点点地传输
什么是包过滤防火墙
过滤数据包的防火墙
2、包过滤防火墙如何实现
通过系统安全框架,过滤数据包
三、Iptable
1、简介
什么是防火墙
防止别人恶意访问
它是一种位于内部网络与外部网络之间的网络安全系统。是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。
防火墙(Firewall),也称防护墙,是由Check Point 创立者Gil Shwed于1993 年发明并引入国际互联网(US5606668(A)1993-12-15)。
在网络的世界里,要由防火墙过滤的就是承载通信数据的通信包。
在网络中,所谓“防火墙”,是指一种将内部网和公众访问网(如Internet)分开的方法,它实际上是一种隔离技术。防火墙是在两个网络通讯时执行的一种访问控制尺度,它能允许你“同意”的人和数据进入你的网络,同时将你“不同意”的人和数据拒之门外,最大限度地阻止网络中的黑客来访问你的网络。换句话说,如果不通过防火墙,公司内部的人就无法访问Internet,Internet上的人也无法和公司内部的人进行通信。
防火墙种类
1、硬件防火墙
F5
2、软件防火墙
iptables
firewalld
安全组
补充
防火墙的分类方法,主要有以下6种:
1、软、硬件形式分类:软件防火墙、硬件防火墙、芯片级防火墙。
2、防火墙技术分类:包过滤型防火墙、应用代理型防火墙 。
3、防火墙结构分类:单一主机防火墙、路由器集成式防火墙、分布式防火墙。
4、防火墙的应用部署位置分类:边界防火墙、个人防火墙、混合防火墙。
5、防火墙性能分类:百兆级防火墙、千兆级防火墙。
6、防火墙使用方法分类:网络层防火墙、物理层防火墙、链路层防火墙。
2、Iptable 链的概念
四表五链
哪四个表,有哪些作用
具备某种功能的集合叫做表
1、filter : 负责做过滤功能
INPUT、OUTPUT、FORWARD
2、nat : 网络地址转换
PREROUTING、INPUT、OUTPUT、POSTROUTING
3、mangle : 负责修改数据包内容
PREROUTING、INPUT、OUTPUT、POSTROUTING、FORWARD
4、raw : 负责数据包跟踪
PREROUTING、OUTPUT
哪五条链,运行在哪些地方
1、PREROUTING : 主机外报文进入位置,允许的表mangle, nat(目标地址转换,把本机地址转换为真正的目标机地址,通常指响应报文)
2、INPUT : 报文进入本机用户空间位置,允许的表filter, mangle
3、OUTPUT : 报文从本机用户空间出去的位置,允许filter, mangle, nat
4、FORWARD : 报文经过路由并且发觉不是本机决定转发但还不知道从哪个网卡出去,允许filter, mangle
5、POSTROUTING : 报文经过路由被转发出去,允许mangle,nat(源地址转换,把原始地址转换为转发主机出口网卡地址)
3、Iptables 流程图
三个模板
流入本机:PREROUTING --> INPUT --> PROCESS(进程)
经过本机:PREROUTING --> FORWARD --> POSTROUTING
从本机流出:PROCESS(进程) --> OUTPUT --> POSTROUTING
流入本机:
流出本机:
经过本机(vpn)
中转站
流入本机: A ---> PREROUTING ---> INPUT ---> B
流出本机:OUTPUT ---> POSTROUTING ---> B
经过本机: A ---> OUTPUT ---> POSTROUTING | ---> PREROUTING ---> FORWARD ---> POSTROUTING ---> C ---> PREROUTING ---> INPUT ---> B
filter : INPUT 、OUTPUT 、FORWARD
nat : PREROUTING 、 OUTPUT、 POSTROUTING
raw : PREROUTING、 OUTPUT
mangle : PREROUTING INPUT FORWARD OUTPUT POSTROUTING
四、新建虚拟机
1、模板机要准备的文件
创建一个 shell 脚本,用于修改虚拟机的ip和主机名
执行该脚本可以接收两个参数,
一个是修改后的ip地址后缀,一个是主机名
在脚本文件中用 $1 和 $2 来接收这两个参数,用于动态修改系统配置
# 1、指定解析器
#!/bin/bash
# 2、接收外部传入的参数 $1,修改网卡ip
sed -i "s/.100/.$1/g" /etc/config/network-scripts/ifcfg-eth[01]
# 3、修改主机名
hostnamectl set-hostname $2
# 4、修改完 ip 之后需要重启网络才能生效
systemctl restart network
易错点 : 脚本文件中如果要用 $1 接收外部输入的值,$1存在命令中的正则中时,引号一定要用双引号,接收变量值的意思,单引号就是输入什么打印什么
例子 :
sed -i "s/.100/.$1/g" /etc/sysconfig/network-scripts/ifcfg-eth[01]
传入系统优化文件 init.sh
Linux 系统优化文件的模板在博客的底部,请自取
给系统优化文件和新建的 shell 脚本文件都添加可执行权限
chmod +x /root/init.sh
chmod +x /root/changeIP
(备用)使用 xftp 给虚拟机系统传文件
如果下载 lrzsz 仍然传不了文件,那就下载 xftp 上传
测试脚本文件是否能修改 ip 和 主机名成功
/root/changeIP 81 m01
2、要创建的虚拟机(服务器)
负载均衡( 2 个)
# 类似迎宾服务员
lb01
lb02
使用ip :
192.168.15.5
192.168.15.6
网页资源( 3 个)
# 类似指引服务员
web01
web02
web03
使用ip :
192.168.15.7
192.168.15.8
192.168.15.9
NFS 静态文件
# 类似仓库
nfs
使用ip :
192.168.15.31
备份(backup)
backup
使用ip :
192.168.15.41
数据库(db01)
# 类似食品
db01
使用ip :
192.168.15.51
redis 缓存(cache)
# 类似先准备好的菜
事先准备好的资源
使用ip :
192.168.15.61
zabbix 监控(prometheus)
使用ip :
192.168.15.71
跳板机(jumpserver)
m01
使用ip :
192.168.15.81
系统优化文件:
#!/bin/bash
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum update -y
yum -y install python-setuptools python-pip gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel zipqunzip ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssh openssl-develnss_ldap openldap openldap-devel openldap-clients openldap-servers libxslt-devel libevent-devel ntp libtool-ltdl bison libtool vim-enhanced python wget lsof iptraf strace lrzsz kernel-devel kernel-headers pam-devel tcl tk cmake ncurses-devel bisonsetuptool popt-devel net-snmp screen perl-devel pcre-devel net-snmp screen tcpdump rsync sysstat man iptables sudo libconfiggit bind-utils tmux elinks numactl iftop bwm-ng net-tools expect
setenforce 0
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
systemctl disable --now firewalld
echo '#Timing synchronization time' >>/var/spool/cron/root
echo '0 */1 * * * /usr/sbin/ntpdate ntp1.aliyun.com &>/dev/null' >>/var/spool/cron/root
cat >>/etc/sysctl.conf <<EOF
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.ip_local_port_range = 4000 65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans = 16384
net.ipv4.ip_forward = 1
EOF
sysctl -p
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
systemctl restart sshd
systemctl disable abrt-ccpp.service
systemctl disable abrt-oops.service
systemctl disable abrt-vmcore.service
systemctl disable abrt-xorg.service
systemctl disable abrtd.service
systemctl disable accounts-daemon.service
systemctl disable atd.service
systemctl disable auditd.service
systemctl disable autovt@.service
systemctl disable avahi-daemon.service
systemctl disable bluetooth.service
systemctl disable cups.service
systemctl disable dbus-org.bluez.service
systemctl disable dbus-org.fedoraproject.FirewallD1.service
systemctl disable dbus-org.freedesktop.Avahi.service
systemctl disable dbus-org.freedesktop.ModemManager1.service
systemctl disable dbus-org.freedesktop.NetworkManager.service
systemctl disable dbus-org.freedesktop.nm-dispatcher.service
systemctl disable display-manager.service
systemctl disable dmraid-activation.service
systemctl disable firewalld.service
systemctl disable gdm.service
systemctl disable irqbalance.service
systemctl disable iscsi.service
systemctl disable ksm.service
systemctl disable ksmtuned.service
systemctl disable libstoragemgmt.service
systemctl disable libvirtd.service
systemctl disable lvm2-monitor.service
systemctl disable mcelog.service
systemctl disable mdmonitor.service
systemctl disable microcode.service
systemctl disable ModemManager.service
systemctl disable multipathd.service
systemctl disable NetworkManager-dispatcher.service
systemctl disable NetworkManager.service
systemctl disable postfix.service
systemctl disable qemu-guest-agent.service
systemctl disable rngd.service
systemctl disable rtkit-daemon.service
systemctl disable smartd.service
systemctl disable spice-vdagentd.service
systemctl disable systemd-readahead-collect.service
systemctl disable systemd-readahead-drop.service
systemctl disable systemd-readahead-replay.service
systemctl disable tuned.service
systemctl disable vgauthd.service
systemctl disable vmtoolsd.service
cat >/etc/motd <<EOF
#********************************************************************#
# WelCome To Login #
# Author:chenyang #
# WX:Alvins0918 #
# Date:2021-05-20 #
# Description:老男孩IT教育Linux学院 #
# Copyright:2021 All rightsreserved #
#********************************************************************#
EOF
期中架构&防火墙¥四表五链的更多相关文章
- 1、架构--架构图、Iptables(简介、四表五链、流程图、使用、扩展模块)、包过滤防火墙
笔记 1.画架构图 2.Iptables 1.1 什么是防火墙 防止别人恶意访问. 1.2 防火墙种类 硬件防火墙 F5 软件防火墙 iptables firewalld 安全组 3.Iptables ...
- Linux对外提供服务 网络操作 端口操作 1.开启服务监听端口 2.设置防火墙,放行访问端口的包 iptables&netfilter 四表五链和通堵策略
主题: Linux服务器上软件提供服务 1.网络操作 2.端口操作 1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机) 2.端口操作 1.开启服务监听端口 2.设置防火墙,放行访问 ...
- IPtables 之“四表五链”
目录 架构图 IP tables 简介 包过滤防火墙 Iptables如何过滤 "四表" "五链" Iptables流程 架构图 公司架构模式(酒店迎宾比喻) ...
- iptables详解(2):四表五链
关于iptables中“四表五链”,我们今天来好好唠唠: 1.表的概念: 我们把具有相同功能的规则的集合叫做"表",所以说,不同功能的规则,我们可以放置在不同的表中进行管理,而ip ...
- iptable四表五链
链(内置): PREROUTING:对数据包作路由选择前应用此链中的规则: INPUT:进来的数据包应用此规则链中的策略: FORWARD:转发数据包时应用此规则链中的策略: OUTPUT:外出的数据 ...
- iptable的四表五链
iptable的概念中有四张表,五条链. 四张表是: filter表——过滤数据包 Nat表——用于网络地址转换(IP.端口) Mangle表——修改数据包的服务类型.TTL.并且可以配置路由实现QO ...
- iptables的四表五链
iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables.真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构. iptables包含4个表, ...
- iptables四表五链及默认规则使用,
网络基础 TCP/IP模型: 应用层===传输层===网络层===数据链里层===物理层 数据封装: MAC帧头+IP报头+TCP/UDP报头===HTTP请求 数据帧 TCP/UDP报头: 随机产生 ...
- iptables 四表五链
netfilter/iptables IP 信息包过滤系统是一种功能强大的工具,可用于添加.编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则.这些规则存储在专用的信息包过滤表中 ...
随机推荐
- post请求后获取不到请求头信息的原因
在前台获取数据时,因为没有条件,所以不用传数据,用的post请求.再添加token验证时想着前端在请求时直接添加一个请求头信息就ok 没想到后台却获取不到请求头信息,打印了下日志发现是null,这是怎 ...
- jsp文件中文乱码解决
文件顶加上 <%@ page contentType="text/html;charset=UTF-8" language="java" %>即可
- 安装Apache-storm-0.9.1-incubating图解教程
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6596214331988247054/ 安装步骤 (1) 安装Zookeeper集群,可以参考前一篇文章,本文已安装 ...
- vue2.0点击其他任何地方隐藏dom
methods: { handleBodyClick(){ if (绿色区域出来了,要判断点击其他地方就要关闭,这样可以避免绿色区域已经关闭还在操作) { let _con = $(目标区域) if ...
- 获取iframe外的document
在iframe中点击弹出层外部分弹出层消失,但是点击iframe外部分就操作不了弹出层了,被这个问题困扰了不少时间,今天得以解决,代码如下: 说明:$(top.document,document).c ...
- Linux基础之终端、控制台、tty、pty简介说明
最近在搞Linux提权的时候,有时候su 用户名 登录的时候发现登录不了,因为tty终端,交互不了,所以我也来总结一下 一. 基本概念 1. ttytty(终端设备的统称):tty一词源于telety ...
- warmup(HCTF 2018)
为啥想写这道题的wp呢,因为这道题就是照着phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)复现出来的 题目 查看源码很容易找到source.php,直接访问 分析 题 ...
- 有道翻译js加密参数分析
平时在渗透测试过程中,遇到传输的数据被js加密的比较多,这里我以有道翻译为例,来分析一下它的加密参数 前言 这是有道翻译的界面,我们随便输入一个,抓包分析 我们发现返回了一段json的字符串,内容就是 ...
- LCT小记
不用说了,直接上怎么 die( 千万不要和 Treap 一样写左旋 zig 和右旋 zag,莫名死亡.Splay 只支持一个 rotate 上旋一个节点即可. splay() 之前记得弄一个栈存储 u ...
- C 库函数 - pow()
1.C 标准库 - <math.h> 2.C 库函数 double pow(double x, double y) 返回 x 的 y 次幂,即 xy. 3.pow() 函数的声明. dou ...