在 CentOS 6.3 (x64) 上的連接埠 522 上設定 SSHd

在 CentOS 6.3 (x64) 上的連接埠 522 上設定 SSHd

出於安全原因,我目前在非標準連接埠上運行帶有 SSH 的伺服器。 CentOS 5 上的連接埠號碼是 522,但 CentOS 6 不允許 SSH 在低於 1024 的任何連接埠上運行,顯然除了 22 連接埠之外。對於 CentOS 6,我一直使用更高的連接埠(>10000),但現在我必須在 522 上運行它(針對我的託管提供者引入的各種令人討厭的託管/防火牆問題)。我正在運行 > 2.6.24 的內核和 SELinux。

我相信這是可能的,也許使用 CAP_NET_BIND_SERVICE 和 setcap,但我找不到好的參考。非常感謝任何幫助。

答案1

CentOS How To 上有一篇關於如何保護系統上的 SSH 安全的文章。第五節討論使用非標準連接埠:

http://wiki.centos.org/HowTos/Network/SecuringSSH

  1. 使用非標準端口

預設情況下,ssh 偵聽連接埠 22 上的傳入連接。一種有效的方法是在非標準連接埠上執行 ssh。任何未使用的連接埠都可以,但最好使用 1024 以上的連接埠。許多人選擇 2222 作為替代連接埠(因為它很容易記住),就像 8080 通常被稱為替代 HTTP 連接埠一樣。正是出於這個原因,它可能不是最好的選擇,因為任何掃描連接埠 22 的駭客也可能會掃描連接埠 2222,只是為了更好的措施。最好選擇一些不用於任何已知服務的隨機高端口。若要進行更改,請將以下行新增至 /etc/ssh/sshd_config 檔案:

# Run ssh on a non-standard port:
Port 2345  #Change me

然後,當使用 SSH 連接時,如果您是從另一台 Linux 伺服器進行連接,則只需指定 -p 開關。或者,如果您使用 PuTTY 之類的工具,請變更那裡的連接埠。

相關內容