View a markdown version of this page

Aktifkan sumber daya pribadi untuk berkomunikasi di luar VPC - Amazon Virtual Private Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Aktifkan sumber daya pribadi untuk berkomunikasi di luar VPC

Bagian ini menjelaskan cara membuat dan bekerja dengan instans NAT untuk mengaktifkan sumber daya di subnet pribadi untuk berkomunikasi di luar cloud pribadi virtual.

1. Membuat VPC untuk instance NAT

Gunakan prosedur berikut untuk membuat VPC dengan subnet publik dan subnet pribadi.

Untuk membuat VPC
  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Pilih Buat VPC.

  3. Untuk Sumber Daya yang akan dibuat, pilih VPC dan lainnya.

  4. Untuk Pembuatan otomatis tanda nama, masukkan nama untuk VPC.

  5. Untuk mengkonfigurasi subnet, lakukan hal berikut:

    1. Untuk Jumlah Zona Ketersediaan, pilih 1 atau 2, tergantung kebutuhan Anda.

    2. Untuk Jumlah subnet publik, pastikan Anda memiliki satu subnet publik per Zona Ketersediaan.

    3. Untuk Jumlah subnet pribadi, pastikan Anda memiliki satu subnet pribadi per Zona Ketersediaan.

  6. Pilih Buat VPC.

2. Membuat grup keamanan untuk instance NAT

Buat grup keamanan dengan aturan yang dijelaskan dalam tabel berikut. Aturan ini memungkinkan instance NAT Anda menerima lalu lintas terikat internet dari instans di subnet pribadi, serta lalu lintas SSH dari jaringan Anda. Instans NAT juga dapat mengirim lalu lintas ke internet, yang membuat instans di subnet privat bisa mendapatkan pembaruan perangkat lunak.

Berikut ini adalah aturan inbound yang direkomendasikan.

Sumber Protokol Rentang Port Komentar
Private subnet CIDR TCP 80 Izinkan lalu lintas HTTP masuk dari server di subnet privat
Private subnet CIDR TCP 443 Izinkan lalu lintas HTTPS masuk dari server di subnet privat
Public IP address range of your network TCP 22 Izinkan akses SSH masuk ke instance NAT dari jaringan Anda (melalui gateway internet)

Berikut ini adalah aturan keluar yang direkomendasikan.

Tujuan Protokol Rentang Port Komentar
0.0.0. 0/0 TCP 80 Izinkan akses HTTP keluar ke internet
0.0.0. 0/0 TCP 443 Izinkan akses HTTPS keluar ke internet
Untuk membuat grup keamanan
  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Pada panel navigasi, pilih Grup keamanan.

  3. Pilih Buat grup keamanan.

  4. Masukkan nama dan deskripsi untuk grup keamanan tersebut.

  5. Untuk VPC, pilih ID VPC untuk instance NAT Anda.

  6. Tambahkan aturan untuk lalu lintas masuk di bawah aturan Inbound sebagai berikut:

    1. Pilih Tambahkan aturan. Pilih HTTP untuk Jenis dan masukkan rentang alamat IP subnet pribadi Anda untuk Sumber.

    2. Pilih Tambahkan aturan. Pilih HTTPS untuk Jenis dan masukkan rentang alamat IP subnet pribadi Anda untuk Sumber.

    3. Pilih Tambahkan aturan. Pilih SSH untuk Jenis dan masukkan rentang alamat IP jaringan Anda untuk Sumber.

  7. Tambahkan aturan untuk lalu lintas keluar di bawah aturan Outbound sebagai berikut:

    1. Pilih Tambahkan aturan. Pilih HTTP untuk Type dan masukkan 0.0.0. 0/0 untuk tujuan.

    2. Pilih Tambahkan aturan. Pilih HTTPS untuk Type dan masukkan 0.0.0. 0/0 untuk tujuan.

  8. Pilih Buat grup keamanan.

Untuk informasi selengkapnya, lihat Grup keamanan.

3. Buat NAT AMI

NAT AMI dikonfigurasi untuk menjalankan NAT pada instance EC2. Anda harus membuat NAT AMI dan kemudian meluncurkan instance NAT Anda menggunakan NAT AMI Anda.

Jika Anda berencana menggunakan sistem operasi selain Amazon Linux untuk NAT AMI Anda, lihat dokumentasi untuk sistem operasi ini untuk mempelajari cara mengkonfigurasi NAT. Pastikan untuk menyimpan pengaturan ini sehingga tetap ada bahkan setelah reboot instance.

Cara membuat NAT AMI untuk Amazon Linux
  1. Luncurkan instance EC2 yang menjalankan AL2023 atau Amazon Linux 2. Pastikan untuk menentukan grup keamanan yang Anda buat untuk instance NAT.

  2. Hubungkan ke instance Anda dan jalankan perintah berikut pada instance untuk mengaktifkan iptables.

    sudo yum install iptables-services -y sudo systemctl enable iptables sudo systemctl start iptables
  3. Lakukan hal berikut pada instance untuk mengaktifkan penerusan IP sehingga tetap ada setelah reboot:

    1. Menggunakan editor teks, seperti nano atauvim, buat file konfigurasi berikut:/etc/sysctl.d/custom-ip-forwarding.conf.

    2. Tambahkan baris berikut ke file konfigurasi.

      net.ipv4.ip_forward=1
    3. Simpan file konfigurasi dan keluar dari editor teks.

    4. Jalankan perintah berikut untuk menerapkan file konfigurasi.

      sudo sysctl -p /etc/sysctl.d/custom-ip-forwarding.conf
  4. Jalankan perintah berikut pada instance, dan catat nama antarmuka jaringan utama. Anda akan membutuhkan informasi ini untuk langkah selanjutnya.

    netstat -i

    Dalam contoh berikut output, docker0 adalah antarmuka jaringan yang dibuat oleh docker, eth0 adalah antarmuka jaringan utama, dan lo merupakan antarmuka loopback.

    Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg docker0 1500 0 0 0 0 0 0 0 0 BMU eth0 9001 7276052 0 0 0 5364991 0 0 0 BMRU lo 65536 538857 0 0 0 538857 0 0 0 LRU

    Dalam contoh output berikut, antarmuka jaringan utama adalahenX0.

    Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg enX0 9001 1076 0 0 0 1247 0 0 0 BMRU lo 65536 24 0 0 0 24 0 0 0 LRU

    Dalam contoh output berikut, antarmuka jaringan utama adalahens5.

    Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg ens5 9001 14036 0 0 0 2116 0 0 0 BMRU lo 65536 12 0 0 0 12 0 0 0 LRU
  5. Jalankan perintah berikut pada instance untuk mengkonfigurasi NAT. Jika antarmuka jaringan utama tidaketh0, ganti eth0 dengan antarmuka jaringan utama yang Anda catat pada langkah sebelumnya.

    sudo /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo /sbin/iptables -F FORWARD sudo service iptables save
  6. Buat NAT AMI dari instance EC2. Untuk informasi selengkapnya, lihat Membuat AMI Linux dari instance di Panduan Pengguna Amazon EC2.

4. Luncurkan instance NAT

Gunakan prosedur berikut untuk meluncurkan instance NAT menggunakan VPC, grup keamanan, dan NAT AMI yang Anda buat.

Untuk meluncurkan instance NAT
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Pada dasbor, pilih Luncurkan instans.

  3. Untuk Nama, masukkan nama untuk instance NAT Anda.

  4. Untuk Gambar Aplikasi dan OS, pilih NAT AMI Anda (pilih Jelajahi lebih banyak AMI, AMI Saya).

  5. Untuk Jenis Instance, pilih jenis instans yang menyediakan sumber daya komputasi, memori, dan penyimpanan yang dibutuhkan instans NAT Anda.

  6. Untuk Pasangan kunci, pilih pasangan kunci yang ada atau pilih Buat pasangan kunci baru.

  7. Untuk pengaturan jaringan, lakukan hal berikut:

    1. Pilih Edit.

    2. Untuk VPC, pilih VPC yang Anda buat.

    3. Untuk Subnet, pilih subnet publik yang Anda buat.

    4. Untuk IP Auto-assign publik, pilih Aktifkan. Atau, setelah Anda meluncurkan instance NAT, alokasikan alamat IP Elastic dan tetapkan ke instance NAT.

    5. Untuk Firewall, pilih Pilih grup keamanan yang ada dan kemudian pilih grup keamanan yang Anda buat.

  8. Pilih Luncurkan instans. Pilih ID instance untuk membuka halaman detail instance. Tunggu status instance berubah menjadi Run ning dan pemeriksaan status berhasil.

  9. N source/destination onaktifkan pemeriksaan untuk instance NAT (lihat5. Nonaktifkan source/destination pemeriksaan).

  10. Perbarui tabel rute untuk mengirim lalu lintas ke instance NAT (lihat6. Perbarui tabel rute).

