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

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

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

相关推荐

win7快速关机设置(win7快速关机怎么设置)

在Windows7电脑上,您可以通过以下方法快速关机:1.使用快捷键Alt+F4。在桌面上按下Alt+F4,然后在弹出的窗口中选择“关机”,然后点击“确定”,电脑将会快速关机。2.使...

win7系统损坏文件无法修复(win7系统损坏怎么办)

1、首先在键盘上按Win+R按键,打开运行窗口。(如果不能正常开机的情况下,就开机按f8键进windows7安全模式内操作)2、在运行窗口,出入CMD,点击【确定】。3、在命令提示符窗口,先输入sfc...

戴尔网点查询(dell网点查询)

戴尔笔记本电脑维修点有4个,地点如下:A:戴尔笔记本电脑维修点地址:上海市长宁区长宁路1027号兆丰广场5层B:戴尔笔记本电脑维修点地址:上海市徐汇区漕溪北路45号C:戴尔笔记本电脑维修点地址:上...

官方(官方是什么意思)

1、外交部2、国防部3、国家发展和改革委员会4、教育部5、科学技术部6、工业和信息化部7、国家民族事务委员会8、公安部9、国家安全部10、监察部11、民政部12、司法部13、财政部14、人力资源和社会...

联想一体机电脑价格大全(联想一体机电脑报价)

看具体配置。联想(Lenovo)AIO520致美一体机台式电脑21.5英寸(i3-6006U4G1T集显WIFI蓝牙三年上门)¥3799.00联想(Lenovo)AIO520致美...

华为手机怎么设置默认浏览器

如下:1.首先,我们打开设置APP首页。2.接着,我们下滑设置页面,点击“应用管理”。3.这时,我们点击页面中想设为默认浏览器的浏览器。4.随后,我们点击页面下方的“浏览器应用”选项。5.此时,我们...

directx9显卡(directx8显卡)

不高!现在最新directx12了!当然是DX9的显卡比较新了,GEFORCE2TI系列确实很经典,但无法支持DX9,属于02年以前的老显卡了。支持DX9的显卡至少也是02年中期以后的显卡。...

登录163邮箱登录(163登陆邮箱登录)

163邮箱登录首页入口为http://mail.163.com/网易163免费邮箱--中文邮箱第一品牌.容量自动翻倍,支持50兆附件,免费开通手机号码邮箱赠送3G超大附件服务.支持各种客户端软件收发,...

下载影视大全看电视(影视大全直接下载)

1、准备一个U盘,下载TV影院App的安装包(apk格式的),下载后将其复制到U盘上;2、将U盘插入电视机的USB接口上,启动电视机,进入智能电视主界面;3、使用遥控器操作,找到文件管理,按确认键打开...

台式电脑的配置怎么看
  • 台式电脑的配置怎么看
  • 台式电脑的配置怎么看
  • 台式电脑的配置怎么看
  • 台式电脑的配置怎么看
outlook注册官网(outlook注册官网入口)

1.访问outlook.com,点击“创建新帐户”。2.点击“创建新Outlook帐户”,输入你的用户名、密码、国家/地区、生日、性别,然后点击“创建帐户”,即可完成注册。登陆邮箱被告知此账号不存...

win7哪个系统最好(win7哪家系统好用)
win7哪个系统最好(win7哪家系统好用)

Win7系统中,最好用的版本是Windows7Professional。它提供了广泛的功能和优秀的性能,适用于个人和商业用户。Windows7Professional具有稳定的操作系统,易于使用且具备高度的兼容性。它提供了许多高级功...

2025-12-09 08:03 off999

win10整理磁盘碎片的步骤(win10整理磁盘碎片的步骤包括)

    1、首先电脑桌面上打开(我的电脑),然后选择需要碎片整理的磁盘,如右键E盘,再单击属性。  2、在磁盘属性页面,点工具栏,在工具栏下面看到磁片整...

打印机怎么连电脑打印(电脑怎样添加打印机设备)
  • 打印机怎么连电脑打印(电脑怎样添加打印机设备)
  • 打印机怎么连电脑打印(电脑怎样添加打印机设备)
  • 打印机怎么连电脑打印(电脑怎样添加打印机设备)
  • 打印机怎么连电脑打印(电脑怎样添加打印机设备)
win11有一键ghost(win11有一键还原系统吗)

应该是系统设置上的问题。使用右键点击计算机选择属性-高级系统设置-点击启动和故障恢复栏的设置-最上面那个默认启动操作系统是不是设置在系统上,如果是设置在ghost上那就更改过来。如果这上面设置正确那么...

取消回复欢迎 发表评论: