Nagios einrichten

um die verfügbaren Radius Plugins zu testen wird Nagios am linuxclient eingerichtet:

[root@labadclient02 ~]# rpm -Uhv http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.4-1.el4.rf.i386.rpm
[root@labadclient02 ~]# yum update

installation von:

  • nagios-2.4-1.el4.rf
  • nagios-plugins-1.4.2-1.2.el4.rf
  • nagios-devel-2.4-1.el4.rf
  • nagios-plugins-nrpe-2.5.1-1.el4.rf
  • + Abhängigkeiten

Plugins

Um den Radiusserver per Nagiosplugin zu überwachen lässt sich entweder das Perl Plugin verwenden, da es dass einzige Plugin ist dass über einen NAS authentifizierung durchführt, was allerdings bei mehreren NAS zu einem dementsprechenden Overhead führen kann, oder es wird eins der anderen beiden Plugins verwendet, die beide sehr ähnlich arbeiten und direkt den Radiusserver ansprechen!

fürs Perl - Modul muss noch zusätzlich über cpan das Modul Authen::Radius nachinstalliert werden!

freeradius

Für diese Plugins sollte zusätzlich in der /etc/raddb/users ein User “nagiosadmin” angelegt werden und wenn nicht das Perl Plugin verwendet wird muss noch ein Client mit der IP des Nagiosservers in der /etc/raddb/clients.conf angelegt werden!

/etc/raddb/users
[...]
#user for nagios monitoring:

nagiosadmin      User-Password == "nagiosadmin"
        Reply-Message = "Hello, %u",
        Filter-ID == "Enterasys:version=1:mgmt=su:policy=noaccess"

[...]
/etc/raddb/clients.conf
[...]
client 141.201.43.24 {
        secret          = l1nux_r4d1us
        shortname       = nagios
        nastype     = other
}
[...]

Testen

ins Plugin Verzeichnis wechseln und die Radius Plugins testen:

[root@labadclient02 plugins]# ./check_radius_ih -r 141.201.43.16 -c 1645 -s l1nux_r4d1us -u nagiosadmin -p nagiosadmin-v -t 10 -m 'Hello, nagiosadmin'
Using the following information
-----------------
username: nagiosadmin
password: nagiosadmin
shared secret: l1nux_r4d1us
server  : 141.201.43.16
path of attributes file :
Reply t=18 l=20: Hello, nagiosadmin
OK: Access GRANTED. (code = 2) | rtt=0.0034 rttms=3.3759

configs

es werden hier nur die relevanten Konfigurationsauszüge abgedruckt!


==================/etc/nagios/minimal.cfg==================

# Commands to check the radiusserver

define command{
        command_name    check_radius_ih
        command_line    $USER1$/check_radius_ih -r $HOSTADDRESS$ -c $ARG1$ -s $ARG2$ -u $ARG3$ -p $ARG4$ -t $ARG5$ -m $
ARG6$
        }

define command{
        command_name    check_radius_adv
        command_line    $USER1$/check_radius_adv -r $HOSTADDRESS$ -c $ARG1$ -s $ARG2$ -u $ARG3$ -p $ARG4$ -t $ARG5$ -m
$ARG6$
        }


define command{
        command_name    check_radius.pl
        command_line    $USER1$/check_radius.pl -H $HOSTADDRESS$ -P $ARG1$ -s $ARG2$ -u $ARG3$ -p $ARG4$ -n $ARG5$
        }



# Define a service to check the radius authentication

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       Xradius
        service_description             Radius Authentication-ih
        is_volatile                     0
        check_period                    24x7
        max_check_attempts              4
        normal_check_interval           5
        retry_check_interval            1
        contact_groups                  admins
        notification_options            w,u,c,r
        notification_interval           960
        notification_period             24x7
        check_command                   check_radius_ih!1645!l1nux_r4d1us!nagiosadmin!nagiosadmin!10!'Hello, nagiosadmi
n'!
        }


# Define a service to check the radius authentication

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       Xradius
        service_description             Radius Authentication-adv
        is_volatile                     0
        check_period                    24x7
        max_check_attempts              4
        normal_check_interval           5
        retry_check_interval            1
        contact_groups                  admins
        notification_options            w,u,c,r
        notification_interval           960
        notification_period             24x7
        check_command                   check_radius_ih!1645!l1nux_r4d1us!nagiosadmin!nagiosadmin!10!'Hello, nagiosadmin'!
        }

# Define a service to check the radius authentication

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       Xradius
        service_description             Radius Authentication-perl
        is_volatile                     0
        check_period                    24x7
        max_check_attempts              4
        normal_check_interval           5
        retry_check_interval            1
        contact_groups                  admins
        notification_options            w,u,c,r
        notification_interval           960
        notification_period             24x7
        check_command                   check_radius.pl!1645!l1nux_r4d1us!nagiosadmin!nagiosadmin!141.201.43.115!
        }

# EOF

==================/etc/nagios/minimal.cfg==================

Screenshot

nagios.jpg

 
linux-nagios-radius.txt · Last modified: 2009/09/13 17:39 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki