RADIUS - Guia rápido

Antes de começar a aprender sobre o Radius, é importante que você entenda:

  • O que é AAA?
  • O que é NAS?

Portanto, vamos primeiro ter uma ideia básica sobre esses dois tópicos.

O que é AAA?

AAA significa autenticação, autorização e contabilidade.

Autenticação

  • Refere-se à confirmação de que um usuário que está solicitando um serviço é um usuário válido.

  • Realizado através da apresentação de uma identidade e credenciais.

  • Exemplos de credenciais incluem senhas, tokens de uso único, certificados digitais e números de telefone (chamando / ligando).

Autorização

  • Refere-se à concessão de tipos específicos de serviço (incluindo "nenhum serviço") aos usuários com base em sua autenticação.

  • Pode ser baseado em restrições, por exemplo, restrições de horário, restrições de localização física ou restrições contra vários logins do mesmo usuário.

  • Os exemplos de serviços incluem filtragem de endereço IP, atribuição de endereço, atribuição de rota, criptografia, QoS / serviços diferenciais, controle de largura de banda / gerenciamento de tráfego, etc.

Contabilidade

  • Refere-se ao rastreamento do consumo de recursos de rede pelos usuários.

  • As informações típicas coletadas na contabilidade incluem a identidade do usuário, a natureza do serviço prestado, quando o serviço começou e quando terminou.

  • Pode ser usado para gerenciamento, planejamento, faturamento, etc.

O servidor AAA fornece todos os serviços acima aos seus clientes.

Protocolos AAA

Radius é um protocolo AAA para aplicações como Acesso à Rede ou Mobilidade IP. Além do Radius, temos os seguintes protocolos em AAA:

Sistema de controle de acesso ao controlador de acesso ao terminal (TACACS)

TACACS é um protocolo de autenticação remota usado para se comunicar com um servidor de autenticação comumente usado em redes Unix. O TACACS permite que um servidor de acesso remoto se comunique com um servidor de autenticação para determinar se o usuário tem acesso à rede.

TACACS +

O TACACS + fornece controle de acesso para roteadores, servidores de acesso à rede e outros dispositivos de computação em rede por meio de um ou mais servidores centralizados. Ele usa TCP e fornece serviços separados de autenticação, autorização e contabilidade. Funciona na porta 49.

DIÂMETRO

Diâmetro é uma substituição planejada de Raio.

O que é servidor de acesso à rede?

O Network Access Server (NAS) é um elemento de serviço que os clientes discam para obter acesso à rede. Um NAS é um dispositivo que possui interfaces com o backbone e com o POTS ou ISDN, e recebe chamadas de hosts que desejam acessar o backbone por meio de serviços dial-up. NAS está localizado no ponto de presença de um provedor de Internet para fornecer acesso à Internet a seus clientes.

Um servidor de acesso à rede é:

  • Um único ponto de acesso a um recurso remoto.

  • Um servidor de acesso remoto, porque permite o acesso remoto a uma rede.

  • Um ponto de entrada inicial para uma rede.

  • Um gateway para proteger o recurso protegido.

Exemplos incluem:

  • Verificação de acesso à Internet usando ID de usuário e senha.

  • VoIP, FoIP e VMoIP exigem um número de telefone ou endereço IP válido.

  • O cartão pré-pago de telefone usa o número do cartão pré-pago.

A figura a seguir mostra uma arquitetura básica do Radius.

RADIUS é um protocolo para transportar informações relacionadas à autenticação, autorização e configuração entre um servidor de acesso à rede que deseja autenticar seus links e um servidor de autenticação compartilhado.

  • RADIUS significa Serviço de usuário de discagem com autenticação remota.

  • RADIUS é um protocolo AAA para aplicações como acesso à rede ou mobilidade IP

  • Funciona em ambas as situações, Local e Móvel.

  • Ele usa protocolo de autenticação de senha (PAP), protocolo de autenticação de handshake de desafio (CHAP) ou protocolos de protocolo de autenticação extensível (EAP) para autenticar usuários.

  • Procure no arquivo de texto, servidores LDAP, banco de dados para autenticação.

  • Depois que os parâmetros dos serviços de autenticação foram devolvidos ao NAS.

  • Notifica quando uma sessão é iniciada e interrompida. Esses dados são usados ​​para fins de cobrança ou estatísticas.

  • SNMP é usado para monitoramento remoto.

  • Ele pode ser usado como um proxy.

