Cara Mengatur Otentikasi Dua Faktor (2FA) untuk SSH pada Debian 9 Menggunakan Google Authenticator

Ada beberapa cara masuk ke server melalui SSH. Metode termasuk login kata sandi, login berbasis kunci dan otentikasi dua faktor.

Otentikasi dua faktor adalah jenis perlindungan yang jauh lebih baik. Jika komputer Anda dikompromikan, penyerang masih memerlukan kode akses untuk login.

Dalam tutorial ini, Anda akan belajar cara mengatur otentikasi dua faktor pada Debian 9 menggunakan Google Authenticator dan SSH.

Prasyarat

  • Server Debian 9 (atau lebih baru).
  • Pengguna non-root dengan akses sudo.
  • Ponsel pintar (Android atau iOS) dengan Aplikasi Google Authenticator diinstal. Anda juga dapat menggunakan Authy atau aplikasi lain yang mendukung login One-Time Password (TOTP) berbasis Waktu.

Langkah 1: Menginstal Perpustakaan Google Authenticator

Kita perlu menginstal modul Perpustakaan Google Authenticator yang tersedia untuk Debian, yang akan memungkinkan server untuk membaca dan memvalidasi kode.

sudo apt update
sudo apt install libpam-google-authenticator -y

Langkah 2: Konfigurasikan Google Authenticator untuk setiap pengguna

Konfigurasikan modul.

google-authenticator

Setelah Anda menjalankan perintah, Anda akan ditanya beberapa pertanyaan. Pertanyaan pertama adalahDo you want authentication tokens to be time-based (y/n)

Tekan Ydan Anda akan mendapatkan kode QR, kunci rahasia, kode verifikasi, dan kode cadangan darurat.

Keluarkan ponsel Anda dan buka aplikasi Google Authenticator. Anda dapat memindai kode QR atau menambahkan kunci rahasia untuk menambahkan entri baru. Setelah Anda melakukannya, catat kode cadangan dan simpan di tempat yang aman. Jika ponsel Anda salah tempat atau rusak, Anda dapat menggunakan kode-kode itu untuk login.

Untuk pertanyaan yang tersisa, tekan Yketika diminta untuk memperbarui .google_authenticatorfile, Ykarena melarang beberapa penggunaan token yang sama, Nuntuk meningkatkan jendela waktu dan Yuntuk mengaktifkan pembatasan tingkat.

Anda harus mengulangi langkah ini untuk semua pengguna di komputer Anda, jika tidak mereka tidak akan bisa login setelah Anda selesai dengan tutorial ini.

Langkah 3: Konfigurasikan SSH untuk menggunakan Google Authenticator

Sekarang semua pengguna di mesin Anda telah menyiapkan aplikasi autentikator Google mereka, saatnya untuk mengkonfigurasi SSH untuk menggunakan metode otentikasi ini dari yang sekarang.

Masukkan perintah berikut untuk mengedit sshdfile.

sudo nano /etc/pam.d/sshd

Temukan baris @include common-authdan komentari, seperti apa yang ditunjukkan di bawah ini.

# Standard Un*x authentication.
#@include common-auth

Tambahkan baris berikut ke bagian bawah file ini.

auth required pam_google_authenticator.so

Tekan CTRL+ Xuntuk menyimpan dan keluar.

Selanjutnya, masukkan perintah berikut untuk mengedit sshd_configfile.

sudo nano /etc/ssh/sshd_config

Temukan istilah ChallengeResponseAuthenticationdan tetapkan nilainya yes. Temukan juga istilahnya PasswordAuthentication, batalkan komentarnya, dan ubah nilainya menjadi no.

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Langkah selanjutnya adalah menambahkan baris berikut ke bagian bawah file.

AuthenticationMethods publickey,keyboard-interactive

Simpan dan tutup file dengan menekan CTRL+ X. Sekarang kami telah mengonfigurasi server SSH untuk menggunakan Google Authenticator, saatnya untuk memulainya kembali.

sudo service ssh restart

Coba masuk kembali ke server. Kali ini Anda akan diminta kode Authenticator Anda.

ssh user@serverip

Authenticated with partial success.
Verification code:

Masukkan kode yang dihasilkan aplikasi Anda dan Anda akan berhasil login.

Catatan

Jika Anda kehilangan ponsel, gunakan kode cadangan dari Langkah 2. Jika Anda kehilangan kode cadangan, Anda selalu dapat menemukannya di .google_authenticatorfile di bawah direktori home pengguna setelah Anda login melalui konsol Vultr.

Kesimpulan

Memiliki otentikasi dua faktor sangat meningkatkan keamanan server Anda dan memungkinkan Anda untuk membantu menggagalkan serangan brute force yang umum.



Leave a Comment

Siapkan Berbagi NFS di Debian

Siapkan Berbagi NFS di Debian

NFS adalah sistem file berbasis jaringan yang memungkinkan komputer untuk mengakses file di seluruh jaringan komputer. Panduan ini menjelaskan bagaimana Anda dapat mengekspos folder melalui NF

Menggunakan Tampilan MySQL pada Debian 7

Menggunakan Tampilan MySQL pada Debian 7

Pendahuluan MySQL memiliki fitur hebat yang dikenal sebagai tampilan. Tampilan adalah kueri yang disimpan. Pikirkan mereka sebagai alias untuk permintaan yang panjang. Dalam panduan ini,

Cara Memasang Thelia 2.3 pada Debian 9

Cara Memasang Thelia 2.3 pada Debian 9

Menggunakan Sistem yang Berbeda? Thelia adalah alat sumber terbuka untuk membuat situs web e-bisnis dan mengelola konten online yang ditulis dalam PHP. Kode sumber thelia i

Menyiapkan Chroot di Debian

Menyiapkan Chroot di Debian

Artikel ini akan mengajarkan Anda cara mengatur chroot jail di Debian. Saya berasumsi bahwa Anda menggunakan Debian 7.x. Jika Anda menjalankan Debian 6 atau 8, ini mungkin berhasil, bu

Cara Memasang PiVPN pada Debian

Cara Memasang PiVPN pada Debian

Pendahuluan Cara mudah untuk menyiapkan server VPN pada Debian adalah dengan PiVPN. PiVPN adalah penginstal dan pembungkus untuk OpenVPN. Ini menciptakan perintah sederhana untuk Anda

Instal Nginx, Wordpress, dan Mari Mengenkripsi dalam Menit dengan EasyEngine di Debian 8 atau Ubuntu 16.04

Instal Nginx, Wordpress, dan Mari Mengenkripsi dalam Menit dengan EasyEngine di Debian 8 atau Ubuntu 16.04

EasyEngine (ee) adalah alat Python yang memungkinkan Anda untuk mengelola situs Wordpress di Nginx dengan mudah dan otomatis. Menggunakan EasyEngine, Anda tidak perlu dea

Cara Memasang BlogoText CMS pada Debian 9 LAMP VPS

Cara Memasang BlogoText CMS pada Debian 9 LAMP VPS

Menggunakan Sistem yang Berbeda? BlogoText CMS adalah Content Management System (CMS) yang sederhana dan ringan, gratis, dan engine blog minimalis

Cara Memasang InvoicePlane di Debian 9

Cara Memasang InvoicePlane di Debian 9

Menggunakan Sistem yang Berbeda? InvoicePlane adalah aplikasi faktur sumber terbuka dan gratis. Kode sumbernya dapat ditemukan di repositori Github ini. Panduan ini

Cara Memasang Backdrop CMS 1.8.0 pada Debian 9 LAMP VPS

Cara Memasang Backdrop CMS 1.8.0 pada Debian 9 LAMP VPS

Menggunakan Sistem yang Berbeda? Backdrop CMS 1.8.0 adalah Content Management System (CMS) yang sederhana dan fleksibel, ramah seluler, gratis dan terbuka yang memungkinkan kami

