CentOS 7 firewalld+ipset+定时任务防御ssh暴力破解——筑梦之路

对于暴露在公网上的linux服务器,很容易被暴力破解登陆,为了增强服务器的安全性,因此对于ssh安全加固是很有必要的,这里主要介绍centos7 系统如何使用ipset+firewalld+定时任务来对ssh服务进行安全加固。

定义firewalld ipset

bash 复制代码
firewall-cmd --permanent --new-ipset=blacklist --type=hash:ip

定义firewalld规则调用ipset

bash 复制代码
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" source ipset=blacklist port protocol="tcp" port=22 drop'

将日志中的ip添加到ipset中

bash 复制代码
# 脚本实现自动加入

#!/bin/bash
# Author: merry
# Description: 使用root账号登录错误大于8次的IP被加入到黑名单中

for ip in `grep -i 'Failed password for root' /var/log/secure | awk '{print $11}' | sort -n | uniq -c | sort -k1nr | awk '{if ($1>8) print $2}'`; do
    firewall-cmd --permanent --ipset=blacklist --add-entry="${ip}";
done;
firewall-cmd --reload;

添加定时任务

bash 复制代码
0 * * * * /opt/blockips.sh >/dev/null 2>&1

检查验证

bash 复制代码
# 查询黑名单IP

firewall-cmd --permanent --info-ipset=blacklist
firewall-cmd --ipset=blacklist --get-entries

# 通过文件查看

cat /etc/firewalld/ipsets/blacklist.xml

当然也可以使用fail2ban这款软件来实现,可根据需要进行选择。

相关推荐
日取其半万世不竭4 小时前
iftop、nethogs 和 nload:Linux 服务器网络流量实时监控工具介绍
linux·运维·服务器
mounter6254 小时前
Linux 内核资源管理:控制组(cgroup)的演进与“策略组”新提案
linux·运维·服务器·cgroup·kernel
bksczm4 小时前
文件在磁盘中的存储方式
linux·运维·服务器
L1624764 小时前
OpenSSH 半自动升级方案(独立编译 + 手动迁移 + 重建 systemd 服务)
linux·服务器·ssh
半旧夜夏4 小时前
【保姆级】微服务组件环境搭建(Docker Compose版)
java·linux·spring cloud·微服务·云原生·容器
Soari5 小时前
SSH 主机密钥冲突
运维·网络·ssh
爱莉希雅&&&5 小时前
zabbix快速搭建和使用
android·linux·数据库·zabbix·监控
z200509306 小时前
【linux学习】深入理解linux文件I/O,从C标准库到内核态
linux·学习·操作系统
清溪5496 小时前
Erlang-SSH未授权(CVE-2025-32433)复现
安全·ssh
黑泽明Coding6 小时前
使用密钥登录ssh
运维·ssh