Linux系統(tǒng)修改ssh遠(yuǎn)程端口的方法步驟
1. 修改 SSH 遠(yuǎn)程端口的步驟
1.1 登錄服務(wù)器
使用當(dāng)前的 SSH 端口登錄服務(wù)器(默認(rèn)端口為 22):
ssh root@<服務(wù)器IP地址> -p 22
如果是非 root 用戶,請使用具有 sudo 權(quán)限的賬戶登錄。
1.2 修改 SSH 配置文件
使用文本編輯器打開 sshd_config 文件:
sudo nano /etc/ssh/sshd_config
或者:
sudo vi /etc/ssh/sshd_config
找到以下行(如果沒有,則手動添加):
#Port 22
- 去掉
#注釋符號。 - 將端口號
22修改為你想要的端口號(例如2022或2222),如下:
Port 2022
確保以下設(shè)置已啟用并檢查是否存在(防止配置沖突):
AddressFamily inet PermitRootLogin yes # 如果允許 root 登錄,確保此項為 yes
1.3 修改防火墻規(guī)則
更改端口后,需要確保防火墻允許新端口的通信,否則可能導(dǎo)致無法連接。
1.3.1 使用 firewalld(CentOS/RedHat 系統(tǒng))
添加新端口規(guī)則(以 2022 為例):
sudo firewall-cmd --permanent --add-port=2022/tcp
移除默認(rèn)端口(22)規(guī)則(如果不再需要):
sudo firewall-cmd --permanent --remove-port=22/tcp
重新加載防火墻規(guī)則:
sudo firewall-cmd --reload
1.3.2 使用 iptables(傳統(tǒng)防火墻)
添加新端口規(guī)則:
sudo iptables -A INPUT -p tcp --dport 2022 -j ACCEPT
移除默認(rèn)端口規(guī)則(如果不再需要):
sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT
保存規(guī)則(確保重啟后規(guī)則仍生效):
sudo iptables-save > /etc/iptables/rules.v4
1.3.3 使用 ufw(Ubuntu/Debian 系統(tǒng))
允許新端口:
sudo ufw allow 2022/tcp
刪除默認(rèn)端口(如果不再需要):
sudo ufw delete allow 22/tcp
檢查并啟用防火墻:
sudo ufw enable
1.4 重啟 SSH 服務(wù)
修改完成后,重啟 SSH 服務(wù)以應(yīng)用更改:
sudo systemctl restart sshd
或:
sudo service sshd restart
如果使用 Ubuntu/Debian,服務(wù)名可能是 ssh:
sudo systemctl restart ssh
1.5 測試新的端口
打開新的 SSH 會話,測試是否能通過新端口連接:
ssh root@<服務(wù)器IP地址> -p 2022
注意:在測試新端口成功前,不要關(guān)閉當(dāng)前的 SSH 會話,以免配置錯誤導(dǎo)致無法連接。
如果測試成功,可以關(guān)閉舊的端口會話。
2. 常見問題和解決方法
2.1 修改后無法連接
檢查防火墻是否開放了新端口:
使用以下命令檢查防火墻規(guī)則:
sudo firewall-cmd --list-ports # 適用于 firewalld sudo ufw status # 適用于 ufw
檢查 SSH 服務(wù)狀態(tài):
確保 SSH 服務(wù)已啟動且無錯誤:
sudo systemctl status sshd
檢查端口占用情況:
確保新端口未被其他服務(wù)占用:
sudo netstat -tuln | grep 2022
2.2 忘記新端口號
- 如果忘記了新端口號,可以通過以下方法查看:
- 登錄服務(wù)器的控制臺(通過云服務(wù)商提供的 Web 控制臺)。
- 查看 SSH 配置文件:
cat /etc/ssh/sshd_config | grep Port
3. 安全性優(yōu)化建議
除了修改默認(rèn) SSH 端口,還可以采取以下措施增強 SSH 安全性:
3.1 禁用密碼登錄,啟用密鑰登錄
生成 SSH 密鑰對(如果尚未生成):
ssh-keygen -t rsa -b 4096
將公鑰上傳到服務(wù)器:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@<服務(wù)器IP>
修改 SSH 配置文件,禁用密碼登錄:
sudo nano /etc/ssh/sshd_config
找到并修改以下項:
PasswordAuthentication no
重啟 SSH 服務(wù):
sudo systemctl restart sshd
3.2 限制登錄 IP
修改防火墻規(guī)則,只允許特定 IP 地址訪問 SSH:
使用 firewalld:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='<你的IP>' port port=2022 protocol=tcp accept"
替換 <你的IP> 為你的公網(wǎng) IP 地址。
重載防火墻:
sudo firewall-cmd --reload
或編輯 /etc/hosts.allow 文件:
sshd: <你的IP>
3.3 啟用 Fail2ban
安裝并配置 Fail2ban,自動封禁多次嘗試登錄失敗的 IP:
sudo yum install epel-release -y sudo yum install fail2ban -y
啟動并配置:
sudo systemctl start fail2ban sudo systemctl enable fail2ban
4. 總結(jié)
修改 SSH 端口是提升服務(wù)器安全性的有效措施,但需要注意以下幾點:
- 修改端口后,確保防火墻規(guī)則已更新,并測試新端口連接。
- 配合其他安全措施(如密鑰登錄、IP 限制、Fail2ban)進(jìn)一步提升安全性。
- 在修改前備份 SSH 配置文件,避免因配置錯誤導(dǎo)致服務(wù)器無法訪問:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
通過以上步驟,你可以安全地修改 SSH 端口并保護(hù)服務(wù)器免受暴力 破解的威脅!
到此這篇關(guān)于Linux系統(tǒng)修改ssh遠(yuǎn)程端口的方法步驟的文章就介紹到這了,更多相關(guān)Linux修改ssh遠(yuǎn)程端口內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
php擴展memcached和memcache的安裝配置方法
這篇文章主要介紹了php擴展memcached和memcache的安裝配置方法,需要的朋友可以參考下2014-11-11
win7下VMware虛擬機安裝linux7.2上網(wǎng)配置教程
這篇文章主要為大家詳細(xì)介紹了win7下VMware虛擬機安裝linux7.2上網(wǎng)配置教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09
centos8使用Docker部署Django項目的詳細(xì)教程
這篇文章主要介紹了在centos8使用Docker部署Django項目的教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05

