百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

linux系统防火墙高级配置-Day 6:高可用与负载均衡

off999 2025-03-20 17:57 127 浏览 0 评论

1. 防火墙高可用架构

方案1:Keepalived + iptables/nftables

拓扑
- 主备节点通过VRRP协议实现IP漂移(Virtual IP: 192.168.1.100) - 实时同步防火墙规则(rsync/cron)

Keepalived配置示例

# 主节点配置(/etc/keepalived/keepalived.conf)
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    virtual_ipaddress {
        192.168.1.100
        }
# 防火墙服务健康检测
track_script {
    chk_firewall
    }
}

vrrp_script chk_firewall {
    script "/usr/bin/systemctl is-active nftables"  # 检测防火墙服务状态
    interval 2
    weight -20  # 服务失败时降低优先级触发切换
    }

规则同步脚本

# 主节点通过rsync推送规则到备节点
#!/bin/bash
nft list ruleset > /etc/nftables.conf
rsync -avz /etc/nftables.conf backup-node:/etc/nftables.conf
ssh backup-node "nft -f /etc/nftables.conf"

2. 四层负载均衡(L4)

iptables实现流量分发

# 随机分发HTTP请求到3台后端
iptables -t nat -A PREROUTING -p tcp --dport 80 \
    -m statistic --mode random --probability 0.33 \
    -j DNAT --to-destination 10.0.1.101:80

iptables -t nat -A PREROUTING -p tcp --dport 80 \
    -m statistic --mode random --probability 0.5 \
    -j DNAT --to-destination 10.0.1.102:80

iptables -t nat -A PREROUTING -p tcp --dport 80 \
    -j DNAT --to-destination 10.0.1.103:80

nftables高级负载均衡

# 定义后端服务器集合
nft add set inet load_balance backend_ips { type ipv4_addr; flags constant; elements = { 10.0.1.101, 10.0.1.102, 10.0.1.103 } }

# 轮询模式分发流量
nft add rule nat prerouting tcp dport 80 \
    dnat to jhash ip saddr . tcp dport mod 3 map { \
        0 : 10.0.1.101, \
        1 : 10.0.1.102, \
        2 : 10.0.1.103 \
    }

3. 七层负载均衡(L7)集成

HAProxy透明代理配置

# /etc/haproxy/haproxy.cfg
frontend http-in
    bind 192.168.1.100:80 transparent
    mode http
    default_backend web_servers

backend web_servers
    balance leastconn
    server web1 10.0.1.101:80 check
    server web2 10.0.1.102:80 check

# 防火墙放行并标记流量
nft add rule inet filter forward tcp dport 80 meta mark set 1 accept
sysctl -w net.ipv4.ip_forward=1

Nginx流量管理

# 加权轮询配置
upstream backend {
    server 10.0.1.101 weight=3;
    server 10.0.1.102 weight=2;
    server 10.0.1.103 weight=1;
}

# 联动防火墙限制连接数
limit_conn_zone $binary_remote_addr zone=per_ip:10m;
server {
    location / {
        limit_conn per_ip 50;
        proxy_pass http://backend;
        }
    }

4. 性能调优与监控

连接跟踪优化

# 调整内核参数(/etc/sysctl.conf)
net.netfilter.nf_conntrack_max = 1000000
net.netfilter.nf_conntrack_tcp_timeout_established = 3600

# 监控工具
conntrack -L -o extended | grep ESTABLISHED | wc -l
nft monitor | grep "new flow"

规则集性能评估

# 测试规则匹配速度(nftables)
nft --debug=netlink add rule inet filter input tcp dport 80 counter
# 输出示例:...[ evaluate ] tcp dport 80 => 80 ...

# iptables规则排序优化
iptables -L -n --line-numbers | grep ACCEPT | sort -k 4

5. 实战任务

任务1:构建双机热备集群

  • 在两台节点部署Keepalived和nftables
  • 配置虚拟IP 192.168.1.100,实现主备切换
  • 模拟主节点故障(systemctl stop nftables),验证IP漂移

任务2:配置七层负载均衡

  • 使用Nginx实现基于URI的流量分发:
location /api {
    proxy_pass http://api_servers;
}
location /static {
    proxy_pass http://static_servers;
}
  • 联动防火墙限制每个客户端IP每秒最多10个请求:
nft add rule inet filter input tcp dport 80 \
    meter http_ratelimit { ip saddr limit rate 10/second } \
    counter accept

6. 注意事项

  • 脑裂(Split-Brain)风险:使用多播检测或第三方仲裁服务配置冗余心跳线(eth1专用于VRRP通信)
  • 会话保持(Session Persistence):四层使用hashlimit模块源IP哈希七层通过Cookie或JWT实现粘性会话
  • 监控告警
# 统计被拒绝的负载均衡请求
nft list counters | grep "counter packets"
# 监控Keepalived状态
journalctl -u keepalived -f

