Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)
Vamos considerar na prática o uso do Windows Active Directory + NPS (2 servidores para garantir tolerância a falhas) + padrão 802.1x para controle de acesso e autenticação de usuários - computadores de domínio - dispositivos. Você pode conhecer a teoria segundo o padrão da Wikipedia, no link: IEEE802.1X

Como meu “laboratório” tem recursos limitados, as funções de NPS e controlador de domínio são compatíveis, mas recomendo que você ainda separe esses serviços críticos.

Não conheço maneiras padrão de sincronizar as configurações (políticas) do Windows NPS, então usaremos scripts do PowerShell iniciados pelo agendador de tarefas (o autor é meu ex-colega). Para autenticação de computadores de domínio e para dispositivos que não podem 802.1x (telefones, impressoras, etc.), a política de grupo será configurada e grupos de segurança serão criados.

No final do artigo, falarei sobre algumas das complexidades de trabalhar com 802.1x - como você pode usar switches não gerenciados, ACLs dinâmicas, etc. .

Vamos começar instalando e configurando o NPS de failover no Windows Server 2012R2 (tudo é igual em 2016): através do Gerenciador de Servidores -> Assistente para Adicionar Funções e Recursos, selecione apenas Servidor de Política de Rede.

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

ou usando o PowerShell:

Install-WindowsFeature NPAS -IncludeManagementTools

Um pequeno esclarecimento - já que por EAP protegido (PEAP) você definitivamente precisará de um certificado confirmando a autenticidade do servidor (com direitos de uso apropriados), que será confiável nos computadores clientes, então provavelmente você precisará instalar a função Autoridade de Certificação. Mas vamos supor que CA você já tem ele instalado...

Vamos fazer o mesmo no segundo servidor. Vamos criar uma pasta para o script C:Scripts em ambos os servidores e uma pasta de rede no segundo servidor SRV2NPS-config$

Vamos criar um script PowerShell no primeiro servidor C:ScriptsExport-NPS-config.ps1 com o seguinte conteúdo:

Export-NpsConfiguration -Path "SRV2NPS-config$NPS.xml"

Depois disso, vamos configurar a tarefa no Task Sheduler: “Exportar-NpsConfiguração"

powershell -executionpolicy unrestricted -f "C:ScriptsExport-NPS-config.ps1"

Executar para todos os usuários – Executar com direitos mais altos
Diariamente - Repita a tarefa a cada 10 minutos. dentro de 8 horas

No NPS de backup, configure a importação de configuração (políticas):
Vamos criar um script do PowerShell:

echo Import-NpsConfiguration -Path "c:NPS-configNPS.xml" >> C:ScriptsImport-NPS-config.ps1

e uma tarefa para executá-lo a cada 10 minutos:

powershell -executionpolicy unrestricted -f "C:ScriptsImport-NPS-config.ps1"

Executar para todos os usuários – Executar com direitos mais altos
Diariamente - Repita a tarefa a cada 10 minutos. dentro de 8 horas

Agora, para verificar, vamos adicionar ao NPS em um dos servidores (!) alguns switches em clientes RADIUS (IP e Segredo Compartilhado), duas políticas de solicitação de conexão: Conexão com fio (Condição: “O tipo de porta NAS é Ethernet”) e WiFi-Enterprise (Condição: “O tipo de porta NAS é IEEE 802.11”), bem como a política de rede Acesse dispositivos de rede Cisco (Administradores de rede):

Условия:
Группы Windows - domainsg-network-admins
Ограничения:
Методы проверки подлинности - Проверка открытым текстом (PAP, SPAP)
Параметры:
Атрибуты RADIUS: Стандарт - Service-Type - Login
Зависящие от поставщика - Cisco-AV-Pair - Cisco - shell:priv-lvl=15

No lado do switch, as seguintes configurações:

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

Após a configuração, após 10 minutos, todos os parâmetros da política do cliente deverão aparecer no NPS de backup e poderemos fazer login nos switches usando uma conta ActiveDirectory, membro do grupo domainsg-network-admins (que criamos antecipadamente).

Vamos prosseguir com a configuração do Active Directory - criar políticas de grupo e senha, criar os grupos necessários.

Política de grupo Computadores-8021x-Configurações:

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

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Vamos criar um grupo de segurança sg-computadores-8021x-vl100, onde adicionaremos os computadores que queremos distribuir para a vlan 100 e configuraremos a filtragem da política de grupo criada anteriormente para este grupo:

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Você pode verificar se a política funcionou com sucesso abrindo “Centro de Rede e Compartilhamento (Configurações de Rede e Internet) – Alterando as configurações do adaptador (Configurando as configurações do adaptador) – Propriedades do Adaptador”, onde podemos ver a guia “Autenticação”:

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Quando estiver convencido de que a política foi aplicada com êxito, você poderá prosseguir com a configuração da política de rede no NPS e nas portas do switch de nível de acesso.

Vamos criar uma política de rede neag-computadores-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)

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Configurações típicas para a porta do switch (tenha em atenção que é utilizado o tipo de autenticação “multi-domínio” – Dados & Voz, existindo também a possibilidade de autenticação por endereço mac. Durante o “período de transição” faz sentido utilizar no parâmetros:


authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100

O id da vlan não é de “quarentena”, mas sim aquele para onde o computador do usuário deve ir após o login bem-sucedido - até termos certeza de que tudo está funcionando como deveria. Esses mesmos parâmetros podem ser usados ​​em outros cenários, por exemplo, quando um switch não gerenciado está conectado a esta porta e você deseja que todos os dispositivos conectados a ele que não passaram na autenticação caiam em uma determinada vlan (“quarentena”).

alternar configurações de porta no modo de host 802.1x modo multidomínio

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

Você pode ter certeza de que seu computador e telefone foram aprovados na autenticação com o comando:

sh authentication sessions int Gi1/0/39 det

Agora vamos criar um grupo (por exemplo, sg-fgpp-mab ) no Active Directory para telefones e adicione um dispositivo para teste (no meu caso é Grandstream GXP2160 com endereço mas 000b.82ba.a7b1 e resp. conta domínio 00b82baa7b1).

Para o grupo criado, reduziremos os requisitos da política de senha (usando Políticas de senha refinadas via Centro Administrativo do Active Directory -> domínio -> Sistema -> Contêiner de configurações de senha) com os seguintes parâmetros Configurações de senha para MAB:

Configurando 802.1X em switches Cisco usando Failover NPS (Windows RADIUS com AD)

Assim, permitiremos o uso de endereços mas de dispositivos como senhas. Depois disso podemos criar uma política de rede para o método 802.1x de autenticação mab, vamos chamá-lo de neag-devices-8021x-voice. Os parâmetros são os seguintes:

  • Tipo de porta NAS – Ethernet
  • Grupos do Windows – sg-fgpp-mab
  • Tipos EAP: Autenticação não criptografada (PAP, SPAP)
  • Atributos RADIUS – Específicos do fornecedor: Cisco – Cisco-AV-Pair – Valor do atributo: device-traffic-class=voice

Após a autenticação bem-sucedida (não se esqueça de configurar a porta do switch), vejamos as informações da porta:

autenticação sh 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

Agora, como prometido, vejamos algumas situações não totalmente óbvias. Por exemplo, precisamos conectar computadores e dispositivos de usuários por meio de um switch não gerenciado (switch). Nesse caso, as configurações da porta serão assim:

alternar configurações de porta no modo de autenticação múltipla do modo host 802.1x

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

PS: notamos uma falha muito estranha - se o dispositivo foi conectado através de tal switch e, em seguida, foi conectado a um switch gerenciado, ele NÃO funcionará até reiniciarmos (!) o switch. Não encontrei nenhuma outra maneira para resolver esse problema ainda.

Outro ponto relacionado ao DHCP (se a espionagem ip dhcp for usada) - sem essas opções:

ip dhcp snooping vlan 1-100
no ip dhcp snooping information option

Por alguma razão não consigo obter o endereço IP corretamente... embora isso possa ser um recurso do nosso servidor DHCP

E Mac OS e Linux (que possuem suporte nativo 802.1x) tentam autenticar o usuário, mesmo que a autenticação por endereço Mac esteja configurada.

Na próxima parte do artigo veremos o uso de 802.1x para Wireless (dependendo do grupo ao qual pertence a conta do usuário, iremos “lançá-la” na rede correspondente (vlan), embora eles se conectem a o mesmo SSID).

Fonte: habr.com

Adicionar um comentário