Usando AWS re:Post, accetti AWS re:Post Termini di utilizzo

Come posso configurare un cluster di database Amazon Aurora fornito in modo che sia accessibile al pubblico?

5 minuti di lettura
0

Ho un cluster di database Amazon Aurora fornito e voglio configurarlo in modo che sia accessibile al pubblico. Inoltre, voglio proteggere il mio cluster di database Aurora da connessioni esterne. Come posso farlo?

Breve descrizione

Per connettersi a un cluster di database Aurora dall'esterno di Amazon Virtual Private Cloud (Amazon VPC), le istanze del cluster devono soddisfare i seguenti requisiti:

  • L'istanza database ha un indirizzo IP pubblico.
  • L'istanza database viene eseguita in una sottorete accessibile al pubblico.

Oltre a configurare la connessione dell'istanza database dall'esterno di un VPC, puoi proteggere le connessioni utilizzando Transport Layer Security (TLS).

Risoluzione

Imposta l’accessibilità al pubblico dell'istanza database su Sì

L'impostazione Accessibile al pubblico per un'istanza database di Amazon Relational Database Service (Amazon RDS) controlla l'assegnazione di un indirizzo IP pubblico all'istanza database.

  • Se è impostato su No, l'istanza database non dispone di un indirizzo IP pubblico.
  • Se è impostato su , l'istanza database ha sia indirizzi IP pubblici e privati.

Per modificare l'impostazione Accessibile al pubblico dell'istanza database su , segui questi passaggi:

  1. Apri la console Amazon RDS.
  2. Scegli Database dal riquadro di navigazione, quindi scegliete l'istanza database.
  3. Scegli Modifica.
  4. In Connettività, estendi la sezione Configurazione aggiuntiva, quindi scegli Accessibile al pubblico.
  5. Scegli Continua.
  6. Scegli Modifica istanza database

Nota: Non è necessario scegliere Applica immediatamente. Per ulteriori informazioni su come Applica immediatamente può influire sui tempi di inattività, vedere Utilizzo del parametro Applica immediatamente.

Esegui un'istanza database in una sottorete pubblica

Una sottorete pubblica è una sottorete associata a una tabella di route che ha un percorso verso il gateway Internet, in genere la route predefinita, 0.0.0.0/0. Questa route attiva le istanze database in una sottorete per comunicare con risorse esterne al VPC.

Per le istanze DB Aurora, non puoi scegliere una sottorete specifica. Scegliete invece un gruppo di sottorete DB quando create l'istanza.

Un gruppo di sottoreti DB è un insieme di sottoreti che appartengono a un VPC. Quando crea l'host sottostante, Amazon RDS sceglie casualmente una sottorete dal gruppo di sottoreti del database. In genere, un VPC dispone di sottoreti pubbliche e private. Se il gruppo di sottoreti del database contiene sottoreti pubbliche e private, avvia l'host sottostante in una sottorete pubblica o privata. Non è possibile connettersi all'istanza database dall'esterno del VPC se l'host sottostante viene avviato in una sottorete privata.

Crea invece un gruppo di sottoreti DB con sottoreti con una configurazione di rete simile. Ad esempio, crea un gruppo di sottoreti DB per le sottoreti pubbliche e un secondo gruppo di sottoreti DB per le sottoreti private. Per ulteriori informazioni, consulta Lavorare con un'istanza database in un gruppo di sottoreti.

Segui questi passaggi per assicurarti che la sottorete utilizzata dall'istanza database abbia accesso a Internet:

  1. Verifica che il tuo VPC sia collegato a un gateway Internet.
  2. Verifica che tutte le sottoreti del gruppo di sottoreti DB utilizzino una tabella di routing con Internet Gateway.
    • Se la sottorete utilizza la tabella delle route principali del VPC, aggiungi il percorso per Internet Gateway (la destinazione è 0.0.0.0/0).
    • Se necessario, crea una tabella di routing personalizzata con route verso Internet Gateway e associala alla sottorete.
  3. Aggiungi l'indirizzo IP pubblico di origine da cui desideri connetterti all'istanza database nelle regole in entrata per il gruppo di sicurezza.
  4. Per Tipo di regola, scegli MySQL/Aurora o PostgreSQL, a seconda del tipo di motore.
  5. Per Fonte, inserisci manualmente l'intervallo CIDR o scegli Il mio IP per connetterti all'istanza DB dalla stessa workstation.

Proteggi il cluster DB dalle connessioni esterne al VPC

Puoi utilizzare TLS per crittografare le connessioni che provengono dall'esterno di un VPC perché il trasferimento dei dati avviene su Internet. Per confermare che stai utilizzando il massimo livello di sicurezza, utilizza il parametro ssl-ca per passare il certificato CA, quindi attiva la convalida del nome host. Usa i seguenti comandi di esempio per le connessioni TLS, a seconda della versione di Aurora che stai utilizzando.

Versione 5.6 e successiva compatibile con Amazon Aurora MySQL:

mysql -h test-aurora-56.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -u master_user --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert

Versione 5.7 compatibile con Aurora MySQL e versioni successive:

mysql -h test-aurora-57.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -u master_user --ssl-ca=rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY

Edizione compatibile con Amazon Aurora PostgreSQL:

psql -h test-aurora-pg.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -p 5432 "dbname=postgres user=master_user sslrootcert=rds-combined-ca-bundle.pem sslmode=verify-full"

Nota: Puoi anche applicare TLS per i cluster di database. Per Aurora MySQL, è necessario applicare TLS a livello di utente del database. Per Aurora PostgreSQL compatibile, imposta il parametro rds.force_ssl a 1.


Informazioni correlate

Utilizzo di SSL/TLS con i cluster Aurora MySQL DB

Protezione dei dati di Aurora PostgreSQL con SSL

Come posso connettermi alla mia istanza database Amazon RDS utilizzando un bastion host dalla mia macchina Linux/macOS?

Come posso configurare gli endpoint Aurora privati e pubblici nella console Amazon RDS?

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa