插件窝 干货文章 linux bogon如何检测与防范

linux bogon如何检测与防范

bogon iptables 使用 bash 619    来源:    2025-05-13

Linux中"bogon"的检测与防范

什么是bogon

在Linux/网络术语中,"bogon"指的是不应该出现在公共互联网上的无效或保留IP地址。这些地址包括: - 私有IP地址范围(如10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) - 保留地址(如127.0.0.0/8) - 未分配地址 - 多播地址等

检测bogon的方法

1. 使用网络监控工具

# 使用tcpdump检测异常流量
sudo tcpdump -n -i eth0 'net 10.0.0.0/8 or net 172.16.0.0/12 or net 192.168.0.0/16'

# 使用iftop查看网络连接
sudo iftop -n -P

2. 检查网络连接

# 查看当前所有网络连接
netstat -tulnp

# 或使用ss命令(更现代)
ss -tulnp

3. 检查系统日志

# 查看系统日志中的网络相关条目
grep -i "bogon" /var/log/syslog
grep -i "invalid" /var/log/syslog

4. 使用专门的bogon列表

# 下载Team Cymru的bogon列表
wget https://www.team-cymru.org/Services/Bogons/fullbogons-ipv4.txt

防范bogon的措施

1. 配置防火墙规则

使用iptables或nftables阻止bogon流量:

# iptables示例
sudo iptables -A INPUT -s 10.0.0.0/8 -j DROP
sudo iptables -A INPUT -s 172.16.0.0/12 -j DROP
sudo iptables -A INPUT -s 192.168.0.0/16 -j DROP
sudo iptables -A INPUT -s 127.0.0.0/8 -j DROP

2. 配置BGP路由过滤

如果是网络边界设备,应配置BGP过滤:

# 使用bgpq3工具生成过滤列表
bgpq3 -4 -l "BOGON_FILTER" AS-EXAMPLE > bogon-filter.conf

3. 定期更新bogon列表

# 创建自动更新脚本
#!/bin/bash
wget -O /etc/iptables/bogons.txt https://www.team-cymru.org/Services/Bogons/fullbogons-ipv4.txt
iptables -F BOGON_FILTER
for ip in $(cat /etc/iptables/bogons.txt); do
    iptables -A BOGON_FILTER -s $ip -j DROP
done

4. 配置反向路径过滤

# 启用严格的反向路径验证
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

5. 使用专业安全工具

  • 部署入侵检测系统(IDS)如Snort或Suricata
  • 使用网络监控工具如Nagios或Zabbix监控异常流量

系统主机名显示为bogon的问题

如果系统主机名显示为"bogon",这通常是由于DNS反向解析失败导致的。解决方法:

# 1. 检查/etc/hosts文件
sudo nano /etc/hosts

# 确保包含类似内容
127.0.0.1   localhost yourhostname
::1         localhost yourhostname

# 2. 检查/etc/hostname文件
sudo nano /etc/hostname
# 确保包含正确主机名

# 3. 重启网络服务
sudo systemctl restart networking

通过以上方法,您可以有效检测和防范Linux系统中的bogon相关问题。