Cuma, Eylül 08, 2006

FreeRadius Kurulumu

Kurulum
Radius, merkezi bir yerden cihazları yetkilendirmesine izin veren bir sunucudur. Linux üzerinde koşan ve açık kodlu bir yazılım olarak dağıtılan freeradius bulunmaktadır. Fedora dağıtımı freeradius-x.y.z.rpm paketi olarak bulunmaktadır kurulumu:
# rpm -Uvh freeradius-x.y.z.rpm
yada
# yum install freeradius-x.y.z.rpm

komutları ile gerçekleşir. Kurulum TAR paketinden de yapılabilir.

# tar -xzvf freeradius*.tar.gz
# make
# make install
# make clean

Konfigurasyon
Freeradius ayar dosyaları /etc/raddb dizininde yer almaktadır.

"clients.conf" Dosyasının Ayarlanması
İlk ayarlama clients.conf dosyasında yer almaktadır. Bu dosyada istemci olarak yer alacak makinaların tanımlanması ve kullanacakları şifre sözcükleri belirlenmektedir.

127.0.0.1 {
secret = Deneme123
shortname = local
}
client 10.1.1.1 {
secret = Deneme123
shortname = router
}
client 10.1.2.1 {
secret = Deneme123
shortname = switch
}

"naslist" Dosyasının Ayarlanması
NAS (Network Access Servers) olarak kullanılacak cihazlar tanımlanır. Dosyanın açıklama kısmında örnek NAS cihaz listesi tanımlanmıştır. Bu dosyada yer almayan bir cihaz kullanılırsa other olarak tanımlanabilir.

# NAS Name Short Name Type
#---------------- ---------- ----
localhost local portslave
10.1.1.1 router other
10.1.2.1 switch other

"users" Dosyasının Ayarlanması
Kullanıcı yetkilerinin tanımlandığı yerdir. Burada yapılabilecek ayar aşağıdaki gibidir:

erolk Auth-Type := Local, User-Password == "deneme"

Bu ayarda kullanıcı şifresi users dosyasında açık olarakt tutulmaktadır. Yetkilendirme işleminin daha güvenli gerçekleştirebilmesi için farklı yöntemler kullanılmalıdır. FreeRadius'un desteklediği yöntemler /usr/share/freeradius/dictionary dosyasında tanımlanmıştır.

VALUE Auth-Type Local 0
VALUE Auth-Type System 1
VALUE Auth-Type SecurID 2
VALUE Auth-Type Crypt-Local 3
VALUE Auth-Type Reject 4
VALUE Auth-Type ActivCard 5
VALUE Auth-Type EAP 6
VALUE Auth-Type ARAP 7

Yetkilendirme sistem üzerinden yapılabilmesi için users dosyasında herhangi bir değişiklik yapılmaz. /etc/raddb/radiusd.conf dosyasında aşağıdaki düzenleme yapılır.

cache = yes
passwd = /etc/passwd
shadow = /etc/shadow
group = /etc/group

Ayarların Kontrol Edilmesi
Yükarıdaki temel ayarlar yapıldıktan sonra sunucu çalışıtırılıp test edilir.

# service radiusd start
# radiusd -sfxxyz -l stdout

Sunucuyu DEBUG modta çalıştırmak için;

# radiusd -X

Test

# radtest erolk deneme localhost 1600 testing123
Sending Access-Request of id 107 to 127.0.0.1:1812
User-Name = "erolk"
User-Password = "deneme"
NAS-IP-Address = tacacs
NAS-Port = 1600
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=107, length=20