你是否遇到過服務(wù)器突然卡頓、日志里出現(xiàn)大量陌生IP的登錄嘗試?這很可能是黑客在暴力破解你的SSH密碼!SSH(遠(yuǎn)程登錄協(xié)議)默認(rèn)使用22端口,就像你家大門的鎖眼位置被所有人知道一樣,極易成為攻擊目標(biāo)。本文將用“保姆級(jí)教程”,教你如何通過修改SSH端口這個(gè)簡(jiǎn)單操作,讓攻擊者“摸不著門路”!
黑客常用自動(dòng)化工具全網(wǎng)掃描22端口,嘗試暴力破解密碼。
修改端口后,相當(dāng)于把“大門鎖眼”藏到隱蔽位置,攻擊者需要掃描全部6萬多個(gè)端口才能找到入口,成本大幅增加。
端口修改后,可進(jìn)一步限制新端口的訪問權(quán)限(如僅允許特定IP連接),形成“多重保險(xiǎn)”。
重要提示:操作失誤可能導(dǎo)致無法遠(yuǎn)程登錄服務(wù)器!
先備份SSH配置文件:
bash 復(fù)制sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
避免使用常見端口(如2222、22222),推薦在 1024-65535 之間選不連續(xù)的數(shù)字(如58231)。
注意:不要使用已被系統(tǒng)占用的端口(可通過 netstat -tuln 查看已用端口)。
使用命令行編輯器(如nano或vim)打開配置文件:
bash 復(fù)制sudo nano /etc/ssh/sshd_config
找到 #Port 22 這一行(可能被注釋),刪除 # 并添加新端口:
bash 復(fù)制Port 22 # 暫時(shí)保留舊端口(測(cè)試成功后再刪除) Port 58231 # 新增你的自定義端口
(保留舊端口是為了防止新端口配置錯(cuò)誤導(dǎo)致失聯(lián))
如果使用firewalld(CentOS等):
bash 復(fù)制sudo firewall-cmd --permanent --add-port=58231/tcp sudo firewall-cmd --reload
如果使用ufw(Ubuntu等):
bash 復(fù)制sudo ufw allow 58231/tcp sudo ufw reload
sudo systemctl restart sshd # 或舊版系統(tǒng)用: sudo service ssh restart
打開新終端窗口,嘗試用新端口連接:
bash 復(fù)制ssh 用戶名@服務(wù)器IP -p 58231
務(wù)必保持當(dāng)前連接不退出! 測(cè)試成功后再關(guān)閉舊端口。
確認(rèn)新端口可用后,再次編輯 /etc/ssh/sshd_config,刪除 Port 22 行,只保留新端口:
bash 復(fù)制Port 58231
重啟SSH服務(wù),并關(guān)閉防火墻的22端口:
bash 復(fù)制sudo systemctl restart sshd sudo ufw deny 22/tcp # Ubuntu # 或 sudo firewall-cmd --permanent --remove-port=22/tcp && firewall-cmd --reload # CentOS
本地電腦執(zhí)行(替換為你的IP和端口):
bash 復(fù)制telnet 服務(wù)器IP 58231 # 顯示空白即連通,失敗則提示超時(shí) # 或使用更現(xiàn)代的工具: nc -zv 服務(wù)器IP 58231 # 顯示 "succeeded!" 表示成功
檢查防火墻:確保新端口已放行(sudo ufw status 或 firewall-cmd --list-ports)。
檢查SSH服務(wù)狀態(tài):systemctl status sshd 確認(rèn)服務(wù)正常運(yùn)行。
查看日志:sudo tail -f /var/log/auth.log(Ubuntu)或 /var/log/secure(CentOS),觀察連接錯(cuò)誤信息。
密鑰比密碼更難破解,徹底關(guān)閉密碼登錄:
bash 復(fù)制# 在sshd_config中修改: PasswordAuthentication no PubkeyAuthentication yes
僅允許辦公室或家的IP連接SSH:
bash 復(fù)制# ufw示例(替換為你的IP): sudo ufw allow from 123.45.67.89 to any port 58231
自動(dòng)封禁多次登錄失敗的IP:
bash 復(fù)制sudo apt install fail2ban # Ubuntu sudo yum install fail2ban # CentOS
修改SSH端口是最基礎(chǔ)的防護(hù)措施,就像給你的服務(wù)器“換個(gè)門鎖位置”。配合密鑰登錄、IP限制和Fail2Ban,能構(gòu)建多層次安全防線。記住:
永遠(yuǎn)先備份配置文件!
測(cè)試新端口時(shí)不要關(guān)閉原有連接!
復(fù)雜密碼仍是最后一道屏障!
動(dòng)手試試吧,5分鐘操作,讓服務(wù)器安全性提升一個(gè)等級(jí)!