View a markdown version of this page

Mengonfigurasi opsi metadata instans untuk instans yang ada - Amazon Elastic Compute Cloud

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

Mengonfigurasi opsi metadata instans untuk instans yang ada

Anda dapat mengonfigurasi opsi metadata instans untuk instans yang ada

Anda juga dapat membuat kebijakan IAM yang mencegah pengguna mengubah opsi metadata instans pada instans yang ada. Untuk mengontrol pengguna mana yang dapat memodifikasi opsi metadata instance, tentukan kebijakan yang mencegah semua pengguna selain pengguna dengan peran tertentu untuk menggunakan ModifyInstanceMetadataOptions API. Untuk contoh kebijakan IAM, lihat Cara menggunakan metadata instans.

catatan

Jika kebijakan deklaratif digunakan untuk mengonfigurasi opsi metadata instance, Anda tidak dapat memodifikasinya secara langsung di dalam akun. Untuk informasi selengkapnya, lihat Kebijakan deklaratif di Panduan AWS Organizations Pengguna.

Mengharuskan penggunaan IMDSv2

Gunakan salah satu metode berikut untuk memodifikasi opsi metadata instans pada instans yang ada untuk mengharuskan penggunaan IMDSv2 saat meminta metadata instans. Ketika IMDSv2 diharuskan, IMDSv1 tidak dapat digunakan.

catatan

Sebelum mengharuskan IMDSv2 digunakan, pastikan instans tidak melakukan panggilan IMDSv1. Met MetadataNoToken CloudWatch rik melacak panggilan IMDSv1. Ketika MetadataNoToken merekam nol penggunaan IMDSv1 untuk sebuah instance, instance tersebut kemudian siap untuk memerlukan IMDSv2.

Console
Untuk mengharuskan penggunaan IMDSv2 pada instans yanga ada
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instans Anda.

  4. Pilih Tindakan, Pengaturan instans, Ubah opsi metadata instans.

  5. Di kotak dialog Ubah opsi metadata instans, lakukan hal berikut:

    1. Untuk Layanan metadata instans, pilih Diaktifkan.

    2. Untuk IMDSv2, pilih Wajib

    3. Pilih Simpan.

AWS CLI
Untuk mengharuskan penggunaan IMDSv2 pada instans yanga ada

Gunakan perintah CLI modify-instance-metadata-options dan atur parameter http-tokens ke required. Jika Anda menetapkan nilai untuk http-tokens, maka Anda juga harus mengatur http-endpoint ke enabled.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-tokens required \ --http-endpoint enabled
PowerShell
Untuk mengharuskan penggunaan IMDSv2 pada instans yanga ada

Gunakan Edit-EC2InstanceMetadataOption cmdlet dan atur HttpTokens parameter ke. required Jika Anda menetapkan nilai untuk HttpTokens, maka Anda juga harus mengatur HttpEndpoint ke enabled.

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpTokens required ` -HttpEndpoint enabled).InstanceMetadataOptions

Memulihkan penggunaan IMDSv1

Ketika IMDSv2 diperlukan pada instance, menggunakan permintaan IMDSv1 akan gagal. Ketika IMDSv2 bersifat opsional, maka IMDSv2 dan IMDSv1 akan berfungsi. Oleh karena itu, untuk mengembalikan IMDSv1, atur IMDSv2 ke optional (httpTokens = optional) menggunakan salah satu metode berikut.

Pro httpTokensEnforced perti IMDS juga mencegah upaya untuk mengaktifkan IMDSv1 pada instance yang ada. Saat diaktifkan untuk akun di Wilayah, upaya untuk menyetel httpTokens ke optional akan menghasilkan UnsupportedOperation pengecualian. Untuk informasi lebih lanjut, lihatPemecahan masalah.

penting

Jika peluncuran instans gagal karena penegakan IMDSv2, Anda memiliki dua opsi untuk mengaktifkan peluncuran agar berhasil:

  • Luncurkan instance sebagai IMDSv2-only — Jika perangkat lunak yang berjalan pada instans hanya menggunakan IMDSv2 (tidak ada ketergantungan pada IMDSv1), maka Anda dapat meluncurkan instans sebagai IMDSv2 saja. Untuk melakukan ini, konfigurasikan IMDSv2 hanya dengan mengatur httpTokens = required baik di parameter peluncuran atau di default metadata untuk akun di Wilayah.

  • Nonaktifkan penegakan — Jika perangkat lunak Anda masih bergantung pada IMDSv1, setel httpTokensEnforced ke disabled untuk akun di Wilayah. Untuk informasi selengkapnya, lihat Menerapkan IMDSv2 di tingkat akun.

Console
Untuk memulihkan penggunaan IMDSv1 pada instans
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instans Anda.

  4. Pilih Tindakan, Pengaturan instans, Ubah opsi metadata instans.

  5. Di kotak dialog Ubah opsi metadata instans, lakukan hal berikut:

    1. Untuk Layanan metadata instans, pastikan Aktifkan telah dipilih.

    2. Untuk IMDSv2, pilih Opsional.

    3. Pilih Simpan.

AWS CLI
Untuk memulihkan penggunaan IMDSv1 pada instans

Anda dapat menggunakan perintah CLI modify-instance-metadata-options dengan http-tokens yang diatur ke optional untuk memulihkan penggunaan IMDSv1 saat meminta metadata instans.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-tokens optional \ --http-endpoint enabled
PowerShell
Untuk memulihkan penggunaan IMDSv1 pada instans

Anda dapat menggunakan Edit-EC2InstanceMetadataOption cmdlet dengan HttpTokens set to optional untuk memulihkan penggunaan IMDSv1 saat meminta metadata instans.

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpTokens optional ` -HttpEndpoint enabled).InstanceMetadataOptions

