Kamis, 12 November 2009

Mereset Password Root

Pengantar

Bayangkan jika anda baru saja menjadi seorang administrator sistem, namun administrator yang sebelumnya lupa memberikan password root kepada anda. Sekarang anda ingin menginstal PHP versi terbaru pada sistem agar website bisa berjalan sebagaimana mestinya. Atau mungkin anda hanya ingin menambahkan user baru pada sistem.Skenario di atas hanyalah dua kasus yang mungkin terjadi, sehingga anda harus mereset password root. Masih banyak kasus-kasus yang lain, namun saya tidak akan menampilkan semuanya. Kebanyakan dari kita sudah tahu apa yang harus kita lakukan jika hal ini terjadi pada sistem Windows, namun bagaimana jika hal ini terjadi pada sistem Linux?

Peringatan

Resiko yang terjadi akibat dari penggunaan konsep, contoh, dan materi yang ada di dalam tulisan ini menjadi tanggung jawab anda sendiri. Informasi yang ada pada tulisan ini hanya boleh digunakan untuk mengembalikan password pada sistem dimana anda memiliki akses secara legal. Saya tidak bertanggung jawab jika anda menggunakan informasi yang ada dalam tulisan ini untuk membobol sistem milik orang lain. Sangat disarankan untuk membuat backup pada sistem anda sebelum melakukan hal-hal yang ada pada tulisan ini.

Terimakasih

Saya ingin mengucapkan terimakasih kepada orang-orang berikut ini, yang tanpa masukan mereka, tulisan ini tidak akan pernah ada.

  • Komunitas http://www.justlinux.com, atas diskusi yang sangat bermanfaat mengenai topik ini pada salah satu thread mereka.
  • Para penulis dan pengelola situs-situs dokumentasi Linux dimana saya mendapatkan informasi ini.
  • Matt Hoskins dan Kevin Walsh, yang memperkenalkan saya pada Linux.
  • Teman-teman dan keluarga, yang telah membantu saya menulis dokumen ini.

Sebelum anda memulai

Sebelum anda mencoba mengembalikan atau mengubah password pada sistem, pastikan anda memiliki ijin dari pemilik yang sah, sebab membobol sistem orang lain tanpa ijin adalah perbuatan yang tidak benar.

Kedua, buatlah backup data-data penting anda sebelum melangkah lebih jauh. Sehingga jika terjadi hal yang tidak diinginkan, anda masih memiliki salinan data. Saya telah mencoba informasi yang ada pada tulisan ini dan telah berjalan sebagaimana mestinya, akan tetapi saya tidak bertanggung jawab untuk sistem anda.

Beberapa cara untuk mereset password root

Ada banyak cara yang tersedia untuk mereset password root. Kita akan membahasnya nanti. Saya juga akan menjelaskan beberapa cara yang bisa dilakukan untuk mencegah orang lain mengubah password anda.

Beberapa cara yang bisa dilakukan antara lain:

  • Boot ke mode single-user (cara yang paling mudah dan beresiko kecil)
  • Boot menggunakan boot disk dan mengedit file password
  • Mount harddisk ke sistem lain dan mengedit file password

Boot ke mode single-user

Ini adalah cara yang paling mudah dan paling cepat untuk mereset password. Langkah-langkahnya mungkin akan sedikit berbeda, tergantung apakah anda menggunakan boot manager GRUB atau LILO.

Boot ke mode single-user dari LILO

Ikuti langkah-langkah ini untuk mereset password jika anda menggunakan LILO.

  • Boot ulang sistem anda. Jika anda melihat prompt LILO: (lihat Gambar 1), ketikkan “linux single” dan tekan Enter. Anda akan login sebagai root pada mode single-user. Jika ternyata anda diminta untuk memasukkan password saat login pada mode ini, maka anda bisa mencoba menggunakan perintah “linux init=/bin/bash“.
  • Setelah sistem selesai booting, anda sudah menjadi root di mode single-user. Gunakan perintah “passwd” untuk merubah password root.
  • Ketikkan reboot untuk boot ulang sistem anda. Sekarang anda sudah bisa login dengan menggunakan password root tersebut.

Lilo Boot Menu
Gambar 1. Menu boot LILO.

Jika anda menggunakan LILO versi terbaru yang menampilkan menu pemilihan kernel yang tersedia pada sistem anda, tekan Tab untuk menampilkan prompt LILO: dan kemudian lanjutkan seperti langkah-langkah di atas.

Boot ke mode single-user dari GRUB

