Site Overlay

PfSense’te GUI erişimi için 2FA nasıl yapılandırılır

PfSense’te GUI erişimi için 2FA nasıl yapılandırılır

pfSense'te 2FA GUI erişimini yapılandırın

pfSense çok güçlü, açık kaynak tabanlı bir yönlendirici / güvenlik duvarı ve kutudan çıkar çıkmaz güvenliğe yöneliktir. Ancak bu, biraz sertleştirilemeyeceği anlamına gelmez. Bir yönlendirici / güvenlik duvarı olan pfSense, ağınızın trafiğini “görmek” için ayrıcalıklı bir konumdadır. Bu nedenle, pfSense kutunuza erişimi güvence altına almak kritik öneme sahip olacaktır. Her zamanki tavsiye elbette burada geçerli olacaktır:

  • pfSense GUI’ye erişmek için root olmayan bir kullanıcı oluşturun
  • Bu hesabı korumak için güçlü bir parola kullanın

Ama bu sadece başlangıç. GUI erişimi için iki faktörlü kimlik doğrulama ile pfSense kutunuza erişimi daha da güvenli hale getirebilirsiniz. Bu yazıda, GUI erişimi için pfSense iki faktörlü kimlik doğrulamanın nasıl kurulacağını açıklıyoruz.

Not: pfSense’in geliştirilmesinin arkasındaki şirket olan Netgate, kısa süre önce projenin iki çatalını üretmeye başladı:

  • pfSense CE
  • pfSense Artı

Community Edition anlamına gelen pfSense CE, pfSense’in tamamen açık kaynaklı sürümüdür. pfSense Plus açık kaynak tabanlıdır ancak tescilli kod kullanılarak eklenen ekstra özelliklere sahiptir. Her ikisi de bireysel kullanıcılar için ücretsiz olsa da, bu kılavuzda pfSense CE kullanacağız.

Bu kılavuz, önceden kurulmuş bir WAN ve LAN arabirimi ile çalışan bir pfSense yapılandırmanız olduğunu varsayar.

pfSense - CP - Kontrol Paneli

2FA nedir?

2FA veya iki faktörlü kimlik doğrulama, kimlik doğrulama için ikinci bir faktör gerektirirken parolanızı kullanan bir kimlik doğrulama şemasıdır. İkinci faktör genellikle dinamik olarak oluşturulan tek seferlik bir paroladır. Size kısa mesajla gönderilebilir, ancak daha iyi (ve daha güvenli) bir yol, sizin için dinamik olarak tek seferlik parolalar oluşturan bir kimlik doğrulama uygulaması kullanmaktır. 2FA’nın kimlik doğrulama için temel mantrası, bildiğiniz bir şeyi (şifrenizi) sahip olduğunuz bir şeyle (telefonunuz, kimlik doğrulama uygulamanız) kullanmaktır.

Günümüzde çoğu olmasa da birçok hizmet sağlayıcı 2FA’yı destekliyor ve muhtemelen bunu bazı hesaplarınızda zaten kullanıyorsunuz. Özellikle kurumsal bir ortamda pfSense GUI erişimini 2FA ile kilitlemek mantıklıdır.

Başlayalım. Yapmamız gereken ilk şey, pfSense’in yazılım deposundan FreeRADIUS paketini yüklemek.

FreeRADIUS’u Yükleme

FreeRADIUS, ağa bağlanan kullanıcılara kimlik doğrulama, yetkilendirme ve hesap oluşturma sağlayan Arayan Kullanıcının Uzaktan Kimliğini Doğrulama Hizmeti (RADIUS) protokolünün açık kaynaklı bir uygulamasıdır.

pfSense’in 2FA uygulaması, kimlik doğrulama için FreeRADIUS’a dayanır, bu nedenle ilk adımımız paketi kurmak olacaktır.

  1. Üst menülerden Sistem > Paket Yöneticisi’ni seçin. Yüklü Paketler sayfası görüntülenir.
  2. Kullanılabilir Paketler sayfasına gidin.
  3. freeradius3’ü görene kadar sayfayı aşağı kaydırın ve Yükle’ye tıklayın. Package Installer (Paket Yükleyici) penceresi görüntülenir.
  4. Yüklemeyi başlatmak için Onayla’ya tıklayın.
  5. Yükleme tamamlandıktan sonra, Paket Yükleme penceresinin altında Başarılı görüntülendiğini görmeniz gerekir. FreeRADIUS’u başarıyla yükledik.

FreeRADIUS’u Yapılandırma

Şimdi FreeRADIUS’u iki faktörlü kimlik doğrulama için yapılandıracağız.

Tek seferlik parola desteğini etkinleştirme

  1. Üst menülerden Hizmetler > FreeRADIUS’u seçin. FreeRADIUS’un ana yapılandırma sayfasına yönlendirilirsiniz.
  2. Ayarlar sekmesine tıklayın ve Mobil Tek Seferlik Şifre Yapılandırması bölümünü görene kadar sayfayı aşağı kaydırın.
  3. Enable Mobile-One-Time Password Support (Mobil Tek Seferlik Şifre Desteğini Etkinleştir) kutusunu işaretleyin.
  4. Karma algoritmayı SHA256 olarak ayarlayın.

Dinleyici bağlantı noktası oluşturma

FreeRADIUS’ta tek seferlik parola desteğini etkinleştirdiğimize göre, kimlik doğrulama isteklerini dinleyecek şekilde yapılandırmamız gerekiyor.

  1. FreeRADIUS üst menülerinden Interfaces (Arayüzler) sekmesini seçin. Arayüzler sayfası görüntülenir.
  2. Click Add. The Interfaces General Configuration page is displayed.
  3. Leave all the settings at the default values, add a description if you like, and click Save. This configuration will have FreeRADIUS listening on all interfaces on your system.
  4. You’re taken back to the Interfaces main page, which should look like this:

Adding a NAS/Client

FreeRADIUS will only accept authentication requests from clients it “knows.” So we need to define the pfSense box itself as a FreeRADIUS client.

  1. Go to the NAS/Clients tab of the FreeRADIUS settings. The NAS/Clients main settings page is displayed.
  2. Click Add. The NAS/Clients General Configuration page is displayed.
  3. Enter 127.0.0.1 in the Client IP Address field.
  4. Select IPv4 from the Client IP Version drop-down menu.
  5. Enter a Client Shared Secret. The client shared secret is used for secured communication between the FreeRADIUS server and the NAS/Client. It should be a long, complex string of letters, numbers, and symbols. FreeRADIUS supports shared secrets of up to 31 characters in length.
  6. Click Save.
  7. You’re taken back to the main NAS/Clients settings page, which should look like this:

Creating a 2FA user

The next step is to create a FreeRADIUS user that can authenticate using 2FA with FreeRADIUS.

  1. From the FreeRADIUS main settings page, select the Users tab. The main Users settings page is displayed.
  2. Click Add. The Users main settings page is displayed.
  3. In the General Configuration section, enter a name for the new user. We’re using 2FAUser in our example.
  4. Scroll down the page to find the One-Time Password Configuration section.
  5. Tick the Enable One-Time Password (OTP) for this user box.
  6. From the OTP Auth Method drop-down menu, select Google Authenticator. We will be using the Google Authenticator app to generate our one-time passwords. Other clients are available for both iOS and Android, but for simplicity’s sake, we’ll be using Google Authenticator in our example. The app does not require you to have a Google account, nor does it require an internet connection. Using the app does not give Google any visibility into your activities or your one-time passwords. But, by all means, feel free to use one of the many alternatives.
  7. Click the Generate OTP Secret button to generate an OTP secret, displayed in the Init-Secret field above.
  8. Click the Show OTP PIN button to be able to see the OTP PIN you enter in the PIN field above. The OTP PIN is considered your user password. And it will be used alongside the OTP to authenticate and log into the pfSense GUI. Your OTP PIN must consist of 4 to 6 numbers. In our example, we’re using 123456, which I don’t recommend using in a real-world scenario.
  9. Click the Generate QR Code button to generate a QR code that we’ll be able to scan with our camera when we configure Google Authenticator in the next step, and click Save at the bottom of the page.

Google Authenticator’ı Yapılandırma

Google Authenticator’ı telefonunuza indirdikten sonra, yapılandırmak basittir.

  1. Uygulamayı başlatın.
  2. Kod ekle düğmesine veya kullanıcı arabiriminin sağ alt kısmındaki + işaretine tıklayın. Kameranızla bir QR kodu taramanız veya kurulum anahtarını manuel olarak girmeniz istenir.
  3. QR kodu tara’yı seçin. Telefonunuzun kamerası açılır. Önceki adımda oluşturduğumuz QR kodunu tarayın.
  4. Bu kadar. Google Authenticator artık yapılandırılmıştır ve her 30 saniyede bir dinamik olarak tek seferlik şifreler oluşturacaktır.

FreeRADIUS’u pfSense kimlik doğrulama kaynağı olarak ekleme

Varsayılan olarak, pfSense’in kimlik doğrulaması için kullandığı yerel bir veritabanı vardır. PfSense GUI erişimi için 2FA kullanmak için FreeRADIUS sunucumuzu bir kimlik doğrulama kaynağı olarak ayarlamamız gerekir.

  1. Üst menülerden Sistem > Kullanıcı Yöneticisi’ni seçin. Kullanıcı Yöneticisi ayarlarının Kullanıcılar sayfasına yönlendirilirsiniz.
  2. Select the Authentication Servers tab. You’re taken to the Authentication Servers main settings page.
  3. Click Add. The Authentication Servers configuration page is displayed.
  4. Enter a name for your FreeRADIUS authentication server in the Descriptive name field.
  5. From the Type drop-down menu, select RADIUS.
  6. Under RADIUS Server Settings, select PAP from the Protocol drop-down menu.
  7. Enter 127.0.0.1 in the Hostname or IP address field.
  8. Enter the shared secret you created earlier in the Shared Secret field.
  9. Select Authentication from the Services offered drop-down menu.
  10. Select LAN – <your LAN ip address> from the RADIUS NAS IP Attribute drop-down menu.
  11. Click Save.

Testing our basic FreeRADIUS configuration

Now that our basic configuration is complete, let’s test FreeRADIUS to make sure everything is working.

  1. From the top menus, select Diagnostics > Authentication. This brings up the Authentication Test page.
  2. Select FreeRADIUS from the Authentication Server drop-down menu.
  3. Enter your FreeRADUIS user’s username in the Username field. This is 2FAUser in our example.
  4. Enter your OTP PIN and your Google Authenticator OTP as the password. I set my PIN to 123456, and Google Authenticator is giving me 942 244 as the OTP, so I would enter 123456942244 in the password field.
  5. Click Test.
  6. If the test was successful, you should see User <your 2FA username> authenticated successfully at the top of the page.

Configuring pfSense to use FreeRADIUS to authenticate users for GUI access

Now that our FreeRADIUS server is configured and working with our Google Authenticator app, we need to tell pfSense to use FreeRADIUS to authenticate users for GUI access.

  1. From the top menus, select System > User Manager. The User Manager main settings page is displayed.          
  2. Select the Settings tab. The Authentication Settings page is displayed.
  3. From the Authentication Server drop-down menu, select FreeRADIUS and click Save.
  4. Select the Users tab.The Users main settings page is displayed.
  5. Click Add. The New User Settings page is displayed. The New User Settings page is displayed. We need to make pfSense aware that we want our FreeRADIUS user to have access to the pfSense GUI.
  6. Enter your FreeRADIUS user’s username in the Username field.
  7. Enter your FreeRADIUS user’s PIN (configured on the FreeRADIUS Users page) in the Password field –  without the OTP from Google Authenticator.
  8. Click Save.
  9. You’re taken back to the Users main settings page. Click the pencil icon next to our FreeRADIUS user. We’re taken back to that user’s configuration page.
  10. Click the Add button in the Effective Privileges section. The User Privileges page is displayed.
  11. Atanan ayrıcalıklar kutusundan WebCfg – Tüm sayfalar’ı seçin. FreeRADIUS kullanıcımıza pfSense GUI’nin tüm bölümlerine erişim izni veriyoruz. İsterseniz daha kısıtlayıcı bir kurulum için yalnızca belirli sayfalara erişim izni vermeyi seçebilirsiniz.
  12. Kaydet’i tıklayın.
  13. Kullanıcı Yapılandırması sayfası görüntülenir ve kullanıcımızın atanmış ayrıcalıklarını görebiliriz. Sayfanın alt kısmındaki tekrar Kaydet’i tıklayın.
  14. Kullanıcılar ana ayarları sayfasına geri dönersiniz.

