PfSense – SquidGuard+LDAP filter

Salam, Əziz Dostlar. Ötən məqalələrimizdən xatırlayırsınızsa, PfSense üzərinə “Squid və SquidGuard” quraraq istifadəçilərə internet üzərində qadağalar tətbiq edirdik. Və qadağalar zamanı bizə yalnız istifadəçinin IP ünvanı lazım olurdu. “SquidGuard” üzərində rule yaradıb, tətbiq edəcəyimiz istifadəçi və ya istifadəçilərin IP ünvanlarını daxil edirdik. Bu məqaləmizdə isə IP ünvanı əvəzinə istifadəçinin “Active Directory” üzərində olan istifadəçi adından istifadə edəcəyik. Cümlə bir az yanıltmac kimi oldu deyəsən :D.

Bu əməliyyat üçün “Pfsense” üzərinə bir neçə paket qurmalıyıq. Lazım olan paketləri bir “repository” istifadə edərək quracağıq. Bizim işimiz daha da sadələşir və bir əmr sayəsində lazım olan bütün paketlər (Squid3, SquidGuard-devel, Samba və s.) “PfSense” üzərinə qurulmuş olur.

Bu məqaləmizdə “FreeBSD 10.1” üzərində olan “Pfsense 2.2.4” (amd64) istifadə olunacaq.

Həmçinin şəbəkəmizdə bir ədəd Domain Controller və bir ədəd də client komputerimiz var.

Əvvəlcə “Active Directory Users and Computers” bölməsinə nəzər salaq.

SquidGuard+LDAP1

Gördüyümüz kimi “Computers” altında sadəcə bir client komputer görünməkdədir. Bundan başqa “Internet” adında bir qrup yaradaraq “Administrator”, “Turqut” və “Royal” hesablarını bu qrupa üzv etmişik.

Ssenarimizə uyğun olaraq, təyin etdiyimiz site-lara girişə bu üç istifadəçi üçün qadağa qoyacağıq.

Biz “PfSense“-i yeni qurmuşuq və üzərinə əlavə heç bir paket yükləməmişik. İndi isə başlayaq paketlərin qurulmasına.

PfSense” konsul ekranından və ya ssh qoşulma istifadə edərək komandamızı daxil edirik(Keçid):

fetch -q -o – http://projetos.mundounix.com.br/pfsense/2.2.4/samba3/pf2ad.sh | sh

SquidGuard+LDAP2

SquidGuard+LDAP3

Qurulacaq paketlər siyahılanır və növbə ilə yüklənmə əməliyyatı başlayır. Növbəti addımda artıq “Squid3” və “SquidGuard-devel” paketləri də qurulur.

SquidGuard+LDAP4

Artıq paket qurulma əməliyyatlarımız tamamlandı. Növbəti addımımız isə “web interface” üzərindən olacaq.

PfSense“-in domain üzvünə çevrilməsi üçün ilk əvvəl “System –> General Setup” yolunu izləyirik.

SquidGuard+LDAP5

Əgər “PfSense” ilkin tənzimləmələri zamanı DNS server təyin etməmişiksə düzəliş edirik. DNS server ünvanı daxili DNS serverimizin (Domain Controller) IP ünvanıdır.

Allow DNS server list to be overridden by DHCP/PPP on WAN” qutucuğunu ləğv edərək “Do not use” işarələyirik. Beləlikdə public DNS ünvanı istifadəsinin qarşısını almış oluruq. “Save” deyərək dəyişiklikləri yadda saxlayırıq.

İndi isə “Samba” istifadə edərək “PfSense”-i domain üzvü edək. Bunun üçün “Services -> Samba (AD)” yolunu izləyirik.

SquidGuard+LDAP6

Server Role” bölümündən “Member of Domain” seçirik. “Listen interface” – dinləniləcək interface “LAN” seçərək daxili şəbəkəmizi təyin edirik.

Domain Member” başlığı altında isə uyğun olaraq domain adını, Administrator hüquqlu istifadəçini və şifrəsini daxil edirik. “Save” deyək və nəticəyə nəzər salaq.

SquidGuard+LDAP7

Artıq “PfSense” Domain üzvünə çevrildi.

SquidGuard+LDAP8

Yoxlama üçün “Diagnostics -> Command prompt” yolunu izləyərək komandalardan istifadə etməyimiz mümkündür. Məsələn “net ads info” və gördüyümüz kimi server məlumatlarınız qarşımızdadır. Və bu məlumatları irəliləyən hissələrdə istifadə edəcəyik.

wbinfo -u” əmrindən istifadə edərək “Active Directory” üzərində olan istifadəçilərə də nəzər sala bilərik.

İndi isə “Services -> Proxy Server” yolunu izləyərək “Squid” tənzimləmələrimizi həyata keçirək.

SquidGuard+LDAP9

“Proxy” tənzimləmələrindən “Squid qurulması” məqaləmizdə bəhs etdiyimiz üçün, bu addımda sadəcə lazım olan dəyişiklikləri qeyd edəcəyik.

İlk olaraq “Allow users on interface” qutucuğu işarələnərək Seçdiyimiz şəbəkə kartı (LAN) üzərindən qoşulan istifadəçilərə proxy tətbiq olunur.

SquidGuard+LDAP10

Enabled logging” qutucuğunu işarələyərək logların saxlanılmasını təmin edə bilərik.

Authentication” başlığı altına keçərək “Authentication method” seçimini “Winbind NTLM“-ə dəyişirik. Ətraflı məluçat üçün: https://www.samba.org/samba/docs/man/manpages/ntlm_auth.1.html

SquidGuard+LDAP11

“NTLM Settings” başlığı altında “NTLMSSP” qutucuğu işarələnir və “Auth processes” bölümünə də proses sayını daxil edirik.

Save” deyərək dəyişiklikləri saxlayırıq.

Hələlik “SquidGuard” üzərində heç bir dəyişiklik etməmişik və deaktiv vəziyyətdədir.

İndi isə istifadəçilər tərəfdə “proxy” tənzimləmələri edərək nəticəyə baxaq. “Proxy” tənzimləmələri “Group Policy” üzərindən də həyata keçirə bilərsiniz.

İstifadəçi komputerdə browser üzərində “proxy” tənzimləmələrinə daxil oluruq, Address:192.168.1.2 (PfSense IP ünvanı), Port: 3128 (Squid üçün təyin etdiyimiz port) olaraq tənzimləyirik.

SquidGuard+LDAP12

Heç bir məhdudiyyət olmadan istifadəçilərimiz internetə çıxa bilirlər.

İndi isə keçək əsas məsələyə, yəni “SquidGuard” tənzimləmələrinə.

Services -> Proxy filter” yolunu izləyirik.

General settings” başlığı altında “Enable” qutucuğunu işarələyirik. Daha sonra “LDAP Options” başlığı altındakı tənzimləmələri uyğun olaraq doldururuq.

SquidGuard+LDAP13

Enable LDAP Filter” qutucuğu işarələnir. “LDAP DN” Administrator hüquqlu istifadəçi və “LDAP DN Password” bölümünə də həmin istifadəçi şifrəsi qeyd olunur. “Save” deyərək yadda saxlayırıq və “Apply” düyməsi ilə “SquidGuard“-ı işlək vəziyyətə gətiririk. “SquidGuard” məqaləmizdən xatırlayırsınızsa, “SquidGuard” aktiv olunduğu zaman default olaraq bütün trafiki bloklayır.

SquidGuard+LDAP14

İstifadəçi tərəfdən nəzər salaq.

SquidGuard+LDAP15

Məqalənin əvvəlində dediyimiz kimi “İnternet” adlı qrupa daxil olan üç istifadəçi üçün “technet.az” və “wikipedia.org” səhifələrinə girişi qadağan edək. Ancaq bu iki səhifədən başqa tam sərbəst olacaqlar. Bunun üçün əvvəlcə “Target group” yaradaraq bu səhifələri bir ad altında toplayaq.

SquidGuard+LDAP16

Daha sonra “Group ACL” bölməsinə keçərək rule yaradaq.

SquidGuard+LDAP17.1

Əvvəlki məqalələrimizdə “Client (source)” bölməsinə istifadəçi IP ünvanını daxil edərək qadağa tətbiq edirdik. İndi isə bizə “Active Directory” üzərində olan istifadəçi adına görə qayda tətbiq etmək lazım gəlir. Buna görə də

ldapusersearch “ldap://technet.local:3268/DC=technet,DC=local?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=internet%2cCN=Users%2cDC=technet%2cDC=local))”

əmri vasitəsilə lazım olan istifadəçini əlavə edirik. Bu qayda technet.local üzərində olan “internet” qrupuna tətbiq olunacaq. Yəni bu qrupa aid olan üç istifadəçiyə.

SquidGuard+LDAP18

“Target Rules” başlığı altında isə yaratmış olduğumuz “Block_Sites” kateqoriyasını “deny” olaraq işarələyirik. “Save” və “General settings” başlığı altında “Apply” deyərək qaydamızı tətbiq etmiş oluruq.

SquidGuard+LDAP19

Və “İnternet” qrupuna üzv olan istifadəçilərdə qeyd etdiyimiz iki səhifəyə giriş qadağan olunmuşdur.

Bu qaydaları, qrupları öz tələblərinizə uyğun tənzimləyə bilərsiniz.

Bu günlük də bu qədər, Əziz Dostlar. Gələcək məqalələrdə görüşmək ümidi ilə.

Səs: +30. Bəyənilsin Zəifdir

Müəllif: Röyal Əmrahov

Şərhlər ( 4 )

  1. Royal bey ela meqaledi, tesekkuler

    • Mən Sizə təşəkkür edirəm, Sizin sayənizdə yazıldı. Mən heç düşünməmişdim. IP ilə bloklama kifayət edirdi 🙂

  2. Salam Royal bey, sambani yuklemek isteyirem, yuxaridaki linkde tapmir, basqa link internetden axtardim tapa bilmedim

Şərh yazın