Ikuti langkah-langkah berikut ini jika anda menggunakan GRUB.

  • Boot ulang sistem anda. Jika anda melihat menu pemilihan seperti pada Gambar 2, pilih sistem anda dan tekan ‘e’. Anda mungkin hanya disediakan waktu 2 detik.
  • Akan muncul tampilan dimana anda harus memilih pilihan yang dimulai dengan ‘kernel’, kemudian tekan ‘e’.
  • Tambahkan ’single’ di akhir baris tersebut (tanpa tanda petik). Pastikan anda mengetik spasi sebelum kata ’single’. Jika anda diminta untuk memasukkan password root pada saat login pada mode ini, coba tambahkan ‘init=/bin/bash’ setelah ’single’. Tekan Enter.
  • Tekan ‘b’ untuk boot ke mode single-user. Anda akan login sebagai root. Gunakan perintah “passwd” untuk merubah password root.
  • Ketikkan “reboot” untuk boot ulang sistem anda. Sekarang anda sudah bisa login dengan menggunakan password root tersebut.

GRUB boot screen
Gambar 2. Layar boot GRUB.

Menggunakan boot disk

Cara ini akan sedikit lebih rumit daripada cara sebelumnya, namun memiliki kemungkinan berhasil yang sangat tinggi (diasumsikan filesystem anda tidak dienkripsi, atau jika filesystem anda dienkripsi, anda tidak lupa password untuk mendekripsinya). Seperti sebelumnya, pastikan anda memiliki ijin untuk melakukan langkah-langkah ini.

Anda akan membutuhkan sebuah disket booting Linux atau disket rescue. Pada saat instalasi Linux, anda akan diminta untuk membuat disket rescue ini. Sebagian besar CD instalasi distribusi Linux juga dapat dipergunakan sebagai CD rescue. Dengan CD Redhat Linux yang saya miliki, saya mengetikkan “linux rescue” untuk masuk ke mode rescue. Cara masuk ke mode rescue untuk distro lain mungkin akan sedikit berbeda. Anda juga bisa menggunakan Live CD Linux seperti Knoppix atau Gnoppix untuk menyelamatkan sistem anda. Pada tutorial ini saya akan menggunakan Knoppix, namun langkah-langkahnya akan sama walaupun anda menggunakan CD rescue yang lain.

Anda juga bisa menggunakan distribusi Linux dalam satu disket seperti Tom’s RootBoot. Mendownload distro ini tentunya akan jauh lebih cepat daripada mendownload CD rescue, khususnya pada koneksi internet yang lambat.

Ikuti langkah-langkah berikut ini untuk mereset password menggunakan Knoppix.

  • Boot ulang sistem anda dan konfigurasikan agar dapat booting ke CD Knoppix. Anda dapat menemukan tutorialnya di sini.
  • Pada boot prompt Knoppix (lihat Gambar 3), ketikkan “knoppix lang=us” untuk booting Knoppix dengan locale bahasa Inggris.
  • Setelah booting selesai, tekan Ctrl + Alt + F1 untuk masuk ke virtual terminal.
  • Ketik “mkdir lokasi_mount” untuk membuat direktori yang bernama ‘lokasi_mount’. Direktori ini akan kita gunakan untuk me-mount filesystem kita.
  • Ketik “mount /dev/hdaX lokasi_mount”, dimana /dev/hdaX adalah partisi root anda. Informasi lebih lanjut mengenai partisi dapat anda baca di sini.
  • Pindah ke direktori /etc pada filesystem root anda dengan perintah “cd lokasi_mount/etc”.
  • Editlah file shadow dengan perintah “vi shadow”. Jika distro yang anda gunakan adalah distro tua, mungkin anda tidak menemukan file shadow, melainkan file passwd.
  • Carilah baris yang berisi informasi root, yang mungkin tampak seperti di bawah ini:
    root:dsfDSDF!s:12581:0:99999:7:::
  • Hapus semua yang ada di antara tanda titik dua pertama dan kedua, sehingga akan tampak seperti ini:
    root::12581:0:99999:7:::
  • Simpan file tersebut dan keluar dari teks editor anda. Untuk menyimpan file dari teks editor Vi, tekan Esc, ketik “wq” kemudian tekan Enter.
  • Ketik “cd” untuk kembali ke direktori home anda.
  • Ketik “umount lokasi_mount” untuk meng-umount partisi anda.
  • Ketik “reboot” untuk boot ulang sistem anda. Lepaskan CD Knoppix dari drive CD-ROM.
  • Sekarang anda sudah bisa masuk ke sistem anda sebagai root tanpa password. Segeralah membuat password root anda yang baru.

Knoppix boot screen
Gambar 3. Layar boot Knoppix

Mount ke sistem lain

Cara ini cukup rumit, namun kemungkinan berhasil sangat tinggi (kecuali jika filesystem anda dienkripsi).

