Https

在 Google Compute Instance 上打開 443?

  • February 4, 2018

出於某種原因,我無法在我的Google計算實例上打開埠 443。我在實例上啟用了 HTTPS 伺服器,並使用gcloud compute firewall-rules list返回以下規則:

NAME                    NETWORK  DIRECTION  PRIORITY  ALLOW                         DENY
default-allow-http      default  INGRESS    1000      tcp:80
default-allow-https     default  INGRESS    1000      tcp:443
default-allow-icmp      default  INGRESS    65534     icmp
default-allow-internal  default  INGRESS    65534     tcp:0-65535,udp:0-65535,icmp
default-allow-rdp       default  INGRESS    65534     tcp:3389
default-allow-ssh       default  INGRESS    65534     tcp:22

nmap然而,當我使用類似它說它已關閉的東西檢查埠是否打開時。

PORT     STATE  SERVICE
22/tcp   open   ssh
443/tcp  closed https

編輯:這是該站點的我的 nginx conf 文件。 https://gist.github.com/cclloyd/e7f1183f3a018dbc32cd7c55e15375cf

檢查應用程序是否正在執行

您需要檢查您的實例上是否真的有一個應用程序正在偵聽 443 埠。

sudo netstat -plnt

例如,如果有 nginx 服務正在執行,並且配置為監聽 443 埠,您將看到類似這樣的內容

Proto Local Address           Foreign Address         State       PID/Program name
tcp   0.0.0.0:443             0.0.0.0:*               LISTEN      2742/nginx -g daemo

檢查防火牆規則關聯

您還可以檢查您的防火牆規則和您的實例是否具有適當的標籤:

檢查防火牆規則 targetTags:

$ gcloud compute firewall-rules describe default-allow-https --format="value(targetTags)"

應該輸出“https-server”

檢查實例標籤:

$ gcloud compute instances describe %INSTANCE_NAME% --format="value(tags.items)"

也應該輸出“https-server”。

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