Ssh

fail2ban 初始設置 - 指導

  • July 25, 2021

根據我對我的基本理解,iptables我整理了以下旨在執行 Tor 中繼的設置……這里大約是 6 小時後。請注意,我不想討論任何 Tor 操作,所以我不會指向https://tor.stackexchange.com/謝謝。

埠 22 遭到大規模攻擊,我醒來時發現了,所以我已經更改了它,密碼身份驗證已經被禁用,但是人/機器人無論如何都試圖闖入,我有一個 8192 位長的 RSA public/私鑰,所以我希望它就足夠了。


# iptables -L -v --line-numbers

輸出:

Chain INPUT (policy DROP 8242 packets, 735K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DROP       tcp  --  any    any     anywhere             anywhere             ctstate NEW tcp flags:!FIN,SYN,RST,ACK/SYN /* protection: non-syn packets */
2       10   452 DROP       all  --  any    any     anywhere             anywhere             ctstate INVALID /* protection: malformed packets */
3       20  1000 ACCEPT     all  --  lo     any     anywhere             anywhere             /* loopback: compulsory */
4        3    98 ACCEPT     icmp --  any    any     anywhere             anywhere             icmp echo-request limit: avg 2/sec burst 5 /* ICMP: ping only */
5    16625 9388K ACCEPT     all  --  any    any     anywhere             anywhere             ctstate RELATED,ESTABLISHED /* traffic */
6        7   420 ACCEPT     tcp  --  any    any     anywhere             anywhere             ctstate NEW,ESTABLISHED tcp dpt:xxyyzz /* SSH: global obfuscated */  <-- CENSORED
7      438 26080 ACCEPT     tcp  --  any    any     anywhere             anywhere             tcp dpt:9001 /* Tor: OR */
8      558 30828 ACCEPT     tcp  --  any    any     anywhere             anywhere             tcp dpt:9030 /* Tor: Dir */

Chain FORWARD (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 16969 packets, 6369K bytes)
num   pkts bytes target     prot opt in     out     source               destination         

我想部署fail2ban,但我從未使用過它,所以我找到了幾個指南來設置它,但我相信我們應該在這個網站上有一些例子,我確實發現了太多的結果,但與初始設置fail2ban無關🙁*fail2ban*

如果由於某種原因無法在此處完成,請發表評論,稍後我將刪除此問題。

系統:Debian GNU/Linux 11 (bullseye)openssh-server用於 ssh 服務。

先感謝您!

PS:遷移自https://security.stackexchange.com/

在 deb 上安裝 f2b 相當簡單。我之前寫過一篇文章(https://dev.slickalpha.blog/2019/11/installing-lemp-stack-on-debian-buster.html#sv-fail2ban)。

首先你安裝 f2b

apt install fail2ban -y

複製配置到本地

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

並對本地文件進行編輯

nano /etc/fail2ban/jail.local

更新預設值(埠 22 在 f2b 上已預先啟用)

[DEFAULT]
...
# MISCELLANEOUS OPTIONS...
bantime  = 86400
findtime  = 86400
maxretry = 2`

重啟 f2b

/etc/init.d/fail2ban restart

檢查 sshd 22 的狀態

fail2ban-client status sshd

除此之外,使用帶有密碼的密鑰就足夠了。您可以隨時微調 f2b。

更新:

Fail2ban 基本上使用正則表達式過濾器檢查 IP 日誌,並使用 iptables 阻止匹配 IP。

列出啟用的監獄(f2b 中服務的正則表達式過濾器)

fail2ban-client status

為了保護自定義埠或服務,

檢查該服務的正則表達式過濾器是否存在

ls /etc/fail2ban/filter.d

如果它們存在,比如說jail-name.conf,只需在 f2b 本地文件上啟用它們

nano /etc/fail2ban/jail.local

在語法下

[jail-name]
..options..

假設如果 sshd 未啟用,則添加enabled = true到 sshd 監獄

[sshd]
enabled = true
....

根據您的日誌測試監獄並在缺少時更新正則表達式

fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf

如果服務或埠不存在監獄,請線上檢查這些過濾器,並將這些過濾器添加到/etc/fail2ban/filter.d本地配置文件並啟用它。

引用自:https://serverfault.com/questions/1070572