远程维护漏洞永远修不完
生产中openssh和openssl服务永远修不完的漏洞,通过sshd_config也无法避免自身漏洞造成影响,通过iptables、firewalld之类的防火墙才是一劳永逸的方式;
工具选择
由于目前iptables使用逐步被替代,firewalld才是比较好的选择,当前主要是用7.X版本,后续逐步需要网8.X过渡,综合以上因素,选择firewalld作为实现方式
实现思路
1.选择Zone
由于需求仅针对sshd服务放行白名单,针对其他服务直接放行,因此需要切换到trusted对应zone
2.实现方式
由于仅针对ssh服务对应的白名单,因此计划使用ipset,设置好策略以后,后续调整仅需要维护ipset对应名单集即可
3.落实策略
针对整体默认放行,针对ssh服务,匹配白名单放行,其他drop
首先选择对应网卡加入trusted zone,默认需要放行,网卡结合实际情况选择
$ sudo firewall-cmd --zone=trusted --add-interface=ens192
然后设置ipset,可以重复设置增加多个地址或者多个网段(掩码形式)
$ sudo firewall-cmd --ipset=ssh_white --add-entry=xxx.xxx.xxx.xxx
设置富文本规则
$ sudo firewall-cmd --zone=trusted --add-rich-rule='rule family=ipv4 source NOT ipset=ssh_white service name=ssh drop'
保存firewalld配置到永久
$ sudo firewall-cmd --runtime-to-permanent