Domen icazəsi olan müəssisə üçün pulsuz proxy server

Domen icazəsi olan müəssisə üçün pulsuz proxy server

pfSense+ https filtrləmə ilə Squid + Active Directory qrup filtrləmə ilə tək giriş (SSO)

Qısaca məlumat

Şirkət istifadəçilərin əlavə parollar daxil etməməsi və veb-interfeysdən idarə oluna bilməsi üçün saytlara (o cümlədən https daxil olmaqla) AD-dən qruplar üzrə girişi süzgəcdən keçirmək imkanı olan proksi server tətbiq etməli idi. Yaxşı tətbiq, elə deyilmi?

Düzgün cavab Kerio Control və ya UserGate kimi həllər almaq olardı, lakin həmişə olduğu kimi pul yoxdur, amma ehtiyac var.

Yaxşı köhnə Squid köməyə gəldiyi yer budur, amma yenə də - veb interfeysini haradan əldə edə bilərəm? SAMS2? Mənəvi cəhətdən köhnəlmişdir. Bu, pfSense-in köməyə gəldiyi yerdir.

Təsvir

Bu məqalə Squid proxy serverini necə konfiqurasiya edəcəyinizi təsvir edəcəkdir.
Kerberos istifadəçilərə icazə vermək üçün istifadə olunacaq.
SquidGuard domen qruplarına görə filtrləmək üçün istifadə olunacaq.

Monitorinq üçün Lightsquid, sqstat və daxili pfSense monitorinq sistemlərindən istifadə olunacaq.
O, həmçinin tək giriş (SSO) texnologiyasının tətbiqi ilə bağlı ümumi problemi, yəni sistem hesabı ilə kompas hesabı ilə İnternetdə dolaşmağa çalışan proqramları həll edəcək.

Squid quraşdırmaya hazırlanır

pfSense əsas götürüləcək, Quraşdırma təlimatları.

Bunun içərisində domen hesablarından istifadə edərək firewallun özündə identifikasiyanı təşkil edirik. Təlimatlar.

Bu çox vacibdir!

Squid-i quraşdırmaya başlamazdan əvvəl, siz pfsense-də DNS serverini konfiqurasiya etməli, DNS serverimizdə onun üçün A qeydi və PTR qeydini yaratmalı və vaxtın domen nəzarətçisində olan vaxtdan fərqlənməməsi üçün NTP-ni konfiqurasiya etməlisiniz.

Şəbəkənizdə pfSense-in WAN interfeysinin İnternetə keçməsini və yerli şəbəkədəki istifadəçilərin 7445 və 3128 (mənim vəziyyətimdə 8080) portları da daxil olmaqla, LAN interfeysinə qoşulma imkanını təmin edin.

Hamısı hazırdır? LDAP bağlantısı pfSense-də avtorizasiya üçün domenlə qurulub və vaxt sinxronlaşdırılıb? Əla. Əsas prosesə başlamağın vaxtı gəldi.

Quraşdırma və əvvəlcədən konfiqurasiya

Squid, SquidGuard və LightSquid pfSense paket menecerindən "Sistem / Paket Meneceri" bölməsində quraşdırılacaq.

Uğurlu quraşdırmadan sonra "Xidmətlər / Squid Proxy server /" bölməsinə keçin və ilk növbədə Local Cache sekmesinde keşləməni konfiqurasiya edin, mən hər şeyi 0-a təyin etdim, çünki Saytların keşləşdirilməsində çox şey görmürəm, brauzerlər bununla əla iş görürlər. Quraşdırdıqdan sonra ekranın altındakı "Saxla" düyməsini basın və bu, bizə əsas proxy parametrlərini etmək imkanı verəcəkdir.

Əsas parametrlər aşağıdakılardır:

Domen icazəsi olan müəssisə üçün pulsuz proxy server

Standart port 3128-dir, lakin mən 8080-dən istifadə etməyi üstün tuturam.

Proksi interfeysi nişanında seçilmiş parametrlər proksi serverimizin hansı interfeysləri dinləyəcəyini müəyyən edir. Bu firewall elə qurulduğundan, LAN və WAN eyni yerli alt şəbəkədə ola bilsə də, İnternetdə WAN interfeysi kimi görünür, mən proksi üçün LAN-dan istifadə etməyi tövsiyə edirəm.

sqstatın işləməsi üçün geri dönmə lazımdır.

Aşağıda siz Şəffaf (şəffaf) proksi parametrlərini, həmçinin SSL Filtrini tapa bilərsiniz, lakin onlara ehtiyacımız yoxdur, proksimiz şəffaf olmayacaq və https filtrasiyası üçün biz sertifikatı əvəz etməyəcəyik (sənəd axını, bankımız var. müştərilər və s.), gəlin yalnız əl sıxmağa baxaq.

Bu mərhələdə biz domen nəzarətçimizə getməliyik, orada autentifikasiya hesabı yaratmalıyıq (həmçinin pfSense-in özündə identifikasiya üçün konfiqurasiya edilmiş hesabdan da istifadə edə bilərsiniz). Burada çox vacib amil var - əgər siz AES128 və ya AES256 şifrələməsindən istifadə etmək niyyətindəsinizsə - hesab parametrlərində müvafiq qutuları yoxlayın.

Əgər domeniniz çoxlu sayda kataloqu olan çox mürəkkəb meşədirsə və ya domeniniz .localdırsa, bu hesab üçün sadə paroldan istifadə etməli olacağınız MÜMKÜNDÜR, lakin müəyyən deyil, səhv məlumdur, lakin mürəkkəb parol ilə sadəcə işləməyə bilər, müəyyən bir işi yoxlamaq lazımdır.

Domen icazəsi olan müəssisə üçün pulsuz proxy server

Bundan sonra biz kerberos üçün açar faylı yaradırıq, domen nəzarətçisində administrator hüquqları ilə əmr satırını açır və daxil edirik:

# ktpass -princ HTTP/[email protected] -mapuser pfsense -pass 3EYldza1sR -crypto {DES-CBC-CRC|DES-CBC-MD5|RC4-HMAC-NT|AES256-SHA1|AES128-SHA1|All} -ptype KRB5_NT_PRINCIPAL -out C:keytabsPROXY.keytab

FQDN pfSense-imizi göstərdiyimiz yerdə, işə hörmət etdiyinizə əmin olun, domen hesabımızı və onun parolunu mapuser parametrinə daxil edin və kriptoda biz şifrələmə metodunu seçirik, mən iş üçün rc4 istifadə etdim və -out sahəsində harada olduğumuzu seçirik. bitmiş açar faylımızı göndərəcək.
Açar faylı uğurla yaratdıqdan sonra onu pfSense-ə göndərəcəyik, bunun üçün Far istifadə etdim, ancaq siz bunu həm əmrlər, həm də şpak ilə və ya "Diaqnostika Komanda Xətti" bölməsində pfSense veb interfeysi vasitəsilə edə bilərsiniz.

İndi biz /etc/krb5.conf-u redaktə edə/yara bilərik

Domen icazəsi olan müəssisə üçün pulsuz proxy server

burada /etc/krb5.keytab bizim yaratdığımız əsas fayldır.

Kinit istifadə edərək kerberosun işini yoxlamağı unutmayın, əgər işləmirsə, daha çox oxumağın mənası yoxdur.

Doğrulama olmadan Squid Authentication və Giriş Siyahısının Konfiqurasiyası

Kerberosu uğurla konfiqurasiya etdikdən sonra onu Squid-ə bağlayacağıq.

Bunu etmək üçün ServicesSquid Proxy Serverə gedin və əsas parametrlərdə ən aşağıya enin, orada "Ətraflı parametrlər" düyməsini tapacağıq.

Xüsusi Seçimlər (Autdan əvvəl) sahəsinə daxil edin:

#Хелперы
auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -s GSS_C_NO_NAME -k /usr/local/etc/squid/squid.keytab -t none
auth_param negotiate children 1000
auth_param negotiate keep_alive on
#Списки доступа
acl auth proxy_auth REQUIRED
acl nonauth dstdomain "/etc/squid/nonauth.txt" 
#Разрешения 
http_access allow nonauth 
http_access deny !auth
http_access allow auth

harada auth_param danışıqlar proqramı /usr/local/libexec/squid/negotiate_kerberos_auth - bizə lazım olan autentifikasiya kerberos köməkçisini seçir.

Açar -s məna ilə GSS_C_NO_NAME — əsas fayldan istənilən hesabın istifadəsini müəyyən edir.

Açar -k məna ilə /usr/local/etc/squid/squid.keytab - bu xüsusi klaviatura faylından istifadə etməyi müəyyən edir. Mənim vəziyyətimdə, bu, bizim yaratdığımız eyni klaviatura faylıdır, onu /usr/local/etc/squid/ qovluğuna köçürdüm və adını dəyişdirdim, çünki kalamar o kataloqla dost olmaq istəmirdi, görünür yox idi. kifayət qədər hüquqlar.

