Debian

對 vsftp 伺服器的暴力攻擊未在日誌中顯示身份驗證失敗

  • March 10, 2017

我的伺服器正在執行帶有 vsftpd 版本 3.0.2-17 的 Debian 8。最近我的 vsftpd.log 充滿了以下內容:

vsftpd.log

Mon Mar  7 18:13:44 2016 [pid 13499] CONNECT: Client "::ffff:xxx.xxx.xx.xx"
Mon Mar  7 18:13:45 2016 [pid 13501] CONNECT: Client "::ffff:xxx.xxx.xx.xx"
Mon Mar  7 18:13:46 2016 [pid 13503] CONNECT: Client "::ffff:xxx.xxx.xx.xx"
Mon Mar  7 18:13:47 2016 [pid 13505] CONNECT: Client "::ffff:xxx.xxx.xx.xx"
...
...

這持續了超過 6000 行,全部來自同一個 IP 地址(我在日誌文件片段中混淆了 IP)。我有一個使用預設 vsftpd.conf 文件執行的 fail2ban(版本 0.8.13-1)監獄,但沒有記錄身份驗證失敗,因此沒有禁令。這是供參考的過濾器:

fail2ban vsftpd.conf 正則表達式

failregex = ^%(__prefix_line)s%(__pam_re)s\s+authentication failure; logname=\S* uid=\S* euid=\S* t$
       ^ \[pid \d+\] \[.+\] FAIL LOGIN: Client "<HOST>"\s*$

這是我的 vsftpd 配置文件:

vsftpd.conf

listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=<path to .pem file>
rsa_private_key_file=<path to key file>
ssl_enable=YES
ssl_tlsv1=YES
ssl_ciphers=HIGH
pasv_min_port=XXXX
pasv_max_port=XXXX

有人可以幫助我了解發生了什麼嗎?為什麼日誌中沒有失敗的登錄嘗試?我找不到任何其他證據表明有人確實獲得了對系統的訪問權限。

順便說一句,我的意圖是僅在我需要自己使用 vsftpd 服務時啟動和停止它,但我未能將其從啟動中刪除,所以當我重新啟動時,它在我沒有意識到的情況下再次啟動。我已經糾正了這個問題,但我仍然想了解這個問題,以及如何讓 fail2ban 在這種情況下工作。

連接操作和登錄操作不是一回事。

網際網路上的一些機器人可以檢查您的 FTP 伺服器是否處於活動狀態並斷開連接,甚至無需嘗試登錄(有時像您的情況一樣在循環中)。這很正常。這裡沒有問題。

你可以自己試試。只需執行:

$ telnet whatever-domain.com 21
Trying 999.9.9.9...
Connected to whatever-domain.com.
Escape character is '^]'.
220 (vsFTPd 3.0.2)
^]
telnet> Connection closed.

並檢查vsftpd log,應該只出現你想要的行CONNECT,就是這樣。

引用自:https://unix.stackexchange.com/questions/269211