Setel ulang Kata Sandi Server Linux EC2

Sep 11 2020

Tidak dapat masuk ke server ubuntu EC2 karena masalah izin.

Masalah: Server ubuntu EC2 saya memiliki pengguna (root & ubuntu) dan saya gunakan untuk masuk ke ubuntu menggunakan ssh. Secara tidak sengaja saya telah mengubah kepemilikan direktori home Ubuntu menjadi root dan juga mencabut semua izin dari direktori untuk pengguna lain. Jadi direktori home pengguna (Ubuntu) hanya memiliki izin RWX untuk root dan tidak ada yang lain. Sekarang saya tidak dapat masuk menggunakan SSH ke ubuntu. Saya menyediakan file .pem tetapi kali ini saya mendapatkan prompt kata sandi terlepas dari file .pem. Sepertinya aku mengacau.

Apa yang saya coba:

  1. Mencoba masuk ke root menggunakan ssh (Tidak diizinkan)
  2. Mencoba masuk ke ubuntu menggunakan ssh (Meminta kata sandi karena masalah izin saya yakin)
  3. Mencoba meretas. Menjalankan Wordpress jadi saya meletakkan shell di atas server menggunakan Admin. Saya mendapat shell terbalik tetapi tidak dapat melakukan eskalasi hak istimewa untuk mendapatkan root.

Saya akan sangat menghargai jika Anda dapat membantu saya untuk masuk ke server saya / mengatur ulang kata sandi / cara untuk masuk dari AWS Dashboard / atau cara apa pun.

Jawaban

PhilipCouling Sep 11 2020 at 22:25

Waduh!

Hal semacam ini terjadi tetapi merupakan pelajaran yang baik untuk lebih berhati-hati dengan akses Anda. Jika Anda benar-benar kehilangan akses, maka opsi yang terbuka untuk Anda hampir pasti melibatkan mematikan VM ... Anda tidak dapat memulihkan ini dengan waktu aktif 100%.

Jika ini adalah PC lokal, Anda dapat mengeluarkan hard drive ke komputer lain dan mengatur ulang kata sandi dari komputer lain. Meskipun ini adalah mesin virtual, prinsipnya serupa. Ada solusi untuk masalah serupa di sini:https://stackoverflow.com/a/11776183/453851

Prinsip dasarnya adalah bahwa mesin virtual EC2 menggunakan "volume" sebagai hard drive. Melalui konsol AWS Anda dapat:

  • matikan mesin virtual Anda
  • lepaskan volume
  • buat mesin virtual baru (dengan volumenya sendiri)
  • boot VM baru
  • pasang volume lama ke VM baru (sebagai volume kedua)

Kemudian masuk ke VM baru dan:

  • pasang volume lama (ke /mnt/)
  • chrootke dalam sistem file yang terpasang ( chroot /mnt/ /bin/bash). Ini akan memberi Anda baris perintah yang berperilaku seolah-olah berjalan di dalam VM lama Anda.
  • Ubah sandi apa pun yang Anda inginkan passwd
  • mematikan

Terakhir, kembali ke konsol AWS:

  • lepaskan volume lama
  • pasang kembali ke VM lama
  • boot vm lama
  • hapus sepenuhnya VM baru (HATI-HATI UNTUK MENGHAPUS YANG TEPAT)