Posted by : Rafael Holanda terça-feira, 17 de setembro de 2019

Instalação do FreeRADIUS e configuração no CentOS 7


Parte 02

Instalação do servidor FreeRADIUS no CentOS 7

Antes de iniciar a instalação do freeRADIUS, primeiro verificaremos os pacotes freeRADIUS disponíveis no repositório do CentOS YUM


[root@freeradius ~]#  yum search freeradius
Loaded plugins: fastestmirror, langpacks
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast

Loading mirror speeds from cached hostfile
* base: mirror.dhakacom.com
* epel: mirror.xeonbd.com
* extras: mirror.dhakacom.com
* updates: mirror.dhakacom.com

====================== N/S matched: freeradius ===========================

freeradius-devel.i686 : FreeRADIUS development files
freeradius-devel.x86_64 : FreeRADIUS development files
freeradius-doc.x86_64 : FreeRADIUS documentation
freeradius-krb5.x86_64 : Kerberos 5 support for freeradius
freeradius-ldap.x86_64 : LDAP support for freeradius
freeradius-mysql.x86_64 : MySQL support for freeradius
freeradius-perl.x86_64 : Perl support for freeradius
freeradius-postgresql.x86_64 : Postgresql support for freeradius
freeradius-python.x86_64 : Python support for freeradius
freeradius-sqlite.x86_64 : SQLite support for freeradius
freeradius-unixODBC.x86_64 : Unix ODBC support for freeradius
freeradius-utils.x86_64 : FreeRADIUS utilities
freeradius.x86_64 : High-performance and highly configurable free RADIUS server
radcli-compat-devel.x86_64 : Development files for compatibility with radiusclient-ng and freeradius-client



O comando search mostrará os pacotes disponíveis que podem ser instalados como na saída acima. Entre os pacotes listados, instalaremos apenas os pacotes freeradius, freeradius-utils, freeradius-mysql e freeradius-perl

[root@freeradius ~]# yum install freeradius freeradius-utils freeradius-mysql freeradius-perl –y

Dentro de alguns instantes, os pacotes freeRADIUS desejados serão instalados e você receberá uma mensagem de instalação completa. Para garantir a instalação dos pacotes, execute o seguinte comando que mostrará os pacotes freeRADIUS instalados.
[root@freeradius ~] # rpm -qa | grep freeradius
freeradius-utils-3.0.13-9.el7_5.x86_64
freeradius-perl-3.0.13-9.el7_5.x86_64
freeradius-3.0.13-9.el7_5.x86_64
freeradius-mysql-3.0.13-9.el7_5.x86_64

Se você receber a mensagem acima, os pacotes necessários foram instalados com sucesso. A mensagem acima também é informada de que você está usando o freeRADIUS versão 3. Agora, verificaremos se o servidor freeRADIUS está funcionando ou não com o seguinte comando.
[root@freeradius ~]# radiusd –X
Listening on auth address * port 1812 bound to server default
Listening on acct address * port 1813 bound to server default
Listening on auth address :: port 1812 bound to server default
Listening on acct address :: port 1813 bound to server default
Listening on auth address 127.0.0.1 port 18120 bound to server inner-tunnel
Listening on proxy address * port 47697
Listening on proxy address :: port 60842
Ready to process requests

Se você recebeu a mensagem acima, seu servidor freeRADIUS está pronto para aceitar a solicitação do cliente RADIUS e fornecer resposta.Antes de iniciar a configuração, verificaremos agora se o servidor RADIUS está em execução ou não com o seguinte comando
[root@freeradius ~]# systemctl status radiusd

Se você descobriu que seu radius daemon (radiusd) não está em execução, execute o seguinte comando para iniciar o radius daemon.
[root@freeradius ~] # systemctl start radiusd

Agora você encontrará o servidor RADIUS em execução se emitir o comando status novamente. Execute também o seguinte comando para que o radius daemon possa ser executado no momento da reinicialização do sistema.
[root@freeradius ~] # systemctl enable radiusd

Sempre que você atualizar sua configuração de radius, é necessário reiniciar seu daemon de radius, caso contrário sua configuração não será aplicada. Para reiniciar ou recarregar sua configuração, execute o seguinte comando no prompt de comando do CentOS 7.
[root@freeradius ~] # systemctl restart radiusd

Servidor RADIUS escuta Solicitação de autenticação na porta UDP 1812 e Solicitação de contabilidade na porta UDP 1813. Você deve permitir essas portas no Firewall do CentOS 7.
[root@freeradius ~] # firewall-cmd --zone=public --add-service=radius

Para tornar essa configuração permanente, execute o seguinte comando.
[root@freeradius ~] # firewall-cmd --zone=public --add-service=radius --permanent


Configuração básica do servidor FreeRADIUS


Após a instalação bem-sucedida do freeRADIUS, faremos agora uma configuração básica em que localhost será definido como um dispositivo NAS (cliente RADIUS) e holanda será definido como usuário de teste. Depois de definir o cliente e o usuário de teste, usaremos o programa radtest para preencher a função de um cliente RADIUS e testar a autenticação do holanda.
O FreeRADIUS é configurado modificando os arquivos de configuração. O local padrão do arquivo de configuração do freeRADIUS no CentOS 7 é /etc/raddb . Acesse este diretório e execute o comando ls para visualizar os arquivos e diretórios de configuração disponíveis.

Para a configuração básica, os arquivos importantes são client.conf em que clientes RADIUS são definidos e usuários em que usuários RADIUS são definidos. As instruções a seguir mostram como definir cliente e usuário do radius no arquivo de configuração do cliente e do usuário.

Certifique-se de que seu diretório de trabalho seja /etc/radddb.
O FreeRADIUS inclui um cliente padrão chamado localhost. Esse cliente pode ser usado pelos programas clientes RADIUS no host local para ajudar na solução de problemas e testes.
Abra o arquivo client.conf com o editor vim (vim client.conf) e confirme se a seguinte entrada existe no customers.conf

client localhost {
ipaddr = 127.0.0.1
secret = testing123
require_message_authenticator = no
nas_type = other
}

Defina holanda como um usuário de teste do FreeRADIUS. Abra o arquivo de usuários com o editor vim (usuários do vim) e adicione as seguintes linhas na parte superior do arquivo de usuários. Verifique se a segunda e a terceira linhas são recuadas por um único caractere de tabulação.

“holanda” Cleartext-Password := “password”
     Framed-IP-Address = 172.19.0.50,
     Reply-Message = “Hello, %{User-Name}”

Recarregue o servidor freeRADIUS com o comando restart.
[root@freeradius ~]# systemctl restart radiusd

Autentique o usuário holanda usando o seguinte comando radtest, em que holanda é um usuário de teste e password é a senha do usuário holanda definida no arquivo de usuários. 127.0.0.1 (localhost) é o endereço IP do dispositivo NAS, 100 é a porta NAS e testing123 é a senha do NAS definida no arquivo client.conf.

[root@freeradius raddb]# radtest holanda password 127.0.0.1 100 testing123 
Sent Access-Request Id 118 from 0.0.0.0:52494 to 127.0.0.1:1812 length 75
     User-Name = “holanda”
     User-Password = “password”
     NAS-IP-Address = 172.19.0.62
     NAS-Port = 100
     Message-Authenticator = 0x00
     Cleartext-Password = “password”
Received Access-Accept Id 118 from 127.0.0.1:1812 to 0.0.0.0:0 length 40
     Framed-IP-Address = 172.19.0.50
     Reply-Message = “Hello, holanda”

Radtest mostrará a resposta do servidor FreeRADIUS como na saída acima. Isso significa que seu servidor freeRADIUS está completamente pronto para aceitar solicitações de clientes e usuários RADIUS.








Popular Post

Rafael Holanda. Tecnologia do Blogger.

Seguidores

Pesquisar este blog

Publicidade

- Copyright © Casa do Holanda -Casa do Holanda- Powered by Blogger - Designed by Rafael Holanda -

Google+