Linux、Fail2Ban、fail2ban-regex 常用命令

装饰

总所周知,Fail2Ban 是一款强大的安全工具,用于保护服务器免受暴力破解攻击。一些常用的linux命令写入博客,以便后续查阅(将持续更新)。本文涵盖以下内容:

  1. Linux 常用命令。
  2. Fail2Ban 的常用命令。
  3. 如何单独安装并使用调试插件:fail2ban-regex。



一、Linux 常用命令

以下是一些常见的 Linux 命令,分门别类,便于快速参考:

文件与目录操作

  • ls:列出目录内容。
ls -l # 显示详细信息 
ls -a # 显示隐藏文件
  • cd:切换目录。
cd /path/to/directory # 进入指定目录 
cd .. # 返回上一级目录
  • pwd:显示当前工作目录路径。
  • mkdir:创建目录。
mkdir mydir # 创建一个目录 
mkdir -p /path/to/dir # 递归创建多级目录
  • rm:删除文件或目录。
rm file # 删除文件
rm -r directory # 递归删除目录
rm -rf directory # 强制递归删除

文件查看与编辑

  • cat:查看文件内容。
cat file # 显示文件内容 
cat file1 file2 > new # 合并文件
  • tail:查看文件的最后几行。
tail -n 10 file # 显示文件的最后 10 行 
tail -f file # 实时查看日志文件
  • nano:简单的文本编辑器。
  • vim:功能强大的文本编辑器。强烈推荐

系统管理

  • top:实时查看系统资源使用情况。
  • ps:查看当前运行的进程
ps aux # 显示所有进程
  • df:查看磁盘空间使用情况
df -h # 以可读格式显示
  • free:查看内存使用情况
free -h # 以可读格式显示
  • reboot:重启系统。
  • shutdown:关闭系统。
shutdown -h now # 立即关机 
shutdown -r now # 立即重启

网络相关

  • ping:测试网络连接
ping -c 4 example.com # 测试与指定地址的网络连通性
  • curl:测试 HTTP 请求
curl http://example.com
  • wget:下载文件。
wget http://example.com/file
  • netstat:查看网络连接
netstat -tuln # 显示监听的端口
  • ss:替代 netstat 查看网络连接。
ss -tuln # 显示监听的端口
  • ifconfig:查看和配置网络接口:
ifconfig # 查看网络接口信息
  • ip:更方便的网络管理工具。
ip addr # 查看 IP 地址 
ip link # 查看网络接口
  • scp:通过 SSH 复制文件。
scp file user@host:/path/to/destination
  • rsync:高效的文件同步工具。
  • 如何添加新分配的ip(以ipv6为例)
转到配置路径(ubuntu):/etc/netplan 
------------------------------------
network:
ethernets:
eth0: #填入实际的网关名称,使用ip a获取
dhcp4: true
dhcp6: true
addresses:
- ip地址
routes:
- to: ::/0
via: 网关
version: 2
------------------------------------
启动指令:sudo netplan apply



二、Fail2Ban 常用命令

Fail2Ban 是一款保护服务器的重要工具,它通过监控日志文件并动态封禁可疑 IP,防止暴力破解攻击。以下是常用的 Fail2Ban 命令。

1. 服务管理

  • 启动 Fail2Ban 服务:
sudo systemctl start fail2ban
  • 停止 Fail2Ban 服务:
sudo systemctl stop fail2ban
  • 重启 Fail2Ban 服务:
sudo systemctl restart fail2ban
  • 查看 Fail2Ban 服务状态:
sudo systemctl status fail2ban

2. 查看运行状态

  • 查看 Fail2Ban 的整体运行状态:
sudo fail2ban-client status
  • 查看特定 Jail 的详细状态:
sudo fail2ban-client status sshd

3. 手动操作 IP

  • 手动封禁某个 IP:
sudo fail2ban-client set sshd banip 192.168.1.100
  • 手动解禁某个 IP:
sudo fail2ban-client set sshd unbanip 192.168.1.100

4. 日志查看

  • 查看 Fail2Ban 的运行日志:
sudo tail -f /var/log/fail2ban.log

5. 配置相关

  • 测试配置文件是否有效:
sudo fail2ban-client -t
  • 重新加载配置文件:
sudo fail2ban-client reload



三、单独安装 fail2ban-regex

fail2ban-regex 是 Fail2Ban 的一个工具,用于测试和调试正则表达式,确保它们能够正确匹配日志条目。如果没有默认安装,可以使用以下方法:

1. 从源代码安装 Fail2Ban

Fail2Ban 的正则工具通常包含在其源码中,可以通过以下步骤安装。

安装依赖

  • Ubuntu/Debian:
sudo apt update sudo apt install python3 python3-pip git
  • CentOS/RHEL:
sudo yum install python3 python3-pip git

下载并安装 Fail2Ban

git clone https://github.com/fail2ban/fail2ban.git
cd fail2ban
sudo python3 setup.py install

验证安装

fail2ban-regex --version

2. 使用 fail2ban-regex

  • 测试过滤器:
sudo fail2ban-regex 日志路径 规则路径
  • 查看匹配条目:
sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf --print-all-matched

持续更新。。。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注