Packer: Pasangan kunci sementara pengemas tidak dihapus dari ~/.ssh/authorized_keys (AWS AMI)

Dibuat pada 3 Agu 2016  ·  3Komentar  ·  Sumber: hashicorp/packer

Setelah saya membuat AMI dengan pengepak berdasarkan AMI Amazon Linux, jika saya meluncurkan turunan AMI itu dan ssh in, saya melihat pasangan kunci pengepak sementara di file ~/.ssh/authorized_keys , yang merupakan lubang keamanan. Saya mengharapkan file itu dihapus sebelum AMI disimpan.

Saya dapat mengatasi ini dengan secara eksplisit menghapus ~/.ssh/authorized_keys di template packer (detail di bawah)

Versi Pembungkus

Pengemas v0.10.0

Platform tuan rumah

CentOS Linux rilis 7.2.1511 (Inti)

Debug log keluaran dari PACKER_LOG=1 packer build template.json .

Berikut adalah hasil pengepakan:

https://Gist.github.com/tleyden/4cc13b530f08bcaef04f5233bf43daee

Maaf, saya tidak melakukan PACKER_LOG=1, tetapi dapat menjalankan kembali jika perlu

_Contoh template dan skrip_ yang paling sederhana_ diperlukan untuk mereproduksi bug

Templat: https://github.com/couchbase/build/blob/2afdc7329faaa6a2f25befda59509b70a4a38349/scripts/jenkins/mobile/ami/sync-gateway.json

Naskah:
Menggunakan plugin Jenkins Packer dan meneruskan variabel ke packer melalui:

-var 'source_ami=${source_ami}' -var 'ssh_username=${ssh_username}' -var 'couchbase_server_package_name=${couchbase_server_package_name}' -var 'couchbase_server_package_url=${couchbase_server_package_url}' -var 'couchbase_sync_gateway_package_base_url=${couchbase_sync_gateway_package_base_url}' -var 'couchbase_sync_gateway_package=${couchbase_sync_gateway_package}' -var 'couchbase_server_version=${couchbase_server_version}' -var 'couchbase_sync_gateway_version=${couchbase_sync_gateway_version}' -var 'couchbase_server_edition=${couchbase_server_edition}' -var 'sync_gateway_edition=${sync_gateway_edition}'

Solusi

Saya menambahkan penyedia berikut ke template packer:

    {
        "type": "shell",
        "inline": [
        "rm /home/ec2-user/.ssh/authorized_keys"
        ]
    }

dan setelah meluncurkan AMI, itu hanya berisi kunci yang dipilih dalam wizard "peluncuran instans" AWS, dan bukan pasangan kunci sementara pengepakan.

buildeamazon invalid

Komentar yang paling membantu

Terima kasih telah meluangkan waktu untuk melaporkan ini.

Beginilah cara kerja AWS atau lebih spesifik lagi cara kerja cloud-init. Apa yang Anda gambarkan sebagai solusi sebenarnya adalah apa yang harus Anda lakukan.

Semua 3 komentar

Terima kasih telah meluangkan waktu untuk melaporkan ini.

Beginilah cara kerja AWS atau lebih spesifik lagi cara kerja cloud-init. Apa yang Anda gambarkan sebagai solusi sebenarnya adalah apa yang harus Anda lakukan.

Maaf untuk menghidupkan kembali utas yang mati, namun karena saya menemukannya dan kemudian menemukan lebih banyak informasi dari amazon, saya pikir saya akan berkontribusi di sini untuk orang lain:

https://aws.amazon.com/articles/how-to-share-and-use-public-amis-in-a-secure-manner/

Singkatnya, mereka merekomendasikan menjalankan yang berikut ini sebagai root untuk menghapus semua file otor_keys:

find / -name "authorized_keys" -exec rm -f {} \;

Perhatian: Perintah pada halaman tertaut menggunakan campuran tanda hubung normal (-) dan sesuatu yang lain yang akan mengembalikan kesalahan. Mengetik perintah secara manual atau menyalin yang langsung di atas akan berfungsi.

Saya akan mengunci masalah ini karena telah ditutup selama _30 hari_ . Ini membantu pengelola kami menemukan dan fokus pada masalah aktif.

Jika Anda menemukan masalah yang mirip dengan ini, buka masalah baru dan lengkapi template masalah sehingga kami dapat menangkap semua detail yang diperlukan untuk menyelidiki lebih lanjut.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat