Menu Close

FSSO med Collector agent i polling mode

Denna artikel innefattar enbart installation och konfiguration av FSSO collectorn.

RBAC (Role-Based Access Control) är ett vanligt begrepp inom säkerhetsbranschen och det är väldigt ofta något man strävar efter att implementera men det är ofta väldigt långt bort och väldigt komplext att lösa rent tekniskt.

Förr tittade man ofta på 802.1x som en lösning på detta och tilldelar olika datorer till olika vlan så att just denna dator ska få access till de system som användaren utav dator ska kunna nå. Detta gör att alla användare på detta vlan kommer att kunna nå samma tjänster, även om olika personer inom samma segment har olika behörighetsnivåer.

För att få bukt med denna problematik har flera brandväggstillverkare, däribland Fortinet, utvecklat en lösning som är baserad på att man läser i security loggen i sin domän för att fastställa vilken person som har vilken IP adress och sedan basera sitt regelverk på denna information istället för VLAN tillhörighet.

På så vis får man en enklare miljö där man istället för att fokusera på dynamisk tilldelning av VLAN i hela miljön, istället tillåter rätt användares IP adresser att nå rätt resurser. Fortinets lösning på detta kallas ibland för FSSO, Fortinet Single-Sign On. I denna artikel tittar vi närmare på variant av FSSO som är collector-baserad.

FSSO Collectorn

I FortiOS 6.4 kan man polla en domänkontrollant direkt ifrån brandväggen, men vill man lasta av denna last från brandväggen så kan man istället köra en collector på en server. Denna server måste köra Windows Server som operativsystem och vara med i den domän som du har för avsikt att samla in identiteter ifrån.

Collectorn kan köras i två lägen, Polling mode eller DC Agent mode där den första metoden bara behöver collector-mjukvaran installerad och där DC Agent-läget kräver att man installerar en mjukvaru-agent på samtliga domänkontrollanter.

Mer information om skillnaderna hittar du här

Installation

Innan du drar igång med installationen så kan du med fördel läsa denna guide, vilken är Fortinets officiella dokumentation. Notera att du INTE behöver ett domain admin-konto för detta ska fungera och om du ska köra polling mode så behöver du inte installera DC Agent, även om installationen promptar dig att göra det.

När du läst guiden ovan är det relativt enkelt att installera collectorn, men det är ett par saker man bör tänka på:

  • Vilket konto ska köra servicen?
  • Vilka rättigheter har detta konto?
  • Vilka rättigheter behövs för att köra denna applikationen?

Jag anser att kontot ska vara av typen “servicekonto”, dvs du ska inte kunna logga in med detta på någon maskin utan endast använda detta för att köra tjänster.

För att ha ett konto som uppfyller alla kriterier följ denna guiden. Notera att även om detta kontot inte har rätt att installera tjänsten så kan du under installationsprocessen ändå ange ett servicekonto. Under installationsprocessen får du en prompt där du kan fylla i denna information. Notera dock att kontot troligtvis kommer att behöva få rättigheter till en del av registret, [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Fortinet\FSAE\collectoragent]

Om du vill använda ett annat konto än det servicekonto som körs applikationen för att polla information ur ditt AD så kan du konfigurera detta under “Set Directory Access information”. Ställ in Advanced mode och klicka på Advanced Settings. Mina inställningar ser ut som följer:

Välja identiteter

När collectorn väl är installerad så bör du välja vilka delar av ditt AD som ska “scannas” och vilka användare som ska/inte ska vara med i dessa scanningar. Du bör minimera antalet delar av AD’t som scannas för att minska prestandan som krävs och nätverkstrafiken som genereras av detta.

Använd knapparna Set Group Filters och Set Ingore User List för att bygga upp ditt regelverk på ett bra sätt för att endast läsa ut användare som används för att logga in på enheter som berörs av ditt regelverk.

Nätverkstrafik

Hur pratar collectorn med domänkontrollanterna? Det skiljer sig lite beroende på konfiguration, men mina rekommenderade inställningar om du inte har en domän med flera forests är:

Typ av trafikDestinationsport
Kommunikation med FortigateTCP/8000 alternativt TCP/8001 för SSL
Eventlog läsning i collector modeTCP/445
Slå upp grupper och annan AD infoTCP/389 via LDAP eller TCP/636 för LDAPS
Göra namnuppslag på hostnames för logon events.UDP/53

Mer information kring kommunikationsportar och protokoll återfinns i denna dokumentation.

Workstation check

Fortinet har implementerat en funktion för att verifiera att användaren fortfarande är inloggad då Microsoft inte har några bra “logoff-event” i sina loggar. Denna kallas för Workstation verification och konfigureras längst ner i gränssnittet.

Från https://kb.fortinet.com/kb/documentLink.do?externalID=FD31876

Den här funktionen kommer att försöka kontakta varje enskild dator som har en autentiserad användare på och verifiera att denna fortfarande är inlogg via Remote Registry service. Denna funktion går via port TCP/445 eller TCP/139.

För att stänga av denna funktion, sätt Workstation Verify interval till 0.

Cache user groups

För att minska lasten på domänkontrollanter kan man välja att spara resultatet av uppslagen av grupptillhörigheter i en viss tid. Notera då att ändringar som sker i AD under tiden resultatet är sparat inte kommer att uppdateras förrän timern har gått ut och en ny query utförs.

För att konfigurera detta klickar du rutan framför Cache user group lookup result och väljer sedan antal minuter som du vill spara dessa uppgifter. Mer detalj kring hur entrys uppdateras hittar

Verifikation

För att verifiera att collectorn är rätt konfigurerad så kan du under Show Monitored DCs se hur många log-on event dina olika domänkontrollanter genererar samt under Show Logon Users så kan du se samtliga användare som har loggat in och från vilka IP adresser de gjorde detta. Dyker det upp information här så vet du att både din collector och brandväggsregler båda på servrar och brandväggar är korrekta.

Slutsats

Att implementera denna typ av funktionalitet i din Security Fabric kommer att öppna upp möjligheterna för att mer dynamiskt regelverk, där en användares regelverk följer med personen istället för VLANet. Detta är väldigt effektivt och skalar väldigt bra när det väl är på plats, då all tillgång till olika tjänster styrs i Active Directory istället för via nya brandväggspolicys baserade på statiska värden så som IP adresser eller VLAN id’n.

Under installation kan det krävas en omstart av servern för att eventen ska komma in, alternativt så kan något i konfigurationen vara inkorrekt, men våga ha lite is i magen och vänta en stund innan du börjar gräva i alla olika inställningsmöjligheter.

Nu kan du fortsätta integrationen mot din Security fabric med en Fabric connector i din Fortigate.