Oglejmo si v praksi uporabo Windows Active Directory + NPS (2 strežnika za zagotavljanje tolerance napak) + 802.1x standard za nadzor dostopa in avtentikacijo uporabnikov - domenskih računalnikov - naprav. S teorijo po standardu se lahko seznanite na Wikipediji, na povezavi:
Ker je moj "laboratorij" omejen z viri, sta vlogi NPS in krmilnika domene združljivi, vendar priporočam, da vseeno ločite tako kritične storitve.
Ne poznam standardnih načinov za sinhronizacijo Windows NPS konfiguracij (pravilnikov), zato bomo uporabili skripte PowerShell, ki jih zažene razporejevalnik opravil (avtor je moj bivši kolega). Za preverjanje pristnosti domenskih računalnikov in naprav, ki ne morejo 802.1x (telefoni, tiskalniki itd.), bo konfiguriran pravilnik skupine in ustvarjene varnostne skupine.
Na koncu članka vam bom povedal o nekaterih zapletenosti dela z 802.1x - kako lahko uporabite neupravljana stikala, dinamične ACL-je itd. Delil bom informacije o "napakah", ki so bile ujete. .
Začnimo z namestitvijo in konfiguracijo samodejnega preklopa NPS na Windows Server 2012R2 (v 2016 je vse enako): prek upravitelja strežnika -> čarovnika za dodajanje vlog in funkcij izberite samo strežnik omrežne politike.
ali z uporabo PowerShell:
Install-WindowsFeature NPAS -IncludeManagementTools
Majhno pojasnilo - saj za Zaščiten EAP (PEAP) vsekakor boste potrebovali certifikat, ki potrjuje pristnost strežnika (z ustreznimi pravicami za uporabo), ki bo zaupanja vreden na odjemalskih računalnikih, potem boste najverjetneje morali namestiti vlogo Certifikacijski organ. Ampak to bomo domnevali CA že imaš nameščeno...
Naredimo enako na drugem strežniku. Ustvarimo mapo za skript C:Scripts na obeh strežnikih in omrežno mapo na drugem strežniku SRV2NPS-config$
Ustvarimo skript PowerShell na prvem strežniku C:ScriptsExport-NPS-config.ps1 z naslednjo vsebino:
Export-NpsConfiguration -Path "SRV2NPS-config$NPS.xml"
Po tem konfigurirajmo nalogo v razporejevalniku opravil: "Export-NpsConfiguration"
powershell -executionpolicy unrestricted -f "C:ScriptsExport-NPS-config.ps1"
Zagon za vse uporabnike - Zagon z najvišjimi pravicami
Dnevno – Nalogo ponovite vsakih 10 minut. v 8 urah
Na rezervnem NPS konfigurirajte uvoz konfiguracije (pravilnikov):
Ustvarimo skript PowerShell:
echo Import-NpsConfiguration -Path "c:NPS-configNPS.xml" >> C:ScriptsImport-NPS-config.ps1
in nalogo, ki jo je treba izvesti vsakih 10 minut:
powershell -executionpolicy unrestricted -f "C:ScriptsImport-NPS-config.ps1"
Zagon za vse uporabnike - Zagon z najvišjimi pravicami
Dnevno – Nalogo ponovite vsakih 10 minut. v 8 urah
Zdaj, da preverimo, dodajmo NPS na enem od strežnikov (!) nekaj stikal v odjemalcih RADIUS (IP in Shared Secret), dve politiki zahtev za povezavo: ŽIČNA povezava (Pogoj: »Vrsta vrat NAS je Ethernet«) in WiFi-Enterprise (Pogoj: »Vrsta vrat NAS je IEEE 802.11«), kot tudi pravilnik omrežja Dostop do omrežnih naprav Cisco (omrežni skrbniki):
Условия:
Группы Windows - domainsg-network-admins
Ограничения:
Методы проверки подлинности - Проверка открытым текстом (PAP, SPAP)
Параметры:
Атрибуты RADIUS: Стандарт - Service-Type - Login
Зависящие от поставщика - Cisco-AV-Pair - Cisco - shell:priv-lvl=15
Na strani stikala naslednje nastavitve:
aaa new-model
aaa local authentication attempts max-fail 5
!
!
aaa group server radius NPS
server-private 192.168.38.151 auth-port 1812 acct-port 1813 key %shared_secret%
server-private 192.168.10.151 auth-port 1812 acct-port 1813 key %shared_secret%
!
aaa authentication login default group NPS local
aaa authentication dot1x default group NPS
aaa authorization console
aaa authorization exec default group NPS local if-authenticated
aaa authorization network default group NPS
!
aaa session-id common
!
identity profile default
!
dot1x system-auth-control
!
!
line vty 0 4
exec-timeout 5 0
transport input ssh
escape-character 99
line vty 5 15
exec-timeout 5 0
logging synchronous
transport input ssh
escape-character 99
Po konfiguraciji, po 10 minutah, bi se morali na rezervnem NPS-ju prikazati vsi parametri pravilnika strank in v stikala se bomo lahko prijavili z računom ActiveDirectory, članom skupine domainsg-network-admins (ki smo jo ustvarili vnaprej).
Preidimo na nastavitev Active Directory - ustvarite pravilnike skupin in gesel, ustvarite potrebne skupine.
Politika skupine Računalniki-8021x-Nastavitve:
Computer Configuration (Enabled)
Policies
Windows Settings
Security Settings
System Services
Wired AutoConfig (Startup Mode: Automatic)
Wired Network (802.3) Policies
NPS-802-1x
Name NPS-802-1x
Description 802.1x
Global Settings
SETTING VALUE
Use Windows wired LAN network services for clients Enabled
Shared user credentials for network authentication Enabled
Network Profile
Security Settings
Enable use of IEEE 802.1X authentication for network access Enabled
Enforce use of IEEE 802.1X authentication for network access Disabled
IEEE 802.1X Settings
Computer Authentication Computer only
Maximum Authentication Failures 10
Maximum EAPOL-Start Messages Sent
Held Period (seconds)
Start Period (seconds)
Authentication Period (seconds)
Network Authentication Method Properties
Authentication method Protected EAP (PEAP)
Validate server certificate Enabled
Connect to these servers
Do not prompt user to authorize new servers or trusted certification authorities Disabled
Enable fast reconnect Enabled
Disconnect if server does not present cryptobinding TLV Disabled
Enforce network access protection Disabled
Authentication Method Configuration
Authentication method Secured password (EAP-MSCHAP v2)
Automatically use my Windows logon name and password(and domain if any) Enabled
Ustvarimo varnostno skupino sg-računalniki-8021x-vl100, kjer bomo dodali računalnike, ki jih želimo razdeliti v vlan 100 in konfigurirali filtriranje za predhodno ustvarjeno skupinsko politiko za to skupino:
Če pravilnik deluje uspešno, lahko preverite tako, da odprete »Center za omrežje in skupno rabo (Omrežne in internetne nastavitve) – Spreminjanje nastavitev adapterja (Konfiguriranje nastavitev adapterja) – Lastnosti adapterja«, kjer lahko vidimo zavihek »Preverjanje pristnosti«:
Ko ste prepričani, da je pravilnik uspešno uporabljen, lahko nadaljujete z nastavitvijo omrežnega pravilnika na NPS in vratih stikala ravni dostopa.
Ustvarimo omrežno politiko neag-računalniki-8021x-vl100:
Conditions:
Windows Groups - sg-computers-8021x-vl100
NAS Port Type - Ethernet
Constraints:
Authentication Methods - Microsoft: Protected EAP (PEAP) - Unencrypted authentication (PAP, SPAP)
NAS Port Type - Ethernet
Settings:
Standard:
Framed-MTU 1344
TunnelMediumType 802 (includes all 802 media plus Ethernet canonical format)
TunnelPrivateGroupId 100
TunnelType Virtual LANs (VLAN)
Tipične nastavitve za vrata stikala (upoštevajte, da je uporabljen tip avtentikacije »multi-domain« – Data & Voice, obstaja pa tudi možnost avtentikacije po mac naslovu. V »prehodnem obdobju« je smiselno uporabljati v parametri:
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
Vlan ID ni »karantenski«, temveč isti, kamor bi moral iti uporabnikov računalnik po uspešni prijavi - dokler nismo prepričani, da vse deluje kot mora. Te iste parametre je mogoče uporabiti v drugih scenarijih, na primer, ko je neupravljano stikalo priključeno na ta vrata in želite, da vse naprave, povezane z njim, ki niso prestale preverjanja pristnosti, spadajo v določeno vlan (»karanteno«).
preklopite nastavitve vrat v načinu gostitelja 802.1x z več domenami
default int range Gi1/0/39-41
int range Gi1/0/39-41
shu
des PC-IPhone_802.1x
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 2
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-domain
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
lldp receive
lldp transmit
spanning-tree portfast
no shu
exit
Da sta vaš računalnik in telefon uspešno prestala preverjanje pristnosti, se lahko prepričate z ukazom:
sh authentication sessions int Gi1/0/39 det
Zdaj pa ustvarimo skupino (npr. sg-fgpp-mab ) v imeniku Active Directory za telefone in mu dodajte eno napravo za testiranje (v mojem primeru je to Grandstream GXP2160 z mas naslovom 000b.82ba.a7b1 in oz. račun domena 00b82baa7b1).
Za ustvarjeno skupino bomo znižali zahteve politike gesel (z uporabo
Tako bomo dovolili uporabo mas naslovov naprav kot gesel. Po tem lahko ustvarimo omrežno politiko za preverjanje pristnosti metode 802.1x mab, poimenujmo jo neag-devices-8021x-voice. Parametri so naslednji:
- Vrsta vrat NAS – Ethernet
- Skupine Windows – sg-fgpp-mab
- Vrste EAP: Nešifrirana avtentikacija (PAP, SPAP)
- Atributi RADIUS – Specifično za prodajalca: Cisco – Cisco-AV-Pair – Vrednost atributa: device-traffic-class=voice
Po uspešnem preverjanju pristnosti (ne pozabite konfigurirati vrat stikala) si poglejmo informacije iz vrat:
sh overjanje se int Gi1/0/34
----------------------------------------
Interface: GigabitEthernet1/0/34
MAC Address: 000b.82ba.a7b1
IP Address: 172.29.31.89
User-Name: 000b82baa7b1
Status: Authz Success
Domain: VOICE
Oper host mode: multi-domain
Oper control dir: both
Authorized By: Authentication Server
Session timeout: N/A
Idle timeout: N/A
Common Session ID: 0000000000000EB2000B8C5E
Acct Session ID: 0x00000134
Handle: 0xCE000EB3
Runnable methods list:
Method State
dot1x Failed over
mab Authc Success
Zdaj pa, kot obljubljeno, poglejmo nekaj ne povsem očitnih situacij. Uporabniške računalnike in naprave moramo na primer povezati prek neupravljanega stikala (stikala). V tem primeru bodo nastavitve vrat zanj videti takole:
preklopite nastavitve vrat v načinu gostitelja 802.1x z več preverjanji
interface GigabitEthernet1/0/1
description *SW – 802.1x – 8 mac*
shu
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 8 ! увеличиваем кол-во допустимых мас-адресов
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-auth ! – режим аутентификации
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
spanning-tree portfast
no shu
P.S. opažena je bila zelo nenavadna napaka - če je bila naprava povezana prek takšnega stikala in je bila nato priključena na upravljano stikalo, potem NE bo delovala, dokler stikala znova ne zaženemo(!). Nisem našel nobenega drugega načina za še rešiti ta problem.
Še ena točka, povezana z DHCP (če se uporablja ip dhcp snooping) - brez teh možnosti:
ip dhcp snooping vlan 1-100
no ip dhcp snooping information option
Iz nekega razloga ne morem dobiti pravilnega naslova IP ... čeprav je to morda značilnost našega strežnika DHCP
In Mac OS & Linux (ki imata domačo podporo 802.1x) poskušata overiti uporabnika, tudi če je konfigurirano preverjanje pristnosti z naslovom Mac.
V naslednjem delu članka si bomo ogledali uporabo 802.1x za Wireless (odvisno od skupine, kateri pripada uporabniški račun, ga bomo “vrgli” v ustrezno omrežje (vlan), čeprav se bodo povezovali na isti SSID).
Vir: www.habr.com