Child pages
  • IdP eduroam FreeRadius v3 com AD

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

 

Toggle Cloak
1. Configuração da autenticação FreeRadius 3 com AD


 

 

Cloak
Nota
  • A instalação do AD e sua configuração foram suprimidas
  • Esta tarefa permite a autenticação via NTML através do AD (Active Directory).
  • Será necessário configurar o Kerberos, Samba e o Winbind no servidor.
  • Ingressaremos o servidor FreeRADIUS no domínio <DOMINIO_AD> como um servidor Windows
  • O nome do novo servidor eduroam não pode ultrapassar de 15 caracteres, o samba não aceita, e o mesmo deve estar inserido dentro do arquivo /etc/hosts com o IP e o domínio (do AD) completo.
    exemplo:
    200.100.10.10     eduroam.rnp.local
  • Dentro do arquivo /etc/resolv.conf informe o dominio e o ip do seu servidor principal do AD, conforme exemplo abaixo:

    search rnp.local

    domain rnp.local

    nameserver 200.130.77.1

    nameserver 200.130.77.2

    nameserver 200.130.77.3

    nameserver 200.130.77.4

     

     




Variáveis a serem substituídas no tutorial por valores particulares de sua instituição:

Para este tutorial teremos as variáveis e seus respectivos valores para um domínio ufjf.br do Windows

  • <ENDERECO_AD> = IP DO SERVIDOR AD
  • <dominio_ad> = ufjf.br (domínio em minúscula)
  • <DOMINIO_AD> = UFJF.BR (domínio em maiúscula)
  • <DOMINIO> = UFJF (apenas o valor antes do .br)
  • <login.adm> = Administrador do AD no domínio

Firewall

  • Portas que devem estar abertas no seu servidor AD
  • TCP e UDP: 88, 389, 464

1.1 Instalando pacotes necessários

1.2 Adicionando o grupo referente ao WINBIND para o usuário freerad do FreeRadius e alterando permissões de pasta

1.3 Teste sobre resposta à consulta DNS para o servidor AD

1.3.1 Exemplo de comando para consulta DNS

1.3.2 Exemplo de retorno corretamente configurado

1.3.1 Exemplo de retorno com erro 

 

Só avance do passo 1.3 para o passo 1.4 se os testes funcionarem.

Caso tenha tido algum problema, verifique a configuração do seu DNS para consulta ao FQDN do servidor AD de sua instituição.

 1.4 Configurando o NTP para sincronização de hora entre os servidores Linux e Windows AD

1.5 Editando o Kerberos para responder pelo domínio local

1.5.1 Editando o arquivo de realms

1.5.2 Insira o conteúdo no bloco realms

Um exemplo de conteúdo do bloco em uma instituição real pode ser visto clicando aqui

 

1.5.3 Adicione, no mesmo arquivo /etc/krb5.conf o conteúdo do bloco domain_realm

1.6 Realizando teste de autenticação

Informa um usuário válido para o teste

1.6.1 Inicializando autenticação com usuário válido no AD. Execute o comando

1.6.2 Verificando o resultado. Execute o comando

1.6.3 A saída esperada é

1.7 Editando os arquivos referentes ao SAMBA

1.7.1 editando o /etc/samba/smb.conf

1.7.2 O conteúdo do arquivo smb.conf deve ser exatamente

Para testar utilize o comando abaixo:

O resultado deve ser:


Como vemos acima temos uma linha informando que precisamos alterar a variável rlimit_max de 1024 para 16384
execute o seguinte comando abaixo:

Para testar abra um novo terminal e volte a executar o comando abaixo e compare o resultado.

O resultado deve ser:

 

1.7.3 Reiniciando os serviços WINBIND e SAMBA

1.7.4 Editando o arquivo nsswitch.conf

1.7.4.1 Entre no arquivo

1.7.4.2 Edite as linhas para que tenham o conteúdo

Salve e saia do arquivo acima

1.7.5.1 Insira a maquina em seu servidor de DNS de seu AD
execute o comando:


1.7.5.2 Insira a conta do servidor no domínio, considerando “<login.adm>” como seu Administrador de Domínio AD

Importante: Preferencialmente crie um novo usuário no AD para associar com o samba. Este usuário não pode expirar, se a conta do usuário expirar o IDP Eduroam perde acesso ao seu servidor AD.
execute o comando:

1.8 Teste de ingresso no domínio

1.8.1 Execute o comando

1.8.2 Resultado esperado para o comando 

1.8.3 Teste de login de usuário no domínio AD local. Onde, se deve ter a credencial no formato "login%senha".

1.8.4 Resultado esperado para o comando

1.8.5 Teste de autenticação usando a ferramenta ntlm_auth. Observe que novamente utiliza-se o usuário já cadastrado na base do AD, pertencente àquele domínio

1.8.5.1 Execute o comando

1.8.5.2 Resultado esperado para o comando

1.9 Configurando o FreeRadius 3.0

1.9.1 Edite o arquivo /etc/freeradius/mods-available/ntlm_auth para que ele tenha exatamente o conteúdo a seguir, respeitando o valor da variável <DOMINIO> seu ambiente.

1.9.2 Edite também o arquivo /etc/freeradius/mods-available/mschap para que tenha exatamente o conteúdo a seguir, respeitando o valor da variável <DOMINIO> seu ambiente.

1.9.3 Edite os arquivos /etc/freeradius/sites-enabled/default e /etc/freeradius/sites-enabled/inner-tunnel para que tenham o módulo ntlm_auth carregado para autenticação

1.9.3.1 Editando o arquivo /etc/freeradius/sites-enabled/default

1.9.3.2 Adicionando o conteúdo no bloco authenticate

1.9.3.4 Editando o arquivo /etc/freeradius/sites-enabled/inner-tunnel

1.9.3.5 Adicionando o conteúdo no bloco authenticate

1.10 Reiniciando o serviço FreeRadius

 

1.11 Teste final. Realize a autenticação por radtest a partir de um usuário existe no AD.