Tűzfalszabályok az Azure Database for PostgreSQL-ben – rugalmas kiszolgáló
A következőkre vonatkozik: Azure Database for PostgreSQL – Rugalmas kiszolgáló
Rugalmas Azure Database for PostgreSQL-kiszolgáló futtatásakor két fő hálózati lehetőség közül választhat. A lehetőségek közé tartoznak a privát hozzáférés (virtuális hálózati integráció) és a nyilvános hozzáférés (engedélyezett IP-címek).
Nyilvános hozzáféréssel a rugalmas Azure Database for PostgreSQL-kiszolgálópéldány nyilvános végponton keresztül érhető el. Alapértelmezés szerint a tűzfal blokkolja a kiszolgálóhoz való összes hozzáférést. Annak megadásához, hogy mely IP-gazdagépek férhetnek hozzá a kiszolgálóhoz, kiszolgálószintű tűzfalszabályokat kell létrehoznia. A tűzfalszabályok megadják az engedélyezett nyilvános IP-címtartományokat. A tűzfal biztosítja az adatbázisokhoz való hozzáférést az egyes kérések eredeti IP-címe alapján. Privát hozzáféréssel nem érhető el nyilvános végpont, és csak az ugyanazon a hálózaton található gazdagépek férhetnek hozzá rugalmas Azure Database for PostgreSQL-kiszolgálóhoz.
Tűzfalszabályokat az Azure Portalon vagy az Azure CLI-parancsokkal hozhat létre. Önnek kell lennie az előfizetés tulajdonosának vagy az előfizetés közreműködőjének.
A kiszolgálószintű tűzfalszabályok ugyanazon rugalmas Azure Database for PostgreSQL-kiszolgálópéldány összes adatbázisára vonatkoznak. A szabályok nem befolyásolják az Azure Portal webhelyének elérését.
Az alábbi ábra azt mutatja be, hogy az internetről és az Azure-ból érkező kapcsolati kísérleteknek hogyan kell áthaladniuk a tűzfalon, mielőtt elérnék a rugalmas Azure Database for PostgreSQL-kiszolgálóadatbázisokat:
Csatlakozás az internetről
Ha a kérés forrás IP-címe a kiszolgálószintű tűzfalszabályokban megadott tartományok egyikén belül van, a kapcsolat meg lesz adva. Ellenkező esetben a rendszer elutasítja.
Ha például az alkalmazás egy rugalmas Azure Database for PostgreSQL-kiszolgálóHoz tartozó Java Database Csatlakozás ivity (JDBC) illesztővel csatlakozik, akkor ez a hiba akkor fordulhat elő, ha a tűzfal blokkolja a kapcsolatot:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "123.45.67.890", user "adminuser", database "postgresql", SSL
Feljegyzés
Ha rugalmas Azure Database for PostgreSQL-kiszolgálót szeretne elérni a helyi számítógépről, győződjön meg arról, hogy a hálózaton és a helyi számítógépen található tűzfal engedélyezi a kimenő kommunikációt az 5432-s TCP-porton.
Csatlakozás az Azure-ból
Javasoljuk, hogy keresse meg bármely alkalmazás vagy szolgáltatás kimenő IP-címét, és explicit módon engedélyezze az egyes IP-címekhez vagy -tartományokhoz való hozzáférést. Megtalálhatja például egy Azure-alkalmazás Service-alkalmazás kimenő IP-címét, vagy használhat egy virtuális géphez kapcsolódó nyilvános IP-címet.
Ha egy rögzített kimenő IP-cím nem érhető el az Azure-szolgáltatáshoz, fontolja meg a kapcsolatok engedélyezését az Azure-adatközpontok összes IP-címéről:
- Az Azure Portal Hálózatkezelés panelén jelölje be az Azure bármely azure-szolgáltatásának nyilvános hozzáférésének engedélyezése a kiszolgálóhoz jelölőnégyzetet.
- Válassza a Mentés parancsot.
Fontos
Az Azure-on belüli bármely Azure-szolgáltatás nyilvános hozzáférésének engedélyezése ehhez a kiszolgálói beállításhoz konfigurálja a tűzfalat, hogy engedélyezze az Azure-ból érkező összes kapcsolatot, beleértve a többi ügyfél előfizetéséből származó kapcsolatokat is. Ha ezt a lehetőséget használja, győződjön meg arról, hogy a bejelentkezés és a felhasználói engedélyek csak a jogosult felhasználók számára korlátozzák a hozzáférést.
Tűzfalszabályok programozott kezelése
Az Azure Portal használata mellett programozott módon is kezelheti a tűzfalszabályokat az Azure CLI használatával.
Az Azure CLI-ben a 0.0.0.0-val egyenlő kezdő és befejező címmel rendelkező tűzfalszabály-beállítás egyenértékű az Azure bármely azure-szolgáltatásának nyilvános hozzáférésének engedélyezése a portál ezen kiszolgálóbeállításával . Ha a tűzfalszabályok elutasítják a csatlakozási kísérletet, az alkalmazás nem éri el a rugalmas Azure Database for PostgreSQL-kiszolgálópéldányt.
Tűzfalproblémák elhárítása
Vegye figyelembe az alábbi lehetőségeket, ha egy rugalmas Azure Database for PostgreSQL-kiszolgálópéldányhoz való hozzáférés nem a várt módon működik:
Az engedélyezési lista módosításai még nem lépnek érvénybe: A rugalmas Azure Database for PostgreSQL-kiszolgálópéldány tűzfalkonfigurációjának módosítása akár öt percet is igénybe vehet.
A bejelentkezés nincs engedélyezve, vagy helytelen jelszó lett használva: Ha egy bejelentkezés nem rendelkezik engedélyekkel a rugalmas Azure Database for PostgreSQL-kiszolgálópéldányhoz, vagy a jelszó helytelen, a kiszolgálóhoz való csatlakozás megtagadva. Tűzfalbeállítás létrehozása csak az ügyfelek számára biztosít lehetőséget a kiszolgálóhoz való csatlakozásra. Minden ügyfélnek meg kell adnia a szükséges biztonsági hitelesítő adatokat.
Például a következő hiba jelenhet meg, ha egy JDBC-ügyfél hitelesítése sikertelen:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: A felhasználó "yourusername" felhasználó jelszó-hitelesítése meghiúsult
A tűzfal nem engedélyezi a dinamikus IP-címeket: Ha dinamikus IP-címzéssel rendelkező internetkapcsolattal rendelkezik, és nem tud átjutni a tűzfalon, próbálkozzon az alábbi megoldások egyikével:
Kérje meg az internetszolgáltatótól (INTERNETP) a rugalmas Azure Database for PostgreSQL-kiszolgálópéldányt elérő ügyfélszámítógépekhez rendelt IP-címtartományt. Ezután adja hozzá az IP-címtartományt tűzfalszabályként.
Szerezze be a statikus IP-címeket az ügyfélszámítógépekhez, majd adja hozzá a statikus IP-címeket tűzfalszabályként.
A tűzfalszabályok nem érhetők el IPv6 formátumban: A tűzfalszabályoknak IPv4 formátumban kell lenniük. Ha IPv6 formátumú tűzfalszabályokat ad meg, érvényesítési hiba jelenik meg.