Saya memiliki instance EC2 yang berjalan di AWS. Ketika saya mencoba melakukan ping dari kotak lokal saya tidak tersedia.
Bagaimana saya bisa membuat instance pingable?
Tambahkan grup keamanan EC2 baru aturan masuk :
Anda harus mengedit Grup Keamanan yang menjadi tempat instance EC2 Anda dan mengizinkan akses (atau sebagai alternatif buat yang baru dan menambahkan instance ke dalamnya).
Secara default semuanya ditolak. Pengecualian yang perlu Anda tambahkan ke Grup Keamanan tergantung pada layanan yang Anda perlukan agar tersedia di internet.
Jika itu adalah server web, Anda harus mengizinkan akses ke port 80
untuk 0.0.0.0/0
( yang berarti alamat IP apa pun ).
Untuk mengizinkan ping instance, Anda harus mengaktifkan lalu lintas ICMP.
AWS Web Console menyediakan beberapa opsi yang paling umum digunakan dalam daftar dropdown yang relevan.
Beberapa tahun terlambat tetapi mudah-mudahan ini akan membantu orang lain ...
1) Pertama-tama pastikan instance EC2 memiliki IP publik. Jika memiliki alamat Public DNS atau Public IP (dilingkari di bawah) maka Anda harus baik. Ini akan menjadi alamat yang Anda ping .
2) Selanjutnya pastikan aturan jaringan Amazon mengizinkan Permintaan Echo. Pergi ke Grup Keamanan untuk EC2.
3) Selanjutnya, firewall Windows memblokir permintaan Echo masuk secara default. Izinkan permintaan Echo dengan membuat pengecualian firewall windows ...
4) Selesai! Semoga sekarang Anda bisa melakukan ping server Anda.
Aturan ICMP khusus dalam grup keamanan bukanlah yang diperlukan, paling tidak untuk saya . Namun aturan berikut akan berfungsi:
Type: All ICMP
Protocol: TCP
Port range: 0 - 65535
Source: Anywhere - 0.0.0.0/0
Setelah melakukan ini, Anda dapat melakukan ping ke instance lain. Anda harus melihat sesuatu seperti:
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
Itu dia.
Silakan periksa daftar periksa di bawah ini
1) Anda harus terlebih dahulu memeriksa apakah instance diluncurkan dalam subnet di mana ia dapat dijangkau dari internet
Untuk itu periksa apakah instance yang diluncurkan subnet memiliki gateway internet yang menyertainya. Untuk detail jaringan di AWS, silakan kunjungi tautan di bawah ini.
subnet publik dan pribadi dalam aws vpc
2) Periksa apakah Anda memiliki aturan grup keamanan yang tepat ditambahkan, Jika tidak Tambahkan aturan di bawah ini dalam grup keamanan yang dilampirkan ke instance. Grup keamanan adalah firewall yang terpasang pada setiap instance yang diluncurkan. Grup keamanan berisi aturan inbound/outbound yang memungkinkan lalu lintas di/keluar dari instance.by default setiap grup keamanan memungkinkan semua lalu lintas keluar dari instance dan tidak ada lalu lintas masuk ke instance. Periksa tautan di bawah ini untuk detail lebih lanjut dari lalu lintas.
Ketik: custom ICMPV4
Protokol: ICMP
Portrange: Permintaan Echo
Sumber: 0.0.0.0/0
3) Periksa apakah Anda memiliki aturan yang cukup di firewall tingkat subnet yang disebut NACL. Suatu NACL adalah firewall tanpa kewarganegaraan yang membutuhkan lalu lintas masuk dan keluar yang ditentukan secara terpisah. NACL diterapkan pada tingkat subnet, semua contoh di bawah subnet akan berada di bawah aturan NACL. Di bawah ini adalah tautan yang akan memiliki detail lebih lanjut tentang itu.
Aturan Masuk. Aturan Keluar
Jenis: IPV4 Khusus Jenis: IPV4 khusus
Protokol: Protokol ICMP: ICMP
Portrange: ECHO REQUEST Portrange: ECHO REPLY
Sumber: 0.0.0.0/0 Tujuan: 0.0.0.0/0
Allow/Deny: Allow Allow/Deny: Allow
4) periksa firewall apa pun seperti IPTABLES dan nonaktifkan untuk menguji ping.
Pembuatan grup keamanan baru dengan All ICMP bekerja untuk saya.
Jika Anda mengatur aturan sebagai aturan "ICMP Kustom" dan "gema balasan" dengan mana saja itu akan berfungsi seperti juara. "Permintaan gema" adalah aturan yang salah untuk menjawab ping.
terraform instruksi khusus untuk grup keamanan karena -1 tidak jelas bagi saya.
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"]
}
}
Saya memiliki masalah yang sama untuk menghubungkan dari server linux ke EC2, Anda memiliki dua memastikan tentang hal-hal yang "SEMUA ICMP" ditambahkan dari EC2 seperti yang ditunjukkan di atas dan itu saja tidak akan berfungsi, Anda harus memperbarui Ansible to versi terbaru 2.4, tidak berfungsi dengan versi 2.2 saya sebelumnya.
Saya memiliki masalah yang lebih dalam - saya telah membuat VPC, subnet, dan Grup Keamanan yang sesuai, tetapi mengabaikan menambahkan Gateway Internet dan mengaitkannya dengan subnet saya. Karena ini adalah hasil Google pertama saya untuk "Tidak bisa ping EC2", saya memposting informasi ini di sini jika terbukti bermanfaat bagi orang lain (atau saya sendiri di masa depan).