Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

pfSense+Squid https iragazketarekin + Saioa hasteko modu bakarra (SSO) Active Directory taldeen iragazketarekin

Aurrekari laburrak

Konpainiak proxy zerbitzari bat inplementatu behar zuen AD-eko taldeek guneetarako sarbidea (https barne) iragazteko gaitasunarekin, erabiltzaileek pasahitz gehigarririk sartu ez dezaten, eta web-interfazetik administratu ahal izateko. Aplikazio ona, ezta?

Erantzun zuzena Kerio Control edo UserGate bezalako soluzioak erostea litzateke, baina beti bezala ez dago dirurik, baina beharra dago.

Hona hemen Squid zahar ona erreskatatzera, baina berriro ere - non lor dezaket web interfaze bat? SAMS2? Moralki zaharkitua. Hau da pfSense erreskatatzera.

Description

Artikulu honek Squid proxy zerbitzaria nola konfiguratu deskribatuko du.
Erabiltzaileak baimentzeko Kerberos erabiliko da.
SquidGuard erabiliko da domeinu taldeen arabera iragazteko.

Monitorizaziorako Lightsquid, sqstat eta barne pfSense monitorizazio sistemak erabiliko dira.
Saio-hasiera bakarreko (SSO) teknologiaren sarrerarekin lotutako arazo arrunt bat ere konponduko da, hots, iparrorratza kontuaren azpian beren sistema kontuarekin Interneten nabigatzen saiatzen diren aplikazioak.

Squid instalatzeko prestatzen

pfSense hartuko da oinarri gisa, Instalazio argibideak.

Horren barruan, suebakian bertan autentifikazioa antolatzen dugu domeinu kontuak erabiliz. Argibideak.

Oso garrantzitsua da!

Squid instalatzen hasi aurretik, DNS zerbitzaria pfsense-n konfiguratu behar duzu, A erregistro bat eta PTR erregistro bat egin gure DNS zerbitzarian eta NTP konfiguratu behar duzu ordua domeinu-kontrolagailuko orduarekiko ezberdina izan ez dadin.

Eta zure sarean, eman pfSense-ren WAN interfazeari Internetera joateko eta sare lokaleko erabiltzaileei LAN interfazera konektatzeko gaitasuna, 7445 eta 3128 portuetan barne (nire kasuan 8080).

Dena prest? LDAP konexioa ezarri al da domeinuarekin pfSense-n baimentzeko eta ordua sinkronizatuta dago? Bikaina. Prozesu nagusia hasteko garaia da.

Instalazioa eta aurrekonfigurazioa

Squid, SquidGuard eta LightSquid pfSense pakete kudeatzailetik instalatuko dira "Sistema / Pakete Kudeatzailea" atalean.

Instalatu ondoren, joan "Zerbitzuak / Squid Proxy zerbitzaria /" eta lehenik eta behin, Local Cache fitxan, konfiguratu cachea, dena 0-n ezarri dut, zeren Ez diot balio handirik ikusten cachean dauden guneei, nabigatzaileek lan bikaina egiten dute honekin. Ezarri ondoren, pantailaren behealdean dagoen "Gorde" botoia sakatu eta honek oinarrizko proxy ezarpenak egiteko aukera emango digu.

Ezarpen nagusiak hauek dira:

Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

Ataka lehenetsia 3128 da, baina nahiago dut 8080 erabili.

Proxy Interfazea fitxan hautatutako parametroek zehazten dute zein interfazeetan entzungo duen gure proxy zerbitzariak. Suebaki hau Interneten WAN interfaze gisa ikusten duen moduan eraikita dagoenez, nahiz eta LAN eta WAN tokiko azpisare berean egon, proxyrako LAN erabiltzea gomendatzen dut.

Loopback beharrezkoa da sqstat funtziona dezan.

