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

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

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

相关推荐

没有u盘怎么装win10系统(没有u盘怎么装系统到新硬盘)

如果没有u盘的话,可以采用以下方法安装:1.如果有光盘,并且计算机有光驱的话,可以使用光盘安装Windows10。2.如果有网络,且另外一台计算机有安装文件的话,可以使用网络方式安装Windows10...

电脑regedit在哪里找(电脑中的register)
电脑regedit在哪里找(电脑中的register)

1、首先我们点击电脑桌面左下角的“开始菜单”按钮,在里面点击“所有程序”,里面有一个“附件”,我们点开即可看到命令提示符,我们将命令提示符打开,如图所示。2、之后我们在如图“G:\Users\Administrator>”后面输入命令...

2025-12-01 14:51 off999

qq客户端网页(qq网页登陆入口)
qq客户端网页(qq网页登陆入口)

QQ在线登录入口:http://im.qq.com/,可以下载QQPC版在电脑上进行登录,也可在手机上下载QQ进行登录。扩展资料:QQ(TencentQQ)是腾讯公司借鉴于ICQ开发的一款基于Internet的即时通信(IM)软件,于1...

2025-12-01 14:03 off999

win8换win7一键重装(win8.1重装win7)

1.提前关闭所有杀毒软件后,在打开的界面中点击“重装系统”。等电脑自动检测完配置信息...2.开始选择自己想要重装的win10系统文件后点击“下一步”继续操作。3.根据自己需要勾选软件和重要文件后面“...

win10间歇性卡顿现象(windows10间歇性卡顿)

在Win10中,鼠标间歇性卡顿可能有多种原因,以下是一些可能的解决方法:1.鼠标驱动程序问题:可以尝试更新鼠标驱动程序,确保其符合最新版本。如果已经安装了最新版本的驱动程序,但仍然遇到这个问题,则可...

139邮箱登陆登录(139邮箱登陆登录入口验证码怎么弄)

139邮箱登陆的登录入口:http://mail.10086.cn,WAP地址(手机登录,产生的移动数据流量按客户套餐标准资费收取):http://wapmail.10086.cn中国移动139邮箱用...

电脑网站打不开怎么回事(电脑网站打不开了)

电脑浏览器打不开有可能是网络速度慢,有可能是电脑中病毒,也有可能是电脑系统问题,网络高峰期的时候,网速很慢就打不开浏览器网页,这时候上网没什么好办法,只有你耐心的等网速快了的时候再去使用,电脑要是中了...

什么品牌笔记本电脑质量好(什么牌子的笔记本电脑好2021)

1、苹果苹果电脑公司由斯蒂夫·乔布斯、斯蒂夫·盖瑞·沃兹尼亚克和RonWayn在1976年4月1日创立。1975年春天,AppleⅠ由Wozon设计,并被Byte的电脑商店购买了50台当时售价为6...

tplink官网设置网址(tplink的设置网址)
  • tplink官网设置网址(tplink的设置网址)
  • tplink官网设置网址(tplink的设置网址)
  • tplink官网设置网址(tplink的设置网址)
  • tplink官网设置网址(tplink的设置网址)
vivo手机设置下载(vivo手机更多设置在哪里找)
vivo手机设置下载(vivo手机更多设置在哪里找)

vivo手机设置软件权限方法:进入i管家-权限管理中,可以设置应用的权限。1.打开手机,找到“设置”,点击并进入。2.进入之后,找到“更多设置”,点击并进入。3.进入之后,找到“权限管理”,点击并进入。4.进入之后,找到“安装应用”,点击...

2025-12-01 10:51 off999

联想电脑开机进入bios(联想电脑开机进入bios快捷键)

可以通过以下步骤进入联想电脑的BIOS设置启动界面。明确可以进入BIOS设置启动界面。通常,联想电脑通过快捷键进入BIOS设置启动界面。具体如下:1.开机后按F1或F2键,可以进...

xp系统强行恢复出厂设置(winxp强制恢复出厂设置)
  • xp系统强行恢复出厂设置(winxp强制恢复出厂设置)
  • xp系统强行恢复出厂设置(winxp强制恢复出厂设置)
  • xp系统强行恢复出厂设置(winxp强制恢复出厂设置)
  • xp系统强行恢复出厂设置(winxp强制恢复出厂设置)
下载钉钉考勤打卡并安装(下载钉钉打卡考勤怎么用)

单位强制用钉钉不会违反劳动法或者劳动合同法等有关法律法规,使用钉钉是企业在经营管理中的一项选择,职工在与用人单位签订劳动合同、订立劳动关系之后,入职后要遵守企业的合理管理和规范。钉钉作为沟通和协同的多...

bsci认证费用一般要多少钱

BSCI是一个社会责任验厂,需要现场审核,获得报告,报告在BSCI平台进行公示,买家可以通过工厂得DBID账号查询相应报告内容,BSCI等级分为ABCDE,正常工厂拿到C等级即可,审核类型分为...

安全模式下重装电脑(安全模式下怎么重装电脑)

安全模式还是无法正常重做系统的。可以使用U盘pe中的ghost安装器安装系统。1、双击打开一键ghost恢复工具,选择“还原分区”,映像路径选择win7.gho文件,选择系统要还原的位置,比如C盘,或...

取消回复欢迎 发表评论: