Mengatasi lupa password pada ubuntu

Selamat datang di blog saya, kali ini saya akan berbagi cara recovery password pada ubuntu.
Di sini akan ada 2 case yaitu :

  1. Lupa password user biasa, dan password untuk root belum diubah atau diset
  2. Lupa password user biasa atau password root ( password untuk root telah diubah atau diset )

Secara default, ubuntu tidak memberikan password untuk user root (super admin), jika anda belum mengatur password untuk user root, maka proses recovery dapat dilakukan dengan sangat mudah. Namun jika anda telah mengatur/mengganti password root, maka butuh usaha lebih keras untuk me-recovery password tersebut.

Baiklah langsung saja untuk case pertama

1. Kondisi user root belum terpassword

Pada saat di tampilan grub seperti di bawah, pilih "Advanced options for ubuntu"
Mengatasi lupa password pada ubuntu
pilih "Advanced options for ubuntu" 

kemudian akan muncul daftar kernel yang terpasang pada ubuntu, pilih "Recovery Mode"
Mengatasi lupa password pada ubuntu
pilih "Recovery Mode"

kemudian pilih "Drop to root shell prompt" untuk masuk ke console sebagai user root
Mengatasi lupa password pada ubuntu
pilih "Drop to root shell prompt"

Maka anda akan masuk ke console sebagai root seperti gambar di bawah ini
Berhasil masuk ke console dengan user root

Jika anda juga lupa username (yaelah bro), cara paling mudah anda dapat melihat user anda di /home dengan perintah "ls /home"

Mengatasi lupa password pada ubuntu
daftar user pada directory home

untuk mengubah password, dapat menggunakan perintah "passwd <username>".
Karena username di kasus ini adalah "aoktox" maka perintahnya menjadi seperti berikut
# passwd aoktox
Mengatasi lupa password pada ubuntu
Mengubah password user dengan perintah passwd

Jika sudah selesai, keluar dari console dengan perintah "exit"
Mengatasi lupa password pada ubuntu
Keluar dengan perintah exit

kemudian anda akan kembali ke halaman Recovery Menu, pilih resume untuk booting ke ubuntu
Mengatasi lupa password pada ubuntu
pilih resume untuk booting ke ubuntu

Mengatasi lupa password pada ubuntu
pilih OK

Berhasil login gan, Alhamdulillah
Mengatasi lupa password pada ubuntu
Akhirnya bisa login

2. Kondisi user root telah terpassword

Bagaimana cara mengetahui user root sudah terpassword apa belum?
Gampang saja, setelah memilih "Drop to root shell prompt"
Mengatasi lupa password pada ubuntu
pilih "Drop to root shell prompt"
jika muncul tampilan seperti di bawah ini, berarti user root telah terpassword
Mengatasi lupa password pada ubuntu
user root telah terpassword
kalau anda ingat password root tinggal masukkan saja, maka anda akan langsung masuk ke console seperti case 1. Kalau lupa password root, ikuti langkah langkah di bawah ini!

Pada tampilan grub, tekan tombol "e" untuk masuk ke editor
Mengatasi lupa password pada ubuntu
tekan tombol "e" untuk masuk ke editor

kemudian cari baris yang dimulai dengan "linux" seperti pada gambar

Mengatasi lupa password pada ubuntu
cari baris yang dimulai dengan "linux" seperti pada gambar

hapus "ro" dan ganti dengan "rw init=/bin/bash", kemudian tekan F-10 untuk melanjutkan proses booting.
Mengatasi lupa password pada ubuntu
hapus "ro" dan ganti dengan "rw init=/bin/bash"

kemudian anda akan masuk ke console sebagai root.
Mengatasi lupa password pada ubuntu
login sebagai root
untuk mengganti password sama seperti case 1 yaitu menggunakan perintah passwd <username>.

Sekian, semoga bermanfaat.


Update : 
Jika anda mengalami error "Authentication token manipulation error" silakan lihat solusinya di sini : http://aoktox.blogspot.com/2016/02/mengatasi-authentication-token.html

MariaDB tidak bisa login setelah instalasi

Pernahkan temen temen mengalami masalah ketika baru install MariaDB kemudian menjalankan mysql_secure_installation untuk mengubah password tapi kemudian tidak bisa login? Padahal password yang dimasukkan sudah benar tapi malah mendapat pesan error seperti berikut
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
Pada kasus yang saya alami, ini terjadi karena MariaDB mencoba untuk melakukan authentikasi ke user root menggunakan plugin, bukan password. Solusinya mudah saja, jalankan perintah mysql menggunakan user root atau menggunakan sudo. Tapi cara ini tidaklah efektif, oleh karena itu kita harus menonaktifkan plugin yang terdapat pada tabel user di database mysql dengan cara berikut ini :

Masuk ke mysql mengguanakan sudo
$ sudo mysql -u root

Ganti database yang aktif ke mysql
MariaDB [(none)]> use mysql;

Hapus plugin pada tabel user dengan username root
MariaDB [mysql]> update user set plugin='' where User='root';

Reload privilege
MariaDB [mysql]> flush privileges;

