溫馨提示×

如何防止CentOS SFTP被暴力破解

小樊
57
2025-07-12 16:36:46
欄目: 智能運維

為了防止 CentOS 上的 SFTP 服務被暴力破解,您可以采取以下措施:

  1. 使用強密碼策略:確保所有用戶的密碼都足夠復雜,包括大小寫字母、數字和特殊字符。避免使用常見密碼或容易猜到的密碼。

  2. 限制登錄嘗試次數:通過修改 SSH 配置文件(/etc/ssh/sshd_config),限制用戶在一定時間內的登錄嘗試次數。例如,您可以設置以下選項:

MaxAuthTries 3
LoginGraceTime 10

這將限制每個用戶在 10 秒內最多嘗試 3 次登錄。超過限制的用戶將被暫時鎖定。

  1. 啟用公鑰認證:使用 SSH 密鑰對進行身份驗證,而不是依賴密碼。這可以大大提高安全性,因為攻擊者需要破解私鑰才能登錄。要設置公鑰認證,請按照以下步驟操作:

    a. 在客戶端生成 SSH 密鑰對(如果尚未生成)。 b. 將客戶端的公鑰添加到服務器上用戶的 authorized_keys 文件中。 c. 確保服務器上的 authorized_keys 文件權限設置正確(通常為 600)。 d. 在服務器的 SSH 配置文件(/etc/ssh/sshd_config)中啟用公鑰認證:

PubkeyAuthentication yes
  1. 更改默認 SSH 端口:將 SSH 服務的默認端口從 22 更改為其他端口,以減少自動攻擊工具的成功率。要更改端口,請在 /etc/ssh/sshd_config 文件中添加或修改以下行:
Port 2222

然后重啟 SSH 服務以應用更改。

  1. 使用 Fail2ban:Fail2ban 是一個用于監控日志文件并根據特定規則阻止惡意 IP 地址的工具。您可以配置 Fail2ban 以監視 SFTP 登錄嘗試,并在檢測到多次失敗嘗試后阻止攻擊者的 IP 地址。要安裝和配置 Fail2ban,請按照以下步驟操作:

    a. 安裝 Fail2ban:

sudo yum install fail2ban

b. 創建一個新的 Fail2ban 配置文件,例如 /etc/fail2ban/jail.local,并添加以下內容:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 3

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/secure

這將設置 Fail2ban 在 10 分鐘內檢測到 3 次失敗嘗試后,阻止攻擊者的 IP 地址 10 分鐘。

c. 啟動 Fail2ban 服務并設置為開機啟動:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

通過采取這些措施,您可以大大提高 CentOS 上 SFTP 服務的安全性,降低被暴力破解的風險。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女