Impossibile eseguire il ping dell'istanza di AWS EC2


230

Ho un'istanza EC2 in esecuzione in AWS. Quando provo a eseguire il ping dalla mia casella locale non è disponibile.

Come posso rendere ping l'istanza?


Non eseguo il ping delle mie istanze ec2 perché non voglio abilitare ICMP nel mio gruppo di sicurezza semplicemente per motivi di ping, invece di aprire le porte telnet.
Aderemi Dayo,

Risposte:


280

Aggiungi una nuova regola in entrata del gruppo di sicurezza EC2 :

  • Tipo: regola ICMP personalizzata
  • Protocollo: Echo Request
  • Porta: N / A
  • Fonte: la tua scelta (selezionerei Anywhere per poter eseguire il ping da qualsiasi macchina)

3
Grazie, mi piace questo Voglio solo permettere il ping, non tutto.
Chu-Siang Lai,

Ho bisogno anche di ICMPv6?
Franklin Yu,

Potrei provare anche quello. Ma l'ICMP mi è bastato
Rakib l'

1
Sto facendo Ovunque ma converte automaticamente in personalizzato @SyedRakibAlHasan
Alper

25
È facile confondere "Echo Reply" con "Echo Request", per un momento mi sono confuso.
Andy,

100

Qualche anno in ritardo, ma spero che questo aiuti qualcun altro ...

1) Innanzitutto assicurarsi che l'istanza EC2 abbia un IP pubblico. Se ha un DNS pubblico o un indirizzo IP pubblico (cerchiato di seguito), dovresti essere bravo. Questo sarà l'indirizzo che esegui il ping. Indirizzo DNS pubblico AWS

2) Successivamente assicurati che le regole di rete di Amazon consentano richieste di eco . Vai al gruppo di sicurezza per EC2.

  • tasto destro del mouse, selezionare le regole in entrata
  • A: selezionare Aggiungi regola
  • B: Seleziona Regola ICMP personalizzata - IPv4
  • C: selezionare Richiesta eco
  • D: Seleziona Ovunque o Il mio IP
  • E: selezionare Salva

Aggiungere una regola ICMP del gruppo di sicurezza per consentire ping ed echi

3) Successivamente, il firewall di Windows blocca le richieste di eco in entrata per impostazione predefinita. Consenti richieste Echo creando un'eccezione del firewall di Windows ...

  • Vai su Start e digita Windows Firewall con sicurezza avanzata
  • Seleziona le regole in entrata

Aggiungere una regola ICMP di Windows Server per consentire ping ed echi

4) Fatto! Spero che ora dovresti essere in grado di eseguire il ping del tuo server.


1
Mi hai salvato la giornata !! Grazie mille
Yugandhar Pathi,

3
La migliore risposta di gran lunga. Molto approfondito.
Brian Webster,

2
Windows Firewall è stato il colpevole e non è stato menzionato finora da altre risposte.
crokusek,

Ora posso eseguire il ping ma sai come posso consentire all'ascolto della mia app nodo su una porta?
FluffyBeing

@zeion - Non uso AWS da un po '(ero in prova all'inizio del 2017), quindi non potrò aiutare molto. L'unica cosa a cui riesco a pensare (che sono sicuro che tu abbia già provato) sarebbe usare gli elementi di cui sopra ma per la porta richiesta dalla tua app. Per la parte del firewall di Windows, penso che tu possa creare una nuova regola poiché la regola pre-costruita non verrà probabilmente elencata.
Sunsetquest

84

Devi modificare il gruppo di sicurezza a cui appartiene la tua istanza EC2 e consentire l'accesso (o in alternativa crearne uno nuovo e aggiungere l'istanza ad esso).

Per impostazione predefinita, tutto viene negato. L'eccezione che devi aggiungere al gruppo di sicurezza dipende dal servizio che devi rendere disponibile su Internet.

Se si tratta di un server web, dovrai consentire l'accesso alla porta 80per 0.0.0.0/0( che significa qualsiasi indirizzo IP ).

Per consentire il ping dell'istanza è necessario abilitare il traffico ICMP.

AWS Web Console fornisce alcune delle opzioni più comunemente utilizzate nell'elenco a discesa pertinente.


7
Abilitare il All ICMPtraffico verso le macchine utilizzando il gruppo di sicurezza specificato ha funzionato a meraviglia.
Jonathan Williams,

Oltre a creare e modificare il gruppo di sicurezza, è necessario associarlo all'istanza. Solo allora avrà effetto.
MikeW,

I gruppi di sicurezza ti consentono di controllare il traffico verso la tua istanza, incluso il tipo di traffico che può raggiungere la tua istanza. `` 1. Controlla i gruppi di sicurezza (abilita i PORTI ad essere APERTI) 2. Controlla il VPC corretto 3. Collega la sottorete corretta 4. AWS EC2 deve essere nella sottorete pubblica 5. Abilita gateway Internet '' `` Apri le porte in AWS EC2 controlla questo link ufficiale AWS [link] [1] La risposta è pubblicata da Tapan Nayan Banker | Tapan Banker www.tapanbanker.com
Tapan Banker

40

La regola ICMP personalizzata nel gruppo di sicurezza non è quella che serve, almeno per me. Ma la seguente regola funzionerà:

Type: All ICMP 
Protocol: TCP
Port range: 0 - 65535
Source: Anywhere - 0.0.0.0/0

Dopo averlo fatto sarai in grado di eseguire il ping di altre istanze. Dovresti vedere qualcosa del tipo:

PING 10.0.0.15 (10.0.0.15): 56 data bytes
64 bytes from 10.0.0.14: icmp_seq=1 ttl=64 time=3.9 ms
64 bytes from 10.0.0.14: icmp_seq=2 ttl=64 time=3.9 ms
64 bytes from 10.0.0.14: icmp_seq=3 ttl=64 time=10.6 ms
64 bytes from 10.0.0.14: icmp_seq=4 ttl=64 time=40.6 ms
64 bytes from 10.0.0.14: icmp_seq=5 ttl=64 time=3.8 ms
64 bytes from 10.0.0.14: icmp_seq=6 ttl=64 time=5.3 ms
64 bytes from 10.0.0.14: icmp_seq=7 ttl=64 time=6.5 ms
64 bytes from 10.0.0.14: icmp_seq=8 ttl=64 time=3.5 ms
64 bytes from 10.0.0.14: icmp_seq=9 ttl=64 time=21.0 ms
64 bytes from 10.0.0.14: icmp_seq=10 ttl=64 time=3.5 ms
64 bytes from 10.0.0.14: icmp_seq=11 ttl=64 time=3.5 ms
64 bytes from 10.0.0.14: icmp_seq=12 ttl=64 time=59.7 ms
64 bytes from 10.0.0.14: icmp_seq=13 ttl=64 time=3.5 ms
64 bytes from 10.0.0.14: icmp_seq=14 ttl=64 time=3.5 ms
64 bytes from 10.0.0.14: icmp_seq=15 ttl=64 time=4.8 ms
64 bytes from 10.0.0.14: icmp_seq=16 ttl=64 time=3.1 ms
64 bytes from 10.0.0.14: icmp_seq=17 ttl=64 time=3.1 ms
64 bytes from 10.0.0.14: icmp_seq=18 ttl=64 time=3.0 ms
64 bytes from 10.0.0.14: icmp_seq=19 ttl=64 time=3.1 ms

--- 10.0.0.14 ping statistics ---
20 packets transmitted, 19 packets received, 5% packet loss
round-trip min/avg/max = 3.0/9.9/59.7 ms

Questo è tutto.


1
Non ci sono problemi di sicurezza associati a questo?
Victor Anuebunwa,

probabilmente dovresti specificare gli IP
Laura Liparulo il

@avonnadozie, sì, non dovremmo aprire tutte le porte ICMP.
Kartik Narayana Maringanti,

1
"tutte le porte ICMP"? Cosa significa? ICMP non è né TCP né UDP e non ha porte.
David Ongaro,

32
  1. Vai a Dashboard EC2 e fai clic su "Istanze in esecuzione" in "Gruppi di sicurezza", seleziona il gruppo dell'istanza di cui hai bisogno per aggiungere sicurezza.
  2. fai clic sulla scheda "In entrata"
  3. Fai clic sul pulsante "Modifica" (Si aprirà una finestra popup)
  4. fai clic su "Aggiungi regola"
  5. Seleziona "Regola ICMP personalizzata - IPv4" come Tipo
  6. Seleziona "Echo Request" e "Echo Response" come protocollo (Port Range di default mostra come "N / A)
  7. Immettere "0.0.0.0/0" come sorgente
  8. Fai clic su "Salva"

12

Si prega di consultare le liste di controllo qui sotto

1) Devi prima verificare se l'istanza è avviata in una sottorete dove è raggiungibile da Internet

Per questo controlla se la sottorete lanciata dall'istanza ha un gateway Internet ad essa collegato.Per i dettagli della rete in AWS, vai al seguente link.

