Eu tenho uma instância do EC2 em execução na AWS. Quando tento fazer ping na caixa local, ele não está disponível.
Como posso tornar a instância pingável?
Eu tenho uma instância do EC2 em execução na AWS. Quando tento fazer ping na caixa local, ele não está disponível.
Como posso tornar a instância pingável?
Respostas:
Adicione uma nova regra de entrada do grupo de segurança EC2 :
ping
, não todos.
Alguns anos atrasado, mas espero que isso ajude outra pessoa ...
1) Primeiro verifique se a instância do EC2 possui um IP público. Se tiver um DNS público ou endereço IP público (circulado abaixo), você deve ser bom. Este será o endereço em que você executa o ping.
2) Em seguida, verifique se as regras de rede da Amazon permitem solicitações de eco . Vá para o grupo de segurança do EC2.
3) Em seguida, o firewall do Windows bloqueia solicitações de eco de entrada por padrão. Permitir solicitações de eco criando uma exceção do firewall do Windows ...
4) Feito! Espero que agora você consiga executar ping no seu servidor.
Você precisa editar o grupo de segurança ao qual sua instância do EC2 pertence e permitir o acesso (ou, em alternativa, criar uma nova e adicionar a instância a ela).
Por padrão, tudo é negado. A exceção que você precisa adicionar ao grupo de segurança depende do serviço que você precisa disponibilizar para a Internet.
Se for um servidor web que você precisa para permitir o acesso ao porto 80
para 0.0.0.0/0
( o que significa que qualquer endereço IP ).
Para permitir o ping da instância, você precisa habilitar o tráfego ICMP.
O AWS Web Console fornece algumas das opções mais usadas na lista suspensa relevante.
All ICMP
tráfego para as máquinas usando o Grupo de Segurança especificado funcionou para mim.
A regra ICMP personalizada no grupo de segurança não é o que é preciso, pelo menos para mim. Mas a seguinte regra funcionará:
Type: All ICMP
Protocol: TCP
Port range: 0 - 65535
Source: Anywhere - 0.0.0.0/0
Depois de fazer isso, você poderá executar ping em outras instâncias. Você deve ver algo como:
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
É isso aí.
Acesse as listas de verificação abaixo
1) Você deve primeiro verificar se a instância é iniciada em uma sub-rede onde é acessível pela Internet
Para verificar se a instância lançada na sub-rede possui um gateway da Internet, consulte os detalhes da rede na AWS.
sub-redes públicas e privadas no aws vpc
2) Verifique se você adicionou regras de grupo de segurança adequadas; caso contrário, adicione a regra abaixo no grupo de segurança anexado à instância.Um grupo de segurança é um firewall anexado a todas as instâncias iniciadas.Os grupos de segurança contêm as regras de entrada / saída que permitem o tráfego / fora da instância.por padrão, todos os grupos de segurança permitem todo o tráfego de saída da instância e nenhum tráfego de entrada para a instância. Verifique o link abaixo para obter mais detalhes sobre o tráfego.
documentação do grupo de segurança
Tipo: ICMPV4 personalizado
Protocolo: ICMP
Portrange: solicitação de eco
Fonte: 0.0.0.0/0
3) Verifique se você possui regras suficientes no firewall no nível da sub-rede chamado NACL.Um NACL é um firewall sem estado que precisa do tráfego de entrada e de saída especificado separadamente.NACL é aplicado no nível de sub-rede, todas as instâncias sob a sub-rede abaixo as regras da NACL. Abaixo está o link que contém mais detalhes.
Regras de entrada . Regras de saída
Tipo: IPV4 personalizado Tipo: IPV4 personalizado
Protocolo: ICMP Protocolo: ICMP
Portrange: ECHO REQUEST Portrange: ECHO REPLY
Origem: 0.0.0.0/0 Destino: 0.0.0.0/0
Permitir / Negar: Permitir Permitir / Negar: Permitir
4) verifique todos os firewalls como IPTABLES e desative para testar o ping.
A criação de um novo grupo de segurança com o All ICMP funcionou para mim.
Quem é novo no aws ec2 e deseja acessar a instância a partir de SSH, Broswer, Ping from system
então é a regra de entrada para estes: -
Vá para o grupo de segurança da instância do EC2 e edite a regra de entrada permitir 0.0.0.0/0 para ICMP.
Vai funcionar.
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.Clique em "Salvar"
Por padrão, o EC2 é protegido pelo AWS Security Group (um serviço encontrado no EC2 e VPC). O Grupo de Segurança, por padrão, está impedindo qualquer solicitação ICMP que inclua o ping. Para permitir:
Vá para: Localização da Instância do AWS EC2 : O grupo de segurança se liga a essa instância (é possível ter vários grupos de segurança). Verifique: Regras de entrada para porta de protocolo (ICMP) (0 - 65535). Se não estiver presente, você pode adicioná-lo e permitir seu IP de origem especificado ou outro grupo de segurança.
Se você deseja ativar o ping (de qualquer lugar) programaticamente, via SDK, a fórmula mágica é:
cidrIp: "0.0.0.0/0"
ipProtocol: "icmp"
toPort: -1
fromPort: 8
Por exemplo, no Scala (usando o AWS Java SDK v2), o seguinte funciona para definir um IpPermission
para o authorizeSecurityGroupIngress
terminal.
val PingPermission = {
val range = IpRange.builder().cidrIp( "0.0.0.0/0" ).build()
IpPermission.builder().ipProtocol( "icmp" ).ipRanges( range ).toPort( -1 ).fromPort( 8 ).build()
}
(Tentei isso apenas no EC2-Classic. Não sei quais regras de saída podem ser necessárias em uma VPC)
Os grupos de segurança permitem controlar o tráfego para sua instância, incluindo o tipo de tráfego que pode alcançar sua instância.
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
Abrir as portas no AWS EC2 consultar este link oficial AWS ligação
Sim, você precisa abrir o acesso à porta. Consulte Grupos de segurança http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html
Sua instância do EC2 precisa estar conectada a um grupo de segurança que permita o acesso necessário.
Se você configurar as regras como regra "ICMP personalizado" e "responder ao eco" em qualquer lugar, funcionará como um campeão. A "solicitação de eco" é a regra errada para responder pings.
Eu tive um problema mais profundo - criei uma VPC, uma sub-rede e um grupo de segurança apropriado, mas deixei de adicionar um gateway da Internet e associá-lo à minha sub-rede. Como este é o meu primeiro resultado do Google para "Impossível executar ping ec2", estou postando essas informações aqui, caso sejam úteis para outra pessoa (ou para mim mesmo no futuro).
terraform instruções específicas para um grupo de segurança porque o -1 não era óbvio para mim.
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"]
}
}
Eu tive o mesmo problema ao tentar conectar do servidor linux ao EC2, você tem dois para garantir que "ALL ICMP" seja adicionado do EC2 como mostrado acima e que, por si só, não funcionará, é necessário atualizar o Ansible para a versão mais recente 2.4, não funcionou com a minha versão anterior 2.2.
Você deve abrir a seguinte porta de segurança no grupo de segurança. Cada regra tem finalidades diferentes, como mostrado abaixo.
ALL ICMP para ping.
HTTP para acessar URL na porta HTTP.
HTTPS para acessar URL na porta HTTP segura.
Conforme sua exigência, você pode alterar FONTE
pode ser que sua rede interna esteja bloqueando esse IP para executar ping ou pacote de ping bloqueado no firewall se você abriu no grupo de segurança e a VPC está correta.
Ao executar o ping em dois sistemas, o SSH por padrão está ativado (se você se conectou via putty ou terminal.) Para permitir o ping, adicionei o grupo de segurança para cada instância (entrada).
Ao acessar novas portas na instância ec2. Você adicionou 2 lugares. 1. Portas de entrada do grupo de segurança. 2. Regras de entrada das configurações do firewall.
Verifique se você está usando o IP público de sua instância do aws ec2 para executar ping.
edite o grupo de segurança anexado à sua instância do EC2 e adicione uma regra de entrada para o protocolo ICMP.
tente executar o ping, se isso não for corrigido, adicione a regra de saída para o ICMP no grupo de segurança.
Eu gostaria de mencionar alguns problemas raros induzidos pelo ISP. Ocasionalmente, o seguinte acontece comigo com o BSNL. é um daqueles problemas estranhos que leva horas da sua vida diária. Nesse caso, pode-se levantar o problema com o provedor ou alterar o provedor.