Açar -t məna ilə -t heç biri - domen nəzarətçisinə tsiklik sorğuları söndürür, bu da 50-dən çox istifadəçiniz varsa, yükü əhəmiyyətli dərəcədə azaldır.
Test müddətində siz həmçinin -d düyməsini əlavə edə bilərsiniz - yəni diaqnostika, daha çox qeydlər göstəriləcək.
auth_param danışıq uşaqları 1000 - eyni vaxtda neçə avtorizasiya prosesinin icra oluna biləcəyini müəyyən edir
auth_param danışıqları davam etdirin - icazə zəncirinin səsverməsi zamanı əlaqənin kəsilməsinə imkan vermir
acl auth proxy_auth TƏLƏB EDİLİR - avtorizasiyadan keçmiş istifadəçilərin daxil olduğu girişə nəzarət siyahısını yaradır və tələb edir
acl nonauth dstdomain "/etc/squid/nonauth.txt" - biz squid-i hər kəsə həmişə giriş icazəsi veriləcək təyinat domenlərini ehtiva edən qeyri-auth giriş siyahısı haqqında məlumatlandırırıq. Biz faylın özünü yaradırıq və onun içərisinə formatda domenləri daxil edirik

.whatsapp.com
.whatsapp.net

Whatsapp misal olaraq boş yerə istifadə edilmir - identifikasiyası olan proxy haqqında çox seçicidir və autentifikasiyadan əvvəl icazə verilmədiyi təqdirdə işləməyəcəkdir.
http_access nonauth icazə verir - bu siyahıya hər kəsin daxil olmasına icazə verin
http_access rədd et !auth - icazəsiz istifadəçilərin digər saytlara daxil olmasını qadağan edirik
http_access auth icazə verir - səlahiyyətli istifadəçilərə girişə icazə verin.
Budur, kalamar özü konfiqurasiya edilmişdir, indi qruplar üzrə filtrləşdirməyə başlamağın vaxtıdır.

SquidGuard konfiqurasiyası

ServicesSquidGuard Proksi Filtrinə keçin.

LDAP Seçimlərində biz kerberos autentifikasiyası üçün istifadə olunan hesab məlumatlarını aşağıdakı formatda daxil edirik:

CN=pfsense,OU=service-accounts,DC=domain,DC=local

Boşluqlar və ya latın olmayan hərflər varsa, bütün qeyd tək və ya ikiqat dırnaq içərisində olmalıdır:

'CN=sg,OU=service-accounts,DC=domain,DC=local'
"CN=sg,OU=service-accounts,DC=domain,DC=local"

Sonra bu qutuları yoxladığınızdan əmin olun:

Domen icazəsi olan müəssisə üçün pulsuz proxy server

Lazımsız DOMAINpfsense-i kəsmək üçün DOMAIN.Bütün sistemin çox həssas olduğu YERLİ.

İndi biz Group Acl-ə gedirik və domenə giriş qruplarımızı bağlayırıq, mən 0-ə qədər group_1, group_3 və s. kimi sadə adlardan istifadə edirəm, burada 3 yalnız ağ siyahıya girişdir və 0 - hər şey mümkündür.

Qruplar aşağıdakı kimi əlaqələndirilir:

ldapusersearch ldap://dc.domain.local:3268/DC=DOMAIN,DC=LOCAL?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=group_0%2cOU=squid%2cOU=service-groups%2cDC=DOMAIN%2cDC=LOCAL))

qrupumuzu qeyd edin, Times-a gedin, orda bir boşluq yaratdım, həmişə işləmək mənasına gəlir, indi Hədəf Kateqoriyalarına keçin və öz ixtiyarımızda siyahılar yaradın, siyahıları yaratdıqdan sonra qruplarımıza qayıdırıq və qrup daxilində kimin gedə biləcəyini seçirik. harada, kim harda bilməz.

LightSquid və sqstat

Əgər konfiqurasiya prosesi zamanı biz squid parametrlərində geri dönmə seçmişiksə və həm şəbəkəmizdə, həm də pfSense-in özündə firewallda 7445-ə daxil olmaq imkanı açmışıqsa, o zaman Squid Proxy Reports Diaqnostikasına keçərkən həm sqstat, həm də Lighsquid-i asanlıqla aça bilərik, sonuncu üçün bizə lazım olacaq Eyni yerdə, bir istifadəçi adı və şifrə ilə gəlin və bir dizayn seçmək imkanı da var.

Tamamlama

pfSense çox şey edə bilən çox güclü bir vasitədir - həm trafik proksi, həm də istifadəçinin İnternetə çıxışına nəzarət bütün funksionallığın yalnız bir hissəsidir, buna baxmayaraq, 500 maşını olan bir müəssisədə bu problemi həll etdi və qənaət etdi. proxy satın almaq.

Ümid edirəm ki, bu məqalə kiməsə orta və böyük müəssisələr üçün kifayət qədər aktual olan problemi həll etməyə kömək edəcək.

Mənbə: www.habr.com

Добавить комментарий