將 SSH 連接埠從 22 更改為 1234,但是當我運行 nmap 時連接埠 22 仍然顯示?

將 SSH 連接埠從 22 更改為 1234,但是當我運行 nmap 時連接埠 22 仍然顯示?

我使用這篇文章更改了 centos 7 機器上的 ssh 連接埠:

https://www.liberiangeek.net/2014/11/change-openssh-port-centos-7/

(我跳過了 selinux 的東西,因為我沒有安裝它):

但是當我在另一台指向 centos 7 的伺服器上運行 nmap 時,它給出:

Host is up (0.00023s latency).
Not shown: 65533 filtered ports
PORT    STATE  SERVICE
22/tcp  closed ssh
1234/tcp  open   unknown

我試過

sudo firewall-cmd --permanent --zone=public --remove-port=22/tcp

但這給了我

Warning: NOT_ENABLED: 22:tcp
success

我在這裡誤解了什麼?如何讓 22 連接埠不顯示在 nmap 上?或者應該由於某種原因它仍然出現?

答案1

Centos 7 上的firewalld ssh 是透過服務名稱設定的,而不是透過連接埠設定的。

如果你做一個

firewall-cmd --list-services

它將列出您電腦上的開放服務,例如“dhcpv6-client ssh”

執行以下命令刪除該服務,為新的 ssh 連接埠新增永久規則並重新載入防火牆規則,然後再次掃描計算機

firewall-cmd --zone=public --permanent --remove-service=ssh
firewall-cmd --zone=public --permanent --add-port=1234/tcp
firewall-cmd --reload

如果您不確定,可以省略“--permanent”部分,並且設定將在重新啟動後被丟棄。

相關內容