相关推荐

iso镜像如何安装win7(iso镜像安装教程)

可采用以下两种方法:方法1,进入BIOS,关闭SecureBoot,启动CSM或者是选择LACY引导。用U盘带的分区工具,以MBR模式进行分区,把你的WIN7镜像GHOST到活动分区。不过你的WIN...

win7模拟器破解版(win7模拟器.apk)

启动模拟器之后,找到设置图标点击进入。2点击显示。3取消自动旋转屏幕的勾选。因为在电脑上使用android模拟器,不存在自动旋转屏幕的效果的模拟,所以这个功能对于模拟器是什么用的。而且如果模拟...

word密钥激活码2016(word 2016激活码)

1、office2016包含word、excel、powerpoint等组件,直接使用office2016密钥就能激活word2016。2、如果你安装的是word2016独立组件,也有独立的word2...

360重装系统只是重装c盘吗(360重装系统需要u盘吗)

在选择还原盘符时,软件默认为C盘,只要不是误操作或刻意为之,则系统只会安装到C盘。在安装系统完成后,先安装安全软件如360安全卫士加360杀毒或者金山毒霸之类其它安全软件,进行全盘查杀木马、病毒,再打...

电脑不断的重启是怎么回事(电脑在不断重启怎么回事)

1、系统出现问题系统如果丢失文件,缺少某种关键的注册表信息的话,是会出现不断重启的现象的。这种情况我们只需要重装系统即可。2、电脑硬盘损坏硬盘如果出现坏道,进水也会出现不断重启的现象。这个时候我们就需...

联想小新700(联想小新700电竞版配置)

小新700-15isk采用15.6英寸1920x1080分辨率全高清IPS雾面防眩光屏,通过莱茵TUV低蓝光认证,全段DC调光无频闪,100%sRGB的高色域覆盖,300尼特,摄像头升级至1080P全...

手机声卡软件免费下载(手机声卡软件有哪些)

要下载和安装声卡驱动程序,您可以按照以下步骤进行操作:1.确定您的声卡型号和制造商。您可以在计算机的设备管理器中找到这些信息。2.访问制造商的官方网站。在其支持或驱动程序下载页面上,搜索您的声卡型...

tplogin管理员初始密码(tplogincn管理员默认密码)

admin。tplogincn管理员密码是admin。tplogin.cn是TP-Link(普联)无线路由器的管理页面地址,页面中需要输入的管理员密码是admin。注意:如果输入admin后路由器没有...

nvidia驱动更新在哪里(nvidia驱动更新有用吗)

N卡显卡驱动可以在官网更新。通常情况下,N卡显卡的驱动可以通过官方网站进行更新,它们会定期发布新的驱动程序以解决已知或新发现的问题,而且官网更新的驱动程序可以有效地解决很多显卡问题。此外,如果您不知道...

u盘量产工具安卓版(u盘量产工具使用教程)

万能u盘量产工具。金士顿U盘量产工具可以改写U盘主控芯片数据实现U盘量产还原修复的功效。用户只需要将U盘插入计算机,使用金士顿U盘修复软件扫描修复和量产即可恢复。原理是重写和还原U盘的主控芯片数据,让...

ghost纯净版哪个网站(ghost 正版)

windows7ghost纯净版特色:1、专业为电脑制作,定制版系统使笔记本电脑运行更加可靠。2、安装盘经过多名电脑安装人员测试,稳定性和兼容性非常好。3、通过多台不同硬件型号的计算机测试,没有蓝屏,...

联想笔记本电脑怎么连接无线网wifi

答:联想笔记本电脑连接无线网wifi的方法:1在桌面右键点击“网上邻居”,选择属性菜单。2.后右键单击“无线网络连接”选择“属性”,进入无线网络连接属性对话框。3.在可用无线连接列表里找到对应的佰网络...

一键ghost xp下载和安装(一键ghost在哪下载)

在xp系统下运行,点击开始-程序-一键GHOST,软件运行后会自动识别当前系统状态,根据不同情况(C盘映像是否存在)自动定位到不同的选项:1、如果不存在GHO文件,则自动定位到"备份"...

一键重装系统怎么删除(开机系统之家一键重装系统怎么删除)

第一种方法:正常选择系统进入后,您可以直接打开小白一键重装系统软件,在软件的其它设置选项中有个启动菜单,在这里您可以找到需要删除的开机引导菜单删除即可。第二种方法:正常开机进入Windows系统,...

directx 11官方下载(directx11官网)
directx 11官方下载(directx11官网)

要在官网下载DX11,首先需要访问Microsoft的官方下载中心,并在搜索框中输入"DirectX11"。然后,选择适合操作系统的版本(一般都是Windows7和以上),下载并安装。注意,在下载前最好确保系统已经更新到...

2026-01-05 06:03 off999

取消回复欢迎 发表评论: