Mudanças entre as edições de "Servidor FreeRADIUS"
Linha 101: | Linha 101: | ||
E por último habilitar o virtual server criando um link simbólico: | E por último habilitar o virtual server criando um link simbólico: | ||
− | # ln -s /etc/freeradius/sites-available/accounting /etc/freeradius/sites-enabled/accounting | + | # ln -s /etc/freeradius/sites-available/accounting /etc/freeradius/sites-enabled/accounting |
== Debug == | == Debug == |
Edição das 15h40min de 10 de setembro de 2015
Índice
Instalação do pacote FreeRADIUS no Debian
Esta instalação foi realizada no Debian 8, mas é compatível com o Debian 7, A atual a versão do FreeRADIUS encontrada nos repositórios do Debian é a 2.2.5 .
# apt-get install freeradius freeradius-ldap
Virtual Servers
Para separar as conexões, funções e configurações, o freeradius utiliza o conceito de Virtual Servers, similar ao Virtual Hosts do Apache, os arquivos de exemplos de configurações estão na pasta /etc/freeradius/sites-available/ e os Virtual Servers ativos estão na pasta /etc/freeradius/sites-enabled/ que nada mais é que links simbólicos de arquivos do diretório sites-available.
Por padrão dois virtual servers são ativados na instalação, Default e Inner-Tunnel, para uma configuração customizada será necessário desativar o virtual server Default apenas removendo o link simbólico.
# rm /etc/freeradius/sites-enabled/default
e criar um arquivo que armazenará um virtual server contendo configurações personalizadas e específicas para a rede de Téc. Administrativos do câmpus:
# nano /etc/freeradius/sites-available/administrativos
Link para o arquivo de configuração - Administrativos.
e outro arquivo específico para rede de Alunos:
# nano /etc/freeradius/sites-available/alunos
Link para o arquivo de configuração - Alunos.
Módulo LDAP
Editar o arquivo do módulo LDAP:
# nano /etc/freeradius/modules/ldap
Link para o arquivo de configuração.
Configurações Finais
Editar o arquivo principal do freeradius e comentar as seguintes linhas:
# nano /etc/freeradius/radiusd.conf
#listen { # type = auth # ipaddr = * # ipv6addr = :: # any. ::1 == localhost # port = 0 # interface = eth0 # clients = per_socket_clients #} #listen { # type = acct # ipaddr = * # ipv6addr = :: # port = 0 # interface = eth0 # clients = per_socket_clients #}
Demais parâmetros pode-se deixar em seus valores padrão.
Habilitar os dois virtuais servers criando links simbólicos:
# ln -s /etc/freeradius/sites-available/administrativos /etc/freeradius/sites-enabled/administrativos # ln -s /etc/freeradius/sites-available/alunos /etc/freeradius/sites-enabled/alunos
Reiniciar o serviço para carregar as configurações:
# invoke-rc.d freeradius restart ou # systemctl restart freeradius
Serviço de Contabilidade (Accounting)
Habilitar o serviço de contabilidade (Accounting) é opcional.
Este procedimento irá armazenar as sessões dos usuário em um banco de dados MySQL para fins de auditoria.
# apt-get install freeradius-mysql
Criar o banco de dados "radius", usuário e atribuir as permissões:
# mysql -h IP-MYSQL-SERVER -u login -p
mysql> CREATE USER 'login'@'IP-FREERADIUS'; mysql> SET PASSWORD FOR 'login'@'IP-FREERADIUS' = PASSWORD('senha'); mysql> GRANT SELECT ON radius.* TO 'login'@'IP-FREERADIUS';
e criar as tabelas necessárias:
# mysql -h IP-MYSQL-SERVER -u login -p -b radius < /etc/freeradius/sql/mysql/schema.sql
Descomentar a seguinte linha no arquivo /etc/freeradius/radiusd.conf:
$INCLUDE sql.conf
Configurar os seguintes parâmetros no arquivo /etc/freeradius/sql.conf:
database = "mysql" server = "IP-MYSQL-SERVER" port = 3306 login = "login" password = "senha" radius_db = "radius"
Criar um Virtual Server para receber conexões do tipo accounting:
# nano /etc/freeradius/sites-available/accounting
Link para o arquivo de configuração.
E por último habilitar o virtual server criando um link simbólico:
# ln -s /etc/freeradius/sites-available/accounting /etc/freeradius/sites-enabled/accounting
Debug
Arquivo de log:
# tail -f /var/log/freeradius/radius.log
Identificar se as portas configurados estão ativas:
# netstat -anp | grep freeradius
Iniciar o freeradius em modo debug:
# /usr/sbin/freeradius -X
Possíveis problemas
Devido a um bug, é possível que o freeradius pare de autenticar usuários em uma semana de uso do software, ao analisar os logs identificou-se que o problema ocorre no rotacionamento dos logs, abaixo a alteração necessária no arquivo de configuração:
# nano /etc/logrotate.d/freeradius
/var/log/freeradius/*.log { weekly rotate 52 compress delaycompress notifempty missingok postrotate /etc/init.d/freeradius reload > /dev/null # Substituir reload por restart. endscript }