SSH 安全加固實戰:由零開始保護你嘅 Linux 伺服器

# SSH 安全加固實戰:由零開始保護你嘅 Linux 伺服器 作為 IT 管理員,你嘅 Linux 伺服器每日都面對住海量嘅自動化攻擊。特別係開咗 SSH port 嘅機器,基本上幾分鐘就會俾人掃一次。今日呢篇 SSH 安全加固教學,會帶大家逐步實戰,由基本到進階,全面強化你嘅 SSH 連線安全。 ## SSH 安全加固嘅基本概念 SSH(Secure Shell)係 Linux 系統管理嘅命脈...

# SSH 安全加固實戰:由零開始保護你嘅 Linux 伺服器

作為 IT 管理員,你嘅 Linux 伺服器每日都面對住海量嘅自動化攻擊。特別係開咗 SSH port 嘅機器,基本上幾分鐘就會俾人掃一次。今日呢篇 SSH 安全加固教學,會帶大家逐步實戰,由基本到進階,全面強化你嘅 SSH 連線安全。

## SSH 安全加固嘅基本概念

SSH(Secure Shell)係 Linux 系統管理嘅命脈,但同時亦係黑客最常攻擊嘅入口。好多初學者裝完 Ubuntu 或者 CentOS 之後就直接用 default setting,root login 開住、密碼認證冇關、port 22 照舊——呢啲全部都係安全漏洞。要做好 SSH 安全加固,就要由最基本嘅設定開始改起。

## 第一步:更改預設 SSH Port

最簡單但有效嘅 SSH 安全加固措施,就係改咗個 default port 22。雖然唔算係真正嘅安全防護,但至少可以擋走大量自動化掃描。

# 備份原有設定檔
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

# 編輯 SSH 設定
sudo nano /etc/ssh/sshd_config

# 將 Port 22 改為其他 port,例如 2222
Port 2222

修改完之後記得 restart SSH service:

sudo systemctl restart sshd

⚠️ 記得喺 firewall 度開放新 port 先!如果唔係 lockout 自己就大鑊。

sudo ufw allow 2222/tcp

## 第二步:禁用 Root 登入

Root 直接 login 係極度危險嘅行為。任何 SSH 安全加固 checklist 入面,呢項都係必做。黑客只要撞中 root password,就等於拎到成部機嘅控制權。

# 喺 sshd_config 入面修改
PermitRootLogin no

記住要預先 create 一個普通 user 並且加到 sudo group:

sudo adduser adminuser
sudo usermod -aG sudo adminuser

之後所有 root 操作都經 `sudo` 執行,咁就安全好多。

## 第三步:啟用 SSH 金鑰認證 + 關閉密碼登入

呢個係 SSH 安全加固最關鍵嘅一步。Password authentication 係暴力破解嘅主要目標,改用 SSH key 之後,就算 attacker 有幾百萬個 password dictionary 都冇用。

首先喺你嘅 local 機 generate SSH key pair:

ssh-keygen -t ed25519 -C "your_email@example.com"

然後將 public key copy 去 server:

ssh-copy-id -p 2222 adminuser@your-server-ip

最後喺 server 嘅 sshd_config 關閉密碼認證:

PasswordAuthentication no
ChallengeResponseAuthentication no

## 第四步:安裝 Fail2Ban 防暴力破解

Fail2Ban 係 SSH 安全加固嘅好拍檔。佢會 monitor SSH login attempt,如果有 IP 連續 fail 太多次,就會自動 ban 佢一段時間。

sudo apt install fail2ban -y
sudo systemctl enable fail2ban --now

建立 local config:

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

喺 `jail.local` 入面設定 SSH jail:

[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
findtime = 600

呢個設定意思係:600 秒內 fail 3 次就 ban 1 個鐘。

## 第五步:限制 SSH 使用者同 IP 範圍

進一步嘅 SSH 安全加固可以用 AllowUsers 限制邊個 user 可以 SSH login:

AllowUsers adminuser@192.168.1.0/24

呢行設定只允許 `adminuser` 由內網 `192.168.1.x` 嘅 IP 範圍連入。如果你需要由外面 access,可以用 VPN 或者跳板機。

## 總結

SSH 安全加固唔係一次性嘅工作,而係持續嘅保安習慣。以上五步由更改 port、禁用 root、改用 key 認證、到 Fail2Ban 同 IP 限制,已經涵蓋咗大部份常見嘅攻擊面。建議各位 IT 管理員定期 audit 自己嘅 SSH config,確保冇 security drift。

🔗 參考資料:NVD NIST 漏洞資料庫

記住:安全永遠都係 layers,唔好淨係靠一招。每一層 SSH 安全加固措施加埋一齊,先至可以砌出一道穩固嘅防線。

#IT教學 #技術分享 #SSH #安全 #自動化

SSH 安全加固實戰:由零開始保護你嘅 Linux 伺服器 - 文章重點速覽 infographic