Linux

限制伺服器在某個埠上接受來自不同主機名的連接

  • June 3, 2017

我的伺服器上正在執行一些服務。該伺服器也可以在其他域下訪問。我創建了一些子域以將服務彼此分開,但可以從主域以及其他域訪問它們。

我想知道如何限制我的伺服器接受某些埠上的連接。這樣我就可以使我的郵件伺服器只能在mail.example.com可訪問的情況下。

伺服器正在執行 CentOS 7

謝謝你的幫助

在任何埠上執行的服務都不知道使用者正在使用哪個主機名進行連接,除非使用該埠的協議具有更改該資訊的方法,就像 HTTP 對Host:標頭所做的那樣。否則,在使用 DNS 將主機名解析為 IP 地址後,該 IP 地址將用於連接。因此,防火牆無法區分主機名。

例如,如果您不希望您的 SMTP 伺服器可從其他地址使用,則您必須為其提供專用 IP 地址。通常沒有理由這樣做,因為它根本不會造成傷害。它是另一個 MTA,它根據MX記錄(或電子郵件客戶端)連接到伺服器,而不是直接連接到任何使用者。此外,SMTP 在 SMTP 橫幅中公佈其主機名。

對於 Web 伺服器,由於 HTTP 協議包含有關主機名的資訊,因此可以在不同的主機名上提供不同的內容,即使用基於名稱的虛擬主機。使用 HTTPS 也可以使用伺服器名稱指示(SNI)。

引用自:https://serverfault.com/questions/853777