Cara Mengamankan SSH dengan Otentikasi Dua Faktor Google Authenticator
Ingin mengamankan server SSH Anda dengan otentikasi dua faktor yang mudah digunakan? Google menyediakan perangkat lunak yang diperlukan untuk mengintegrasikan sistem TOTP (one-time password) satu kali berbasis Google Authenticator dengan server SSH Anda. Anda harus memasukkan kode dari ponsel saat terhubung.
Google Authenticator tidak "rumah telepon" ke Google - semua pekerjaan terjadi pada server SSH Anda dan telepon Anda. Faktanya, Google Authenticator sepenuhnya open-source, jadi Anda bahkan dapat memeriksa sendiri kode sumbernya.
Instal Google Authenticator
Untuk menerapkan otentikasi multifaktor dengan Google Authenticator, kita membutuhkan modul PAM Google Authenticator open-source. PAM adalah singkatan dari "modul otentikasi pluggable" - ini adalah cara untuk dengan mudah menyambungkan berbagai bentuk otentikasi ke sistem Linux.
Gudang perangkat lunak Ubuntu berisi paket yang mudah dipasang untuk modul PAM Google Authenticator. Jika distribusi Linux Anda tidak mengandung paket untuk ini, Anda harus mengunduhnya dari halaman unduhan Google Authenticator di Google Code dan kompilasi sendiri.
Untuk menginstal paket di Ubuntu, jalankan perintah berikut:
sudo apt-get install libpam-google-authenticator
(Ini hanya akan menginstal modul PAM di sistem kami - kami harus mengaktifkannya untuk login SSH secara manual.)
Buat Kunci Otentikasi
Masuk sebagai pengguna Anda akan masuk dengan jarak jauh dan jalankan google-authenticator perintah untuk membuat kunci rahasia untuk pengguna itu.
Izinkan perintah untuk memperbarui file Google Authenticator Anda dengan mengetik y. Anda kemudian akan diminta dengan beberapa pertanyaan yang akan memungkinkan Anda untuk membatasi penggunaan token keamanan sementara yang sama, menambah jendela waktu tempat token dapat digunakan, dan membatasi upaya akses yang diizinkan untuk menghalangi upaya perengkahan brute force. Semua pilihan ini memperdagangkan keamanan untuk kemudahan penggunaan.
Google Authenticator akan memberi Anda kunci rahasia dan beberapa "kode awal darurat." Tuliskan kode awal darurat di tempat yang aman - masing-masing hanya dapat digunakan satu kali, dan mereka dimaksudkan untuk digunakan jika Anda kehilangan ponsel Anda.
Masukkan kunci rahasia di aplikasi Google Authenticator di ponsel Anda (aplikasi resmi tersedia untuk Android, iOS, dan Blackberry). Anda juga dapat menggunakan fitur barcode scan - pergi ke URL yang terletak di dekat bagian atas output perintah dan Anda dapat memindai kode QR dengan kamera ponsel Anda.
Sekarang Anda akan memiliki kode verifikasi yang terus berubah di ponsel Anda.
Jika Anda ingin masuk dari jarak jauh sebagai banyak pengguna, jalankan perintah ini untuk setiap pengguna. Setiap pengguna akan memiliki kunci rahasia dan kode mereka sendiri.
Aktifkan Google Authenticator
Selanjutnya Anda harus meminta Google Authenticator untuk login SSH. Untuk melakukannya, buka /etc/pam.d/sshd file di sistem Anda (misalnya, dengan sudo nano /etc/pam.d/sshd perintah) dan tambahkan baris berikut ke file:
auth diperlukan pam_google_authenticator.so
Selanjutnya, buka / etc / ssh / sshd_config file, cari ChallengeResponseAuthentication baris, dan ubah untuk membaca sebagai berikut:
ChallengeResponseAuthentication ya
(Jika ChallengeResponseAuthentication baris belum ada, tambahkan baris di atas ke file.)
Terakhir, restart server SSH sehingga perubahan Anda akan berlaku:
sudo service ssh restart
Anda akan diminta kata sandi dan kode Google Authenticator setiap kali Anda mencoba masuk melalui SSH.