
EC2 SQL 資料庫伺服器:
Connection-specific DNS Suffix . : ec2.internal
Link-local IPv6 Address . . . . . : fe80::9ca:e9d1:a7b5:3e42%16
IPv4 Address. . . . . . . . . . . : 172.31.21.189
Subnet Mask . . . . . . . . . . . : 255.255.240.0
Default Gateway . . . . . . . . . : 172.31.16.1
*(請注意,此Ec2 DB 目前也有一個與其關聯的可公開存取的彈性IP。我注意到這一點是因為在VPC 對等文件中,我看到如果有與其關聯的公共IP,VPC 對等將無法正常運作)
我在同一 VPC、工作區用戶端網路上設定了 AWS 工作區目錄:
Connection-specific DNS Suffix . : ec2.internal
Link-local IPv6 Address . . . . . : fe80::dc3c:d1c1:c7fe:812b%15
IPv4 Address. . . . . . . . . . . : 172.31.16.45
Subnet Mask . . . . . . . . . . . : 255.255.240.0
Default Gateway . . . . . . . . . : 172.31.16.1
雖然這些位於相同的 CIDR 172.31 上,但它們無法通信,我閱讀了有關 VPC 對等互連的文檔,但我認為它不適用於這種情況。在我的 ec2 實例上的工作區桌面(客戶端應用程式)和 sql 資料庫之間設定網路連線的適當且安全的方法是什麼。
編輯
答案1
我懷疑以下某一方面有問題:
- 安全群組的問題。 如果兩個執行個體都有預設安全性群組,則應該不會有問題,但您可能已為 SQL 執行個體建立了新的安全性群組(因為它有外部 IP 位址)。區客戶端的安全群組、IP 位址或IP 位址範圍。
- 路由表的問題(不太可能,除非您修改了預設值)
- 防火牆問題(例如,如果 EC2 SQL 執行個體是在 Windows 上執行的 SQL Server,則該執行個體上可能啟用了 Windows 防火牆)
- NACL 的問題 (同樣,可能不是問題,除非您修改了它們。)
你說得對VPC 對等互連不是解決方案。 vpc 對等互連允許您在兩個不同的專有網絡s。您在同一 VPC 中有兩個子網,因此這不是您所需要的。
一些應該有效的安全規則範例:
- 172.31.0.0/16 - 允許 VPC 中的任何內容存取 SQL Server
- 172.31.16.0/20 - 允許 172.31.16.0 子網路中的任何內容存取 SQL Server
- 172.31.16.45/32 - 允許一台桌面存取 SQL Server。
(如果不清楚,您應該將它們新增至與 SQL Server 關聯的安全性群組。)