Selamlar Millet bu yazımda sizlere PFSense üzerinden yapmış olduğunuz VPN bağlantılarınızı daha güçlü hale getirebilmek için FreeRadius ve Google Authenticator ile 2 Factor Authentication yapacağız arkadaşlar.
Ilk olarak OpenVPN kurmuş olmalı ve kullanıcılarınızı sisteminize bağlıyor olabilmelisiniz bunun için PFSense Open VPN Kurulumu 1 yazıma ve PFSense Open VPN Kurulumu 2 yazıma tıklayarak buradaki ayarlamaları yapmanız gerekiyor.
Sonrasında ise PFSense login olun ve aşağıdaki adımları takip edin.
– İlk olarak FreeRadius3 yükleyeceğiz :

System > Package Manager > Available Packages kısmına gitmelisiniz ve freeradius3 yazar aratmalısınız, ardından çıkan programa install demelisiniz. Yukarıdaki ekran görüntüsü benim yüklemiş olduğum programlarımı gösterir.
-FreeRadius ayarlamaları :

Services > FreeRADIUS > Settings yolu izlenir .

Mobile-One-Time-Password Configuration alanına gidilir;
Mobile-One-Time Password : enable
OTP Lifetime : 2
Number of invalid Password Attempts : 5
Hash Algorithm : MD5
Token Password Lenght : 1-6
Olarak ayarlanır ve Save ile kayıt edilir.

Yükleme işlemi tamamlandıktan sonra Services > FreeRADIUS > Interfaces yolunu izlemelisiniz. Daha sonra Add tuşunu kullanarak iki adet interface ekleyeceğiz.
Interfaces IP Address : *
Port : 1812
Interface Type : Authentication
IP Version : Ipv4
Description : Authentication Port
Interfaces IP Address : *
Port : 1813
Interface Type : Accounting
IP Version : Ipv4
Description : Accounting Port
Olacak şekilde yapılandırıp kaydetmelisiniz.

Daha sonra aynı alanda NAS / Clients kısmına gelmeli ve Add tuşuna basarak Client IP Address eklemelisiniz.
Açılan sayfada aşağıdaki alanları bulup aynı şekilde doldurun.
Client IP Address : 127.0.0.1
Client IP Version : Ipv4
Client Shortname : openvpnRadius
Client Shared Secret : sis123., (Bu kısımda yazdığınız password bilgisini aklınızdan çıkartmayın.)
Diğer alanlara dokunmadan Save ile kaydedebilirsiniz.

Şimdi geldi sıra kullanıcı oluşturmaya. Services > FreeRADIUS > Users yolunu izledik ve Add butonuna tıkladık.

General Configuration alanında;
Username : Kullanıcı adınız
Password : OTP olacağı için boş bırakılmalı
Password Encryption : Cleartext-Password olarak seçiniz. (Bu alan muhtemelen geçersiz :D)

One-Time Password Configuration alanında ise;
One-Time Password alanında bulunan kutuyu işaretleyerek Enable ediyoruz.
OTP Auth Method : Google-Authenticator
Init-Secret : alanında ise Generate OTP Secret tuşuna basıyoruz ve bu alanı not alıyoruz.
PIN : bu kısımda ise OTP’den aldığımız kodu girmeden önce vereceğimiz PIN’i giriyoruz. Kullanıcı girişinde anlatacağım ama bu kısımda girilen PIN, VPN login öncesinde de kullanılacak.
QR Code : alanında ise Generate QR Code tuşuna tıklıyoruz ve çıkan kodu telefonunuzda bulunan Google Authenticator programından okutup ekliyorsunuz.
Sonrasında ise herhangi bir değişiklik yapmadan en aşağıya iniyor ve Save tuşuna basıyorsunuz.
– Authentication Server Ayarlama :

Bunun için System > User Manager > Authentication Servers yolu izlenir ve Add tuşuna basılır.

Descriptive name : Auth Radius
Type : RADIUS
Protocol : PAP
Hostname or IP address : 127.0.0.1
Shared Secret : Radius için verdiğiniz yukarıdaki şifre
Services offered : Authentication and Accounting
Authentication port : 1812
Accounting port : 1813
Authentication Timeout : 5
RADIUS NAS IP Attribute : LAN olarak seçiyorsunuz ve Save tuşuna basıyorsunuz.
– OpenVPN ayarlarında yapılan değişiklikler :

Bu ayarı yaptığınızda VPN kullanıcı ve şifre sorarken Google Authenticator’uda işin içine sokmuş olacağız.
VPN > OpenVPN > Servers yolunu izliyoruz ve VPN bağlantısı yaptırdığımız Interface’in yanında bulunan kalem işaretine tıklıyoruz.

Daha sonra Mode Configuration alanına iniyoruz ve
Server Mode : Remote Access (User Auth)
Backend for authentication : Auth Radius yani kendi oluşturmuş olduğumuz Radius Authentication Server’ımızı seçiyoruz.
Ardından en alt kısma gidip Save tuşu ile kayıt ediyoruz.
– Oluşturulan yeni OpenVPN sertifikasını indirmeliyiz :

OpenVPN > Client Export Utility alanına gidiyoruz.

Daha sonra sayfanın en alt kısmına iniyoruz ve OpenVPN Clients alanını bulup Export kısmındaki Inline Configuration alanından Most Clients kısmına basarak yeni sertifikamızı indirip, Client PC’mizde bulunan C:\Program Files\OpenVPN\config yola atıyoruz.
Bundan sonrasında arkadaşlar OpenVPN bağlantısını açabilir ve yeni Sertifika ile bağlanabilirsiniz.
Kullanıcı adı yerine belirlediğiniz adı girdikten sonra Şifre alanına ise Kullanıcı oluşturulma ekranında olan PIN + Google Authenticator Password girilmeli ve bağlantı sağlanmalı.
– Servis, Bağlantı ve Kullanıcıları test etmek için ise aşağıdaki adımları kullanabilirsiniz ;

Diagnostics > Authentication yolunu izleyerek Authentication Server alanından Radius’u seçerek kullanıcılarınızı PFSense içerisinden test edebilirsiniz.

Status > Services yolunu izleyerek FreeRADIUS Server’ın çalışıp çalışmadığını kontrol edebilirsiniz.

Status > OpenVPN alanından hangi kullanıcıların bağlı olduğunu kontrol edebilirsiniz.
Bir yazımın daha sonuna geldim arkadaşlar umarım sizler için yararlı olmuştur. Bana destek olmak isterseniz Instagram, YouTube ve Tiktok içerisinde sistemdostu yazıp beni bulabilir ve takip edebilirsiniz. Ayrıca sosyal medya üzerinde de farklı bilgileri vermeye çalışıyorum. Sorularınız, görüşleriniz, yorumlarınız olursada her yerden bana bunları iletin. Herkese kolay gelsin.