非標準埠的 TLS 證書
我們有一個伺服器(在 Ubuntu 20.04 上執行)可從子域 myserver.university.country 訪問,我想在伺服器上安裝 SSL/TLS 證書以加密與伺服器的連接。這是我第一次管理伺服器,當我四處詢問(老闆、隊友)時,沒有人有專業知識可以提供幫助。
我們目前為一些網站提供服務,這些網站需要通過一些非標準埠(即不是 80 或 443,例如 myserver.university.country:8687)而不是通過 apache 或其他主要伺服器軟體提供服務(我們使用Shiny Server)。瀏覽器在沒有鎖的情況下顯示不安全的連接。我們不希望登錄憑據被盜或外人可以訪問資訊。
我們正在嘗試使用 Let’s encrypt via certbot來獲取我們伺服器的證書。根據 certbot 文件,這需要打開埠 80(我們不想訪問它)。
安全團隊不想向整個 Internet 開放埠 80,並且希望限制對某些 IP 範圍的訪問。此外,他們只想在短時間內打開它,我的理解是這會阻止證書的自動更新。但是,certbot沒有指定範圍,可能會使用多個 IP。
我們如何才能安全地連接到我們的伺服器(使用免費資源)?
我已經超出了我的深度,不知道如何為此正確配置伺服器並解決 IT 問題。
與您組織的 IT 人員交談。說明您需要為您的軟體堆棧提供普遍受信任的 TLS 證書。提供 Let’s Encrypt 作為建議,但嘗試他們可能擁有的任何其他 PKI 發布程序。
TLS (x509) 證書沒有埠號。作為通用傳輸應用程序,TLS 可以在任何埠上包裝任何協議。
然而,獲得證書的 ACME http 挑戰必須通過埠 80。大概是為了確認您可以控制主機,並通過使用眾所周知的埠來簡化實施。
如果埠 80 不是一個選項,則存在 DNS 質詢。您需要一個腳本來使用挑戰值更新 DNS 記錄。
您可以選擇 ACME 客戶端,並且可以編寫腳本以適應您的環境。即使這樣,您也不必使用 Let’s Encrypt,而且您的組織可能有不同的方式來頒發證書。