vitaliy kolesov 原作,授權 leancloud 翻譯。
加固伺服器並不難,但有很多例行操作需要進行時,有可能會遺忘。以我為例,剛買的伺服器就在兩周內被人入侵了。有天早上我收到幾封來自第三方的郵件,說我伺服器上有東西在嘗試入侵他們的伺服器。所以,我需要快速解決這個問題。
我碰到的情況比較簡單,我執行了以下命令:
cat /var/log/auth.log | grep accepted
複製**
該命令返回了我的伺服器上的成功認證記錄,其中有乙個 ip 不是我的。所以,是 ssh 服務被入侵了。
別忘了還有乙個命令last
,這個命令返回最近成功登入的使用者。
購買伺服器後需要立刻進行的操作:
如果發生了入侵,你需要知道如何調查和清掃。最好的方式是重新建立 vps。我就是這麼做的。我在 hetzner 買了伺服器,它的控制台提供了重新建立(移除舊 vps,新建乙個)vps 並保留原 ip 的功能。 所以我重新建立了乙個 vps。之後我在本地計算機上使用ssh-keygen
工具(標準 openssh 包的一部分)生成了 ssh 金鑰:(下面的命令同時適用於 linux 和 macos)
ssh-keygen
複製**
該命令在~/.ssh
目錄中建立了一對金鑰。之後執行以下命令:
ssh-copy-id you_user@your_server_id
複製**
該命令會將新建立的公鑰上傳到伺服器。接下來,登入伺服器並修改 sshd 配置:
nano /etc/ssh/sshd_config
複製**
修改配置檔案中的 passwordauthentication 配置:
passwordauthentication no
複製**
這一配置禁用了使用密碼登入(只能使用金鑰登入)。
伺服器上我用的系統是 ubuntu,所以通過以下命令可以安裝這兩個工具:
apt install ufw fail2ban
複製**
只開 ssh 和 http(s) 埠:
ufw allow ssh
ufw allow 80
ufw allow 443
複製**
啟用 ufw:
ufw enable
複製**
接下來配置 fail2ban 工具:
# 備份預設配置
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
nano /etc/fail2ban/jail.local
複製**
fail2ban-client reload
複製**
這樣簡單配置之後,來自同一 ip 的三次錯誤登入嘗試將封禁該 ip 10 分鐘。我個人將封禁期限調成了 7 天。以下命令可以檢視 fail2ban 的狀態:
fail2ban-client status sshd
複製**
我的配置是這樣的:
status for the jail: sshd
|- filter
| |- currently failed: 1
| |- total failed: 6
| `- file list: /var/log/auth.log
`- actions
|- currently banned: 1
|- total banned: 2
`- banned ip list: 187.109.168.150
複製**
如你所見,有乙個 ip 已經被防火牆封禁了。我們也可以通過 ufw 的報告確認這一點:
ufw status
status: active
to action from
-- ------ ----
anywhere reject 187.109.168.150
80/tcp allow anywhere
22 allow anywhere
443 allow anywhere
複製**
可以配置 fail2ban,如果有 ip 被封,給你發一封電子郵件。 伺服器被入侵如何排查?如何防止伺服器被入侵?
遇到很多次客戶伺服器被入侵的情況,有些伺服器被植入木馬後門 有些被檢查出有挖礦程式 有些發現登入密碼不對,被惡意登入修改了密碼,遇到了伺服器被入侵的情況應第一時間聯絡服務商售後處理將損失降低到最低程度,讓 遊戲等業務恢復。根據以往的處理經驗,總結了一些伺服器被入侵的排查方法,專門用來檢查伺服器第一時...
如何防範ipc 入侵
1禁止空連線進行列舉 此操作並不能阻止空連線的建立 首先執行regedit,找到如下組建 hkey local machine system currentcontrolset control lsa 把restrictanonymous dword的鍵值改為 00000001 如果設定為2的話,有...
linux如何判斷伺服器是否被入侵
實驗幾個步驟,借鑑資料,分享給。非常感謝網上提供資料幫助的。1 當時誰登入。拓展使用 whois ip位址 追查ip所註冊的組織的所有資訊,當然包括國家資訊 1 linux 下 whois 命令列的安裝 centos 下安裝命令如下 yum install y jwhois debian ubunt...