renewck - notify about domains due to expire
The renewck utility monitors a set of Internet domains. For each
configured domain it queries a whois server about its expiration date.
If the domain is due to expire within a preconfigured time interval,
renewck mails a notification about the fact.
The utility is intended to be started periodically as a cron
job.
Renewck will re-send notifications until domain is renewed
or finally expired. The notification schedule is as follows:
For each domain domain expiring within a month from the current
date, a new notification is send each 3 days.
For domains expiring within two weeks, notifications are re-sent
daily.
For domains expiring within a week, notifications are re-sent each
3 hours.
- --domain=domsrv[,domsrv...]
- Adds listed domains to the list of monitored domains. Each domsrv
is either a single domain name or a pair
domain=server[:port], where server stands for
the name of whois server to be queried for that domain, and optional
port is a decimal port number to be used instead of the default 43.
Unless specified explicitely, the whois server to query is
selected depending on the TLD of the domain. If no specific whois server
found, the default one will be used. The default whois server is
whois.publicinterestregistry.net, unless set otherwise by the
--whois-server option.
- --file=FILE
- Read domain names from the FILE. The file must list a single domain
on each line. Optionally, a server[:port] specification is
allowed after the domain name, separated from it by any amount of white
space (see the --domain option for the description of that
specification).
UNIX-like comments are allowed. Empty lines are ignored.
- --notify-address=email
- Sent notifications to email instead of to the user which invoked
renewck.
- --notify_cc=emails
- A comma-separated list of addresses for the notification mail Cc:
header.
- --notify_subject=text
- Use text as the subject of notification emails. The following
variables are expanded within the template text:
$domain domain the notification refers to;
$expiration expiration date, in the preferred date and time
representation for the current locale;
$daysleft number of days left to the expiration date;
$days number of days as a string, e.g. "two days";
The default subject line is:
$domain is due to expire
- --notify-template=FILE
- The file to be used as a template for the message body. This text is
expanded as described for --notify-subject above.
- --whois-server=server[:port]
- Sets the default whois server (instead of the hardcoded
whois.publicinterestregistry.net). If port is also supplied,
it will be used instead of the default port 43.
- --whois-delay=N
- Many servers (in particular whois.publicinterestregistry.net used
by default), implement certain restrictions regarding maximum number of
queries an IP address can make in a unit of time. To keep request rate
within these policies, renewck introduces a 2-second delay between
whois queries. This option allows to tune that delay.
- --cache-file=FILE
- Keep notification history in a GDBM database file named FILE. By
default, it is .renewck.db in the user's home directory.
- --debug[=spec[,spec...]],
-d[spec[,spec...]]
- Set debugging level. A spec is either category or
category=level, where category is a debugging
category name and level is a decimal verbosity level. Valid
categories are: "MAIN",
"DBM" and
"WHOIS" (all case-insensitive). If
level is not supplied, 1 is used instead.
- --help, -h
- Show a terse help summary and exit.
- --man
- Prints the manual page and exits.
The program reads its configuration from one of the following locations:
- a. File name given by "RENEWCK_CONF" environment variable
(if set)
- b. The file .renewck.conf in the user home directory
The first existing file is read. It is an error if the
$RENEWCK_CONF variable is set, but points to a file
that does not exist. It is OK if $RENEWCK_CONF is not
set and .renewck.conf does not exist. It is, however, an error if any
of these file exists, but is not readable.
The configuration file has the usual UNIX configuration format.
Empty lines and UNIX comments are ignored. Each non-empty line is either an
option name, or option assignment, i.e. opt=val, with any
amount of optional whitespace around the equals sign. Valid option names are
the same as long command line options, but without the leading
--.
For example:
file = domain.list
notify-cc = root
Sergey Poznyakoff <gray@gnu.org>