FreeRADIUS Kurulumu: Ubuntu'da Adım Adım
Ubuntu üzerinde FreeRADIUS ile adım adım kurulum: paket kurulumu, istemci ve kullanıcı tanımı, radtest ile doğrulama ve paket düzeyinde yakalama.
- FreeRADIUS Kurulumu: Paketler ve İlk Servis
- İstemci ve Kullanıcı: clients.conf ve users
- İlk Test: radtest ile Access-Accept
- Ne Konuşuluyor? Paketi Yakalayıp Açmak
- 802.1X ve EAP: Sertifika, Tünel ve Access-Challenge
- Sunucu Sertifikasını Üretmek
- Access-Challenge: Tek Turda Bitmeyen Konuşma
- Gerçek 802.1X: Korumanın Nerede Olduğu
- İleri Adımlar: Web Yönetimi ve Active Directory
- Web Yönetimi: daloRADIUS
- Active Directory Entegrasyonu
- Sonuç
- FreeRADIUS Kurulumu Hakkında Sık Sorulan Sorular
FreeRADIUS, Linux üzerinde çalışan açık kaynaklı bir RADIUS sunucusudur ve kurumsal ağa giriş kararını tek bir merkeze taşır. Bu rehberde Ubuntu üzerine sıfırdan bir FreeRADIUS sunucusu kurar, bir test kullanıcısı tanımlar, ilk kimlik doğrulamayı radtest ile doğrular ve arka planda ne konuşulduğunu paket düzeyinde izleriz. Sonunda çalışan, sınanmış bir RADIUS sunucunuz olur.
RADIUS’un ne olduğunu, dört mesajlık akışını ve 802.1X ile ilişkisini ayrı bir yazıda ele aldık: burada kavramı tekrar etmeyip doğrudan kuruluma giriyoruz. Protokolün kendisini merak ediyorsanız önce RADIUS sunucusu nedir rehberimize göz atın. Bu makale kurumsal network kurulumu hizmetimizin ağa giriş katmanının pratik, elimizi kirlettiğimiz tarafıdır.
Aşağıdaki adımların tamamını gerçek bir Ubuntu 24.04 sunucusunda çalıştırdım; gördüğünüz komut çıktıları o kurulumdan birebir alındı. Sizde de aynı sürümlerle çalışırsanız neredeyse aynı çıktıyı görmeniz gerekir.
FreeRADIUS Kurulumu: Paketler ve İlk Servis
Bu rehber, üzerine FreeRADIUS kuracağınız Ubuntu Server’ı zaten ayağa kaldırdığınızı varsayar. İşletim sistemi kurulumu, disk düzeni ve ilk ağ yapılandırması ayrı bir konudur ve Ubuntu Server kurulum rehberimizde ele alınmaktadır.
FreeRADIUS Ubuntu deposunda hazır paket olarak gelir, derlemeye gerek yoktur. İki paket kuruyoruz: sunucunun kendisi ve test araçları.
sudo apt-get update
sudo apt-get install -y freeradius freeradius-utilsfreeradius sunucu servisini, freeradius-utils ise radtest ve radclient gibi kimlik doğrulamayı elle sınayacağınız araçları getirir. Kurulum bittiğinde servis kendiliğinden başlar. Sürümü ve servis durumunu doğrulayalım:
freeradius -v
systemctl is-active freeradiusradiusd: FreeRADIUS Version 3.2.5, for host x86_64-pc-linux-gnu
activeBu noktada elinizde ayakta duran bir RADIUS sunucusu var, ama henüz hiçbir kullanıcı tanımlı değil ve yalnızca localhost üzerinden konuşabiliyor. Sıradaki iki adım tam olarak bu ikisini çözer.
İstemci ve Kullanıcı: clients.conf ve users
RADIUS’ta iki farklı “kimlik” tanımlanır ve bunlar sürekli karıştırılır: istemci ağdaki cihazdır (switch, erişim noktası), kullanıcı ise ağa girmek isteyen kişidir. İkisi ayrı dosyalarda durur.
İstemci (NAS) tanımı clients.conf dosyasındadır. Varsayılan kurulum, test için localhost’u zaten tanımlı getirir ve ortak parolası (shared secret) testing123’tür:
client localhost {
ipaddr = 127.0.0.1
secret = testing123
}Gerçek bir switch eklerken bu bloğun bir benzerini switch’in IP’si ve kendine özel, uzun bir parolayla oluşturursunuz. Şimdilik localhost ilk testimiz için yeterli.
Kullanıcı tanımı ise users dosyasındadır. Dosya tabanlı bu yöntem, mekaniği görmek için en berrak olanıdır. Bir test kullanıcısı ekleyelim:
testuser Cleartext-Password := "TestParola123"Bu satırı /etc/freeradius/3.0/mods-config/files/authorize dosyasının başına ekleyip servisi yeniden başlatıyoruz:
sudo systemctl restart freeradiusCleartext-Password ifadesi kafa karıştırabilir: parolanın ağda açık dolaşacağı anlamına gelmez, yalnızca sunucunun parolayı karşılaştırmak üzere düz metin olarak sakladığını söyler. Parolanın ağ üzerindeki hali her zaman shared secret ile korunur, birazdan paket düzeyinde göreceğiz.
İlk Test: radtest ile Access-Accept
Kurulumun çalıştığını radtest ile, hiçbir switch’e ihtiyaç duymadan sınayabiliriz. radtest bir istemciyi taklit eder: verdiğiniz kullanıcı adı ve parolayı bir Access-Request paketine koyup sunucuya gönderir, dönen cevabı gösterir.
radtest testuser TestParola123 127.0.0.1 0 testing123Buradaki alanlar sırasıyla: kullanıcı adı, parola, sunucu adresi, NAS port numarası ve shared secret. Doğru parolayla sonuç şudur:
Sent Access-Request Id 156 from 0.0.0.0:42648 to 127.0.0.1:1812 length 78
User-Name = "testuser"
User-Password = "TestParola123"
NAS-IP-Address = 127.0.1.1
NAS-Port = 0
Received Access-Accept Id 156 from 127.0.0.1:1812 to 127.0.0.1:42648 length 38Received Access-Accept: sunucu kimliği kabul etti. Şimdi bilerek yanlış bir parola verip reddedilmeyi görelim, çünkü bir sistemin doğru çalıştığından emin olmak, yanlışı da doğru reddettiğini görmekten geçer:
radtest testuser YanlisParola999 127.0.0.1 0 testing123Received Access-Reject Id 65 from 127.0.0.1:1812 to 127.0.0.1:37349 length 38Kabul için Access-Accept, ret için Access-Reject. Sunucu artık kimlik doğruluyor. Ama ağ üzerinde tam olarak ne gidip geldiğini henüz görmedik, ve RADIUS’un en çok yanlış bilinen tarafı da orada.
Ne Konuşuluyor? Paketi Yakalayıp Açmak
RADIUS’un güvenlik davranışını anlamanın en iyi yolu, bir kimlik doğrulama turunu yakalayıp içine bakmaktır. tcpdump ile 1812 portunu dinlerken bir radtest daha çalıştıralım:
sudo tcpdump -i lo -n "udp port 1812" -w radtest.pcapYakaladığımız turda iki paket görünür: giden Access-Request ve dönen Access-Accept.
IP 127.0.0.1.42648 > 127.0.0.1.1812: RADIUS, Access-Request (1), length: 78
IP 127.0.0.1.1812 > 127.0.0.1.42648: RADIUS, Access-Accept (2), length: 38Asıl mesele paketin içindedir. Aynı yakalamayı tshark ile açıp Access-Request’in alanlarına bakalım:
sudo tshark -r radtest.pcap -O radiusRADIUS Protocol
Code: Access-Request (1)
Attribute Value Pairs
AVP: t=User-Name(1) val=testuser
AVP: t=User-Password(2) val=Encrypted
User-Password (encrypted): 504f2ecbe9e3fe3a777f370faf6aa128
AVP: t=NAS-IP-Address(4) val=127.0.1.1
AVP: t=NAS-Port(5) val=0Burada RADIUS’un en kritik güvenlik gerçeği görünür hale gelir: yalnızca User-Password alanı şifrelidir, o da 16 baytlık okunamaz bir bloktur. Geri kalan her şey açık gider. User-Name alanında kullanıcı adı düz metin olarak (testuser), NAS’ın adresi ve bağlanılan port okunabilir haldedir. Ağı dinleyen biri kimin, nereden bağlandığını görür; yalnızca parolayı göremez.
Bunun iki pratik sonucu var. Birincisi, RADIUS trafiği kullanıcı trafiğiyle aynı yerde dolaşmamalı, yönetim ağında kalmalıdır. İkincisi, kablosuz ve 802.1X senaryolarında parolayı koruyan asıl katman RADIUS’un kendi şifrelemesi değil, üzerine kurulan EAP tünelidir. O katmanı ve gerçek 802.1X kurulumunu bir sonraki bölümde ele alacağız.
802.1X ve EAP: Sertifika, Tünel ve Access-Challenge
Buraya kadar PAP ile çalıştık; parolayı shared secret koruyordu. Kurumsal kablosuz ve kablolu ağlarda ise 802.1X ve EAP devreye girer, parola artık shared secret’a değil bir TLS tüneline emanet edilir. Bu tünel için sunucunun bir sertifikası olmak zorundadır, ilk kuracağımız şey odur.
Sunucu Sertifikasını Üretmek
FreeRADIUS’un EAP modülü varsayılan kurulumda etkin gelir; test için tek eksik sertifikadır. FreeRADIUS bunu üretecek betiği hazır getirir, certs dizininde çalıştırıyoruz:
sudo bash -c "cd /etc/freeradius/3.0/certs && make"Bu komut self-signed bir sertifika otoritesi (CA) ve ona bağlı bir sunucu sertifikası (server.pem) üretir; PEAP’in TLS tünelini bu sertifika kurar. Lab için bu yeterlidir, ama gerçek bir filoda self-signed sertifikanın nerede yetip nerede yetmediği ayrı bir karardır: sertifika otoritesi rehberimize bakın. Diffie-Hellman parametreleri yüzünden üretim birkaç dakika sürebilir. Bittiğinde yapılandırmayı doğrulayıp servisi yeniden başlatıyoruz:
sudo freeradius -XC
sudo systemctl restart freeradiusConfiguration appears to be OK çıktısını görmelisiniz.
Access-Challenge: Tek Turda Bitmeyen Konuşma
EAP ile kimlik doğrulama, PAP’ın aksine tek istek-cevap turunda bitmez. Bunu radeapclient ile bir EAP-MD5 turu çalıştırıp görebiliriz:
printf "User-Name=testuser,Cleartext-Password=TestParola123,EAP-Code=Response,EAP-Type-Identity=testuser\n" | sudo radeapclient -x 127.0.0.1:1812 auth testing123Sent Access-Request Id 35 EAP-Message = 0x02e1000d017465737475736572
Received Access-Challenge Id 35 EAP-Message = 0x01e200160410...
Sent Access-Request Id 111 EAP-Message = 0x02e200160410...
Received Access-Accept Id 111 EAP-Message = 0x03e20004Burada yeni bir mesaj tipi çıkar: Access-Challenge. Sunucu “gönderdiğin yeterli değil, şu meydan okumaya cevap ver” der ve konuşma bir tur daha sürer. Paket düzeyinde akış dört adımdır:
Access-Request (1) → istemci: kimliğim testuser
Access-Challenge (11) → sunucu: şu MD5 meydan okumasına cevap ver
Access-Request (1) → istemci: işte cevabım
Access-Accept (2) → sunucu: kabulGerçek PEAP-MSCHAPv2’de bu tur sayısı çok daha fazladır, çünkü araya bir de TLS tüneli kurulur; ama mantık aynıdır. Bu ayrım teşhiste işe yarar: tek Access-Request’in hemen ardından gelen bir Access-Reject konuşmanın hiç başlamadığını, onlarca Challenge’dan sonra gelen bir Reject ise sertifika ya da politika tarafını işaret eder.
Gerçek 802.1X: Korumanın Nerede Olduğu
Sunucu tarafı artık PEAP’e hazır: sertifika üretildi, EAP modülü çalışıyor. Gerçek bir 802.1X kurulumunda sıradaki adım, switch ya da erişim noktasını bu RADIUS sunucusuna yönlendirmek (NAS olarak clients.conf’a eklemek) ve istemcilerde PEAP profilini tanımlamaktır.
Burada PEAP’in en çok atlanan güvenlik noktası devreye girer: koruma sunucuda değil, istemcinin sunucu sertifikasını doğrulamasındadır. Self-signed bir sertifika kullandığımız için istemciler bu sertifikayı tanımaz ve bağlanırken uyarı verir; üretimde bu yüzden sertifika ya bir kurumsal CA’dan alınır ya da self-signed CA istemcilere güvenilir olarak dağıtılır. İstemcide “sertifikayı doğrulama”yı kapatmak uyarıyı susturur ama korumayı da kaldırır: aynı ağ adını yayınlayan sahte bir erişim noktasına da aynı güvenle bağlanılır. EAP yöntemleri arasındaki farkı ve bu güvenlik ayrımını RADIUS sunucusu nedir rehberimizde ele aldık.
İleri Adımlar: Web Yönetimi ve Active Directory
Buraya kadar dosya tabanlı, komut satırından yönetilen çalışan bir FreeRADIUS sunucusu kurduk. Üretim yolunda iki yönde derinleşir.
Web Yönetimi: daloRADIUS
Komut satırı ve users dosyası küçük ortamlar ile öğrenmek için berraktır, ama kullanıcı sayısı arttıkça bir web arayüzü günlük yönetimi kolaylaştırır. daloRADIUS, FreeRADIUS’a bir yönetim paneli ekler; tek şartı, kullanıcıların dosya yerine bir SQL veritabanında tutulmasıdır, çünkü web arayüzü ile sunucu aynı veritabanını paylaşır. Bir dürüst uyarı: daloRADIUS bir web sunucusu ve PHP demektir, yani ek bir saldırı yüzeyi. Beş kullanıcılık bir ortamda users dosyası zaten yeterlidir; GUI, gerçekten kalabalık bir kullanıcı tabanını yönettiğinizde kazandırır. Bu kurulumu ayrı bir rehberde ele alıyoruz.
Active Directory Entegrasyonu
FreeRADIUS kendi kullanıcı listesini tutmak zorunda değildir; kurumsal ortamda kimliği doğrudan Active Directory’de doğrular, tıpkı Windows tarafındaki NPS gibi. Burada kritik bir incelik var: PEAP-MSCHAPv2 kullanıyorsanız FreeRADIUS’u Samba/winbind ile domain’e katmanız gerekir, LDAP tek başına yetmez. Çünkü MSCHAPv2’nin parolayı taşıma biçimi düz bir LDAP bağlantısıyla doğrulanamaz. Bu entegrasyonu da ayrı bir rehberde adım adım göstereceğiz.
Sonuç
Elinizde artık kurulmuş, sınanmış ve ne konuştuğu paket düzeyinde görülmüş bir RADIUS sunucusu var. Ağ erişim kararını tek merkeze taşımak, paylaşılan parolaları ortadan kaldırmak ve her girişi isimli bir hesaba bağlamak: hepsi bu tek sunucunun sağladığı şeydir. Buradan sonrası ölçeklendirmedir. Gerçek switch’leri NAS olarak eklemek, kullanıcıları Active Directory’ye ya da SQL’e taşımak ve 802.1X’i sahada devreye almak, hep bu çalışan temelin üzerine kurulur. Temeli sağlam attıysanız gerisi eklemedir.
FreeRADIUS Kurulumu Hakkında Sık Sorulan Sorular
Yazan
İlker PehlivanBT Danışmanı | Ağ, Sistem ve Güvenlik Yönetimi
İlker Pehlivan, karmaşık BT altyapılarını ölçeklenebilir ve güvenli sistemlere dönüştüren bir ağ ve sistem mühendisidir. Şirketlere özel teknoloji rehberleri burada.
Benzer Makaleler
Microsoft Entra ID Connect Kurulumu: AD'yi Buluta Bağlama
Microsoft Entra ID Connect kurulumu, UPN senkronizasyonu ve Seamless SSO yapılandırması. Active Directory kullanıcılarını Microsoft 365'e tek kimlikle bağlayan adım adım rehber.
Active Directory GPO Yönetimi: Group Policy Rehberi
Active Directory Group Policy (GPO) yönetimi: GPO nasıl oluşturulur, LSDOU uygulama sırası, sık kullanılan politikalar ve GPO sorun giderme adımları.
Active Directory DNS Yapılandırması: Forwarder ve Zone
Active Directory DNS forwarder, reverse lookup zone, conditional forwarder ve split-brain DNS yapılandırması. Windows Server'da kurulum ve sorun giderme için ekran görüntülü rehber.
Active Directory Kullanıcı, Grup ve OU Yönetimi (AGDLP)
Active Directory'de OU tasarımı, kullanıcı ve grup yönetimi: AGDLP modeli, PowerShell ile toplu kullanıcı oluşturma, yetki devri ve isimlendirme standartları.
Active Directory UPN Suffix Yapılandırması
Active Directory'de alternatif UPN suffix ekleme ve kullanıcı UPN'lerini güncelleme. Mail adresi ile Windows girişini tek kimlikte birleştiren adım adım rehber.
Active Directory Kurulum Rehberi: Windows Server 2025
Windows Server 2025 üzerinde Active Directory kurulumu: ön koşullar, DC promotion, DNS doğrulama, ikinci DC ekleme ve kurulum sonrası sağlık kontrolleri.
Active Directory Rehberi: Mimari, Kurulum ve Yönetim
Active Directory nedir, nasıl kurulur ve yönetilir? FSMO, GPO, replication, güvenlik, yedekleme ve hybrid identity dahil Windows Server'da uçtan uca AD rehberi.
Active Directory Certificate Services (AD CS) Kurulumu
Active Directory Certificate Services kurulumu adım adım: Enterprise Root CA yapılandırması, geri alınamayan kararlar, AIA/CDP ayarı ve kurulum doğrulaması.
Bilgisayarı ve Sunucuyu Domain'e Ekleme: Ön Koşul ve Hatalar
Windows bilgisayar ve sunucuyu domain'e ekleme: DNS, saat ve hostname ön koşulları, Add-Computer, OU yerleşimi, redircmp ve sık görülen katılım hataları.
Hypervisor Nedir? Sanallaştırma Katmanı Nasıl Çalışır
Hypervisor bir işletim sistemine sahte donanım sunar. Tip 1 ve Tip 2 farkı, vCPU ve RAM overcommit, snapshot ile yedek ayrımı ve doğru boyutlandırma.
IIS Nedir? Windows Server'da Kurulum, HTTPS ve Güvenlik
IIS nedir, Windows Server'da nasıl kurulur? Web sunucusu rolünü ekleyin, iç CA sertifikasıyla HTTPS bağlayın, SNI ve güvenliği yapılandırın.
Linux NTP Sunucusu Kurulumu: chrony ile İç Saat Kaynağı
Linux NTP sunucusu kurulumu: Ubuntu'da chrony yapılandırması, allow ile istemci ağı, doğrulama ve izleme. Platform kararı ve Stratum 1 için GPS/PPS.
RSAT Kurulumu: AD Yönetim Konsolları ve GPMC
RSAT kurulumu: Windows 10, 11 ve Windows Server'da uzaktan sunucu yönetim araçları, GPMC ve ADUC konsolları, nereden çalıştırılacağı ve neyi yönettiği.
Samba AD DC Kurulumu: Linux'ta Domain Controller
Samba AD DC kurulumu: Ubuntu 24.04'te samba-tool domain provision, iç DNS kararı, Kerberos doğrulaması ve kurulum öncesi/sonrası ölçülmüş port tablosu.
Ubuntu Server Nasıl Kurulur? 24.04 LTS Kurulum Rehberi
Ubuntu Server 24.04 LTS kurulumu adım adım: donanım gereksinimleri, statik IP ve LVM disk yapılandırması, OpenSSH kurulumu ve kurulum sonrası ilk kontroller.
Ubuntu Server: LTS, Sıkılaştırma ve Dağıtım Seçimi
Kurumsal Ubuntu Server rehberi: dağıtım karşılaştırması, LTS ve Ubuntu Pro destek takvimi, paket yönetimi, sıkılaştırma ve Active Directory entegrasyonu.
Veri Merkezi Migration: Taşıma Planı ve Kesinti Penceresi
Veri merkezi taşıma nasıl planlanır: envanter ve bağımlılık analizi, kesinti penceresi, her adım için geri dönüş planı ve taşıma gecesinde doğrulama sırası.
Kurumsal Veri Yedekleme ve Felaket Kurtarma Çözümleri
Kurumsal veri yedekleme ve felaket kurtarma: 3-2-1-1-0 kuralı, RTO/RPO hedefleri, değiştirilemez depolama ve düzenli geri yükleme testiyle yedekleme çözümleri.
Windows Server DHCP Kurulumu: Scope, Rezervasyon ve Failover
Windows Server DHCP kurulumu: scope ve exclusion yapılandırması, MAC adresiyle IP rezervasyonu, failover ve doğrulama. Ekran görüntülü adım adım rehber.
Windows Server 2025: Roller ve Lisanslama
Windows Server sürümleri, çekirdek bazlı lisanslama ve CAL modeli, sunucu rolleri ve destek yaşam döngüsü: hangisini ne zaman kuracağınızın kurumsal rehberi.
Windows Server 2025 Kurulum Rehberi: Adım Adım
Windows Server 2025 kurulumu: sürüm ve lisans seçimi, kurulum medyası hazırlama, adım adım kurulum, hostname, statik IP, NTP ve temel güvenlik sıkılaştırma.
Cacti Kurulumu: Ubuntu'da SNMP ile Ağ İzleme
Ubuntu 24.04'te Cacti kurulumu: apt paketinin web sihirbazını neden atladığı, SNMP ile switch izleme, trafik grafiği oluşturma ve Zabbix'ten farkı adım adım.
Syslog Sunucusu Kurulumu: Ubuntu'da Merkezi Log
Ubuntu 24.04'te rsyslog ile merkezi syslog sunucusu kurulumu: imudp, 514 portu, gönderen başına ayırma, switch bağlama ve disk planı. Lab ölçümüyle.
Active Directory Güvenlik Sıkılaştırması Rehberi
Active Directory'i saldırılara karşı sıkılaştırma: Tier modeli, LAPS, Fine-Grained Password Policy ve ayrıcalıklı hesap izleme ile pratik adımlar ve hatalar.
İçindekiler
Ücretsiz Değerlendirme
Ağ erişimini paylaşılan paroladan kişisel hesaba taşımak istiyorsanız kurgusunu birlikte çıkaralım.
Ana Hizmet
BT Sistem Yönetimiİlgili Makaleler
- Microsoft Entra ID Connect Kurulumu: AD'yi Buluta Bağlama
- Active Directory GPO Yönetimi: Group Policy Rehberi
- Active Directory DNS Yapılandırması: Forwarder ve Zone
- Active Directory Kullanıcı, Grup ve OU Yönetimi (AGDLP)
- Active Directory UPN Suffix Yapılandırması
- Active Directory Kurulum Rehberi: Windows Server 2025
- Active Directory Rehberi: Mimari, Kurulum ve Yönetim
- Active Directory Certificate Services (AD CS) Kurulumu
- Bilgisayarı ve Sunucuyu Domain'e Ekleme: Ön Koşul ve Hatalar
- Hypervisor Nedir? Sanallaştırma Katmanı Nasıl Çalışır
- IIS Nedir? Windows Server'da Kurulum, HTTPS ve Güvenlik
- Linux NTP Sunucusu Kurulumu: chrony ile İç Saat Kaynağı
- RSAT Kurulumu: AD Yönetim Konsolları ve GPMC
- Samba AD DC Kurulumu: Linux'ta Domain Controller
- Ubuntu Server Nasıl Kurulur? 24.04 LTS Kurulum Rehberi
- Ubuntu Server: LTS, Sıkılaştırma ve Dağıtım Seçimi
- Veri Merkezi Migration: Taşıma Planı ve Kesinti Penceresi
- Kurumsal Veri Yedekleme ve Felaket Kurtarma Çözümleri
- Windows Server DHCP Kurulumu: Scope, Rezervasyon ve Failover
- Windows Server 2025: Roller ve Lisanslama
- Windows Server 2025 Kurulum Rehberi: Adım Adım
- Cacti Kurulumu: Ubuntu'da SNMP ile Ağ İzleme
- Syslog Sunucusu Kurulumu: Ubuntu'da Merkezi Log
- Active Directory Güvenlik Sıkılaştırması Rehberi