Untuk mereset password root anda, ikuti langkah berikut.

  • Matikan komputer anda setelah data-data penting dibackup.
  • Buka casing komputer anda, lepas harddisk dan pindahkan ke komputer lain. (Komputer ini juga harus menggunakan Linux, sebab Windows tidak bisa membaca format partisi Linux.)
  • Hubungkan harddisk sebagai slave dan boot komputer tersebut. Setelah booting selesai, mount partisi root pada harddisk slave seperti cara sebelumnya dan edit file password anda.

Mencegah orang lain mereset password root anda

Jika anda seorang sysadmin yang peduli pada keamanan, pembahasan di atas mungkin akan menimbulkan pertanyaan, apakah semudah itu membobol pertahanan Linux? Jawabannya bisa Ya dan Tidak. Ingat bahwa Akses Fisik berarti Akses ke Root. Artinya, jika anda memberikan akses fisik ke sistem anda kepada seseorang, sama saja anda memberikan kesempatan yang sangat baik bagi mereka untuk mendapatkan akses root pada sistem anda. Tidak hanya untuk Linux, namun juga untuk Windows dan semua sistem operasi lainnya.

Jika anda memang harus memberikan akses secara fisik ke server anda, ada beberapa hal yang harus anda lakukan untuk mempersulit mereka mendapatkan akses root. Kita akan membahas beberapa cara yang bisa anda lakukan agar komputer anda lebih aman melawan jenis serangan tersebut.

Proteksi password LILO dan GRUB

Edit file /etc/inittab dan masukkan baris berikut ini, tepat setelah baris ‘initdefault’: ~~:S:wait:/sbin/sulogin. Dengan menambahkan baris di atas, login ke mode single-user akan memerlukan password, dengan cara membuat init menjalankan ’sulogin’ sebelum sistem masuk ke shell root. ’sulogin’ akan meminta user memasukkan password root.

Sayangnya, cara di atas bisa ditembus dengan memasukkan “init=/bin/bash” pada prompt LILO. Saya menyarankan untuk menambahkan password untuk melindungi LILO/GRUB. Langkah-langkahnya seperti di bawah ini.

Untuk LILO:

  • Bukalah prompt shell dan login sebagai root.
  • Buka file /etc/lilo.conf dengan teks editor kesayangan anda.
  • Tambahkan baris berikut sebelum image yang pertama: password= , dimana adalah password anda.
  • Jalankan “/sbin/lilo -v” agar perubahan tersebut diaplikasikan pada sistem anda.
  • Karena password tersebut berbentuk teks biasa, berikan perintah “chmod 600 /etc/lilo.conf” agar hanya root yang bisa membaca dan mengedit file tersebut.
  • Sekarang sistem anda akan sedikit lebih aman.

Untuk GRUB, caranya adalah sebagai berikut:

  • Bukalah prompt shell dan login sebagai root.
  • Ketik “/sbin/grub-md5-crypt” dan tekan Enter. Masukkan password untuk GRUB. Akan muncul MD5 hash untuk password anda.
  • Buka /boot/grub/grub.conf dengan teks editor kesayangan anda.
  • Tambahkan teks password –md5 di bawah timeout pada bagian main section. (Ganti dengan hash yang anda peroleh dari langkah sebelumnya.)
  • Simpan dan keluar.
  • Sekarang GRUB tidak akan mengijinkan anda mengakses editor atau antarmuka perintah tanpa menekan ‘p’ diikuti dengan password GRUB.

Proteksi password pada BIOS

Ada dua alasan mengapa BIOS harus dipasangi password:

  • Mencegah perubahan setting BIOS oleh penyusup. Jika seorang penyusup memiliki akses ke BIOS, mereka dapat mengeset BIOS untuk boot melalui disket atau CDROM.
  • Mencegah booting tanpa menggunakan password. Beberapa BIOS dapat disetting untuk memproteksi proses boot dengan menggunakan password. Untuk dapat masuk ke sistem, kita harus memasukkan password agar BIOS menjalankan boot loader.

Cara untuk mengeset password BIOS berbeda-beda. Bacalah buku manual komputer anda. Jika anda lupa password BIOS anda, anda bisa meresetnya dengan menggunakan jumper pada motherboard atau dengan melepas baterai CMOS. Silakan lihat buku manual motherboard anda sebelum melakukan hal ini.

Penutup

Semoga tulisan ini bermanfaat jika anda mendapatkan permasalahan yang mengharuskan anda untuk mereset password root, atau jika anda ingin meningkatkan keamanan sistem agar orang lain tidak bisa mencuri password anda. Jika tulisan ini bermanfaat bagi anda, atau jika anda memiliki komentar atau pertanyaan, silakan beritahu saya.

 


Free CursorsMyspace LayoutsMyspace Comments
type='text/javascript'/>