[Nagiosplug-help] Checking URL for Content that requries password

tom.welsh at bt.com tom.welsh at bt.com
Wed Oct 3 20:33:49 CEST 2007


A wise person once said 

"Give a man a fish, Feed him for a day" 
"Teach a man to fish, Feed him for a lifetime"

I Thought I was teaching you to fish by providing you with an example
that almost fitted what you required. 
Obviously you require a Fish, But this will only feed you for today.

Here is the output off check_http where you will find exactly what your
looking for.

Sorry If I sound a bit off, but a little bit off searching would have
goy you the same info.

--------------------<snip>--------------------

./check_http -h
check_http (nagios-plugins 1.4.9) 1.104
Copyright (c) 1999 Ethan Galstad <nagios at nagios.org>
Copyright (c) 1999-2006 Nagios Plugin Development Team
        <nagiosplug-devel at lists.sourceforge.net>

This plugin tests the HTTP service on the specified host. It can test
normal (http) and secure (https) servers, follow redirects, search for
strings and regular expressions, check connection times, and report on
certificate expiration times.


Usage: check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>]
       [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L]
       [-a auth] [-f <ok | warn | critcal | follow>] [-e <expect>]
       [-s string] [-l] [-r <regex> | -R <case-insensitive regex>] [-P
string]
       [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>] [-A
string]
       [-k string] [-S] [-C <age>] [-T <content-type>]
NOTE: One or both of -H and -I must be specified
Options:
 -h, --help
    Print detailed help screen
 -V, --version
    Print version information
 -H, --hostname=ADDRESS
    Host name argument for servers using host headers (virtual host)
    Append a port to include it in the header (eg: example.com:5000)
 -I, --IP-address=ADDRESS
    IP address or name (use numeric address if possible to bypass DNS
lookup).
 -p, --port=INTEGER
 Port number (default: 80)
 -4, --use-ipv4
    Use IPv4 connection
 -6, --use-ipv6
    Use IPv6 connection
 -S, --ssl
   Connect via SSL. Port defaults to 443
 -C, --certificate=INTEGER
   Minimum number of days a certificate has to be valid. Port defaults
to 443
   (when this option is used the url is not checked.)

 -e, --expect=STRING
    String to expect in first (status) line of server response (default:
HTTP/1.)
    If specified skips all other status line logic (ex: 3xx, 4xx, 5xx
processing)
 -s, --string=STRING
    String to expect in the content
 -u, --url=PATH
    URL to GET or POST (default: /)
 -P, --post=STRING
    URL encoded http POST data
 -N, --no-body
    Don't wait for document body: stop reading after headers.
    (Note that this still does an HTTP GET or POST, not a HEAD.)
 -M, --max-age=SECONDS
    Warn if document is more than SECONDS old. the number can also be of
    the form "10m" for minutes, "10h" for hours, or "10d" for days.
 -T, --content-type=STRING
    specify Content-Type header media type when POSTing

 -l, --linespan
    Allow regex to span newlines (must precede -r or -R)
 -r, --regex, --ereg=STRING
    Search page for regex STRING
 -R, --eregi=STRING
    Search page for case-insensitive regex STRING
 --invert-regex
    Return CRITICAL if found, OK if not

 -a, --authorization=AUTH_PAIR
    Username:password on sites with basic authentication
 -A, --useragent=STRING
    String to be sent in http header as "User Agent"
 -k, --header=STRING
     Any other tags to be sent in http header. Use multiple times for
additional headers
 -L, --link
    Wrap output in HTML link (obsoleted by urlize)
 -f, --onredirect=<ok|warning|critical|follow>
    How to handle redirected pages
 -m, --pagesize=INTEGER<:INTEGER>
    Minimum page size required (bytes) : Maximum page size required
(bytes)
 -w, --warning=DOUBLE
    Response time to result in warning status (seconds)
 -c, --critical=DOUBLE
    Response time to result in critical status (seconds)
 -t, --timeout=INTEGER
    Seconds before connection times out (default: 10)
 -v, --verbose

    Show details for command-line debugging (Nagios may truncate output)
Notes: This plugin will attempt to open an HTTP connection with the
host.
 Successful connects return STATE_OK, refusals and timeouts return
STATE_CRITICAL
 other errors return STATE_UNKNOWN.  Successful connects, but incorrect
reponse
 messages from the host result in STATE_WARNING return values.  If you
are
 checking a virtual server that uses 'host headers' you must supply the
FQDN
 (fully qualified domain name) as the [host_name] argument.
 This plugin can also check whether an SSL enabled web server is able to
 serve content (optionally within a specified time) or whether the X509
 certificate is still valid for the specified number of days.
Examples: CHECK CONTENT: check_http -w 5 -c 10 --ssl -H www.verisign.com

 When the 'www.verisign.com' server returns its content within 5
seconds,
 a STATE_OK will be returned. When the server returns its content but
exceeds
 the 5-second threshold, a STATE_WARNING will be returned. When an error
occurs,
 a STATE_CRITICAL will be returned.

 CHECK CERTIFICATE: check_http -H www.verisign.com -C 14

 When the certificate of 'www.verisign.com' is valid for more than 14
days,
 a STATE_OK is returned. When the certificate is still valid, but for
less than
 14 days, a STATE_WARNING is returned. A STATE_CRITICAL will be returned
when
 the certificate is expired.


Send email to nagios-users at lists.sourceforge.net if you have questions
regarding use of this software. To submit patches or suggest
improvements,
send email to nagiosplug-devel at lists.sourceforge.net

--------------------<snip>--------------------

-----Original Message-----
From: Jason Martin [mailto:jhmartin at toger.us] 
Sent: 03 October 2007 19:26
To: Welsh,T,Tom,DLS C
Cc: mark at firstoption.net; nagiosplug-help at lists.sourceforge.net
Subject: Re: [Nagiosplug-help] Checking URL for Content that requries
password

On Wed, Oct 03, 2007 at 07:19:11PM +0100, tom.welsh at bt.com wrote:
> Hi Mark,
> 
> Take a look at check_http I think that will do exactly what you want 
> out off the box.
> 
> Here is an example off some stuff I do.
> 
> ./check_http -H someurl.com  --authorization=username:password 
> --url=/wiki/index.php/Main_Page --string='Welcome to' -w 5 -c 7
This uses HTTP authentication, but I believe the OP needed to
essentially 'post' a name/password *form* from a page, not HTTP auth.
Think hotmail.com, for example.

-Jason Martin

> From: nagiosplug-help-bounces at lists.sourceforge.net
> [mailto:nagiosplug-help-bounces at lists.sourceforge.net] On Behalf Of 
> Mark Thomas
> Sent: 03 October 2007 17:26
> To: nagiosplug-help at lists.sourceforge.net; mark at firstoption.net
> Subject: [Nagiosplug-help] Checking URL for Content that requries 
> password
> 
> Hi everyone,
> 
> I need a bit of help.
> 
> I am in the process of evaluating Nagios as a replacement for the very

> expensive Sitescope system from Mercury Interactive and am enjoying 
> the challenge.
> 
> I have a small question about check_http or something similar.
> 
> Basically I have a website that I want to check and depending on a 
> phrase found on the website, alert accordingly.
> 
> The website requires a password to be passed in via a POST command.
> 
> I.e. www.example.com
> 
> POST <password>
> 
> Look for "Error"
> 
> If "Error" detected then alert, if "OK" found then show OK.
> 
> Is this possible and how?
> 
> Thanks!
> 
> Mark
> 
> 
> - Mark Thomas (Veeoh)
> 
> -----------------------
> The mailing list archive is found here:
> http://www.nagiosexchange.org/nagiosplug-help.32.0.html
> 				
> 
> ----------------------------------------------------------------------
> --
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a
browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/ 
> _______________________________________________
> Nagiosplug-help mailing list
> Nagiosplug-help at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nagiosplug-help
> ::: Please include plugins version (-v) and OS when reporting any
issue.
> 
> ::: Messages without supporting info will risk being sent to /dev/null
> 
> ----------------------------------------------------------------------
> --- This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a
browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/ 
> _______________________________________________
> Nagiosplug-help mailing list
> Nagiosplug-help at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nagiosplug-help
> ::: Please include plugins version (-v) and OS when reporting any
issue. 
> ::: Messages without supporting info will risk being sent to /dev/null

--
As a matter of fact, no, I don't have a life.
This message is PGP/MIME signed.




More information about the Help mailing list