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

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

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

相关推荐

智学网查询成绩(七天网络查分数 学生成绩)

方法一,电脑登录。智学网网址http://www.zhixue.com方法二,手机登录。家长微信扫描“家长客户端”下载安装。学生扫描“学生客户端”下载安装。步骤二:输入用户名,密码。用户名和初始密码均...

刺激战场国际服下载正版官网

下载方法:谷歌商店可以下载,如果你在国外,直接用谷歌商店,然后搜索游戏就可以了,名字是PUBGMobile,如果你是在国内想要下载,有两种方法可以下载,一种是去谷歌下载。还有一种就是把自己的地址改成加...

mp3音乐免费下载软件(mp3音乐免费下载软件推荐)

实际上没有一款音乐软件是完全免费的。原因:1)大部分音乐软件提供的音乐资源都需要授权使用费或版权费用,这是软件研发和运营所需的必要开支。2)一些软件被免费提供,但是这些免费软件多半存在着广告等收益手段...

侠盗猎车手4(侠盗猎车手4怎么改成中文)

最低配置:  操作系统:Windows1064Bit,Windows8.164Bit,Windows864Bit,Windows764BitServicePack...

office2025永久破解版(office 2020 破解 下载)

Office2021是微软发布的一款办公软件,它包含了许多实用的功能,如Word、Excel、PowerPoint等。这款软件可以满足日常办公的需求,但如果你需要更多的高级功能或者与他人协作办公,可...

免费音乐下载网站免费(免费音乐下载网站免费播放)
  • 免费音乐下载网站免费(免费音乐下载网站免费播放)
  • 免费音乐下载网站免费(免费音乐下载网站免费播放)
  • 免费音乐下载网站免费(免费音乐下载网站免费播放)
  • 免费音乐下载网站免费(免费音乐下载网站免费播放)
无纸化办公系统(无纸化办公系统厂家)

无纸化化办公就是指下发的文件,报表,材料,等都通过网络发送电子版,为了环保,减少纸张的使用无纸化办公是指在日常工作中尽可能减少使用纸张,通过电子化手段实现信息传递和存储。无纸化办公可以提高工作效率、节...

123读书网(我15岁拿金棕榈很合理啊123读书网)

登录123图书馆点击“分享卖书”,目前有三种卖书方式可选:A单本卖书:首页点击“分享卖书”,输入作者、书名,就可以从书库里选择直接导入书籍信息。B图片卖书:首页点击“分享卖书”进入卖书页,会拍照即...

赚钱(赚钱的游戏可提现)

简单地说,挣钱是为了“活着”,是为了满足人的最低层次的需求;赚钱是为了“生活”,是为了满足除了基本物质需求以后的更高层次的需求。举个简单的例子,我可以说为了不饿肚子,我要挣钱买食物,为了一家人能去马尔...

小米10系列升级miui 14(小米10升级miui12)
  • 小米10系列升级miui 14(小米10升级miui12)
  • 小米10系列升级miui 14(小米10升级miui12)
  • 小米10系列升级miui 14(小米10升级miui12)
  • 小米10系列升级miui 14(小米10升级miui12)
qq网页登录(qq网页登录记录在哪里看)

左上角头像-设置-帐号、设备安全-关掉“允许手机、电脑同时在线”然后不会同时在线了(不会再打开了吧,我没遇到关掉自动开的情况)开的话可以实现手机平板PC在线而且你可以在手机端让你其他设备的QQ下线...

找求购客户的网站(找客户资源的网站)

收购网站需要签合同。就像企业一样,当你的网站在某个行业或某个领域具有足够影响力时,那么,网站就有了相应的价值。这时可能就有其他第三方愿意给出高价收购网站,以此获得进入该行业领域的机会,或者加强或巩固本...

苹果手机flash插件怎样安装(苹果手机flash插件怎样安装到电脑)

第1步:先打开苹果手机,点击进入桌面的Safari浏览器,搜索“Flash官网”进入官网。第2步:点击界面中的“立即安装”选项。第3步:点击Safari浏览器右上方的下载图标,就可以看到下载进度,下载...

windows 8(windows 8模拟器)
windows 8(windows 8模拟器)

1、win8系统的开机速度的确很快,一般的电脑基本上三十多秒才完成开机。2、win8的画面过于扁平化合,桌面的风格有冲突,如果不喜欢这个风格也很难改动。3、win8如果不是平板电脑,但win8的应用在笔记本中十分的鸡肋。4、就是用的快捷性来...

2026-01-30 16:03 off999

今天新闻最新消息(成龙今天新闻最新消息)

1、国家主席习近平将于15日在北京同俄罗斯联邦总统普京举行视频会晤。2、中共中央、国务院13日上午在南京隆重举行2021年南京大屠杀死难者国家公祭仪式。3、近日,退役军人事务部正式印发《退役军人、其他...

取消回复欢迎 发表评论: