start_time: 2024-07-20 07:56:51 +0800

第9篇 Linux防火墙-日志管理

96
铁甲万能狗
IP属地: 广东
0.2 2020.03.26 09:23 字数 540

本篇主要还是解决,第8篇防火墙配置遗留的一些问题,中间穿插了《第9篇:Linux rsyslog日志服务》的内容。

image

我们知道这些日志由内核生成,因此它们转到接收内核日志的文件:/var/log/kern.log。如果要将这些日志重定向到其他文件,则无法通过iptables完成。 可以在分发日志的程序的配置中完成:rsyslog。

首先确保Linux的rsyslog服务已经正常配置,我们在其配置文件中,确保include(file="/etc/rsyslog.d/*.conf" mode="optional")已经取消注释,以便rsyslog加载/etc/rsyslog.d目录下的任何配置文件



我们在/etc/rsyslog.d目录下新建一个firewalld.conf的文件,然后写入其中的日志配置

kern.* /var/log/firewalld.log

还有我们需要配置日志滚动

vim /etc/logrotate.d/syslog

如下图所示

OK,剩下的问题我们需要重新修订之前的iptables的规则,之前的direct规则(iptables规则)
我们为以下几种攻击类型的添加以下目标动作的chain

  • 端口扫描 chain名称是PORT_SCANNING
  • IP欺骗,chain名称是SPOOFING
  • sync攻击,chain名称是SYN_ATTACK
  • tcp泛洪,chain名称是TCP_FLOOD
firewall-cmd --permanent --direct --add-chain ipv4 filter PORT_SCANNING
firewall-cmd --permanent --direct --add-chain ipv4 filter SPOOFING
firewall-cmd --permanent --direct --add-chain ipv4 filter SYN_ATTACK
firewall-cmd --permanent --direct --add-chain ipv4 filter TCP_FLOOD

我们为上面的每条chain规则定义两个target

  • 首先 -j LOG的target,表示对匹配规则的数据包的信息写入日志文件中
  • 然后 -j DROP的target,表示对匹配规则的数据包最终做丢弃处理
ipv4 mangle PORT_SCANNING 0 -m recent --name portscan --rcheck --seconds 25200 -j DROP
ipv4 mangle PORT_SCANNING 1 -m recent --name portscan --remove
ipv4 mangle PORT_SCANNING 2 -p tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix port_scan:
ipv4 mangle PORT_SCANNING 3 -p tcp --dport 139 -m recent --name portscan --set -j DROP
ipv4 mangle SPOOFING 0 -j LOG --log-prefix ip_spoofing:
ipv4 mangle SPOOFING 1 -j DROP
ipv4 mangle SYN_ATTACK 0 -j LOG --log-prefix syn_attack:
ipv4 mangle SYN_ATTACK 1 -j DROP
ipv4 filter TCP_FLOOD 0 -j LOG --log-prefix tcp_flood:
ipv4 filter TCP_FLOOD 1 -j DROP

之后我们将之前定义的规则修改以下

ipv4 mangle ANTI_TCP_INVALID 0 -m conntrack --ctstate INVALID -j DROP
ipv4 mangle ANTI_TCP_INVALID 1 -p tcp '!' --syn -m conntrack --ctstate NEW -j DROP
ipv4 mangle ANTI_TCP_UNORMAL_MSS 0 -p tcp -m conntrack --ctstate NEW -m tcpmss '!' --mss 536:65535 -j DROP
ipv4 mangle ANTI_FORGE_TCP_FLAG 0 -p tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 1 -p tcp --tcp-flags FIN,SYN FIN,SYN -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 2 -p tcp --tcp-flags SYN,RST SYN,RST -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 3 -p tcp --tcp-flags FIN,RST FIN,RST -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 4 -p tcp --tcp-flags FIN,ACK FIN -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 5 -p tcp --tcp-flags ACK,URG URG -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 6 -p tcp --tcp-flags ACK,FIN FIN -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 7 -p tcp --tcp-flags ACK,PSH PSH -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 8 -p tcp --tcp-flags ALL ALL -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 9 -p tcp --tcp-flags ALL NONE -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 10 -p tcp --tcp-flags ALL FIN,PSH,URG -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 11 -p tcp --tcp-flags ALL SYN,FIN,PSH,URG -j SYN_ATTACK
ipv4 mangle ANTI_FORGE_TCP_FLAG 12 -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j SYN_ATTACK
ipv4 mangle ANTI_IP_SPOOF 0 -s 224.0.0/3 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 1 -s 192.0.2.0/24 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 2 -s 169.254.0.0/16 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 3 -s 172.16.0.0/12 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 4 -i enp3s0 -s 192.168.0.0/16 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 5 -s 10.0.0.0/8 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 6 -s 0.0.0.0/8 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 7 -s 240.0.0.0/5 -j SPOOFING
ipv4 mangle ANTI_IP_SPOOF 8 -s 127.0.0.0/8 '!' -i lo -j SPOOFING
ipv4 filter ANTI_TCP_FLOOD 0 -p tcp -m connlimit --connlimit-above 80 -j REJECT --reject-with tcp-reset
ipv4 filter ANTI_TCP_FLOOD 1 -p tcp -m conntrack --ctstate NEW -m limit --limit 60/s --limit-burst 20 -j ACCEPT
ipv4 filter ANTI_TCP_FLOOD 2 -p tcp --tcp-flags RST RST -m limit --limit 2/s --limit-burst 2 -j ACCEPT
ipv4 filter ANTI_TCP_FLOOD 3 -p tcp --tcp-flags RST RST -j TCP_FLOOD
ipv4 mangle PREROUTING 1 -j ANTI_TCP_INVALID
ipv4 mangle PREROUTING 2 -j ANTI_TCP_UNORMAL_MSS
ipv4 mangle PREROUTING 3 -j ANTI_FORGE_TCP_FLAG
ipv4 mangle PREROUTING 4 -j ANTI_IP_SPOOF
ipv4 mangle PREROUTING 0 -i enp3s0 -j PORT_SCANNING
ipv4 filter INPUT 0 -j ANTI_TCP_FLOOD
ipv4 filter INPUT 1 -j ANTI_SSH_INTRUSION
ipv4 filter ANTI_SSH_INTRUSION 0 -p tcp --dport 9732 -m conntrack --ctstate NEW -m recent --set
ipv4 filter ANTI_SSH_INTRUSION 1 -p tcp --dport 9732 -m conntrack --ctstate NEW -m recent --update --seconds 60 --hitcount 10 -j DROP
ipv4 mangle PORT_SCANNING 0 -m recent --name portscan --rcheck --seconds 25200 -j DROP
ipv4 mangle PORT_SCANNING 1 -m recent --name portscan --remove
ipv4 mangle PORT_SCANNING 2 -p tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix port_scan:
ipv4 mangle PORT_SCANNING 3 -p tcp --dport 139 -m recent --name portscan --set -j DROP
ipv4 mangle SPOOFING 0 -j LOG --log-prefix ip_spoofing:
ipv4 mangle SPOOFING 1 -j DROP
ipv4 mangle SYN_ATTACK 0 -j LOG --log-prefix syn_attack:
ipv4 mangle SYN_ATTACK 1 -j DROP
ipv4 filter TCP_FLOOD 0 -j LOG --log-prefix tcp_flood:
ipv4 filter TCP_FLOOD 1 -j DROP

之后我们将firewalld服务重启一次,然后让防火墙运行数天后,syslog服务已经记录下服务器在运行期间遇到各种类型的攻击,写到本文时,我已经发现来自以下攻击ip的尝试扫描过我的服务器,尝试扫描我服务器的基本上会拉黑的,因为我们上面的规则,对于那些恶意扫描的源ip会被封25200秒,也就是封禁7天。


最后编辑于 :2020-03-26 09:23:29
©著作权归作者所有,转载或内容合作请联系作者
序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 180161 评论 5 赞 436
序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 75785 评论 2 赞 342
文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
8 开封第一讲书人 阅读 128551 评论 0 赞 297
文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
8 开封第一讲书人 阅读 48708 评论 1 赞 254
正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
388e473c fe2f 40e0 9301 e357ae8f1b41 茶点故事 阅读 57479 评论 4 赞 337
文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
8 开封第一讲书人 阅读 43558 评论 1 赞 250
那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 34544 评论 3 赞 364
文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
8 开封第一讲书人 阅读 33100 评论 0 赞 237
序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 37231 评论 1 赞 278
正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
388e473c fe2f 40e0 9301 e357ae8f1b41 茶点故事 阅读 32788 评论 2 赞 285
正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
388e473c fe2f 40e0 9301 e357ae8f1b41 茶点故事 阅读 34457 评论 1 赞 300
序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 30484 评论 3 赞 294
正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
388e473c fe2f 40e0 9301 e357ae8f1b41 茶点故事 阅读 35750 评论 3 赞 287
文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
8 开封第一讲书人 阅读 27507 评论 0 赞 17
文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
8 开封第一讲书人 阅读 28714 评论 1 赞 240
我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
783c64db 45e5 48d7 82e4 95736f50533e 沈念sama 阅读 38993 评论 2 赞 318
正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
388e473c fe2f 40e0 9301 e357ae8f1b41 茶点故事 阅读 38555 评论 2 赞 318
end_time: 2024-07-20 07:56:51 +0800 Completed in 144.42423200000002ms