Freeradius 2.x.x - Monitoração
Publicado por Tiago MDR (última atualização em 04/07/2010)
[ Hits: 7.932 ]
Download 1277760709.freeradius_status.sh (versão 2)
Olá a todos do vivaolinux!
Aqui vai a minha primeira contribuição para o site através de um script simples para a monitoração do Freeradius (no caso a versão utilizada é a 2.1.8).
Antes de mais nada, estou assumindo que você tenha um servidor de Freeradius pronto e funcionando.
Como a maioria já deve saber, a partir da versão 2 do Freeradius o SNMP não é mais suportado e a monitoração só é possivel via comando :(
Antes de executar o script abaixo, ***LEIA*** o Wiki http://wiki.freeradius.org/Status e o README dos scripts no fonte do Freeradius. Isso é importante devido a dois fatores:
1º - É necessario ativar essa monitoração (conforme descrito no link acima); e
2º - O comando descrito no site NÃO funciona. Eu, pelo menos, tentei de tudo quanto é forma, mas não deu certo, sendo assim, caso tenha curiosidade, com algumas modificações o comando passa a funcionar:
echo "Message-Authenticator = 0x00, FreeRADIUS-Statistics-Type = 35, FreeRADIUS-Stats-Client-IP-Address = 127.0.0.1, FreeRADIUS-Stats-Server-IP-Address = 127.0.0.1, FreeRADIUS-Stats-Server-Port = 1812" | radclient 127.0.0.1:18120 status adminsecret
O comando acima retornará, os seguintes valores de amostra:
Received response ID 52, code 2, length = 224
FreeRADIUS-Total-Access-Requests = 25
FreeRADIUS-Total-Access-Accepts = 69
FreeRADIUS-Total-Access-Rejects = 16
FreeRADIUS-Total-Access-Challenges = 0
FreeRADIUS-Total-Auth-Responses = 85
FreeRADIUS-Total-Auth-Duplicate-Requests = 0
FreeRADIUS-Total-Auth-Malformed-Requests = 0
FreeRADIUS-Total-Auth-Invalid-Requests = 0
FreeRADIUS-Total-Auth-Dropped-Requests = 0
FreeRADIUS-Total-Auth-Unknown-Types = 0
FreeRADIUS-Total-Accounting-Requests = 15
FreeRADIUS-Total-Accounting-Responses = 15
FreeRADIUS-Total-Acct-Duplicate-Requests = 0
FreeRADIUS-Total-Acct-Malformed-Requests = 0
FreeRADIUS-Total-Acct-Invalid-Requests = 0
FreeRADIUS-Total-Acct-Dropped-Requests = 0
FreeRADIUS-Total-Acct-Unknown-Types = 0
ATENÇÃO: O "adminsecret" é a chave padrão para checar o status do servidor, ela pode ser alterada posteriormente.
PS1: O freeradius que utilizo atualmente foi instalado via yum em um Fedora Core 12 x64.
PS2: Coloquei os comentarios em inglês e não tive tempo de coloca-los em portugues.
Sem mais, segue o script.
Versão 2 - Enviado por Tiago MDR em 28/06/2010
Changelog: - Correção de erros ortográficos :)
- Teste realizado no Debian Lenny
Download 1277760709.freeradius_status.sh
#!/bin/sh # Sample script to collect Freeradius 2.x.x monitoration data. # ------------------------------------------------------------------------- # Tested under Fedora Core / CemtOS 5.2 / RHEL # ------------------------------------------------------------------------- # Author: Tiago Milson De Rizzo # ------------------------------------------------------------------------- # Last updated Apr/26/2010 # ------------------------------------------------------------------------- # Usage: ./freeradius_status.sh parameter # Example: ./freeradius_status.sh Access-Accepts STATS="/root/scripts/radius_stats.txt" ECHO="/bin/echo" RADCLIENT="/usr/bin/radclient" ################################### #Infos for: #Server parameters FREERAD_STS_CLI_SRV_IP="127.0.0.1" FREERAD_STS_SRV_IP="127.0.0.1" FREERAD_STS_SRV_PORT="1812" #The port 18120 needs to be enabled in the server. The Freeradius 2.x.x documentation #Tells how to do it http://wiki.freeradius.org/Status ##WARNING##WARNING##WARNING##WARNING##WARNING##WARNING##WARNING##WARNING##WARNING##WARNING## ##THE COMMAND LISTED IN THE http://wiki.freeradius.org/Status IS WRONG!!!!! ##IF YOU NEED TO EXECUTE THE CODE BY HAND, USE THE ONE LISTED BELOW THE "GENERATE STATISTICS" COMMENT ##REWRITING IT AS NEEDED #radclient parameters FREERAD_SRV_IP="127.0.0.1" FREERAD_SRV_STS_PORT="18120" FREERAD_SECRET="adminsecret" ################################### # check for valid command line parameters in the radclient output [ -z "$1" ] && exit; [ "$1" != 'Access-Accepts' \ -a "$1" != 'Access-Rejects' \ -a "$1" != 'Access-Challenges' \ -a "$1" != 'Auth-Responses' \ -a "$1" != 'Auth-Duplicate-Requests' \ -a "$1" != 'Auth-Malformed-Requests' \ -a "$1" != 'Auth-Invalid-Request' \ -a "$1" != 'Auth-Dropped-Requests' \ -a "$1" != 'Auth-Unknown-Types' \ -a "$1" != 'Accounting-Requests' \ -a "$1" != 'Accounting-Responses' \ -a "$1" != 'Acct-Duplicate-Requests' \ -a "$1" != 'Acct-Malformed-Requests' \ -a "$1" != 'Acct-Invalid-Requests' \ -a "$1" != 'Acct-Dropped-Requests' \ -a "$1" != 'Acct-Unknown-Types' \ ] && exit; #Generate statistics $ECHO "Message-Authenticator = 0x00, FreeRADIUS-Statistics-Type = 35, FreeRADIUS-Stats-Client-IP-Address = $FREERAD_STS_CLI_SRV_IP, FreeRADIUS-Stats-Server-IP-Address = $FREERAD_STS_SRV_IP, FreeRADIUS-Stats-Server-Port = $FREERAD_STS_SRV_PORT" | \ ${RADCLIENT} $FREERAD_SRV_IP:$FREERAD_SRV_STS_PORT status $FREERAD_SECRET > $STATS #Grab the file statistics and from the file generated tail -17 ${STATS}| /usr/bin/awk "/$1/ { result=\$3 } END { print result ? result : 0 }"
Backup de bases de dados individuais do PostgreSQL
Configurar Compartilhamento NFS
cofigurar a rede passando por roteador
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Jogando com Proton no LInux (0)
Ingress NGINX Controller CVSS base score of 9.8 (4)
Impossível corrigir problemas, você manteve (hold) pacotes quebrados. (2)