Keluar dari mysql console
MariaDB [mysql]> \q
Sekian tips sederhana dari saya, terimakasih.

Catatan: ini pos pertama saat berkunjung ke BLC Telkom KPLI Klaten tahun 2016

Zimbra 8.6 web server mode with proxy

Kali ini saya akan menunjukkan cara merubah mode web server pada zimbra 8.6 yang menggunakan fitur proxy.
berikut perintahnya :
[zimbra@mail ~]$ /opt/zimbra/libexec/zmproxyconfig -e -w -H mail.domain.id -x redirect

maka hasilnya seperti berikut
Zimbra web server mode redirect with nginx as proxy

Berikut ini ada beberapa mode sesuai wiki zimbra,yaitu:

  1. http - http only, the user would browse to http://zimbra.domain.com
  2. https - https only, the user would browse to https://zimbra.domain.com http:// is denied.
  3. both - A user can go to http:// or https:// and will keep that mode for their entire session.
  4. mixed - If the user goes to http:// it will switch to https:// for the login only, then will revert to http:// for normal session traffic. If they browse to https:// then they will stay https://
  5. redirect - Like mixed if the user goes to http:// it will switch to https:// but they will stay https:// for their entire session.

Note: Redirect mode is not available for ZCS 4.5 and earlier. (See Redirect_http_to_https for information about redirect for ZCS 4.5.)


Install Laravel 5.x dan NGINX di Heroku (Part 2)

Setelah tahap persiapan Install Laravel 5.x dan NGINX di Heroku selesai, sekarang saatnya upload Laravel ke heroku.

Inisialisasi git pada directory laravel, kemudian tambahkan semua file pada directory ke git repository dengan perintah berikut
# git init
# git add .
# git commit -m "Ini commit pertama"
Login ke akun heroku via cli (untuk meng-generate key pair antara PC dan server heroku) dengan perintah berikut
# heroku login
kemudian masukkan email dan password anda
buat heroku app dengan perintah berikut:
# heroku create contohapp --buildpack https://github.com/heroku/heroku-buildpack-php
contohapp adalah nama app yang akan dibuat dan buildpack merupakan sekumpulan tool untuk menjalankan app kita, karena laravel berbasis php maka saya memilih buildpack untuk php.
perintah di atas secara otomatis menambahkan remote git untuk repository git yang telah kita buat tadi, untuk melihatnya ketikkan perintah berikut:
# git remote -v
kemudian untuk mengupload laravel ke heroku gunakan perintah berikut:
# git push heroku master
Kemudian untuk membuka aplikasi pada web browser ketikkan perintah:
# heroku open
Sekian. Jika ada pertanyaan silakan kirim melalui kolom komentar di bawah ini.

Install Laravel 5.x dan NGINX di Heroku

Kali ini saya akan menunjukkan cara install/upload laravel 5.x ke heroku. Apa itu heroku?
Heroku adalah sebuah cloud platform yang menjalankan bahasa pemrograman tertentu, istilahnya  platform as a service (PaaS). Service-nya adalah menjalankan script app langsung tanpa memerlukan setting yang sangat rumit, dengan heroku kita cukup melakukan git push dan aplikasi bisa langsung runing.

Sebelum memulai proses instalasi, pastikan beberapa hal ini sudah terpenuhi:
1. Daftar akun heroku di : https://signup.heroku.com/www-pricing-top
2. Install git di pc kalian.
    Git berfungsi untuk menjalankan command command git, seperti : git init, git add, git push, dan git git yang lain.
    # apt-get install git
3. Install heroku toolbelt di pc kalian. 
    Heroku toolbelt adalah sebuah aplikasi dari heroku yang berisi sekumpulan command yang berguna sebagai control panel heroku di client.
    # wget -q0- https://toolbelt.heroku.com/install-ubuntu.sh | sh

Setelah semua persiapan telah selesai, buat sebuah project laravel sesuai panduan di http://laravel.com/docs/5.1
Kali ini saya membuat project menggunakan perintah composer
# composer create-project laravel/laravel --prefer-dist ContohApp
kemudian masuk ke akan muncul directory baru bernama ContohApp,masuk ke directory tersebut
edit file .gitignore dan hapus tulisan ".env" (optional), sehingga file .gitignore kurang lebih berisi seperti berikut:

Karena kita akan menggunakan web server nginx, maka buat file baru dengan nama "nginx_konfig.conf" untuk menambahkan beberapa pengaturan pada nginx. Isi file tersebut kurang lebih seperti ini:
kemudian buat file baru dengan nama "Procfile". File ini lah yang akan dieksekusi saat proses deploy ke heroku. Isi file tersebut dengan text berikut:
web: vendor/bin/heroku-php-nginx -C nginx_konfig.conf public/
 Jadi kita telah membuat 2 file baru dengan nama "nginx_konfig.conf" dan "Procfile". Cek apakah isi file tadi sudah benar
Tahap persiapan telah selesai. Silakan lanjut ke bagian 2 Install Laravel 5.x dan NGINX di Heroku!

Whoops di Laravel 5.x