Cara Memasang BookStack pada Debian 9

Cara Memasang BookStack pada Debian 9

Menggunakan Sistem yang Berbeda? BookStack adalah platform sederhana, self-host, mudah digunakan untuk mengatur dan menyimpan informasi. BookStack sepenuhnya gratis dan terbuka

Cara Memasang Pagekit 1.0 CMS pada Debian 9 LAMP VPS

Cara Memasang Pagekit 1.0 CMS pada Debian 9 LAMP VPS

Menggunakan Sistem yang Berbeda? Pagekit 1.0 CMS adalah Content Management System (CMS) yang indah, modular, dapat diperpanjang dan ringan, dengan

Alat Pemantauan Yang Lebih Baik Untuk Ubuntu Dan CentOS

Alat Pemantauan Yang Lebih Baik Untuk Ubuntu Dan CentOS

Pendahuluan Sistem Linux dilengkapi dengan alat pemantauan secara default seperti top, df, dan du yang membantu memonitor proses dan ruang disk. Namun sering kali, mereka ar

Pantau Status Server Debian dengan Munin

Pantau Status Server Debian dengan Munin

Munin adalah alat pemantauan untuk mensurvei proses dan sumber daya di mesin Anda dan menyajikan informasi dalam grafik melalui antarmuka web. Gunakan tindak lanjutnya

Cara Mengaktifkan TLS 1.3 di Apache pada Debian 10

Cara Mengaktifkan TLS 1.3 di Apache pada Debian 10

Menggunakan Sistem yang Berbeda? TLS 1.3 adalah versi protokol Transport Layer Security (TLS) yang diterbitkan pada 2018 sebagai standar yang diusulkan dalam RFC 8446

Cara Memasang PyroCMS di Debian 9

Cara Memasang PyroCMS di Debian 9

Menggunakan Sistem yang Berbeda? PyroCMS adalah CMS open source yang ditulis dalam PHP. Kode sumber PyroCMS dihosting di GitHub. Dalam panduan ini berjalan dengan baik melalui keseluruhan

Cara Memasang Redaxscript 3.2 CMS pada VPS Debian 9 LAMP

Cara Memasang Redaxscript 3.2 CMS pada VPS Debian 9 LAMP

Menggunakan Sistem yang Berbeda? Redaxscript 3.2 CMS adalah Content Management System (CMS) yang modern dan sangat ringan, gratis dan open source dengan roket

Tambahkan Kisaran Alamat IP ke Server Anda (CentOS / Ubuntu / Debian)

Tambahkan Kisaran Alamat IP ke Server Anda (CentOS / Ubuntu / Debian)

Pendahuluan Dalam tutorial ini, kita akan membahas proses menambahkan seluruh rentang IP / subnet ke server Linux yang menjalankan CentOS, Debian, atau Ubuntu. Prosesnya

Menyiapkan Counter Strike: Sumber di Debian

Menyiapkan Counter Strike: Sumber di Debian

Dalam panduan ini, kami akan menyiapkan Counter Strike: Server game sumber pada Debian 7. Perintah ini diuji pada Debian 7 tetapi perintah itu juga harus berfungsi

Instal PBX dalam Flash 5 pada Debian 8

Instal PBX dalam Flash 5 pada Debian 8

PBX In A Flash 5 (PIAF5) adalah sistem operasi berbasis Debian 8 yang mengubah Vultr VPS Anda menjadi PBX yang lengkap. Ia memiliki fitur berikut, dan banyak lagi.

Cara Memasang Dolibarr di Debian 9

Cara Memasang Dolibarr di Debian 9

Menggunakan Sistem yang Berbeda? Dolibarr adalah perencanaan sumber daya perusahaan sumber terbuka (ERP) dan manajemen hubungan pelanggan (CRM) untuk bisnis. Dolibarr

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Pelajari langkah-langkah untuk memasang Panel Kontrol Hosting Mudah (EHCP) di Ubuntu 16.04 dengan panduan ini.

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.