Sto ospitando un sito Web su un'istanza EC2. Come posso consentire agli utenti di connettersi sulle porte HTTP (80) o HTTPS (443)?

6 minuti di lettura
0

Sto ospitando il mio sito Web su un'istanza Amazon Elastic Compute Cloud (Amazon EC2). Desidero che gli utenti si connettano al mio sito Web sulle porte HTTP (80) o HTTPS (443).

Risoluzione

Per consentire il traffico sulle porte 80 e 443, è necessario configurare il gruppo di sicurezza associato e la lista di controllo degli accessi alla rete (ACL).

Regole del gruppo di sicurezza

Per il traffico HTTP, aggiungi una regola in entrata sulla porta 80 dall'indirizzo di origine 0.0.0.0/0.

Per il traffico HTTPS, aggiungi una regola in entrata sulla porta 443 dall'indirizzo di origine 0.0.0.0/0.

Queste regole in entrata consentono il traffico dagli indirizzi IPv4. Per consentire il traffico IPv6 aggiungi regole in entrata sulle stesse porte dall'indirizzo di origine ::/0. Per ulteriori informazioni sulla creazione o sulla modifica dei gruppi di sicurezza, consulta la sezione Controlla il traffico verso le tue risorse AWS utilizzando i gruppi di sicurezza.

I gruppi di sicurezza sono stateful, quindi il traffico di ritorno dall'istanza agli utenti è consentito automaticamente. Non è necessario modificare le regole in uscita del gruppo di sicurezza.

Nota: nell’esempio seguente vengono mostrate le regole del gruppo di sicurezza per consentire il traffico IPv4 e IPv6 sulle porte TCP 80 (HTTP) e 443 (HTTPS). Determina se per il tuo caso d'uso debbano essere consentite altre fonti di traffico, come SSH o RDP per l'accesso all'istanza. Quindi, assicurati che il tuo gruppo di sicurezza disponga delle regole in entrata pertinenti per consentire il traffico necessario.

Regole in entrata

TipoProtocolloIntervallo di porteOrigine
HTTP (80)TCP (6)800.0.0.0/0
HTTP (80)TCP (6)80::/0
HTTPS (443)TCP (6)4430.0.0.0/0
HTTPS (443)TCP (6)443::/0

Lista di controllo degli accessi alla rete (ACL)

L'ACL di rete predefinita consente tutto il traffico IPv4 in entrata e in uscita. Se gli utenti si connettono tramite IPv6 e il tuo Amazon Virtual Private Cloud (Amazon VPC) ha un blocco CIDR IPv6 associato, anche l'ACL di rete predefinita aggiungerà automaticamente delle regole che consentono tutto il traffico IPv6 in entrata e in uscita. Tuttavia, se si utilizza una ACL di rete personalizzata con regole più restrittive, è necessario consentire esplicitamente il traffico sulle porte 80 e 443.

Le ACL di rete sono stateless, quindi devi aggiungere regole sia in entrata che in uscita per consentire la connessione al tuo sito web. Per ulteriori informazioni su come modificare le regole dell'ACL di rete, consulta la sezione Come controllare il traffico verso le sottoreti utilizzando le liste di controllo degli accessi di rete.

Nota: nell’esempio seguente viene mostrata una ACL di rete personalizzata che consente il traffico sulle porte TCP 80 (HTTP) e 443 (HTTPS). Le ACL di rete vengono applicate a tutte le risorse di un'intera sottorete, non solo a una singola istanza EC2. Nella configurazione di esempio, tutto il traffico da e verso le risorse della stessa sottorete viene bloccato, ad eccezione di quello in transito sulle porte di destinazione 80 e 443. Determina se per il tuo caso d'uso debbano essere consentite altre fonti di traffico, come SSH o RDP per l'accesso all'istanza. Quindi, assicurati di disporre delle regole in entrata pertinenti per consentire il traffico necessario.

Regole in entrata

Regola n.TipoProtocolloIntervallo di porteOrigineConsenti/Nega
100HTTP (80)TCP (6)800.0.0.0/0CONSENTI
101HTTPS (443)TCP (6)4430.0.0.0/0CONSENTI
102HTTP (80)TCP (6)80::/0CONSENTI
103HTTPS (443)TCP (6)443::/0CONSENTI
*TUTTO il trafficoTUTTITUTTI::/0NEGA
*TUTTO il trafficoTUTTITUTTI0.0.0.0/0NEGA

Regole in uscita

Regola n.TipoProtocolloIntervallo di porteDestinazioneConsenti/Nega
100Regola TCP personalizzataTCP (6)1024-655350.0.0.0/0CONSENTI
101Regola TCP personalizzataTCP (6)1024-65535::/0CONSENTI
*TUTTO il trafficoTUTTITUTTI::/0NEGA
*TUTTO il trafficoTUTTITUTTI0.0.0.0/0NEGA

Risoluzione dei problemi relativi a un errore di connessione rifiutata

Un errore di connessione rifiutata indica che la richiesta di connessione viene indirizzata all'istanza, ma non viene ricevuta dal servizio sulla porta specificata. Se l'host A avvia una connessione TCP con l'host B e riceve un errore di connessione rifiutata, tale errore indica quanto segue:

  • Innanzitutto, l'host A ha inviato un pacchetto TCP SYN all'host B.
  • Quindi, l'host B ha inviato un pacchetto TCP RST in risposta all'host A.

Se riscontri questo errore anche dopo aver consentito le porte TCP 80 e 443 nel gruppo di sicurezza e nella lista di controllo degli accessi alla rete, risolvi questi problemi:

  • Il daemon del servizio, come httpd (Apache), non è in esecuzione o è stato interrotto.

Per risolvere il problema, controlla se il servizio è in esecuzione nell'istanza EC2.

  • Il servizio è in ascolto su una porta non corretta.

Per risolvere il problema, controlla se l'istanza EC2 è in ascolto sulla porta TCP richiesta (80/443).

  • La porta è bloccata da un firewall.

Per risolvere il problema, controlla se un firewall a livello di sistema operativo nell'istanza EC2 sta bloccando il traffico TCP in entrata sulla porta richiesta.

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa