安裝和配置fail2ban在CentOS上並不復(fù)雜,主要包括以下步驟:1. 使用yum安裝fail2ban;2. 手動(dòng)啟用並啟動(dòng)服務(wù);3. 創(chuàng)建jail.local文件進(jìn)行自定義配置;4. 設(shè)置SSH防禦規(guī)則,包括啟用sshd、指定封禁時(shí)間與重試次數(shù);5. 配置firewalld作為動(dòng)作執(zhí)行器;6. 定期檢查封禁IP及日誌。 Fail2ban通過(guò)監(jiān)控日誌檢測(cè)異常登錄行為並自動(dòng)封禁可疑IP,其核心機(jī)制依賴(lài)於bantime(封禁時(shí)間)、findtime(統(tǒng)計(jì)窗口時(shí)間)和maxretry(最大失敗次數(shù))等關(guān)鍵參數(shù)的設(shè)置。使用默認(rèn)配置文件結(jié)構(gòu)時(shí)應(yīng)優(yōu)先創(chuàng)建.local文件而非修改.conf文件以避免配置丟失。對(duì)於SSH防護(hù),只需在jail.local中啟用sshd模塊並調(diào)整相關(guān)參數(shù)即可生效。同時(shí),為確保封禁規(guī)則正確應(yīng)用,需將banaction設(shè)置為firewallcmd-rich-rules以適配firewalld。用戶(hù)可通過(guò)iptables命令或fail2ban日誌查看當(dāng)前封禁狀態(tài),並根據(jù)需要擴(kuò)展其他服務(wù)的防護(hù)規(guī)則。
Fail2ban 是一款非常實(shí)用的入侵防禦工具,它通過(guò)監(jiān)控系統(tǒng)日誌來(lái)檢測(cè)異常登錄行為(比如多次失敗嘗試),並自動(dòng)封禁可疑IP 地址。在CentOS 上安裝和配置fail2ban 並不復(fù)雜,但需要一些基本操作。
安裝Fail2ban
CentOS 默認(rèn)倉(cāng)庫(kù)中通常已經(jīng)包含了fail2ban,所以可以直接用yum 安裝:
- 運(yùn)行命令:
sudo yum install fail2ban
- 安裝完成後,fail2ban 服務(wù)默認(rèn)不會(huì)自動(dòng)啟動(dòng),你需要手動(dòng)啟用並啟動(dòng)服務(wù):
-
sudo systemctl enable fail2ban
-
sudo systemctl start fail2ban
-
你可以用systemctl status fail2ban
檢查服務(wù)狀態(tài)是否正常運(yùn)行。
基本配置文件結(jié)構(gòu)
Fail2ban 的主配置文件是/etc/fail2ban/jail.conf
,但官方推薦不要直接修改這個(gè)文件,而是創(chuàng)建一個(gè).local
文件進(jìn)行自定義設(shè)置:
- 創(chuàng)建或編輯配置文件:
sudo vi /etc/fail2ban/jail.local
- 在這個(gè)文件中可以覆蓋jail.conf 中的設(shè)置,例如更改ban 時(shí)間、重試次數(shù)等。
常見(jiàn)基礎(chǔ)配置項(xiàng)包括:
-
bantime
:封禁時(shí)間(單位秒) -
findtime
:多長(zhǎng)時(shí)間內(nèi)的失敗嘗試會(huì)被統(tǒng)計(jì) -
maxretry
:最大失敗嘗試次數(shù) -
ignoreip
:可添加白名單IP,避免誤封自己或其他可信來(lái)源
配置SSH 防禦規(guī)則
SSH 是最常見(jiàn)的攻擊入口之一,fail2ban 默認(rèn)就包含了一個(gè)針對(duì)SSH 的過(guò)濾規(guī)則,只需要啟用即可。
在jail.local
中加入或確認(rèn)以下內(nèi)容:
[sshd] enabled = true port = ssh logpath = %(sshd_log)s maxretry = 5 bantime = 86400
這段配置的意思是:
- 啟用sshd 規(guī)則
- 使用默認(rèn)的SSH 日誌路徑(通常是
/var/log/secure
) - 如果某個(gè)IP 在設(shè)定時(shí)間內(nèi)失敗超過(guò)5 次,就會(huì)被封禁一天(86400 秒)
你也可以根據(jù)自己的安全需求調(diào)整參數(shù)。
使用防火牆(Firewalld)作為動(dòng)作執(zhí)行器
CentOS 7 及以上版本默認(rèn)使用firewalld 作為防火牆管理工具,fail2ban 支持直接通過(guò)firewalld 來(lái)封禁IP。
確保你的jail.local 中有如下配置:
banaction = firewallcmd-rich-rules
這樣fail2ban 就會(huì)使用rich rules 來(lái)添加臨時(shí)封禁規(guī)則,不需要重啟防火牆就能生效。
如果你想查看當(dāng)前被封禁的IP,可以用下面這條命令:
-
sudo iptables -L -n | grep banned
或者檢查fail2ban 自己的日誌:
-
sudo cat /var/log/fail2ban.log
基本上就這些。安裝完後記得定期檢查日誌和封禁情況,必要時(shí)可以擴(kuò)展其他服務(wù)的防護(hù)規(guī)則,比如防止FTP 或HTTP 暴力破解。雖然步驟不多,但有些細(xì)節(jié)容易忽略,比如配置文件位置、firewalld 動(dòng)作設(shè)置,一旦搞錯(cuò)可能影響封禁效果。
以上是如何在CentOS上安裝和配置失敗2BAN?的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門(mén)文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6
視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版
神級(jí)程式碼編輯軟體(SublimeText3)