pfSense GUI erişimi için kurulumumuzu test etme

Kurulumumuzu test etmek için pfSense’ten çıkış yapacağız ve yeni FreeRADIUS 2FA kullanıcımızı kullanarak tekrar giriş yapacağız.

  1. pfSense GUI’den çıkış yapmak için kullanıcı arayüzünün sağ üst köşesindeki ok simgesine tıklayın. Kimlik doğrulama ve GUI erişimi için 2FA kurulumumuzu test edeceğiz.
  2. Oturumu kapattıktan sonra, 2FA kullanıcı kimlik bilgilerinizi girin: kullanıcı adınız ve şifre olarak PIN + OTP’niz. GİRİŞ YAP düğmesine tıklayın ve pfSense’in kontrol paneli sayfasına geri dönmeli ve FreeRADIUS 2FA kullanıcınız olarak oturum açmalısınız.

Tek seferlik şifrenizle ilgili herhangi bir sorununuz varsa (yani, telefonunuz yoksa, uygulama çalışmıyor vb.), pfSense’in yönetici kullanıcıya geri döndüğünü ve böylece kilitlenmeyeceğinizi unutmayın (bu nedenle o kullanıcıyı silmeyin).

Sarmak

pfSense’i FreeRADIUS kullanarak GUI erişimi için 2FA kullanacak şekilde yapılandırdık. Ağınızın kalbine erişim artık iki faktörlü kimlik doğrulama ile kilitlendi. Bu noktadan itibaren, pfSense’e giriş yapmak için bildiğiniz bir şeye (şifreniz/PIN’iniz) ve sahip olduğunuz bir şeye (OTP üretimi için telefonunuz) ihtiyacınız olacak.

2FA, örneğin OpenVPN bağlantıları gibi pfSense’in diğer alanlarında yapılandırılabilir. Bu, mevcut eğitimin kapsamı dışındadır, ancak belki de bu konuyu gelecekteki bir gönderide ziyaret edebiliriz. O zamana kadar, kullandığınız ve onu destekleyen tüm hizmetlerde 2FA kurmanızı tavsiye ederim. 2FA, hesaplarınızı güvence altına almak için uzun bir yol kat eder.

  1. Bugün bir felaket yaşasak aldığımız backup güvende olacak mı? Geri dönebilecek miyiz?

a. Hayır, yönetimden bütçe alamadığımız için aldığımız backup kullandığımız teknoloji nedeniyle siber saldırıdan etkilenebilir, şifrelenebilir bu verilere tekrar erişebilmek için fidye ödemek zorunda kalabiliriz.

b. Evet, IT ekibi olarak yönetimden onay aldığımız bütçe ile satın aldığımız teknoloji sayesinde alınan backup ransomeware saldırılarına karşı korumalı bir katmanda yedeklenecek bir teknoloji üzerinde bulunmaktadır. Bu katmana erişim için ayrıca iki aşamalı kimlik doğrulaması gerekmektedir.

Bu makalede şirketlerin Backup Policy oluştururken öncelik vermesi gereken hususlardan bahsedilmiştir.

Kaynak:
PfSense’te GUI erişimi için 2FA nasıl yapılandırılır (comparitech.com)


Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı
Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı

Arif Akyüz
Bilgi Teknolojileri
Sistem Network Yöneticisi
ve Siber Güvenlik Uzmanı
[email protected]

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors