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

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

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

相关推荐

注册qq账号(微信注册qq账号)

  1、直接进入微信,点击下方的注册。  2、输入电话号,之后这个手机号是可以解除绑定的,不会有任何影响。  3、之后会发验证码到手机,输入后就能到这个界面。  4、“添加通讯录朋友”,看自己的需求,...

屏幕录制软件免费下载(屏幕录制软件安卓版下载)

首先系统自带通常来说都有一个屏幕录制,或者是直接在这个应用商店上下载。录屏精灵或者是录屏大师,这些都是可以录制屏幕的。1、在手机上下载并安装第三方软件,下面以迅捷录屏大师为教程,大家可以到应用中心下载...

尘少影院电视剧免费观看(尘落电视剧免费观看电视)

平时舌音:色,早,昨。翘舌音:少,声,尘,从。判断一个字是不是平舌音,要看这个字的声母是不是平舌音声母。平舌音声母有:zcs“少”的音节是shǎo,“色”的音节是sè,“声”的音节是shēng“...

一键装机软件哪个好用(小白一键重装系统)

极客狗装机大师、极速系统装机大师都不错。1、极客狗装机大师采用了精美简洁的UI设计界面,让小白用户也可以轻松上手操作,可一键重装xp/win7/win8/win10操作系统,非常方便,有了它不用再担心...

win7ghost镜像下载(win7原版ghost镜像)

1、去微软官方网站下载。2、去系统之家下载,我自己的win10就是从哪里下载安装的,你可以试试哈。ghost镜像的使用一、备份主分区--C盘:假设你的操作系统安装在主分区--C盘,当系统重装不久,或...

dominate(dominate词根词缀)

dominate的意思是:1、vt.控制;支配;占优势;在…中占主要地位2、vi.占优势;处于支配地位【读音】英[?d?m?ne?t]美[?dɑ?m?ne?t]【短语】1、Domi...

苏宁易购官方旗舰店(苏宁易购官方旗舰店的东西可靠吗)

苏宁易购有自营商品和第三方商品,旗舰店属于第三方商家在苏宁开的店。苏宁自营主要是区别于苏宁易购第三方商品而言,苏宁自营指的是苏宁易购自己经营的商品,苏宁自营商品是指产品出自苏宁电器商城,产品售后由苏宁...

远程查看别人微信聊天记录(有没有远程查看别人微信聊天记录)
远程查看别人微信聊天记录(有没有远程查看别人微信聊天记录)

手机的远程守护功能,看到被守护人的聊天记录,这个是看不到的。他只能够查到你今天把这手机玩上了几个小时,只能够看到这些。平时不在家人的身边,如果他们在使用手机的时候遇到问题,我们不能第一时间帮到他们,现在RenoAce有【远程守护】功能,...

2026-01-29 05:03 off999

微信下载官方免费下载(微信下载官方免费下载并安装)
  • 微信下载官方免费下载(微信下载官方免费下载并安装)
  • 微信下载官方免费下载(微信下载官方免费下载并安装)
  • 微信下载官方免费下载(微信下载官方免费下载并安装)
  • 微信下载官方免费下载(微信下载官方免费下载并安装)
7723小游戏(7723游戏网页版入口)

7723游戏盒子是一款手机游戏平台,支持各种热门的游戏,包括《我的世界》。以下是在7723游戏盒子里面玩《我的世界》的步骤:1.打开7723游戏盒子应用,并在“搜索”栏中输入“我的世界”进行搜索。2...

绝地求生2未来之役下载(绝地求生2未来之役下载安装)

要下载《未来之役2》,你可以通过以下步骤完成。首先,在你的设备上打开应用商店,如AppStore或GooglePlay。然后,在搜索栏中输入"未来之役2"进行搜索。一旦找到游戏应用...

实景三维建模软件(实景三维建模流程)

建模工作最基本的原则是根据地质体特点、已有资料条件、建模目的制定技术路线,其中地质体特点起最重要的作用,如上所述,地质体几何形态上可以归纳成连续界面、半封闭、和封闭三种典型情形,地质三维建模与分析系统...

中信证券手机版下载(中信证券信e投app下载官网)

1、要求软件能够按给定的条件选出股票。2、选股条件的设置根据自己的需要而定,均线选股、指标选股均可。3、要复权后选股(前复权、后复权均可)。4、需要注意的是按条件选出股票后并非全部是黑马,还得需...

仙剑奇侠传游戏(仙剑奇侠传1安卓版单机)

一共七部。分别是仙剑奇侠传一、仙剑奇侠传二、仙剑奇侠传三、仙剑奇侠传三问情篇、仙剑奇侠传四、仙剑奇侠传五和仙剑奇侠传五前传。首先说这几部我都是玩过的,而且其中几部玩过十几遍。要按我的喜爱程度来分的话,...

最近中文字幕mv第一季歌词(最近中文字幕mv第一季歌词大全)

一天过去了一个月过去了你却还是没有联系我眼泪在流心在痛不会的只是暂时的不会的不会的不会的不要哄我你离开后的空位越来越空虚不管怎么看你都是我的爱琢磨数百遍我还是你的爱你就是月老赐予我的爱你...

取消回复欢迎 发表评论: