Saya memiliki instance EC2 yang berjalan di AWS. Ketika saya mencoba untuk melakukan ping dari kotak lokal saya tidak tersedia.
Bagaimana saya bisa membuat instance pingable?
Saya memiliki instance EC2 yang berjalan di AWS. Ketika saya mencoba untuk melakukan ping dari kotak lokal saya tidak tersedia.
Bagaimana saya bisa membuat instance pingable?
Jawaban:
Tambahkan aturan masuk grup keamanan EC2 baru :
ping
, tidak semua.
Beberapa tahun terlambat tetapi mudah-mudahan ini akan membantu orang lain ...
1) Pertama-tama pastikan instance EC2 memiliki IP publik. Jika memiliki DNS Publik atau alamat IP Publik (dilingkari di bawah) maka Anda harus baik. Ini akan menjadi alamat yang Anda ping.
2) Selanjutnya pastikan aturan jaringan Amazon memungkinkan 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.
Anda harus mengedit Grup Keamanan 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 ini 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.
All ICMP
lalu lintas ke mesin menggunakan Grup Keamanan yang ditentukan bekerja untuk saya.
Aturan ICMP khusus dalam grup keamanan bukanlah yang diperlukan, paling tidak untuk saya. Tetapi aturan berikut ini 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, harap kunjungi tautan di bawah ini.
subnet publik dan pribadi di 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.
Jenis: ICMPV4 khusus
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. Sebuah 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 rincian lebih lanjut tentang hal 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.
Mereka yang baru aws ec2 dan ingin mengakses instance dari SSH, Broswer, Ping from system
saat itu di bawah adalah aturan masuk untuk ini: -
Pergi ke grup keamanan instance EC2 dan edit aturan masuk memungkinkan 0,0.0.0/0 untuk ICMP.
Itu akan berhasil.
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. Klik "Simpan"
Secara default EC2 diamankan oleh AWS Security Group (Sebuah layanan yang ditemukan di EC2 dan VPC). Grup Keamanan secara default tidak mengizinkan permintaan ICMP apa pun yang mencakup ping. Untuk mengizinkannya:
Goto: Lokasi Instans AWS EC2 : Grup Keamanan mengikat ke instance itu (Mungkin untuk memiliki beberapa grup keamanan) Periksa: Port Aturan Aturan Masuk (ICMP) (0 - 65535) jika tidak ada, Anda dapat menambahkan dan mengizinkannya IP sumber yang Anda tentukan atau Grup Keamanan Lain.
Jika Anda ingin mengaktifkan ping (dari mana saja) secara terprogram, melalui SDK, rumus ajaibnya adalah:
cidrIp: "0.0.0.0/0"
ipProtocol: "icmp"
toPort: -1
fromPort: 8
Misalnya, di Scala (menggunakan AWS Java SDK v2), karya-karya berikut untuk mendefinisikan IpPermission
untuk authorizeSecurityGroupIngress
endpoint.
val PingPermission = {
val range = IpRange.builder().cidrIp( "0.0.0.0/0" ).build()
IpPermission.builder().ipProtocol( "icmp" ).ipRanges( range ).toPort( -1 ).fromPort( 8 ).build()
}
(Saya sudah mencoba ini hanya pada EC2-Classic. Saya tidak tahu aturan jalan keluar apa yang mungkin diperlukan di bawah VPC)
Grup keamanan memungkinkan Anda untuk mengontrol lalu lintas ke instance Anda, termasuk jenis lalu lintas yang dapat mencapai instance Anda.
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
Buka Ports di AWS EC2 cek link ini resmi AWS Link
Ya, Anda perlu membuka akses ke port. Lihatlah Grup Keamanan http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html
Mesin virtual EC2 Anda harus dilampirkan ke grup keamanan yang memungkinkan akses yang Anda butuhkan.
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.
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 kalau terbukti bermanfaat bagi orang lain (atau saya sendiri di masa depan).
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 pastikan 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 saya sebelumnya 2.2.
Anda harus membuka port keamanan berikut di grup keamanan. Setiap aturan untuk tujuan yang berbeda, seperti yang ditunjukkan di bawah ini.
SEMUA ICMP untuk ping.
HTTP untuk mengakses URL pada port HTTP.
HTTPS untuk mengakses URL pada port HTTP aman.
Sesuai kebutuhan Anda, Anda dapat mengubah SUMBER
mungkin jaringan internal Anda memblokir IP untuk melakukan ping atau memblokir paket ping di firewall Anda jika Anda membuka di grup keamanan dan VPC benar.
Ketika melakukan ping dua sistem, secara default SSH diaktifkan (jika Anda telah terhubung melalui dempul atau terminal.) Untuk mengizinkan ping, saya menambahkan grup keamanan untuk masing-masing instance (masuk).
Saat mengakses port baru dalam contoh ec2. Anda telah menambahkan 2 tempat. 1. Grup keamanan port masuk. 2. Pengaturan firewall aturan masuk.
Pastikan Anda menggunakan IP Publik contoh aws ec2 Anda untuk melakukan ping.
sunting grup keamanan yang dilampirkan ke instance EC2 Anda dan tambahkan aturan masuk untuk protokol ICMP.
coba ping, jika ini tidak diperbaiki, kemudian tambahkan aturan keluar untuk ICMP di grup keamanan.
Saya ingin menyebutkan beberapa masalah ISP langka yang disebabkan. Sesekali mengikuti saya di BSNL. itu salah satu masalah aneh yang membutuhkan waktu berjam-jam dari kehidupan sehari-hari Anda. Dalam kasus seperti itu, orang dapat mengajukan masalah dengan ISP atau mengubah ISP.