Jarraian, proxy gardena (gardena) ezarpenak aurkituko dituzu, baita SSL iragazkia ere, baina ez ditugu behar, gure proxya ez da gardena izango, eta https iragazteko ez dugu ziurtagiria ordezkatuko (dokumentu-fluxua, bankua dugu. bezeroak, etab.), ikus diezaiogun bostekoa.

Etapa honetan, gure domeinu-kontrolagailura joan behar dugu, bertan autentifikazio-kontu bat sortu (pfSensen bertan autentifikaziorako konfiguratuta zegoena ere erabil dezakezu). Hona hemen faktore oso garrantzitsu bat - AES128 edo AES256 enkriptatzea erabiltzeko asmoa baduzu - markatu lauki egokiak zure kontuaren ezarpenetan.

Zure domeinua oso baso konplexua bada direktorio ugari dituen edo zure domeinua .local bada, POSIBLE da, baina ez ziur, pasahitz soil bat erabili beharko duzula kontu honetarako, akatsa ezaguna da, baina Baliteke pasahitz konplexu batekin ez funtzionatzea, kasu zehatz batean egiaztatu behar duzu.

Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

Horren ondoren, kerberosentzako gako-fitxategi bat sortuko dugu, domeinu-kontrolatzailean administratzaile-eskubideak dituen komando-gonbita ireki eta sartu:

# 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

Gure FQDN pfSense adierazten dugun tokian, ziurtatu kasua errespetatzen duzula, sartu gure domeinu-kontua eta bere pasahitza mapuser parametroan, eta kriptografian enkriptatzeko metodoa hautatzen dugu, rc4 erabili dut lanerako eta -out eremuan non hautatzen dugu. amaitutako gako-fitxategia bidaliko digu.
Gako-fitxategia behar bezala sortu ondoren, gure pfSense-ra bidaliko dugu, Far erabili dut horretarako, baina hori ere egin dezakezu komandoekin eta masillarekin edo pfSense web-interfazearen bidez "Diagnostics Command Line" atalean.

Orain /etc/krb5.conf editatu/sortu dezakegu

Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

non /etc/krb5.keytab sortu dugun gako-fitxategia den.

Ziurtatu kinit erabiliz kerberos-en funtzionamendua egiaztatzea, funtzionatzen ez badu, ez du balio gehiago irakurtzeak.

Squid autentifikazioa eta sarbide zerrenda autentifikaziorik gabe konfiguratzea

Kerberos ondo konfiguratu ondoren, gure Squid-era lotuko dugu.

Horretarako, joan ServicesSquid Proxy Server-era eta ezarpen nagusietan behealdera jaitsi, bertan "Ezarpen aurreratuak" botoia aurkituko dugu.

Aukera pertsonalizatuak (Auth aurretik) eremuan, idatzi:

#Π₯Π΅Π»ΠΏΠ΅Ρ€Ρ‹
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

non auth_param negoziatzeko programa /usr/local/libexec/squid/negotiate_kerberos_auth - behar dugun autentifikazio kerberos laguntzailea hautatzen du.

gakoa -s esanahiarekin GSS_C_NO_NAME β€” Gako-fitxategiko edozein konturen erabilera definitzen du.

gakoa -k esanahiarekin /usr/local/etc/squid/squid.keytab - Keytab fitxategi jakin hau erabiltzea zehazten du. Nire kasuan, guk sortu dugun keytab fitxategi bera da, /usr/local/etc/squid/ direktoriora kopiatu eta izena aldatu nion, txipiroiak ez zuelako direktorio horren lagun izan nahi, itxuraz ez zeuden. nahikoa eskubide.

gakoa -t esanahiarekin -t bat ere ez - Domeinu-kontrolagailurako eskaera ziklikoak desgaitzen ditu, eta horrek asko murrizten du 50 erabiltzaile baino gehiago badituzu.
Probak irauten duen bitartean, -d tekla ere gehi dezakezu, hau da, diagnostikoak, erregistro gehiago bistaratuko dira.
auth_param negoziatu seme-alabak 1000 - aldi berean zenbat baimen-prozesu exekutatu daitezkeen zehazten du
auth_param negoziatu keep_alive on - ez du onartzen konexioa hausteko baimen-katearen galdeketan zehar
acl auth proxy_auth BEHARREZKOA - baimena gainditu duten erabiltzaileak barne hartzen dituen sarbide-kontrol-zerrenda bat sortu eta eskatzen du
acl nonauth dstdomain "/etc/squid/nonauth.txt" - Txipiroi nonauth sarbide-zerrendaren berri ematen diogu, helmugako domeinuak dituena, zeinetara denek beti izango dute sarbidea. Fitxategia bera sortzen dugu, eta bere barruan formatuan sartuko ditugu domeinuak

.whatsapp.com
.whatsapp.net

Whatsapp ez da alferrik erabiltzen adibide gisa - oso hautakorra da autentifikazioarekin proxyarekin eta ez du funtzionatuko autentifikazioaren aurretik onartzen ez bada.
http_access baimendu nonauth - baimendu denei zerrenda honetarako sarbidea
http_access deny !auth - Baimenik gabeko erabiltzaileei beste gune batzuetara sartzea debekatzen dugu
http_access baimendu autentifikazioa - baimendutako erabiltzaileei sarbidea ematea.
Hori da, txipiroia bera konfiguratuta dago, orain taldeka iragazten hasteko garaia da.

SquidGuard konfiguratzen

Joan ServicesSquidGuard Proxy Iragazkira.

LDAP aukeretan kerberos autentifikaziorako erabilitako gure kontuaren datuak sartzen ditugu, baina formatu honetan:

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

Hutsuneak edo latinak ez diren karaktereak badaude, sarrera osoa komatxo bakar edo bikoitz artean sartu behar da:

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

Ondoren, ziurtatu lauki hauek markatu dituzula:

Doako proxy zerbitzaria enpresentzako domeinu-baimenarekin

Behar ez den DOMAINpfsense mozteko DOMAIN.LOKALA zeinari sistema osoa oso sentikorra den.

Orain Group Acl-era joango gara eta gure domeinurako sarbide-taldeak lotzen ditugu, group_0, group_1, etab. bezalako izen sinpleak erabiltzen ditut 3 arte, non 3 zerrenda zurirako sarbidea den eta 0 - dena posible da.

Taldeak honela lotuta daude:

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))

gorde gure taldea, joan Times-era, hor hutsune bat sortu nuen beti lan egiteko esanahia, orain joan Target Categories-era eta sortu zerrendak gure diskrezioan, zerrendak sortu ondoren gure taldeetara itzultzen gara eta talde barruan botoiekin hautatzen dugu nor joan daitekeen. non , eta nork ezin du non .

LightSquid eta sqstat

Konfigurazio prozesuan loopback bat hautatu bagenuen squid ezarpenetan eta 7445 suebakian sartzeko gaitasuna ireki badugu bai gure sarean bai pfSensen bertan, orduan Squid Proxy Reports Diagnostics-era joatean, erraz ireki ditzakegu sqstat eta Lighsquid, azken honetarako beharko dugu Leku berean, erabiltzaile-izena eta pasahitza atera, eta diseinu bat aukeratzeko aukera ere badago.

Amaiera

pfSense gauza asko egin ditzakeen tresna oso indartsua da; trafikoaren proxy-a eta erabiltzaileen Interneterako sarbidearen kontrola funtzionaltasun osoaren zati bat besterik ez dira, hala ere, 500 makina dituen enpresa batean, honek arazoa konpondu eta aurreztu egin du. proxy bat erostea.

Artikulu honek enpresa ertain eta handientzat nahiko garrantzitsua den arazoa konpontzen lagunduko diola espero dut.

Iturria: www.habr.com

Gehitu iruzkin berria