sottoreti pubbliche e private in aws vpc

2) Verifica se hai aggiunto le regole del gruppo di sicurezza appropriate, In caso contrario Aggiungi la regola seguente nel gruppo di sicurezza collegato all'istanza. Un gruppo di sicurezza è un firewall collegato a ogni istanza avviata. I gruppi di sicurezza contengono le regole in entrata / in uscita che consentono il traffico in / fuori dall'istanza. per impostazione predefinita, ogni gruppo di sicurezza consente tutto il traffico in uscita dall'istanza e nessun traffico in entrata verso l'istanza. Controllare il collegamento seguente per ulteriori dettagli sul traffico.

documentazione del gruppo di sicurezza

Tipo: personalizzato ICMPV4

Protocollo: ICMP

Portrange: richiesta eco

Fonte: 0.0.0.0/0

screenshot dalla console di aws

3) Controlla se hai un numero sufficiente di regole nel firewall a livello di sottorete chiamato NACL. Un NACL è un firewall senza stato che necessita sia del traffico in entrata che in uscita specificato separatamente. Il NACL viene applicato a livello di sottorete, tutte le istanze della sottorete verranno sotto le regole NACL. Di seguito è riportato il link che avrà maggiori dettagli al riguardo.

Documentazione NACL

Regole in entrata . Regole in uscita

Tipo: IPV4 personalizzato Tipo: IPV4 personalizzato

Protocollo: ICMP Protocollo: ICMP

Portrange: ECHO REQUEST Portrange: ECHO REPLY

Fonte: 0.0.0.0/0 Destinazione: 0.0.0.0/0

Consenti / Nega: Consenti Consenti / Nega: Consenti

regola in entrata screenshot

regola in uscita dello screenshot

4) controlla eventuali firewall come IPTABLES e disabilita per testare il ping.


Come scrivere una risposta . Aggiungi ulteriori dettagli per giustificare la tua risposta. e utilizzare gli strumenti di formattazione
Morse

Grazie prateek per il feed back. L'ho reso più chiaro.
Haneef Mohammed,

Aggiungi immagini come immagini e non come collegamenti ipertestuali. modifica e converti schermate in immagini
Morse

Perché questo è stato sottoposto a downvoting? Sembra tutto a posto e ha senso
Witold Kaczurba,

Witold, grazie per la tua preoccupazione. Sembra che ci sia stato un problema di formattazione che ha fatto un downvote. Ora li ho corretti.
Haneef Mohammed,

6

La creazione di un nuovo gruppo di sicurezza con All ICMP ha funzionato per me.


4

Coloro che sono nuovi in ​​aws ec2 e vogliono accedere all'istanza da SSH, Broswer, Ping from systemquel momento in basso sono la regola in entrata per questi: -

inserisci qui la descrizione dell'immagine


4

Vai al gruppo di sicurezza dell'istanza EC2 e modifica la regola inbound consentire 0.0.0.0/0 per ICMP.

Funzionerà.


3
1.Go to EC2 Dashboard and click "Running Instances" on "Security Groups"
2.select the group of your instance which you need to add security.  
3.click on the "Inbound" tab
4.Click "Edit" Button (It will open an popup window)
5.click "Add Rule"
6.Select the "Custom ICMP rule - IPv4" as Type
7.Enter the "0.0.0.0/0" as Source or your public IP

7.Fare clic su "Salva"


1

Per impostazione predefinita, EC2 è protetto da AWS Security Group (un servizio trovato in EC2 e VPC). Il gruppo di sicurezza per impostazione predefinita non consente qualsiasi richiesta ICMP che includa il ping. Per permetterlo:

Vai a: Istanza AWS EC2 Individua: il gruppo di sicurezza si lega a quell'istanza (è possibile avere più gruppi di sicurezza) Verifica: porta Regole in entrata per protocollo (ICMP) (0 - 65535) se non è presente è possibile aggiungerlo e consentirlo l'IP di origine specificato o un altro gruppo di sicurezza.


1

Se si desidera abilitare il ping (da qualsiasi luogo) a livello di codice, tramite SDK, la formula magica è:

cidrIp:     "0.0.0.0/0"
ipProtocol: "icmp"
toPort:     -1
fromPort:   8

Ad esempio, in Scala (utilizzando AWS Java SDK v2), quanto segue funziona per definire un IpPermissionper l' authorizeSecurityGroupIngressendpoint.

  val PingPermission = {
    val range = IpRange.builder().cidrIp( "0.0.0.0/0" ).build()
    IpPermission.builder().ipProtocol( "icmp" ).ipRanges( range ).toPort( -1 ).fromPort( 8 ).build()
  }