5. Nonaktifkan source/destination pemeriksaan

Setiap instans EC2 melakukan source/destination pemeriksaan secara default. Ini berarti bahwa instans harus menjadi sumber atau tujuan dari setiap lalu lintas yang dikirim atau diterima. Namun, instans NAT harus dapat mengirim dan menerima lalu lintas ketika sumber atau tujuan bukan dirinya sendiri. Oleh karena itu, Anda harus menonaktifkan source/destination pemeriksaan pada instance NAT.

Untuk menonaktifkan peng source/destination ecekan
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instance NAT.

  4. Pilih T ind akan, Jaringan, Ubah source/destination cek.

  5. Untuk Source/destination memeriksa, pilih Stop.

  6. Pilih Simpan.

  7. Jika instans NAT memiliki antarmuka jaringan sekunder, pilih dari Antarmuka jaringan pada tab Jaringan. Pilih ID antarmuka untuk membuka halaman antarmuka jaringan. Pilih T ind akan, U source/dest bah. cent ang, hapus Aktifkan, dan pilih Simpan.

6. Perbarui tabel rute

Tabel rute untuk subnet pribadi harus memiliki rute yang mengirimkan lalu lintas internet ke instance NAT.

Untuk memperbarui tabel rute
  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Di panel navigasi, pilih Tabel rute.

  3. Pilih tabel rute untuk subnet pribadi.

  4. Pada tab Rute, pilih Edit rute, lalu pilih Tambahkan rute.

  5. Masukkan 0.0.0. 0/0 untuk Tujuan dan ID instance dari instance NAT untuk Target.

  6. Pilih Simpan perubahan.

Untuk informasi selengkapnya, lihat Konfigurasikan tabel rute.

7. Menguji instans NAT Anda

Setelah Anda meluncurkan instance NAT dan menyelesaikan langkah-langkah konfigurasi di atas, Anda dapat menguji apakah instance di subnet pribadi Anda dapat mengakses internet melalui instance NAT dengan menggunakan instance NAT sebagai server bastion.

Langkah 1: Perbarui grup keamanan instance NAT

Untuk mengizinkan instans di subnet pribadi mengirim lalu lintas ping ke instance NAT, tambahkan aturan untuk mengizinkan lalu lintas ICMP masuk dan keluar. Untuk mengizinkan instance NAT berfungsi sebagai server bastion, tambahkan aturan untuk mengizinkan lalu lintas SSH keluar ke subnet pribadi.

Untuk memperbarui grup keamanan instans NAT
  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Pada panel navigasi, pilih Grup keamanan.

  3. Pilih kotak centang untuk grup keamanan yang terkait dengan instans NAT Anda.

  4. Pada tab Inbound rules (Aturan ke dalam), pilih Edit inbound rules (Edit aturan ke dalam).

  5. Pilih Tambahkan aturan. Pilih Semua ICMP - IPv4 untuk Tipe. Pilih K ustom untuk Sumber dan masukkan rentang alamat IP subnet pribadi Anda. Pilih Simpan aturan.

  6. Pada tab Aturan keluar, pilih Edit aturan keluar.

  7. Pilih Tambahkan aturan. Pilih SSH untuk Tipe. Pilih Kustom untuk Tujuan dan masukkan rentang alamat IP subnet pribadi Anda.

  8. Pilih Tambahkan aturan. Pilih Semua ICMP - IPv4 untuk Tipe. Pilih Di Mana Saja - IPv4 untuk Tujuan. Pilih Simpan aturan.

Langkah 2: Luncurkan instance uji di subnet pribadi

Luncurkan sebuah instans ke subnet privat Anda. Anda harus mengizinkan akses SSH dari instance NAT, dan Anda harus menggunakan pasangan kunci yang sama yang Anda gunakan untuk instance NAT.

Untuk meluncurkan instance uji di subnet pribadi
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Pada dasbor, pilih Luncurkan instans.

  3. Pilih subnet pribadi Anda.

  4. Jangan menetapkan alamat IP publik ke instance ini.

  5. Pastikan grup keamanan untuk instance ini mengizinkan akses SSH masuk dari instans NAT Anda, atau dari rentang alamat IP subnet publik Anda, dan lalu lintas ICMP keluar.

  6. Pilih pasangan kunci yang sama yang Anda gunakan untuk instance NAT.

Langkah 3: Ping ICMP-enabled situs web

Untuk memverifikasi bahwa instance pengujian di subnet pribadi Anda dapat menggunakan instance NAT Anda untuk berkomunikasi dengan internet, jalankan ping perintah.