CentOS 和 Ubuntu 的關(guān)鍵差異在於:起源(CentOS 源自 Red Hat,面向企業(yè);Ubuntu 源自 Debian,面向個(gè)人)、包管理(CentOS 使用 yum,注重穩(wěn)定;Ubuntu 使用 apt,更新頻率高)、支持週期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社區(qū)支持(CentOS 側(cè)重穩(wěn)定,Ubuntu 提供廣泛教程和文檔)、用途(CentOS 偏向服務(wù)器,Ubuntu 適用於服務(wù)器和桌面),其他差異包括安裝精簡(jiǎn)度(CentOS 精

CentOS 關(guān)機(jī)命令為 shutdown,語(yǔ)法為 shutdown [選項(xiàng)] 時(shí)間 [信息]。選項(xiàng)包括:-h 立即停止系統(tǒng);-P 關(guān)機(jī)後關(guān)電源;-r 重新啟動(dòng);-t 等待時(shí)間。時(shí)間可指定為立即 (now)、分鐘數(shù) ( minutes) 或特定時(shí)間 (hh:mm)??商砑有畔⒃谙到y(tǒng)消息中顯示。

CentOS將於2024年停止維護(hù),原因是其上游發(fā)行版RHEL 8已停止維護(hù)。該停更將影響CentOS 8系統(tǒng),使其無(wú)法繼續(xù)接收更新。用戶(hù)應(yīng)規(guī)劃遷移,建議選項(xiàng)包括CentOS Stream、AlmaLinux和Rocky Linux,以保持系統(tǒng)安全和穩(wěn)定。

一、.NETCore的起源談到.NETCore,就不能不提它的前身.NET。當(dāng)年Java風(fēng)頭正盛,微軟也對(duì)Java青睞有加,Windows平臺(tái)上的Java虛擬機(jī)就是微軟依據(jù)JVM標(biāo)準(zhǔn)開(kāi)發(fā)的,據(jù)稱(chēng)是當(dāng)時(shí)性能最佳的Java虛擬機(jī)。然而,微軟有自己的小算盤(pán),試圖將Java與Windows平臺(tái)捆綁,增加一些Windows特有的功能。 Sun公司對(duì)此不滿(mǎn),導(dǎo)致雙方關(guān)係破裂,微軟隨後推出了.NET。 .NET從誕生之初就借鑒了Java的許多特性,並在語(yǔ)言特性和窗體開(kāi)發(fā)等方面逐漸超越了Java。 Java在1.6版

CentOS 中配置 IP 地址的步驟:查看當(dāng)前網(wǎng)絡(luò)配置:ip addr編輯網(wǎng)絡(luò)配置文件:sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0更改 IP 地址:編輯 IPADDR= 行更改子網(wǎng)掩碼和網(wǎng)關(guān)(可選):編輯 NETMASK= 和 GATEWAY= 行重啟網(wǎng)絡(luò)服務(wù):sudo systemctl restart network驗(yàn)證 IP 地址:ip addr

軟件準(zhǔn)備我使用的是CentOS-6.6的虛擬機(jī),主機(jī)名為repo。參考在Windows中安裝Linux虛擬機(jī)的步驟,我在該虛擬機(jī)中安裝了JDK,參考在Linux中安裝JDK的指南。此外,該虛擬機(jī)配置了免秘鑰登錄自身,參考配置各臺(tái)虛擬機(jī)之間免秘鑰登錄的設(shè)置。 Hadoop安裝包的下載地址為:https://mirrors.aliyun.com/apache/hadoop/common/,我使用的是hadoop2.6.5版本。將Hadoop安裝包上傳到服務(wù)器並解壓[root@repo~]#tarzxv

在CentOS上集成Postman應(yīng)用可以通過(guò)多種方法來(lái)實(shí)現(xiàn),以下是詳細(xì)的步驟和建議:通過(guò)下載安裝包安裝Postman下載Postman的Linux版本安裝包:訪問(wèn)Postman官方網(wǎng)站,選擇適用於Linux的版本進(jìn)行下載。解壓安裝包:使用以下命令將安裝包解壓到指定目錄,例如/opt:sudotar-xzfpostman-linux-x64-xx.xx.xx.tar.gz-C/opt請(qǐng)注意將“postman-linux-x64-xx.xx.xx.tar.gz”替換為您實(shí)際下載的文件名。創(chuàng)建符號(hào)

CentOS 已停止維護(hù),替代選擇包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(與 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商業(yè)版,付費(fèi)許可);5. Oracle Linux(與 CentOS 和 RHEL 兼容)。在遷移時(shí),考慮因素有:兼容性、可用性、支持、成本和社區(qū)支持。
