Digit Oktavianto Web Log

Catatan Sampah si Digit

SSH Login Using Two Factor Authentication From Duo Security

| Comments

Halo Halo .. I’m back dude.. Hehehe.. Kali ini saya akan menulis mengenai SSH Login menggunakan Two Factor Authentication dengan menggunakan layanan dari Duo Security (You are great !!) Melanjutkan pembahasan kita yang kemarin mengenai Two Factor Authentication . Kali ini saya akan menuliskan pengalaman saya implementasi two factor authentication untuk Login SSH. Kebetulan saya mempunyai VPS yang biasa saya pakai. Saya mencoba mengimplementasikannya, berikut ini step by step nya :

Sebelumnya berikut requirement nya :

  1. Mempunyai akun Duo Security
  2. Mempunyai SSH Server yang bisa di manage
  3. Mempunyai Handphone (yang penting bisa menerima SMS dan panggilan :D )

POC step by step :

  1. Setelah sign up account di Duo Security, silakan klik di Tab Integration di sebelah kiri, dan Klik New Integration
  2. Pada pilihan integration type silakan anda pilih Unix integration, dan Integration Name nya terserah anda, dan klik Add Integration
  3. Nanti anda akan mendapatkan Integration Key, Secret Key, dan API Hostname. Stop disini sekarang kita akan setup aplikasi duo security di sisi server anda

Instalasi Aplikasi Duo Security di server anda :

1. Login ke server anda via SSH

2. Download aplikasi Duo Security terbaru https://github.com/downloads/duosecurity/duo_unix/duo_unix-1.7.tar.gz

3. Install Duo Security (pastikan tidak ada dependensi package yang kurang)

digit@cybertron:~$ tar -zxvf uo_unix-1.7.tar.gz
digit@cybertron:~$ cd duo_unix-1.7
digit@cybertron:~$ ./configure --prefix=/usr && make && sudo make install

4. Config Duo Security

digit@cybertron:~$ sudo nano /etc/duo/login_duo.conf
1
2
3
4
5
6
7
[duo]
; Duo integration key
ikey = isi sesuai dengan integration key anda
; Duo secret key
skey = isi sesuai dengan secret key anda
; Duo API hostname
host = api-dad69f23.duosecurity.com

Save dan Exit

5. Test login Duo Security

digit@cybertron:~$ sudo /usr/sbin/login_duo

Jika semua setup sudah benar akan muncul seperti di bawah ini :

digit@cybertron:~$ sudo /usr/sbin/login_duo
Please enroll at https://api-dad69f23.duosecurity.com/portalxxxxxxxxxxxxxxx

Silakan Klik URL tersebut untuk melakukan Aktivasi

6. Setelah selesai authentikasi silakan coba kembali :

1
2
3
4
5
6
7
8
9
10
digit@cybertron:~$ sudo /usr/sbin/login_duo echo berhasil
Duo two-factor login for digit

Enter a passcode or select one of the following options:

 1. SMS passcodes to +XXXXX XXXXxxxx (next code starts with: B)

Passcode or option (1-1): 1

digit@cybertron:~$

7. Enable Login Duo Security –> Edit SSH Config di server anda :

digit@cybertron:~$ sudo nano /etc/ssh/sshd_config

Tambahkan baris berikut ini :

1
ForceCommand /usr/sbin/login_duo

8. Save, Exit, dan Restart SSH Service

digit@cybertron:~$ sudo /etc/init.d/ssh restart

Login dari PC / Laptop kita ke Server kita :

digit@digit-laptop:~$ ssh digit@cybertron
Duo two-factor login for digit

Enter a passcode or select one of the following options:

1. SMS passcodes to +XXXXX XXXXXXXX

Passcode or option (1-1): 1

New SMS passcodes sent.

Duo two-factor login for digit

Enter a passcode or select one of the following options:

1. SMS passcodes to +XXXXX XXXXXXXX (next code starts with: A)

Passcode or option (1-1): AXXXXXX

Success. Logging you in...

digit@cybertron:~$

Berhasil :D


Selamat Mencoba. ;)

Comments