Menu Close

RADIUS Admin med Microsoft Azure MFA integration

Denna artikeln beskriver hur man går tillväga för att implementera Microsoft Azure MFA för FortiManager. Detta kan sedan implementeras även i andra plattformar som kan använda sig utav RADIUS autentisering med MFA för utvalda konton. Med denna setup kommer alla autentiseringar som sker vara kopplade mot Microsofts Azure MFA, så system som inte ska ha MFA-kopplingen måste använda en annan RADIUS server.

Att använda sig utav personliga konton som redan finns i en domän för att logga in i system har gjorts länge och är inget nytt. Det som denna implementation tillför är att vi kan använda MFA även för våra mindre integrerade system som pratar med en RADIUS-server för att autentisera våra användare.

En utav de största fördelarna med att använda konton som redan finns är att de skall uppfylla krav på lösenordspolicy och krav på MFA samt att de ingår på ett helt annat sätt i on/off boarding jämfört med lokala administratörskonton i varje enskilt system.

Denna implementation är baserad på två andra artiklar. Du hittar dom här och här. Saknas det några detaljer så återfinns dom i dessa artiklar.

Denna installation består av följande steg:

  • NPS – Installera MFA Extension
  • NPS – Skapa en NAS client
  • FMG – Skapa en Remote Authentication Server
  • FMG – Skapa nya adminprofiler
  • FMG – Skapa en wildcard RADIUS admin-profil
  • NPS – Skapa en Connection Request Policy
  • NPS – Skapa en Network Policy

Topologin som används i denna lösning visas på bilden nedan.

NPS – Installera MFA Extension

Följ anvisningarna längre ner i artikeln i den här artikeln för att installera MFA Extensionen.

NPS – Skapa en NAS client

Logga in på servern där du har din NPS installerad och skapa en NAS client (RADIUS Client)

I NPS’en jag använder finns det redan andra klienter konfigurerade så jag lägger helt enkelt till ny klient med ett bra namn på klienten, en IP adress och en PSK som jag sparar till FortiManager konfigurationen.

FMG – Skapa en Remote Authentication Server

Manövrera in under System Settings och klicka på Remote Authentication Server. Klicka på Create New och börja med att skriva in ett beskrivande namn, tex serverns hostname. Fyll sedan i IP adress och PSK som du vill använda. Denna kan genereras i NPS’en om man vill. Verifiera att du har konfigurerat din NAS client rätt i NPS’en genom att klicka på Test Connectivity.

FMG – Skapa nya adminprofiler

När du har kopplingen till RADIUS Servern konfigurerad så kan du med fördel skapa nya Admin Profiles. Jag fick inte detta att fungera med de inbyggda profilerna. Sätt rätt privilegier på profilen du skapat och spara sedan. Profilerna jag har skapat heter ITS och ITO i mitt fall, där du själv kan välja att kalla det som passar in i din organisation på bästa sätt. Dessa kommer att återanvändas för att konfigurera VSA’s i NPS’en sedan.

FMG – Skapa en wildcard RADIUS admin-profil

Under Administrators skapar du en ny administratör. Börja med att välja ett bra namn, detta kan du inte justera i efterhand. Fyll sedan i följande inställningar för konton:
Admin type: RADIUS
RADIUS Server: <Radius servern du skapade precis>
Bocka i “Match all users on remote server” (Wildcard)
Välj en admin profil och klicka sedan ut Advanced Options och klicka i (markerat i rött på bilden):
ext-auth-accprofile-override: enable
ext-auth-adom-override: enable

NPS – Skapa en Connection Request Policy

Efter det skapar vi en Connection Request Policy där vi specar följande:

Under Conditions:
Client IPv4 Address: <Din NAS IP>

Under Settings:
Under Vendor Specific lägger vi till ett Vendor-Specific attribut som är RADIUS Standard med värdet 12356 för Fortinet.

NPS – Skapa en Network Policy

Skapa en ny policy

Under Conditions, välj vilken grupp i AD’t som vi ska använda för att klargöra vilka konton som har access till detta. Vill du så kan du även lägga med Client IPv4 Address och skriva in din NAS ip här ifall du har ett avancerat regelverk.

Under Constraints så se över hur du har valt att autentisera och se till att det stämmer överens med din FortiManager.

Under Settings ska vi lägga till lite attribut under Vendor Specific.

Börja med att lägga till ett nytt attribut för att välja vilken profil som användaren ska få:

Klicka på Configure Attribute och välj sedan:

Vendor-assigned attribute number: 6
Attribute format:String
Attribute value: <Profile name som vi skapade tidigare> (ITS eller ITO)

För att sedan lägga till access till ADOM root så lägger vi till ytterligare ett attribut på samma ställe. Notera dock att vi använder nummer 3 istället för 6:


Sedan är det bara att fortsätta att lägga till ett attribut för varje ADOM som denna typ av administratör ska ha tillgång till. Vill du att denna administratör ska få tillgång till samtliga ADOMar som admin-profilen godkänner så är det “all_adoms” som ska in där. Alla attribut som du kan använda hittar du i CLI’t under config system admin user > edit ADMIN och set adom <adom>.

När även denna profil är klar kan det se ut så här:

Det kommer att finnas en policy för varje admin-profil du skapade tidigare då detta behöver skickas tillbaka i RADIUS-svaret.

Sedan är det bara att verifiera att det fungerar med ett konto som är medlem i den grupp du har specat i policyn. Om allt fungerar som det ska så får du först skriva in ditt lösenord för att sedan få antingen en push-notis eller ett fält för att skriva in din MFA kod.

Tankar och reflektioner

Under denna implementation stötte jag på en del problem. Till att börja med så hade jag problem med mitt ad-kontos lösenord eller om det är något annat som är problematiskt med mitt konto. Alla kollegor som har testat fungerar det för, men jag själv får inte mitt konto att fungera. Orsaken till problemet var att mitt konto var felkonfigurerat där mitt UPN var felaktigt. När detta var rättat, från pero till per.rosenlind så började även mitt konto fungera. Fortfarande oklart om NPSen klarar av att hantera ÅÄÖ, men det överlåter jag tilll någon annan att utreda.

Sedan till det som jag själv har kunnat påverka, och det är framförallt inställningarna i Network Policyn, som, om du skriver fel, inte kommer att gå igenom. Som det verkar så är allt du skriver in under Vendor-Specific attributes case-sensitive och behöver matcha redan befintliga attribut i FortiManagern. Gör dessa inte detta så kommer det inte att fungera. Då profilerna jag har skapat i denna artikel är två profiler som ska ha tillgång till samtliga ADOM’ar så använder jag mig utav “all_adoms” för att inte behöva justera/lägga till varenda ADOM som dessa profiler ska få managera.