<html dir="ltr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style title="owaParaStyle">P {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
</style>
</head>
<body ocsi="x">
<div dir="ltr"><font color="#000000" size="2" face="Tahoma">Hello all, first timer to Nagios here.</font></div>
<div dir="ltr"><font size="2" face="tahoma"></font> </div>
<div dir="ltr"><font size="2" face="tahoma">I've been able to get Nagios installed and running on a Ubuntu server and can access the control page either locally or remotely. I also have the windows agent running (NSClient++) on a different server. However I
 can't get the monitored server to show up in Nagios. I followed the Quickstart guide on Ubuntu (<a href="http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html">http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html</a>) and the guide to monitoring
 Windows servers (<a href="http://nagios.sourceforge.net/docs/3_0/monitoring-windows.html">http://nagios.sourceforge.net/docs/3_0/monitoring-windows.html</a>). I can verify my configuration without returning errors. After looking through the forums and archives
 of the mailing list, I wasn't able to find anything relating to this (though I know it's a rather generalized kind of problem).</font></div>
<div dir="ltr"><font size="2" face="tahoma"></font> </div>
<div dir="ltr"><font size="2" face="tahoma">When looking at the Nagios webpage, I can see the "Windows Servers" group, but there are no hosts underneath it. NSClient is using the local system as a user and does have access to the desktop. I am inexperienced
 with Ubuntu (Linux/Unix systems in general) so any and all help is greatly appreciated. However I was able to confirm that the firewall for Ubuntu was disabled.</font></div>
<div dir="ltr"><font size="2" face="tahoma"></font> </div>
<div dir="ltr"><font size="2" face="tahoma">** My windows.cfg file is:</font></div>
<div dir="ltr"><font size="2" face="tahoma"></font> </div>
<div dir="ltr">
<div class="PlainText">###############################################################################<br>
# WINDOWS.CFG - SAMPLE CONFIG FILE FOR MONITORING A WINDOWS MACHINE<br>
#<br>
# Last Modified: 06-13-2007<br>
#<br>
# NOTES: This config file assumes that you are using the sample configuration<br>
#        files that get installed with the Nagios quickstart guide.<br>
#<br>
###############################################################################<br>
###############################################################################<br>
###############################################################################<br>
#<br>
# HOST DEFINITIONS<br>
#<br>
###############################################################################<br>
###############################################################################<br>
# Define a host for the Windows machine we'll be monitoring<br>
# Change the host_name, alias, and address to fit your situation<br>
define host{<br>
        use             windows-server  ; Inherit default values from a template<br>
        host_name       DFS     ; The name we're giving to this host<br>
        alias           DFS-Windows     ; A longer name associated with the host<br>
        address         10.70.15.9  ; IP address of the host    <br>
}<br>
###############################################################################<br>
###############################################################################<br>
#<br>
# HOST GROUP DEFINITIONS<br>
#<br>
###############################################################################<br>
###############################################################################<br>
# Define a hostgroup for Windows machines<br>
# All hosts that use the windows-server template will automatically be a member of this group<br>
define hostgroup{<br>
        hostgroup_name  windows-servers ; The name of the hostgroup<br>
        alias           Windows Servers ; Long name of the group<br>
        }<br>
###############################################################################<br>
###############################################################################<br>
#<br>
# SERVICE DEFINITIONS<br>
#<br>
###############################################################################<br>
###############################################################################<br>
# Create a service for monitoring the version of NSCLient++ that is installed<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     0.3.8<br>
        check_command           check_nt!CLIENTVERSION<br>
        }<br>
# Create a service for monitoring the uptime of the server<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     Uptime<br>
        check_command           check_nt!UPTIME<br>
        }<br>
# Create a service for monitoring CPU load<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     CPU Load<br>
        check_command           check_nt!CPULOAD!-l 5,80,90<br>
        }<br>
# Create a service for monitoring memory usage<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     Memory Usage<br>
        check_command           check_nt!MEMUSE!-w 80 -c 90<br>
        }<br>
# Create a service for monitoring C:\ disk usage<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     C:\ Drive Space<br>
        check_command           check_nt!USEDDISKSPACE!-l c -w 80 -c 90<br>
        }<br>
# Create a service for monitoring the W3SVC service<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     W3SVC<br>
        check_command           check_nt!SERVICESTATE!-d SHOWALL -l W3SVC<br>
        }<br>
# Create a service for monitoring the Explorer.exe process<br>
# Change the host_name to match the name of the host you defined above<br>
define service{<br>
        use                     generic-service<br>
        host_name               DFS<br>
        service_description     Explorer<br>
        check_command           check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe<br>
        }<br>
</div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText"><font face="times new roman">** The NSC.ini file from the DFS machine (the server to be monitored):</font></div>
<div class="PlainText"><font face="times new roman"></font> </div>
<div class="PlainText">[modules]<br>
NRPEListener.dll<br>
NSClientListener.dll<br>
FileLogger.dll<br>
CheckSystem.dll<br>
CheckDisk.dll<br>
CheckEventLog.dll<br>
CheckHelpers.dll<br>
;# NSCLIENT++ MODULES<br>
;# A list with DLLs to load at startup.<br>
;  You will need to enable some of these for NSClient++ to work.<br>
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !<br>
; *                                                               *<br>
; * N O T I C E ! ! ! - Y O U   H A V E   T O   E D I T   T H I S *<br>
; *                                                               *<br>
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !<br>
FileLogger.dll<br>
CheckSystem.dll<br>
CheckDisk.dll<br>
NSClientListener.dll<br>
NRPEListener.dll<br>
SysTray.dll<br>
CheckEventLog.dll<br>
CheckHelpers.dll<br>
;CheckWMI.dll<br>
;<br>
; Script to check external scripts and/or internal aliases.<br>
CheckExternalScripts.dll<br>
;<br>
; NSCA Agent if you enable this NSClient++ will talk to NSCA hosts repeatedly (so dont enable unless you want to use NSCA)<br>
;NSCAAgent.dll<br>
;<br>
; LUA script module used to write your own "check deamon".<br>
;LUAScript.dll<br>
;<br>
; RemoteConfiguration IS AN EXTREM EARLY IDEA SO DONT USE FOR PRODUCTION ENVIROMNEMTS!<br>
;RemoteConfiguration.dll<br>
; Check other hosts through NRPE extreme beta and probably a bit dangerous! :)<br>
;NRPEClient.dll<br>
; Extreamly early beta of a task-schedule checker<br>
;CheckTaskSched.dll</div>
<div class="PlainText"> </div>
<div class="PlainText">[Settings]<br>
;# OBFUSCATED PASSWORD<br>
;  This is the same as the password option but here you can store the password in an obfuscated manner.<br>
;  *NOTICE* obfuscation is *NOT* the same as encryption, someone with access to this file can still figure out the
<br>
;  password. Its just a bit harder to do it at first glance.<br>
;obfuscated_password=Jw0KAUUdXlAAUwASDAAB<br>
;<br>
;# PASSWORD<br>
;  This is the password (-s) that is required to access NSClient remotely. If you leave this blank everyone will be able to access the daemon remotly.<br>
password=<br>
;<br>
;# ALLOWED HOST ADDRESSES<br>
;  This is a comma-delimited list of IP address of hosts that are allowed to talk to the all daemons.<br>
;  If leave this blank anyone can access the deamon remotly (NSClient still requires a valid password).<br>
;  The syntax is host or ip/mask so 192.168.0.0/24 will allow anyone on that subnet access<br>
allowed_hosts=10.70.15.53<br>
;<br>
;# USE THIS FILE<br>
;  Use the INI file as opposed to the registry if this is 0 and the use_reg in the registry is set to 1
<br>
;  the registry will be used instead.<br>
use_file=0<br>
allowed_hosts=10.70.15.53<br>
;<br>
; # USE SHARED MEMORY CHANNELS<br>
;  This is the "new" way for using the system tray based on an IPC framework on top shared memmory channels and events.<br>
;  It is brand new and (probably has bugs) so dont enable this unless for testing!<br>
;  If set to 1 shared channels will be created and system tray icons created and such and such...<br>
;shared_session=0</div>
<div class="PlainText"><br>
[log]<br>
;# LOG DEBUG<br>
;  Set to 1 if you want debug message printed in the log file (debug messages are always printed to stdout when run with -test)<br>
;debug=1<br>
;<br>
;# LOG FILE<br>
;  The file to print log statements to<br>
;file=nsclient.log<br>
;<br>
;# LOG DATE MASK<br>
;  The format to for the date/time part of the log entry written to file.<br>
;date_mask=%Y-%m-%d %H:%M:%S<br>
;<br>
;# LOG ROOT FOLDER<br>
;  The root folder to use for logging.<br>
;  exe = the folder where the executable is located<br>
;  local-app-data = local application data (probably a better choice then the old default)<br>
;root_folder=exe</div>
<div class="PlainText"><br>
[NSClient]<br>
;# ALLOWED HOST ADDRESSES<br>
;  This is a comma-delimited list of IP address of hosts that are allowed to talk to NSClient deamon.<br>
;  If you leave this blank the global version will be used instead.<br>
allowed_hosts=<br>
;<br>
;# NSCLIENT PORT NUMBER<br>
;  This is the port the NSClientListener.dll will listen to.<br>
port=12489<br>
;<br>
;# BIND TO ADDRESS<br>
;  Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.<br>
;  Leaving this blank will bind to all avalible IP adresses.<br>
bind_to_address=<br>
;<br>
;# SOCKET TIMEOUT<br>
;  Timeout when reading packets on incoming sockets. If the data has not arrived withint this time we will bail out.<br>
;socket_timeout=30</div>
<div class="PlainText">[NRPE]<br>
;# NRPE PORT NUMBER<br>
;  This is the port the NRPEListener.dll will listen to.<br>
;port=5666<br>
;<br>
;# COMMAND TIMEOUT<br>
;  This specifies the maximum number of seconds that the NRPE daemon will allow plug-ins to finish executing before killing them off.<br>
;command_timeout=60<br>
;<br>
;# COMMAND ARGUMENT PROCESSING<br>
;  This option determines whether or not the NRPE daemon will allow clients to specify arguments to commands that are executed.<br>
;allow_arguments=0<br>
;<br>
;# COMMAND ALLOW NASTY META CHARS<br>
;  This option determines whether or not the NRPE daemon will allow clients to specify nasty (as in |`&><'"\[]{}) characters in arguments.<br>
;allow_nasty_meta_chars=0<br>
;<br>
;# USE SSL SOCKET<br>
;  This option controls if SSL should be used on the socket.<br>
;use_ssl=1<br>
;<br>
;# BIND TO ADDRESS<br>
;  Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.<br>
;  Leaving this blank will bind to all avalible IP adresses.<br>
; bind_to_address=<br>
;<br>
;# ALLOWED HOST ADDRESSES<br>
;  This is a comma-delimited list of IP address of hosts that are allowed to talk to NRPE deamon.<br>
;  If you leave this blank the global version will be used instead.<br>
;allowed_hosts=<br>
;<br>
;# SCRIPT DIRECTORY<br>
;  All files in this directory will become check commands.<br>
;  *WARNING* This is undoubtedly dangerous so use with care!<br>
;script_dir=scripts\<br>
;<br>
;# SOCKET TIMEOUT<br>
;  Timeout when reading packets on incoming sockets. If the data has not arrived withint this time we will bail out.<br>
;socket_timeout=30</div>
<div class="PlainText">[Check System]<br>
;# CPU BUFFER SIZE<br>
;  Can be anything ranging from 1s (for 1 second) to 10w for 10 weeks. Notice that a larger buffer will waste memory
<br>
;  so don't use a larger buffer then you need (ie. the longest check you do +1).<br>
CPUBufferSize=1h<br>
;<br>
;# CHECK RESOLUTION<br>
;  The resolution to check values (currently only CPU).<br>
;  The value is entered in 1/10:th of a second and the default is 10 (which means ones every second)<br>
CheckResolution=10<br>
;<br>
;# CHECK ALL SERVICES<br>
;  Configure how to check services when a CheckAll is performed.<br>
;  ...=started means services in that class *has* to be running.<br>
;  ...=stopped means services in that class has to be stopped.<br>
;  ...=ignored means services in this class will be ignored.<br>
check_all_services[SERVICE_BOOT_START]=ignored<br>
check_all_services[SERVICE_SYSTEM_START]=ignored<br>
check_all_services[SERVICE_AUTO_START]=started<br>
check_all_services[SERVICE_DEMAND_START]=ignored<br>
check_all_services[SERVICE_DISABLED]=stopped</div>
<div class="PlainText">[External Script]<br>
;# COMMAND TIMEOUT<br>
;  This specifies the maximum number of seconds that the NRPE daemon will allow plug-ins to finish executing before killing them off.<br>
;command_timeout=60<br>
;<br>
;# COMMAND ARGUMENT PROCESSING<br>
;  This option determines whether or not the NRPE daemon will allow clients to specify arguments to commands that are executed.<br>
;allow_arguments=0<br>
;<br>
;# COMMAND ALLOW NASTY META CHARS<br>
;  This option determines whether or not the NRPE daemon will allow clients to specify nasty (as in |`&><'"\[]{}) characters in arguments.<br>
;allow_nasty_meta_chars=0<br>
;<br>
;# SCRIPT DIRECTORY<br>
;  All files in this directory will become check commands.<br>
;  *WARNING* This is undoubtedly dangerous so use with care!<br>
;script_dir=c:\my\script\dir</div>
<div class="PlainText">[Script Wrappings]<br>
vbs=cscript.exe //T:30 //NoLogo scripts\lib\wrapper.vbs %SCRIPT% %ARGS%<br>
ps1=cmd /c echo scripts\%SCRIPT% %ARGS%; exit($lastexitcode) | powershell.exe -command -<br>
bat=scripts\%SCRIPT% %ARGS%</div>
<div class="PlainText">[External Scripts]<br>
;check_es_long=scripts\long.bat<br>
;check_es_ok=scripts\ok.bat<br>
;check_es_nok=scripts\nok.bat<br>
;check_vbs_sample=cscript.exe //T:30 //NoLogo scripts\check_vb.vbs<br>
;check_powershell_warn=cmd /c echo scripts\powershell.ps1 | powershell.exe -command -</div>
<div class="PlainText">[External Alias]<br>
alias_cpu=checkCPU warn=80 crit=90 time=5m time=1m time=30s<br>
alias_cpu_ex=checkCPU warn=$ARG1$ crit=$ARG2$ time=5m time=1m time=30s<br>
alias_disk=CheckDriveSize MinWarn=10% MinCrit=5% CheckAll FilterType=FIXED<br>
alias_service=checkServiceState CheckAll<br>
alias_process=checkProcState $ARG1$=started<br>
alias_mem=checkMem MaxWarn=80% MaxCrit=90% ShowAll type=physical<br>
alias_up=checkUpTime MinWarn=1d MinWarn=1h<br>
alias_file_age=checkFile2 filter=out "file=$ARG1$" filter-written=>1d MaxWarn=1 MaxCrit=1 "syntax=%filename% %write%"<br>
alias_file_size=checkFile2 filter=out "file=$ARG1$" filter-size=>$ARG2$ MaxWarn=1 MaxCrit=1 "syntax=%filename% %size%"<br>
alias_file_size_in_dir=checkFile2 filter=out pattern=*.txt "file=$ARG1$" filter-size=>$ARG2$ MaxWarn=1 MaxCrit=1 "syntax=%filename% %size%"<br>
alias_event_log_old=CheckEventLog file=application file=system filter=new filter=out MaxWarn=1 MaxCrit=1 filter-generated=>2d filter-severity==success filter-severity==informational truncate=800 unique descriptions  "syntax=%severity%: %source%: %message% (%count%)"<br>
alias_event_log_new=CheckEventLog file=application file=system MaxWarn=1 MaxCrit=1 "filter=generated gt -2d AND severity NOT IN ('success', 'informational')" truncate=800 unique descriptions "syntax=%severity%: %source%: %message% (%count%)"<br>
alias_event_log=alias_event_log_new</div>
<div class="PlainText">check_ok=CheckOK Everything is fine!</div>
<div class="PlainText">[Wrapped Scripts]<br>
;check_test_vbs=check_test.vbs /arg1:1 /arg2:1 /variable:1<br>
;check_test_ps1=check_test.ps1 arg1 arg2<br>
;check_test_bat=check_test.bat arg1 arg2<br>
;check_battery=check_battery.vbs<br>
;check_printer=check_printer.vbs</div>
<div class="PlainText"><br>
; [includes]<br>
;# The order when used is "reversed" thus the last included file will be "first"<br>
;# Included files can include other files (be carefull only do basic recursive checking)<br>
;<br>
; myotherfile.ini<br>
; real.ini</div>
<div class="PlainText"><br>
[NSCA Agent]<br>
;# CHECK INTERVALL (in seconds)<br>
;   How often we should run the checks and submit the results.<br>
;interval=5<br>
;<br>
;# ENCRYPTION METHOD<br>
;   This option determines the method by which the send_nsca client will encrypt the packets it sends
<br>
;   to the nsca daemon. The encryption method you choose will be a balance between security and
<br>
;   performance, as strong encryption methods consume more processor resources.<br>
;   You should evaluate your security needs when choosing an encryption method.<br>
;<br>
; Note: The encryption method you specify here must match the decryption method the nsca daemon uses
<br>
;       (as specified in the nsca.cfg file)!!<br>
; Values:<br>
; 0 = None (Do NOT use this option)<br>
; 1 = Simple XOR  (No security, just obfuscation, but very fast)<br>
;   2 = DES<br>
;   3 = 3DES (Triple DES)<br>
; 4 = CAST-128<br>
; 6 = xTEA<br>
; 8 = BLOWFISH<br>
; 9 = TWOFISH<br>
; 11 = RC2<br>
; 14 = RIJNDAEL-128 (AES)<br>
; 20 = SERPENT<br>
;encryption_method=14<br>
;<br>
;# ENCRYPTION PASSWORD<br>
;  This is the password/passphrase that should be used to encrypt the sent packets.
<br>
;password=<br>
;<br>
;# BIND TO ADDRESS<br>
;  Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.<br>
;  Leaving this blank will bind to "one" local interface.<br>
; -- not supported as of now -- <br>
;bind_to_address=<br>
;<br>
;# LOCAL HOST NAME<br>
;  The name of this host (if empty "computername" will be used.<br>
;hostname=<br>
;<br>
;# NAGIOS SERVER ADDRESS<br>
;  The address to the nagios server to submit results to.<br>
;nsca_host=192.168.0.1<br>
;<br>
;# NAGIOS SERVER PORT<br>
;  The port to the nagios server to submit results to.<br>
;nsca_port=5667<br>
;</div>
<div class="PlainText">;# CHECK COMMAND LIST<br>
;  The checks to run everytime we submit results back to nagios<br>
;  Any command(alias/key) starting with a host_ is sent as HOST_COMMAND others are sent as SERVICE_COMMANDS<br>
;  where the alias/key is used as service name.<br>
;<br>
[NSCA Commands]<br>
;my_cpu_check=checkCPU warn=80 crit=90 time=20m time=10s time=4<br>
;my_mem_check=checkMem MaxWarn=80% MaxCrit=90% ShowAll type=page<br>
;my_svc_check=checkServiceState CheckAll exclude=wampmysqld exclude=MpfService<br>
;host_check=check_ok</div>
<div class="PlainText">;# REMOTE NRPE PROXY COMMANDS<br>
;  A list of commands that check other hosts.<br>
;  Used by the NRPECLient module<br>
[NRPE Client Handlers]<br>
check_other=-H 192.168.0.1 -p 5666 -c remote_command -a arguments</div>
<div class="PlainText">;# LUA SCRIPT SECTION<br>
;  A list of all Lua scripts to load.<br>
;[LUA Scripts]<br>
;scripts\test.lua<br>
</div>
</div>
</body>
</html>