iT邦幫忙

0

CentOS7 ssh 的問題

看過相關的設定問題
防火牆關閉了

使用 netstat -ant 沒有 port22
但使用 semanage port -l | grep ssh 卻有顯示22

還是出現 Connection refused
請問有何方式可以檢測哪裡設定錯誤

1 個回答

4
raytracy
iT邦大神 1 級 ‧ 2018-08-30 01:40:55

semanage port -l 只是讓你查 SELinux 是否允許開啟這個 port, 但卻不代表已經有程式在使用這個 port 了...

如果你擔心被 SELinux 擋住的話, 可以先下:

setenforce 0

把 SELinux 暫時關掉, 這樣可以保證他不會擋...

由於你的 netstat 看不到 port 22, 可以先試:

systemctl status sshd

看看他有沒有啟動?

沒有的話, 請試試看啟動他:

systemctl restart sshd

正常狀況下:

  1. netstat 應該可以看到 port 22
  2. ssh localhost 應該會有回應

以上兩個都過了, 再來測試遠端網路登入..

echochio iT邦高手 1 級 ‧ 2018-08-30 13:23:53 檢舉

用 ps aux 看有沒有 sshd 也算初步檢查 ......
在 root 權限下 netstat -natp 應該會看到 sshd ... 或許不是 22 port

..... 如是 ubuntu 可能沒有 systemctl 指令 .......
所以提供通用方式 ...

yyy00369 iT邦新手 5 級 ‧ 2018-08-30 23:53:59 檢舉

經過初步檢查
好像不知道什麼東西錯誤

我照別人的方式做
如無法啟動sshd服務
yum remove openssh-service –e
(-e 后面的也就是rpm -qa | grep ssh 查出来的文件名的全稱)
重新安裝 sudo yum install openssh-server
安裝完成之后,啟動服務:service sshd start
查看服務狀態:service sshd status

給大家參考 如有別的錯誤 也請多指教 憶起學習ˋˇˊ

我要發表回答

立即登入回答