FreeRadius + Captive Portal Kullanıcı Günlük Süre Kısıtı çalışmıyor.



  • İyi günler;
    Pfsense 2.4.4 sürümü üzerine FreeRadius kurulu. Captive Portal ile giriş yapan freeradius kullanıcılarına günlük süre sınırı uygulamak istiyorum ama bunu bir türlü ayarlayamadım. Forumu da araştırdım birkaç şey denedim ama çözüm olmadı. FreeRadius sayfasında Time Configuration başlığı altında "Amount of Time" a giriş yaptığım süre sonunda kullanıcının interneti kesilmiyor veya hesap devre dışı kalmıyor. Yanlış bir yere mi giriyorum yoksa bu çalışmıyor mu çözemedim. Bir kullanıcıya günlük veya haftalık belirlenen süre sonunda internete çıkamaması ve tekrar giriş yapamaması gibi bir kısıtı nasıl yapabilirim?



  • "Login-Time := Al0530-2330" şeklinde bir attribute var. All dediği tüm günler saat 5:30 ve 23:30 arası internet ver şeklinde çalışıyor. "Expiration := Oct 7 2018" bu attribute de 7 ekim 2018 e kadar kullanabilir şeklinde çalışıyor



  • Sayın Incsence,
    Öncelikle yanıtınız için teşekkür ederim. Aslında belli bir aşama kaydettim. Login Time kısıtlamasından ziyade belli periyotlarda süre kısıtlamalı giriş istiyorum. Bununla alakalı amount time işimi görecek şekilde çalışıyor. Ancak freeRadius'a SQL veritabanından kullanıcı okuyacak şekilde ayar yaptığımda amount time değeri girilmemiş gibi hareket ediyor. Oysaki SQL özelliğini disable yaptığımda bu özellik tam istediğim gibi çalışıyor. Bunu çözmenin bir yolu var mı?



  • Amount time tam olara nasıl çalışıyor. Tam olarak ne yapmak istiyorsunuz. Günde 1 saat internet kullan gibi mi yapmak istiyorsunuz? Attributeler ile alakalı radius check ve radius reply diye 2 tip var. Bunların bir de op'ları var onları ona göre kullanmak lazım. Belki bu yüzden çalışmıyordur.



  • Evet, tam olarak yapmak istediğim günlük 1 saat internet kullansın. Bunu yapmak için attribute ve op ifadelerini kullanıyorum. Örneğin Max-Daily-Session:=3600 gibi. Bunun kullanımı ile ilgili sıkıntı yok. Ama freeradius bunu hiç yokmuş gibi algılıyor. Bir önceki mesajımda da belirttiğim gibi SQL sunucudan okumayı aktiflediğimde SQL kullanıcıları ve freeradius kullanıcıları giriş yapabiliyor ama günlük kısıtlama her iki tarafta tanımlı olan kullanıcılar için de çalışmıyor. SQL sunucudan okumayı pasife aldığımda ise sadece freeradius'a tanımlı kullanıcılar giriş yapabiliyor ve kısıtlama düzgün çalışıyor.



  • Bu attribute'yi Sql'deki Radius check tablosuna denedin mi?



  • Radius Check tablosu derken eğer MySql veri tabanındaki kullanıclar için kullanılan radcheck tablosunu kastediyorsanız evet o tabloda bu attribute ilgili kullanıcıya ekli.



  • Sorunu çözdüm. Aynı sorunla karşılaşanlar için çözüm şu adreste.
    https://forum.netgate.com/topic/139132/need-help-on-max-daily-session-attribute



  • Sağlıklı çalışan yapılandırmaları burada paylaşabilirseniz sizin gibi sorun yaşayan arkadaşlara faydası olur.



  • Konunun tek yerden takip edilebilmesi adına orijinal çözüme yönlendirdim. Ancak aynı sorunla karşılaşanlar için özetlemek gerekirse:
    Öncelikle freeradiusu manuel olarak durduruyoruz.
    Aşağıdaki adreste belirtilen dosyayı ( usr/local/pkg/freeradius.inc ) pfsense üzerinde bulup 1989. satırına

    dailycounter
    

    ifadesini ekliyoruz ve kaydediyoruz.

    https://github.com/pfsense/FreeBSD-ports/blob/c7573f5cc64254c17250adaf555d3e7cf64010e8/net/pfSense-pkg-freeradius3/files/usr/local/pkg/freeradius.inc#L1989

    Kodun ilgili bölümü aşağıdaki gibi görünmelidir:

    {$varsqlconf2failover} sql {
    		sql1
    		{$varsqlconf2authorize}
    	}
    	dailycounter
    
    EOD;
    

    Pfsenseyi restart ediyoruz.

    Uyarı 1: Belirtilen işlemler çalışan sisteminizi çalışmaz duruma getirebilir. Bu yüzden işlemi uygulamadan önce yedek almanız tavsiye edilir. Sorumluluk kabul edilmez.
    Uyarı 2: Belirtilen çözüm yöntemi bir üstteki gönderimde belirtilen adresten alınmıştır. Benim sistemimde işe yaradı. Başka sistemlerde çalışıp çalışmayacağı garanti edilmez.



  • Teşekkür ederim. Gayet güzel anlatmışsınız. Günlük download limit ile alakalı bir çözüm bulamamıştım. Acaba bu dailycounter neleri sayıyor. 🤔



  • Rica ederim. Günlük download limiti ile ilgili bir kısıtlama şuan için kullanmıyorum. Ama yakın zamanda deneyip haber vereceğim.



  • Yukarıda belirtilen ayarlar ile günlük kota özelliği de çalışmaktadır.



  • @pfsense01
    Deneyip cevap verdiğin için teşekkür ederim. Günlük limit için Daily-Output-Octets attributesini mi kullanmaktasın?



  • Kota sınırlaması için attribute kullanmadım. Services-->FreeRadius-->Users yolunu takip ederek ilgili kullanıcıyı seçtim ve "Amount of Download and Upload Traffic" değerine istediğim miktarı mega bayt cinsinden giriş yaptım. Bu şekilde çalışıyor.


Log in to reply