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.
Nenhum comentário foi encontrado.