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 API. ModifyInstanceMetadataOptions 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.

Membutuhkan penggunaan IMDSv2

Gunakan salah satu metode berikut untuk memodifikasi opsi metadata instance pada instance yang ada untuk meminta yang IMDSv2 digunakan saat meminta metadata instance. Ketika IMDSv2 diperlukan, IMDSv1 tidak dapat digunakan.

catatan

Sebelum mengharuskan yang IMDSv2 digunakan, pastikan bahwa instance tidak melakukan IMDSv1 panggilan. MetadataNoTokenCloudWatch Metrik melacak IMDSv1 panggilan. Ketika MetadataNoToken mencatat IMDSv1 penggunaan nol untuk sebuah instance, instance kemudian siap untuk membutuhkan IMDSv2.

Console
Untuk memerlukan penggunaan IMDSv2 pada instance yang 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 Diperlukan.

    3. Pilih Simpan.

AWS CLI
Untuk memerlukan penggunaan IMDSv2 pada instance yang ada

Gunakan perintah modify-instance-metadata-optionsCLI dan atur http-tokens parameternya 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 memerlukan penggunaan IMDSv2 pada instance yang ada

Gunakan Edit-EC2InstanceMetadataOptioncmdlet dan atur HttpTokens parameternya 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

Kembalikan penggunaan IMDSv1

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

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

penting

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

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

  • Nonaktifkan penegakan hukum — Jika perangkat lunak Anda masih bergantung IMDSv1, atur httpTokensEnforced ke disabled akun di Wilayah. Untuk informasi selengkapnya, lihat Menegakkan IMDSv2 di tingkat akun.

Console
Untuk mengembalikan penggunaan IMDSv1 pada sebuah instance
  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 mengembalikan penggunaan IMDSv1 pada sebuah instance

Anda dapat menggunakan perintah modify-instance-metadata-optionsCLI dengan http-tokens set to optional untuk mengembalikan penggunaan IMDSv1 saat meminta metadata instance.

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

Anda dapat menggunakan Edit-EC2InstanceMetadataOptioncmdlet dengan HttpTokens set to optional untuk mengembalikan penggunaan IMDSv1 saat meminta metadata instance.

(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 dan AWS SDKs mendukung perubahan batas hop respons PUT.

AWS CLI
Mengubah batas hop respons PUT

Gunakan perintah modify-instance-metadata-optionsCLI dan atur http-put-response-hop-limit parameter ke jumlah hop yang diperlukan. Pada instans berikut, batas hop 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-EC2InstanceMetadataOptioncmdlet 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 IMDS IPv4 dan titik akhir IPv6

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

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

Persyaratan untuk mengaktifkan titik akhir IPv6

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

AWS CLI
Untuk mengaktifkan IPv6 titik akhir IMDS untuk instans Anda

Gunakan perintah modify-instance-metadata-optionsCLI dan atur http-protocol-ipv6 parameternya 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 IPv6 titik akhir IMDS untuk instans Anda

Gunakan Edit-EC2InstanceMetadataOptioncmdlet dan atur HttpProtocolIpv6 parameternya 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 modify-instance-metadata-optionsCLI dan atur http-endpoint parameternya ke. enabled

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

Gunakan Edit-EC2InstanceMetadataOptioncmdlet dan atur HttpEndpoint parameternya 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 modify-instance-metadata-optionsCLI dan atur http-endpoint parameternya ke. disabled

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

Gunakan Edit-EC2InstanceMetadataOptioncmdlet dan atur HttpEndpoint parameternya 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 instance pada instance 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 akan mendapatkan kesalahan. Untuk informasi selengkapnya, lihat Aktifkan akses ke tag dalam metadata contoh.

Pemecahan masalah

Gagal memodifikasi instance IMDSv1 -enabled

Deskripsi

Anda mendapatkan pesan galat 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 mengubah instance yang ada untuk IMDSv1 diaktifkan (httpTokens = optional) di akun tempat pengaturan akun EC2 atau kebijakan deklaratif AWS Organisasi memberlakukan penggunaan IMDSv2 (). httpTokensEnforced = enabled

Solusi

Jika Anda memerlukan IMDSv1 dukungan pada instans yang ada, Anda harus menonaktifkan IMDSv2 penegakan hukum untuk akun di Wilayah. Untuk menonaktifkan IMDSv2 penegakan, atur HttpTokensEnforced kedisabled. Untuk informasi selengkapnya, lihat ModifyInstanceMetadataDefaultsdi Referensi API Amazon EC2. Jika Anda lebih suka mengonfigurasi pengaturan ini menggunakan konsol, lihatMenegakkan IMDSv2 di tingkat akun.

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