Untuk menguji koneksi internet dari instance pribadi Anda
  1. Dari komputer lokal Anda, konfigurasikan penerusan agen SSH, sehingga Anda dapat menggunakan instance NAT sebagai server bastion.

    Linux and macOS
    ssh-add key.pem
    Windows

    Unduh dan instal Pageant, jika belum diinstal.

    Konversikan kunci pribadi Anda menggunakan PuttyGen.

    Mulai Pageant, buka menu konteks untuk ikon Pageant di bilah tugas (mungkin tersembunyi), dan pilih Tam bah Kunci. Pilih file.ppk yang Anda buat, masukkan frasa sandi jika diperlukan, dan pilih Buka.

  2. Dari komputer lokal Anda, sambungkan ke instance NAT Anda.

    Linux and macOS
    ssh -A ec2-user@nat-instance-public-ip-address
    Windows

    Hubungkan ke instance NAT Anda menggunakan PuTTY. Untuk Auth, Anda harus memilih Iz inkan penerusan agen dan biarkan file kunci pribadi untuk otentikasi kosong.

  3. Dari instance NAT, jalankan ping perintah, tentukan situs web yang diaktifkan untuk ICMP.

    [ec2-user@ip-10-0-4-184]$ ping ietf.org

    Untuk mengonfirmasi bahwa instance NAT Anda memiliki akses internet, verifikasi bahwa Anda menerima output seperti berikut ini, lalu tekan Ctrl+C untuk membatalkan ping perintah. Jika tidak, verifikasi bahwa instance NAT berada di subnet publik (tabel rute memiliki rute ke gateway internet).

    PING ietf.org (104.16.45.99) 56(84) bytes of data. 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=1 ttl=33 time=7.88 ms 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=2 ttl=33 time=8.09 ms 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=3 ttl=33 time=7.97 ms ...
  4. Dari instance NAT Anda, sambungkan ke instance Anda di subnet pribadi Anda dengan menggunakan alamat IP pribadinya.

    [ec2-user@ip-10-0-4-184]$ ssh ec2-user@private-server-private-ip-address
  5. Dari instance pribadi Anda, uji apakah Anda dapat terhubung ke internet dengan menjalankan ping perintah.

    [ec2-user@ip-10-0-135-25]$ ping ietf.org

    Untuk mengonfirmasi bahwa instance pribadi Anda memiliki akses internet melalui instans NAT, verifikasi bahwa Anda menerima output seperti berikut ini, lalu tekan Ctrl+C untuk membatalkan ping perintah.

    PING ietf.org (104.16.45.99) 56(84) bytes of data. 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=1 ttl=33 time=8.76 ms 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=2 ttl=33 time=8.26 ms 64 bytes from 104.16.45.99 (104.16.45.99): icmp_seq=3 ttl=33 time=8.27 ms ...
Pemecahan masalah

Jika ping perintah gagal dari server di subnet pribadi, gunakan langkah-langkah berikut untuk memecahkan masalah:

  • Verifikasi bahwa Anda melakukan ping ke situs web yang mengaktifkan ICMP. Jika tidak, server Anda tidak dapat menerima paket balasan. Untuk menguji ini, jalankan ping perintah yang sama dari terminal baris perintah di komputer Anda sendiri.

  • Pastikan grup keamanan untuk instans NAT Anda mengizinkan lalu lintas ICMP masuk dari subnet pribadi Anda. Jika tidak, instance NAT Anda tidak dapat menerima ping perintah dari instance pribadi Anda.

  • Verifikasi bahwa Anda menonaktifkan source/destination pengecekan untuk instans NAT Anda. Untuk informasi selengkapnya, lihat 5. Nonaktifkan source/destination pemeriksaan.

  • Pastikan Anda mengonfigurasi tabel rute dengan benar. Untuk informasi selengkapnya, lihat 6. Perbarui tabel rute.

Langkah 4: Membersihkan

Jika Anda tidak lagi memerlukan server pengujian di subnet pribadi, hentikan instans sehingga Anda tidak lagi ditagih untuk itu. Untuk informasi selengkapnya, lihat Menghentikan instans Anda di Panduan Pengguna Amazon EC2.

Jika Anda tidak lagi memerlukan instans NAT, Anda dapat menghentikan atau menghentikannya, sehingga Anda tidak lagi ditagih untuk itu. Jika Anda membuat NAT AMI, Anda dapat membuat instance NAT baru kapan pun Anda membutuhkannya.