FreeRADIUS + PostgreSQL 10

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

[ Hits: 5.736 ]

 


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

C - Resolvendo problemas com buffers

Conexão PHP + Oracle 10g

As 10 distribuições mais populares

Java: Lendo a entrada do teclado

Conhecendo e instalando o OSS (Open Sound System)

  

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