我按照以下說明在 gcp 上安裝了 redis-server。
https://cloud.google.com/community/tutorials/setting-up-redis
我設定了防火牆,以便連接埠6379
對所有 ip 開放 ( 0.0.0.0/0
)
然後,我在同一專案中建立另一個 GCP 實例。當我嘗試連接到我剛剛設定的 redis 伺服器時(例如在一台具有 1.2.3.4 externam ip 的機器上),我無法這樣做。但是當我使用那台機器的內部IP時,它起作用了。
另外,當我嘗試連接到本機上的 redis 伺服器時,它失敗(逾時)。
當我從同一 gcp 專案中的另一個實例對具有連接埠 6379 的電腦進行 nmap 時外部的它顯示的ip
PORT STATE SERVICE
6379/tcp filtered unknown
當我從同一 gcp 專案中的另一個實例對具有連接埠 6379 的電腦進行 nmap 時內部的它顯示的ip
PORT STATE SERVICE
6379/tcp open unknown
當我從本機使用連接埠 6379 與機器的相同 gcp 專案中的機器進行 nmap 時外部的它顯示的ip
PORT STATE SERVICE
6379/tcp filtered redis
我在這裡缺少什麼?
答案1
我終於明白出了什麼問題。
我沒有設定正確的target
。
我以為我可以在目標欄位中輸入任何內容,但事實證明該欄位中的內容將是規則適用的機器。
我選擇之後All instances in the network
一切targets
都很順利。雖然當我從內部網路進行 nmap 時,連接埠6379
仍然是一個未知的服務,但它是開放的,我可以使用 redis-cli 連接到 redis 伺服器