Mengubah batas hop respons PUT

Untuk instans yang ada, Anda dapat mengubah pengaturan batas hop respons PUT.

Saat ini hanya AWS CLI AWS SDK dan yang mendukung mengubah batas hop respons PUT.

AWS CLI
Mengubah batas hop respons PUT

Gunakan perintah CLI modify-instance-metadata-options dan atur parameter http-put-response-hop-limit ke jumlah hop yang diperlukan. Pada instans berikut, hop limit diatur ke 3. Perhatikan bahwa saat Anda menetapkan nilai untuk http-put-response-hop-limit, maka Anda juga harus mengatur http-endpoint ke enabled.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-put-response-hop-limit 3 \ --http-endpoint enabled
PowerShell
Mengubah batas hop respons PUT

Gunakan Edit-EC2InstanceMetadataOption cmdlet dan atur HttpPutResponseHopLimit parameter ke jumlah hop yang diperlukan. Pada instans berikut, batas hop diatur ke 3. Perhatikan bahwa saat Anda menetapkan nilai untuk HttpPutResponseHopLimit, maka Anda juga harus mengatur HttpEndpoint ke enabled.

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpPutResponseHopLimit 3 ` -HttpEndpoint enabled).InstanceMetadataOptions

Aktifkan titik akhir IPv4 dan IPv6 IMDS

IMDS memiliki dua titik akhir pada sebuah instance: IPv4 (169.254.169.254) dan IPv6 (). [fd00:ec2::254] Saat Anda mengaktifkan IMDS, titik akhir IPv4 secara otomatis diaktifkan. Titik akhir IPv6 tetap dinonaktifkan bahkan jika Anda meluncurkan instance ke IPv6-only subnet. Untuk mengaktifkan titik akhir IPv6, Anda harus melakukannya secara eksplisit. Saat Anda mengaktifkan titik akhir IPv6, titik akhir IPv4 tetap diaktifkan.

Anda dapat mengaktifkan titik akhir IPv6 saat peluncuran instance atau setelahnya.

Persyaratan untuk mengaktifkan titik akhir IPv6

Saat ini hanya AWS SDK AWS CLI dan yang mendukung mengaktifkan titik akhir IPv6 IMDS setelah peluncuran instance.

AWS CLI
Untuk mengaktifkan titik akhir IPv6 IMDS untuk instans Anda

Gunakan perintah CLI modify-instance-metadata-options dan atur parameter http-protocol-ipv6 ke enabled. Perhatikan bahwa saat Anda menetapkan nilai untuk http-protocol-ipv6, maka Anda juga harus mengatur http-endpoint ke enabled.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-protocol-ipv6 enabled \ --http-endpoint enabled
PowerShell
Untuk mengaktifkan titik akhir IPv6 IMDS untuk instans Anda

Gunakan Edit-EC2InstanceMetadataOption cmdlet dan atur HttpProtocolIpv6 parameter ke. enabled Perhatikan bahwa saat Anda menetapkan nilai untuk HttpProtocolIpv6, maka Anda juga harus mengatur HttpEndpoint ke enabled.

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpProtocolIpv6 enabled ` -HttpEndpoint enabled).InstanceMetadataOptions

Aktifkan akses ke metadata instans

Anda dapat mengaktifkan akses ke metadata instans dengan mengaktifkan titik akhir HTTP IMDS pada instans Anda, apa pun versi IMDS yang Anda gunakan. Anda dapat megembalikan perubahan ini kapan saja dengan menonaktifkan titik akhir HTTP.

Gunakan salah satu metode berikut untuk menonaktifkan akses ke metadata instans pada instans.

Console
Untuk mengaktifkan akses ke metadata instans
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instans Anda.

  4. Pilih Tindakan, Pengaturan instans, Ubah opsi metadata instans.

  5. Di kotak dialog Ubah opsi metadata instans, lakukan hal berikut:

    1. Untuk Layanan metadata instans, pilih Diaktifkan.

    2. Pilih Simpan.

AWS CLI
Untuk mengaktifkan akses ke metadata instans

Gunakan perintah CLI modify-instance-metadata-options dan atur parameter http-endpoint ke enabled.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-endpoint enabled
PowerShell
Untuk mengaktifkan akses ke metadata instans

Gunakan Edit-EC2InstanceMetadataOption cmdlet dan atur HttpEndpoint parameter ke. enabled

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpEndpoint enabled).InstanceMetadataOptions

Nonaktifkan akses untuk metadata instans

Anda dapat menonaktifkan akses ke metadata instans dengan menonaktifkan titik akhir HTTP IMDS pada instans Anda, apa pun versi IMDS yang Anda gunakan. Anda dapat megembalikan perubahan ini kapan saja dengan mengaktifkan titik akhir HTTP.

Gunakan salah satu metode berikut untuk menonaktifkan akses ke metadata instans pada instans.

Console
Untuk menonaktifkan akses untuk metadata instans
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instans Anda.

  4. Pilih Tindakan, Pengaturan instans, Ubah opsi metadata instans.

  5. Di kotak dialog Ubah opsi metadata instans, lakukan hal berikut:

    1. Untuk Layanan metadata instans, hapus Aktifkan.

    2. Pilih Simpan.

AWS CLI
Untuk menonaktifkan akses untuk metadata instans

Gunakan perintah CLI modify-instance-metadata-options dan atur parameter http-endpoint ke disabled.

aws ec2 modify-instance-metadata-options \ --instance-id i-1234567890abcdef0 \ --http-endpoint disabled
PowerShell
Untuk menonaktifkan akses untuk metadata instans

Gunakan Edit-EC2InstanceMetadataOption cmdlet dan atur HttpEndpoint parameter ke. disabled

(Edit-EC2InstanceMetadataOption ` -InstanceId i-1234567890abcdef0 ` -HttpEndpoint disabled).InstanceMetadataOptions

Mengizinkan akses ke tanda dalam metadata instans

Anda dapat mengizinkan akses ke tag dalam metadata instans pada instans yang sedang berjalan atau dihentikan. Untuk setiap contoh, Anda harus secara eksplisit mengizinkan akses. Jika akses diizinkan, kunci tag instance harus mematuhi batasan karakter tertentu, jika tidak, Anda mendapatkan kesalahan. Untuk informasi selengkapnya, lihat Aktifkan akses ke tag dalam metadata contoh.

Pemecahan masalah

Memodifikasi IMDSv1-enabled instance gagal

Deskripsi

Anda mendapatkan pesan kesalahan berikut:

You can't launch instances with IMDSv1 because httpTokensEnforced is enabled for this account. Either launch the instance with httpTokens=required or contact your account owner to disable httpTokensEnforced using the ModifyInstanceMetadataDefaults API or the account settings in the EC2 console.

Penyebab

Kesalahan ini muncul saat Anda mencoba memodifikasi instance yang ada agar IMDsv1 enabled (httpTokens = optional) di akun di mana pengaturan akun EC2 atau kebijakan deklaratif AWS Organisasi memberlakukan penggunaan IMDSv2 (). httpTokensEnforced = enabled

Solusi

Jika Anda memerlukan dukungan IMDSv1 pada instans yang ada, Anda harus menonaktifkan penegakan IMDSv2 untuk akun di Wilayah. Untuk menonaktifkan penegakan IMDSv2, setel ke. HttpTokensEnforced disabled Untuk informasi selengkapnya, lihat ModifyInstanceMetadataDefaults Referensi API Amazon EC2. Jika Anda lebih suka mengonfigurasi pengaturan ini menggunakan konsol, lihatMenerapkan IMDSv2 di tingkat akun.

Kami menyarankan Anda menggunakan IMDSv2 saja (). httpTokens=required Untuk informasi selengkapnya, lihat Transisi ke penggunaan Layanan Metadata Instans Versi 2.