Aqui está um diagrama de rede simples de raio:

Aqui está uma lista de todos os principais recursos do Radius:

Modelo Cliente / Servidor

  • NAS funciona como um cliente para o servidor Radius.

  • O servidor Radius é responsável por obter solicitações de conexão do usuário, autenticar o usuário e, em seguida, retornar todas as informações de configuração necessárias para o cliente entregar o serviço ao usuário.

  • Um servidor Radius pode atuar como um cliente proxy para outros servidores Radius.

Segurança de rede

  • As transações entre um cliente e um servidor são autenticadas por meio do uso de uma chave compartilhada. Essa chave nunca é enviada pela rede.

  • A senha é criptografada antes de ser enviada pela rede.

Mecanismos de autenticação flexível

O Radius suporta os seguintes protocolos para fins de autenticação:

  • Protocal Ponto a Ponto - PPP

  • Protocolo de autenticação de senha - PAP

  • Protocolo de autenticação de handshake de desafio - CHAP

  • Login UNIX Simples

Protocolo Extensível

O raio é extensível; a maioria dos fornecedores de hardware e software Radius implementa seus próprios dialetos.

O protocolo sem estado, usando UDP, é executado na porta 1812.

Antes que o cliente comece a se comunicar com o servidor Radius, é necessário que a chave secreta seja compartilhada entre o cliente e o servidor e o cliente deve ser configurado para usar o servidor Radius para obter o serviço.

Assim que o Cliente estiver configurado corretamente, então:

  • O cliente começa com solicitação de acesso.

  • O servidor envia Access-Accept, Access-Reject ou Access-Challenge.

  • O Access-Accept mantém todos os atributos necessários para fornecer serviço ao usuário.

Códigos de raio (decimais) são atribuídos da seguinte forma:

  • 1 solicitação de acesso
  • 2 Acesso-Aceitar
  • 3 Acesso-Rejeitar
  • 4 Solicitação de contabilidade
  • 5 Contabilidade-Resposta
  • 11 Acesso-desafio
  • 12 Status-Server (experimental)
  • 13 Status-Cliente (experimental)
  • 255 reservados
  • Nenhum conceito Keep Alive - bom ou ruim ??

Os códigos 4 e 5 estão relacionados à Funcionalidade de contabilidade do Radius. Os códigos 12 e 13 são reservados para uso possível.

O formato do pacote do Radius é mostrado abaixo:

Code:Tem 1 octeto (1 byte) de comprimento e identifica vários tipos de pacotes. Normalmente 1 octeto significa 1 byte.

Identifier: Novamente, isso tem 1 octeto de comprimento e ajuda na correspondência de respostas com solicitações.

Length:Tem 2 octetos de comprimento e especifica o comprimento do pacote, incluindo código, identificador, comprimento e autenticador. (O pacote mínimo é de 20 octetos e o máximo é de 4.096 octetos).

Authenticator: Isso tem 16 octetos e é preenchido no caso de algumas solicitações e respostas.

List of Attributes: Existe uma lista de mais de 63 atributos e um atributo Radius também terá um formato definido que é descrito no próximo capítulo.

Um atributo Radius consiste nas seguintes três partes:

  • Type:1 octeto de comprimento, identifica vários tipos de atributos. É um código de atributo listado abaixo.

  • Length: 1 octeto de comprimento, comprimento do atributo incluindo o tipo.

  • Value: 0 ou mais octetos de comprimento, contém informações específicas para o atributo.

Lista de atributos RADIUS

