FreeRADIUS + PostgreSQL 10

Publicado por Tiago Eduardo de Castro em 31/07/2018

[ Hits: 5.978 ]

 


FreeRADIUS + PostgreSQL 10



Nesta dica irei compartilhar compilação e configuração de um servidor Freeradius 3.0.16 utilizando a distribuição CentOS. Como o serviço é instalado por meio de compilação, a escolha da distro fica de acordo com a preferencia de cada administrador de sistema. Embora a compilação da aplicação seja simples para usuários com experiência em Linux, irei mostrar alguns detalhes para adicionar suporte ao PostgreSQL na versão 10.

Uma vantagem de compilar serviços comparado a uma pré-instalação via gerenciador de pacotes é, um ganho na performance e garantia de que as dependências de software sejam satisfeitas, além de proporcionar uma melhor experiência com o sistema operacional (aumentamos nosso conhecimento em Linux). Mas vamos lá, não vou ir além da proposta da dica, achei interessante compartilhar uma dificuldade que tive e a solução que encontrei durante a instalação e configuração dos serviços em questão.

Utilizei CentOS 7, freeRADIUS 3.0.16 e PostgreSQL 10, e começando a instalação é necessário instalar algumas dependências de software e os compiladores pelo yum conforme os comandos listados abaixo:

# yum install gcc-* && yum install cmake-* && yum install libtalloc-* && yum install openssl-* && yum install wget vim

Após as instalações via gerenciador de pacotes estamos prontos para compilar o freeRADIUS, porém ainda não instalamos o banco de dados que é a segunda parte, vamos lá!

Repositório RPM:

# yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

Eu optei por instalar todos os pacotes do postgresql10 com *:

# yum install postgresql10-*

Ativação do serviços no CentOS 7:

# /usr/pgsql-10/bin/postgresql-10-setup initdb
# systemctl enable postgresql-10
# systemctl start postgresql-10


Baixando o pacote freeRADIUS:

# cd /opt
# wget -c ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-3.0.16.tar.gz tar xvzf freeradius-server-3.0.16.tar.gz
# tar xvzf freeradius-server-3.0.16.tar.gz


Agora vamos finalmente entender o objetivo do artigo, chegamos na hora de compilar o freeRADIUS com suporte ao Postgresql10, seguem os passos.

Primeiro alterar o arquivo "configure" com editor de texto de sua preferência:

# vim /opt/freeradius-server-3.0.16/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure

Na linha 2684 adicione o local correto "/usr/pgsql-10/include" (substitua o caminho existente), seguindo na linha 2981 "/usr/pgsql-10/lib" e finalizando linha 3115 adicione "/usr/pgsql-10/lib /opt/lib". Simplesmente no código freeRADIUS o caminho não vem correto pra versão do Postgresql10, talvez nas próximas versões não seja necessário esse procedimento, feito isso basta compilar e instalar o freeRADIUS que tudo vai funcionar corretamente.

# cd /opt/freeradius-server-3.0.16
# ./configure --with-rlm_sql_postgresql
<<< modulo postgresql
# make
# make install


Referências de instalação do PostgreSQL:
Site freeRADIUS oficial para demais informações:
Pronto! O servidor freeRADIUS está pronto para operar com alta performance, lembrando que é necessário também ajustes a nível de rede e sistema bem como dimensionamento de hardware servidor de acordo com a operação, essa configuração que demonstrei foi destinada a um ISP para controle e autenticação de usuários via PPPoE.

Qualquer dúvida encaminhar por e-mail tecinfo.lpi@gmail.com.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Apache autenticando primeira página "/"

Conectando-se à internet usando AIKO82D VIVO/MG no Ubuntu Linux 8.10 via NetwokManager

Sites úteis para novatos

Picocom - Gravando dados enviados via USB pelo Arduino

Hardening de servidores

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts