Akses OpenWRT via Armbian Server (tanpa password)

From AbahDoku Wiki

Akses OpenWRT melalui Armbian Server (tanpa password) ini rencananya penulis gunakan untuk kebutuhan pembacaan log OpenWRT melalui Armbian Server yang terhubung di dalam 1 (satu) jaringan, penulis berharap agar ini juga dapat digunakan untuk mengakses jarak jauh log OpenWRT melalui server lain.

Membuat key SSH di Armbian Server[edit]

Sebelum membuat key SSH, penulis terlebih dahulu membuat sebug folder dengan nama koncigembok dengan command :

mkdir kuncigembok

Karena penulis menggunakan user root untuk mengakses Armbian Server, maka key SSH nantinya kan dibuat di dalam folder /root/kuncigembok

Key SSH dibuat dengan SSH Key Generator menggunakan algoritma RSA (Rivest-Shamir-Adleman) yang merupakan salah satu algoritma enkripsi untuk otentikasi dalam koneksi SSH. Jalankan command berikut di Armbian Server :

ssh-keygen -t rsa

Ketik nama kunci sesuai keinginan, jika muncul seperti berikut ini, misal <nama kunci> adalah "kunci_gembok"

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): <nama_kunci>

Jika di minta masukkan passphrase, isi atau langsung enter jika ingin mengabaikan.

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

Maka akan terbentuk 2 buah file kunci, simpan dan amankan :

kunci_gembok -------> untuk Armbian Server 
kunci_gembok.pub ---> untuk OpenWRT

Simpan kunci untuk Armbian Server[edit]

Copy atau pindahkan file kunci untuk Armbian Server yang sudah dibuat di dalam folder /root/.ssh/, gunakan command berikut :

cp /root/kuncigembok/kunci_gembok /root/.ssh/kunci_gembok
atau
mv /root/kuncigembok/kunci_gembok /root/.ssh/

Simpan kunci di OpenWRT[edit]

Karena menggunakan OpenWRT maka Server SSH yang digunakan adalah Dropbear, sehingga konfigurasi dan perintah layanan SSH berbeda dengan linux pada umumnya. Kunci publik yang sudah di buat (pada file kunci_gembok.pub) di simpan pada file authorized_keys di OpenWRT, jika menggunakan user root terletak pada folder /etc/dropbear. Untuk menyalin kunci kunci_gembok.pub pada file authorized_keys, pada linux umumnya menggunakan gunakan command berikut :

ssh-copy-id -i ~/.ssh/kunci_gembok.pub root@your_openwrt_ip
contoh :
ssh-copy-id -i kunci_gembok.pub root@192.168.1.1

Namun karena menggunakan OpenWRT command tersebut akan menyalin key SSH kunci_gembok.pub ke /root/ssh/authorized_key, ini tentunya bukan tempat yang seharusnya pada OpenWRT, tetapi tidak masalah karena dapat kita copy nanti ke ke tempat yang benar.

Pastikan terlebih dahulu kunci pada kunci_gembok.pub sudah tersalin dengan benar dengan cara melihat isi file /root/.ssh/authorized_keys, salah satu cara dengan menggunakan nano :

nano /root/ssh/authorized_keys

makan akan terlihat isinya seperti contoh berikut ini :

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDmVq+........ bla-bla-bla

Jika sudah benar saatnya mengcopy atau memindahkan file /root/.ssh/authorized_keys ke /etc/dropbear/authorized_keys dengan command berikut :

cp /root/.ssh/authorized_keys /etc/dropbear/authorized_keys
atau
mv /root/.ssh/authorized_keys /etc/dropbear/

Pastikan SSH Server Mengizinkan Kunci Publik[edit]

Saat ingin memastikan SSH Server mengizinkan kunci publik yang dapat dililihat pada /etc/ssh/sshd_config, ternyata OpenWRT Luci yang saya gunakan tidak memiliki file /etc/ssh/sshd_config Beberapa OpenWRT memiliki konfigurasi ssh pada file /etc/ssh/sshd_config. Pada eksperiment yang saya lakukan, OpenWRT Luci yang saya gunakan tidak memiliki file /etc/ssh/sshd_config. Untuk mengatasi hal tersebut saya menggunakan alternatif lain yaitu menggunakan file konfigurasi ssh yang terdapat pada dropbear yaitu file /etc/config/dropbear. Buka file tersebut menggunakan nano :

nano /etc/config/dropbear

pada file /etc/config/dropbear yang saya miliki berisi seperti berikut ini :

 config dropbear
        option PasswordAuth 'on'
        option RootPasswordAuth 'on'
        option Port         '22'
#       option BannerFile   '/etc/banner'
        option AuthorizedKeysFile '/etc/dropbear/authorized_keys'  # Lokasi file authorized_keys

Pastikan Izin file di OpenWRT[edit]

Pastikan izin file dan folder .ssh di OpenWRT sudah sesuai yaitu hanya diberikan akses kepada root untuk folder .ssh dan file authorized_keys. Untuk itu jalankan command berikut :

chmod 700 /etc/dropbear
chmod 600 /etc/dropbear/authorized_keys

Restart Dropbear[edit]

Lakukan restart Dropbear menggunakan command berikut :

/etc/init.d/dropbear restart

Test Koneksi SSH[edit]

Lakukan test koneksi ssh menggunakan key SSH yang sudah di buat melalui Armbian Server dengan beberapa command berikut :

ssh -i ~/.ssh/kunci_gembok root@192.168.1.1

Jika berhasil saat masuk ke OpenWRT tidak lagi dimintai password.