Código Atributos
1 Nome do usuário
2 Senha do usuário
3 CHAP-senha
4 Endereço NAS-IP
5 NAS-Port
6 Tipo de serviço
7 Framed-Protocol
8 Endereço IP com moldura
9 Framed-IP-Netmask
10 Framed-Routing
11 Filter-Id
12 Framed-MTU
13 Framed-Compression
14 Host-IP de login
15 Serviço de login
16 Porta de login-TCP
17 (não atribuído)
18 Responder à mensagem
19 Callback-Number
20 Callback-Id
21 (não atribuído)
22 Framed-Route
23 Framed-IPX-Network
24 Estado
25 Classe
26 Específico do fornecedor
27 Sessão expirada
28 Idle-Timeout
29 Ação de rescisão
30 Called-Station-Id
31 Calling-Station-Id
32 Identificador NAS
33 Proxy-State
34 Serviço de login-LAT
35 Login-LAT-Node 3
36 Login-LAT-Group
37 Framed-AppleTalk-Link
38 Framed-AppleTalk-Network
39 Framed-AppleTalk-Zone
40-59 (reservado para contabilidade)
60 CHAP-Challenge
61 NAS-Port-Type
62 Limite de porta
63 Login-LAT-Port

Exemplo de solicitação de raio

Vamos dar uma olhada em um exemplo de solicitação Radius:

  • O NAS em 192.168.1.16 envia um pacote UDP de solicitação de acesso ao servidor RADIUS para um usuário chamado Nemo que efetua login na porta 3 com a senha "arctangent".

  • O Request Authenticator é um número aleatório de 16 octetos gerado pelo NAS.

  • A senha do usuário é 16 octetos preenchidos no final com nulos, XORed com D5 (segredo compartilhado | Solicitar autenticador).

  • 01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb 98 f4 22 7a 01 06 6e 65 6d 6f 02 12 0d ser 70 8d 93 d4 13 ce 31 96 e4 3f 78 2a 0a ee 04 06 c0 a8 01 10 05 06 00 00 00 03

  • 1 Código = Solicitação de Acesso (1)

    1 identificador = 0

    2 Comprimento = 56

    16 Solicitar Autenticador

  • Lista de Atributos

    6 Nome de usuário = "Nemo"

    18 Usuário-Senha

    6 NAS-IP-Address = 192.168.1.16

    6 NAS-Port = 3

Exemplo de resposta de raio

Aqui está um exemplo de pacotes de resposta:

  • O servidor Radius autentica o Nemo e envia um pacote UDP de aceitação de acesso ao NAS informando-o ao telnet do Nemo para o host 192.168.1.3

  • O Autenticador de Resposta é uma soma de verificação MD5 de 16 octetos do código (2), id (0), Comprimento (38), o Autenticador de Solicitação de cima, os atributos nesta resposta e o segredo compartilhado.

  • 02 00 00 26 86 fe 22 0e 76 24 ba 2a 10 05 f6 bf 9b 55 e0 b2 06 06 00 00 00 00 01 0f 06 00 00 00 00 0e 06 c0 a8 01 03

  • 1 Código = Acesso-Aceitar (2)

    1 identificador = 0 (o mesmo que na solicitação de acesso)

    2 Comprimento = 38

    16 Response Authenticator

  • Lista de atributos:

    6 Tipo de serviço (6) = Login (1)

    6 Serviço de login (15) = Telnet (0)

    6 Host de IP de login (14) = 192.168.1.3

Diâmetro é uma substituição planejada de RADIUS. É um protocolo AAA para aplicações como acesso à rede e mobilidade IP. Listados abaixo estão alguns pontos que você precisa saber sobre o diameter:

  • Destina-se a funcionar em situações AAA locais e em roaming.

  • O diâmetro é apenas o dobro do protocolo predecessor, Radius.

  • Ele usa TCP ou SCTP e não UDP.

  • Ele usa segurança de nível de transporte (IPSEC ou TLS).

  • Possui identificador de 32 bits em vez de 8 bits.

  • Ele oferece suporte ao modo sem estado e também com estado.

  • Suporta reconhecimento de camada de aplicativo, define failover.

  • Oferece melhor suporte de roaming.

  • Ele usa AVPs.

  • Diâmetro permite definir novos comandos e atributos. É fácil estender.

O que vem a seguir?

Agora você tem um conhecimento básico de raio e diâmetro. Para obter mais conhecimento sobre esses protocolos, você precisa examinar vários RFCs e outros recursos mencionados na seção Recursos.