(Ho provato che questo è solo su EC2-Classic. Non so quali regole di uscita potrebbero essere necessarie in un VPC)


in realtà ho impostato questo come una regola di uscita (uscita) nel mio gruppo di sicurezza usando terraform e ha funzionato come un incantesimo
str8up7od

1

I gruppi di sicurezza ti consentono di controllare il traffico verso la tua istanza, incluso il tipo di traffico che può raggiungere la tua istanza.

1. Check the Security Groups (Enabled the PORTS to be OPEN)
2. Check the correct VPC 
3. Attached the correct Subnet 
4. AWS EC2 to be in Public Subnet 
5. Enable Internet Gateway 

Apri le porte in AWS EC2, controlla questo link link AWS ufficiale



0

Se imposti le regole come regola "ICMP personalizzata" e "rispondi eco" ovunque, funzionerà come un campione. La "richiesta di eco" è la regola sbagliata per rispondere ai ping.


14
La risposta Eco non ha funzionato per me, ma la richiesta Eco ha funzionato.
storm_m2138,

0

Ho avuto un problema più profondo: avevo creato un VPC, una sottorete e un appropriato gruppo di sicurezza, ma ho trascurato di aggiungere un gateway Internet e di associarlo alla mia sottorete. Dato che questo è il mio primo risultato di Google per "Impossibile eseguire il ping ec2", sto pubblicando queste informazioni nel caso risultasse utile a qualcun altro (o a me stesso in futuro).


0

istruzioni specifiche terraform per un gruppo di sicurezza perché -1 non era ovvio per me.

resource "aws_security_group" "Ping" {
  vpc_id = "${aws_vpc.MyVPC.id}"
  ingress {
    from_port   = -1
    to_port     = -1
    protocol    = "icmp"
    cidr_blocks = ["0.0.0.0/0"]
    ipv6_cidr_blocks = ["::/0"]
  }
}

0

Ho avuto lo stesso problema provando a connettermi dal server Linux a EC2, devi assicurarti di due cose su "ALL ICMP" è stato aggiunto da EC2 come mostrato sopra e che da solo non funzionerà, devi aggiornare Ansible alla versione più recente 2.4, non funzionava con la mia precedente versione 2.2.


0

Devi aprire la seguente porta di sicurezza nel gruppo di sicurezza. Ogni regola ha scopi diversi, come mostrato di seguito.

inserisci qui la descrizione dell'immagine

  1. TUTTO ICMP per il ping.

  2. HTTP per l'accesso all'URL sulla porta HTTP.

  3. HTTPS per l'accesso all'URL sulla porta HTTP protetta.

Secondo il vostro requisito è possibile modificare SOURCE


0

potrebbe essere che la tua rete interna stia bloccando quell'IP per eseguire il ping o il pacchetto di ping bloccato nel firewall se hai aperto nel gruppo di sicurezza e VPC è corretto.


-1

Quando eseguo il ping di due sistemi, per impostazione predefinita SSH è abilitato (se hai effettuato la connessione tramite putty o terminale). Per consentire il ping, ho aggiunto il gruppo di sicurezza per ciascuna istanza (in entrata).

inserisci qui la descrizione dell'immagine


6
La tua seconda regola, "Tutto il traffico" da "Ovunque", non è una buona idea.
Devin,

-3

Quando si accede a nuove porte nell'istanza ec2. Hai aggiunto in 2 posti. 1. Porte in entrata del gruppo di sicurezza. 2. Regole di ingresso delle impostazioni del firewall.


-3
  1. Assicurati di utilizzare l'IP pubblico della tua istanza aws ec2 per eseguire il ping.

  2. modificare il gruppo di sicurezza collegato all'istanza EC2 e aggiungere una regola in entrata per il protocollo ICMP.

  3. prova a eseguire il ping, se questo non risolve, quindi aggiungi la regola in uscita per ICMP nel gruppo di sicurezza.


-4

Vorrei menzionare alcuni rari problemi indotti dall'ISP. Di tanto in tanto mi rallegro con BSNL. è uno di quei problemi strani che richiede ore di vita quotidiana. In tal caso si potrebbe sollevare il problema con l'ISP o modificare l'ISP.

  1. L'istanza di Amazon è accessibile dal browser (tutte le porte aperte)
  2. Lo stesso non può essere eseguito il ping dalla console
  3. ssh / telnet non funziona neanche.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.