GoogleAuthenticator ile 2 Adımlı Doğrulamaya Geçmek

Google’ın Google Authenticator (GA) isimli uygulaması kimlik doğrulama işlemleri için zamana bağımlı tek seferlik kodlar üretir. Bu başlıkta Raspberry Pi’ın SSH oturumu için 2 adımlı doğrulamayı etkinleştireceğiz ve bunun için Google Authenticator uygulamasını kullanacağız. GA’ı Raspberry Pi üzerinde etkinleştirdiğimizde pi kullanıcısının parolasına ek olarak 30 sn.’liğine geçerli olan tek kullanımlık kodu da girmemizi isteyecek. Bu kodu ise telefonumuza kuracağımız GA uygulaması üretecek. Bu senaryonun bazı avantajları vardır. İlki her seferinde değişen bir parolaya sahip olacağız diğeri de uzun parolaları hatırlamak zorunda kalmadan fazladan bir güvenlik sağlamış olacağız. Özetle, Raspberry Pi’ın güvenliğini artırırken kolay bir oturum açma özelliğine sahip olacağız. Özellikle çok sayıda Raspberry Pi’a ya da Linux sisteme sahipseniz bu uygulama işinizi oldukça kolaylaştıracaktır. Aşağıda GA uygulanmış bir SSH oturum açma ekranın görüntüsü yer alıyor.

GA zaman bağımlı kod ürettiği için Raspberry Pi’ın doğru tarih ve zaman sahip olduğundan emin olmalıyız. Tarih ve saati kontrol etmek için date komutunu kullanabilirsiniz. Eğer tarih ve saat doğru değilse kitabın ilk konularında anlatılan raspi-config aracı ile TimeZone (Zaman Bölgesi) ayarını Istanbul olarak ayarlamalısınız. Aksi takdirde GA’ın ürettiği kodlar ile giriş yapamazsınız. Öncelikle aşağıdaki gibi libpam-google-authenticator paketini yükleyin.

Ardından GA yapılandırmamızı gerçekleştirmek için google-authenticator aracını aşağıdaki gibi çalıştırın.

GA aracı konsol ekranında bir kare kod üretecek ve bunu cep telefonunuza kurduğunuz GA uygulaması ile taratmanızı isteyecek. Telefonunuzdaki GA uygulamasını çalıştırarak + simgesine tıklatın ve kare kodu taratın. GA aracı kare kod yanında acil durumlarda (Verification code giremediğiniz zamanlarda) kullanımız için bir secret key (özel anahtar) ve 5 adet acil durum kodu üretecek. Bunları ileride lazım olması ihtimaline karşı güvenli bir yere kaydedin. GA sizden bazı sorulara cevap vermenizi isteyecek. Bunların açıklamaları şöyledir:

  • Tüm GA yapılandırmasının /home/pi/.google_authenticator dosyasına kaydedilmesini onaylayın.
  • 30 sn.’liğine üretilen kodun süresi içinde ikinci kez kullanılmasını engellemek istiyor musunuz? Bunu evet (y) olarak cevaplarsanız kodun MITM saldırısı ile çalınarak tekrar kullanılmasını engelleyebilirsiniz. Bu soruya “y” cevabını verin.
  • 4 dakikaya kadar zaman senkronizasyonu sorunlarının tolere edilmesini istiyor musunuz? Bu ayar ile cep telefonunuz ile Raspberry Pi’ın tarih zamanı arasında 4 dk.’ya kadar fark olduğu durumlarda başarı ile giriş yapabileceksiniz. Bu seçenek özellikle ağ sorunlarına bağlı olarak NTP servisinin sistem zamanını hassas olarak güncelleyemediği durumlarda işe yarar. “y” cevabını vererek bu zaman esnekliğinden yararlanabilirsiniz.
  • 30 sn.’lik süre içinde 3’den fazla kod girişini sınırlandırmak istiyor musunuz? Bu soruya da “y” cevabını vererek güvenlik düzeyinizi artırabilirsiniz. Böylece 30 sn. içinde üçten fazla kod giriş yapılamayacak.

GA ayarlarını tamamladıktan sonra /etc/pam.d/sshd dosyasının başına auth required pam_google_authenticator.so satırını ekleyin.

Ardından /etc/ssh/sshd_config dosyasını nano ile açarak ChallengeResponseAuthentication seçeneğinin değerini yes olarak ayarlayın.

Yaptığımız tüm yapılandırmanın geçerli olabilmesi için ssh hizmetinin yeniden başlatın. Tüm işlemler bu kadar. Artık yeni bir oturum açarak pi kullanıcısının parolasına ek olarak GA uygulamasının ürettiği tek kullanımlık kodu girerek oturum açabilirsiniz.

Yazar: Özgür Koca

Yazar - Tankado.com

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.