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

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

off999 2025-03-20 17:57 141 浏览 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

相关推荐

windowsxp原版iso下载(winxp系统原版)

不建议使用精简版推荐原装系统微软官方安装版WindowsXP3专业版64位简体中文安装驱动部署更新升级方法/步骤下载游戏之前你需要先下载一个平台,就跟游戏助手一样进入后是这样的,...

怎么给文件夹加密设置密码(给文件夹加密最简单的方法)
  • 怎么给文件夹加密设置密码(给文件夹加密最简单的方法)
  • 怎么给文件夹加密设置密码(给文件夹加密最简单的方法)
  • 怎么给文件夹加密设置密码(给文件夹加密最简单的方法)
  • 怎么给文件夹加密设置密码(给文件夹加密最简单的方法)
随便下载个pdf(pdf电子书)

下载PDF文件的具体方法因网站和浏览器而异,但一般来说,以下是一些下载PDF文件的通用步骤:1.打开网站上的PDF文件:在你的浏览器中打开链接,这样就可以在网页上查看PDF文档。2.查找下载选项:...

酷狗app下载(酷狗app下载安装)
酷狗app下载(酷狗app下载安装)

电视下载酷狗方法,打开电视,在菜单主界面上找到“ie浏览器”,点击并打开,在浏览器主页面搜索条框中输入“酷狗”,并点击搜索,找到“酷狗”的官网或者电脑版,选择相应的版本,然后进行下载,如果是压缩包就先解压再安装,之后等安装好之后,把它放在桌...

2026-01-24 07:15 off999

趣书网txt小说下载txt电子(趣书网txt电子书网站)

网站域名:qutxt.com  趣书网(www.qutxt.com)为广大网友提供有趣的好看的小说阅读服务,全站小说免费阅读并且无弹窗,趣书网是最值得你收藏的看小说读小说网站。...

搜狗输入法手机版官方免费下载
  • 搜狗输入法手机版官方免费下载
  • 搜狗输入法手机版官方免费下载
  • 搜狗输入法手机版官方免费下载
  • 搜狗输入法手机版官方免费下载
电脑键盘五笔字根表(电脑键盘五笔字根表口诀)

五笔字根表口诀助记词(王码86版)G王旁青头戋(兼)五一F土士二干十寸雨D大犬三(羊)古石厂S木丁西A工戈草头右框七H目具上止卜虎皮J日早两竖与虫依K口与川,字根稀L田甲方框四车力M...

itools官方下载官网(itools2.0下载)

itools显示无法安装驱动组件的原因和解决方法如下1、关闭程序本身自动下载驱动的进程;2、点击工具页面【已连接,无法识别】链接;3、点击方法三启动修复工具【启动修复】功能,然后点击修复等待组件修复程...

手机金山毒霸下载(下载一个金山毒霸)

1,金山毒霸的默认安装目录文件为“kingsoftantivirus”,所以安装时没有更改过安装路径的话,金山毒霸在电脑上的文件夹名称是“kingsoftantivirus”。2,金山毒霸默认安装...

腾讯游戏app下载(腾讯游戏app)

为什么电脑版的腾讯会议下载完以后就被阻止了?如果你遇到这种情况,可能是因为你的电脑上面下载的腾讯会议不是。正规渠道下载的,或者不是正版的腾讯会议,所以你下载的腾讯会议。有可能中了病毒,你可以用你的电脑...

亚马逊电子书免费下载网站(亚马逊电子书免费资源)

在亚马逊电子书停运后,你可以尝试以下方法下载小说: 1.使用其他电子书平台:有很多其他的电子书平台,如KindleUnlimited、AppleBooks、GooglePlayBo...

什么小说软件最全还免费(笔趣阁app下载)

最近新出了一个小说阅读器,好像叫新免小说阅读器,我自己也去下载了来看了一下,却是还挺不错的,总结了一下几个有点:1、完全免费,确实是免费的,没有充值的接口,问过客服也说是一款免费的软件,不像很多小说,...

游戏中心app(网易游戏中心app)

OPPO游戏中心下载游戏的方法:你可以点击顶部搜索栏输入游戏名称直接下载,也能在游戏中心的「精选」页面查看每日推荐游戏。点击「分类」筛选心仪的游戏,「排行」页面浏览热门内容。碰到喜欢的游戏,点击「安装...

迅雷播放器(迅雷播放器不支持此类视频文件怎么办)
迅雷播放器(迅雷播放器不支持此类视频文件怎么办)

特点不同、优势不同,一个是app一个是插件一、指代不同1、迅雷看看播放器:是迅雷公司出品的一款在线播放插件,采用P2P点对点传输技术,可以在线流畅观看高清晰电影。2、迅雷影音:是一款迅雷公司制作的视频播放软件,可播放各类高清视频。二、特点不...

2026-01-24 04:51 off999

在线翻译成中文(越南语在线翻译成中文)
  • 在线翻译成中文(越南语在线翻译成中文)
  • 在线翻译成中文(越南语在线翻译成中文)
  • 在线翻译成中文(越南语在线翻译成中文)
  • 在线翻译成中文(越南语在线翻译成中文)

取消回复欢迎 发表评论: