在CentOS系統中,配置SSH防火墻主要涉及兩個步驟:允許SSH連接和配置防火墻規則。以下是詳細的步驟:
首先,確保你的SSH服務正在運行,并且監聽在默認的22端口上。你可以通過以下命令檢查SSH服務狀態:
sudo systemctl status sshd
如果SSH服務沒有運行,可以使用以下命令啟動它:
sudo systemctl start sshd
CentOS 7及以上版本使用firewalld作為默認的防火墻管理工具。以下是如何配置firewalld以允許SSH連接的步驟:
如果firewalld服務沒有運行,可以使用以下命令啟動它:
sudo systemctl start firewalld
使用以下命令允許SSH連接:
sudo firewall-cmd --permanent --add-service=ssh
--permanent選項表示永久生效,即使重啟系統也不會丟失配置。
為了使新的規則生效,需要重新加載防火墻配置:
sudo firewall-cmd --reload
你可以使用以下命令檢查SSH端口是否已經開放:
sudo firewall-cmd --list-all
在輸出中,你應該能看到services部分包含ssh。
如果你的系統啟用了SELinux,可能還需要配置SELinux策略以允許SSH連接。以下是一些常見的SELinux配置:
使用以下命令檢查SELinux的狀態:
sestatus
如果SELinux處于enforcing模式,你可能需要調整相關策略。
如果你只是想測試SSH連接,可以臨時將SELinux設置為permissive模式:
sudo setenforce 0
如果你需要永久更改SELinux策略,可以編輯/etc/selinux/config文件:
sudo vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=permissive,然后保存并退出。
最后,確保你可以從外部網絡連接到你的CentOS服務器:
ssh username@your_server_ip
如果一切配置正確,你應該能夠成功登錄。
通過以上步驟,你應該能夠在CentOS系統上成功配置SSH防火墻。