有的密碼裏住着一我的,有的密碼裏藏着一份特殊的含義,密碼里老是會有一段故事;
任何密碼都是第一無二的,請守護本身的密碼,避免密碼被暴力破解。
Linux 修改默認SSH端口 22,避免被暴力破解密碼安全
目前不少人仍是使用密碼來登錄服務器,而且服務器都是默認的 22端口,可是這樣會有被暴力破解密碼的危險(除非足夠複雜),根據多數客戶的要求,我寫個更換SSH端口的教程好了。bash
爲了服務器安全,推薦:非22端口+Key密匙登錄+Key密匙密碼,這樣搭配最安全。服務器
爲了保險起見,咱們先添加一個SSH端口並添加對應的防火牆規則,而後用這個新的端口鏈接服務器試試,若是沒問題了,咱們再刪除默認的22端口(之因此這這麼作,就是由於若是直接修改端口,可能在出現一些問題後會致使你沒法鏈接SSH,那就慘了)。ssh
添加SSH端口
vi /etc/ssh/sshd_config# vi打開文件後,按 I鍵 進入編輯模式,而後按下面的要求添加端口配置,最後按 ESC鍵 退出編輯模式並輸入 :wq 保存並退出vi編輯器。
咱們在默認的SSH端口配置下面添加一個咱們要用的新的端口,例如 23456tcp
Port 22# 默認的22端口配置,注意如今不刪除這個默認的 22端口配置,避免修改後沒法連接SSHPort 23456# 新添加的 23456端口配置
而後咱們重啓SSH。編輯器
/etc/init.d/ssh restart# 若是提示服務不存在,那就用 /etc/init.d/sshd restart# CentOS7 則用 systemctl restart sshd.service
配置防火牆
首先咱們添加防火牆規則(示例端口爲 23456,本身改):ide
iptables -I INPUT -p tcp --dport 23456 -j ACCEPT
而後不清楚大家是否配置了防火牆開機啓動和開機啓動讀取防火牆配置文件,因此我這裏也寫上步驟,建議大家都作一下,避免重啓VPS後,SSH端口防火牆沒有開放致使沒法鏈接服務器。測試
配置防火牆開機啓動
下面的代碼是配置防火牆開機啓動而且保存防火牆規則,開機啓動後會自動讀取保存的防火牆規則。rest
CentOS 系統:blog
注意:若是是 CentOS7 系統,那麼就不是iptables 防火牆了。
service iptables savechkconfig --level 2345 iptables on
之後須要保存防火牆規則只須要執行:
service iptables save
Debian/Ubuntu 系統:
iptables-save > /etc/iptables.up.rulesecho -e ‘#!/bin/bash\n/sbin/iptables-restore < /etc/iptables.up.rules’ > /etc/network/if-pre-up.d/iptableschmod +x /etc/network/if-pre-up.d/iptables
之後須要保存防火牆規則只須要執行:
iptables-save > /etc/iptables.up.rules
測試一下
上面步驟作完了,那麼請斷開當前的SSH鏈接,而後把SSH端口改成新的端口(示例端口爲 23456),連接新端口試試,若是鏈接正常,那麼繼續下面的步驟,若是鏈接不正常,那麼使用舊端口 22 鏈接上面去排除問題。
取消默認SSH端口 22
vi /etc/ssh/sshd_config
咱們再打開SSH配置文件,刪除 Port 22 這一行,而後重啓SSH便可。
/etc/init.d/ssh restart# 若是提示服務不存在,那就用 /etc/init.d/sshd restart# CentOS7 則用 systemctl restart sshd.service