Whoops adalah library error handler default untuk laravel 4. Kenapa ingin menggunakan whoops di laravel 5? Karena  dengan menggunakan whoops, tampilan error "enak dipandang" serta informasi kesalahan diberikan secara detail dan itu tidak terdapat pada error handler default laravel 5.
Berikut cara menggunakan (kembali) whoops ke laravel 5.

Jalankan perintah berikut di directory laravel untuk menginstall library whoops :
$ composer require filp/whoops:~1.0


Setelah itu buka file app/Exceptions/Handler.php, pada method render() tambahkan perintah untuk exception handling menggunakan whoops di atas baris "return parent::..." seperti berikut :

kemudian tambahkan method baru dengan nama "errorBro", seperti ini:

sehingga hasilnya seperti berikut:

Berikut ini contoh error handling default laravel 5:

Berikut ini contoh error handling setelah menggunakan whoops:

How To Integrate Moodle with Ldap Zimbra

Ceritanya kemarin ada project buat server plus paket aplikasi untuk sekolah. Service yang diinginkan antara lain mail server dan elearning. Untuk mail server saya memilih zimbra karena menurut saya itu pilihan yang tepat saat itu, kemudian untuk elearning saya memilih moodle karena menurut saya elearning yang paling enak dan kaya fitur bukan lain ya si moodle ini.
Singkat cerita instalasi mail server dan elearning selesai dengan selamat tanpa kendala yang serius :D kemudian saya dan tim berfikir, kalau ada 2 service (mail dan elearning) maka setiap siswa juga harus di daftarkan pada kedua service dong? Tentu ini sangat merepotkan belum lagi ke depan akan ditambahi service captive portal untuk autentikasi user hotspot, harus input data lagi dong?
Akhirnya muncul sebuah ide yang tergolong ide lama, yaitu mengitegrasikan user pada mail server ke moodle. Untuk keperluan tersebut zimbra sangat mendukung karena sudah menyediakan service ldap, thank zimbra :D
Oke, sekarang langsung saja siapkan alat dan bahan yang diperlukan:
  • Elearning yang telah terinstall dan dapat beroprasi dengan baik
  • Mail server (zimbra) yang telah terinstall. Pada zimbra kita harus mencatat hal hal berikut untuk autentikasi ke ldap zimbra
    • IP address/domain mail server (pada contoh menggunakan : 10.10.10.2)
    • Bind user dan password untuk masuk ke struktur direktori (ldap) zimbra. Jika kalian lupa password ldap, ikuti tutorial berikut : https://wiki.zimbra.com/wiki/Resetting_LDAP_and_MySQL_Passwords
      Setelah semua bahan terkumpul saatnya kita eksekusi
  • Karena saya belum mengerti tentang skema ldap di zimbra, maka saya menggunakan aplikasi bantuan dari softerra yang berupa ldap browser, bisa kalian download secara GRATIS di http://www.ldapadministrator.com/download.htm .
FYI : untuk login ke LDAP berikut parameter yang saya gunakan :
  • Host                               : 10.10.10.2
  • Base DN                        : dc=sekolah,dc=sch,dc=id
  • Principal/BIND user       : uid=zimbra,cn=admins,cn=zimbra
  • Bind password               : password
Untuk host, base DN,Bind password menyesuaikan pengaturan server.
Berikut tampilan LDAP browser yang telah berhasil login.

Dari sisi sebelah kiri dapat kita lihat bahwa username email disimpan dalam ou people, maka kita dapat memperkecil atau memfokuskan pencarian pada ou tersebut dengan cara mengganti base DN menjadi seperti ini : ou=people,dc=sekolah,dc=sch,dc=id
Sehingga hasil akhir menjadi seperti ini:
Untuk melihat detail dari tiap user, pilih salah 1 user seperti di atas (klik nama user)

Berikut detail salah 1 user:
Note : bagian yang dikotak merah merupakan attribute yang sering digunakan, seperti :
-          givenName (nama depan),
-          sn (nama belakang),
-          mail (alamat email),
-          cn (nama lengkap),

-          uid (username).
2Lanjut ke bagian konfigurasi moodle
a.       Login ke moodle sebagai administrator
b.      Masuk ke menu :Home/Site administration/Plugins/Authentication/Manage authentication
c.       Disable “Email-based self-registration” karena kita tidak akan menggunakannya
d.      Enable “LDAP server” dengan cara klik icon mata di sebelah kanan, kemudian klik settings 
e.    Sesuaikan seperti di bawah ini:



f.       Jika sudah pilih “Save Changes”

g.      Ini adalah metode autentikasi yang saya gunakan
 Terlihat pada LDAP server masih memiliki 0 user, karena belum ada yang login.
h.       Sekarang coba login dengan username sesuai email (tanpa @blablabla) karena user attribute saya gunakan uid yaitu hanya username, jika ingin menggunakan email lengkap silakan ganti user attribute dengan mail.
 Login telah berhasil, sekarang cek info (profile) user.
 Data user sesuai dengan attribute yang kita masukkan di konfigurasi LDAP tadi.
User LDAP telah bertambah

agus