inn.conf - Configuration data for InterNetNews programs
DESCRIPTION
inn.conf in pathetc is the primary general configuration
file for all InterNetNews programs. Settings which con
trol the general operation of various programs, as well as
the paths to all portions of the news installation, are
found here. The INNCONF environment variable, if set,
specifies an alternate path to inn.conf.
Blank lines and lines starting with a number sign ("#")
are ignored. All other lines specify parameters, and
should be of the following form:
<name>: <value>
(Any amount of whitespace can be put after the colon and
is optional.) Everything after the colon and optional
whitespace up to the end of the line is taken as the
value. Multi-word values should not be put in quotes; if
they are, the quotes will be taken as part of the value,
not as delimiters. <name> is case-sensitive; "server" is
not the same as "Server" or "SERVER". (inn.conf parame
ters are generally all in lowercase.)
If <name> occurs more than once in the file, the first
value is used. Some parameters specified in the file may
be overridden by environment variables. Most parameters
have default values if not specified in inn.conf; those
defaults are noted in the description of each parameter.
For the time being, it is strongly recommended to include
every parameter in inn.conf even if it is set to the
default value, since some shell scripts don't correctly
handle missing keys that they care about. This is a dif
ficult-to-fix bug in the current parser that will be fixed
in future versions of INN.
Many parameters take a boolean value. For all such param
eters, the value may be specified as "true", "yes", or
"on" to turn it on and may be any of "false", "no", or
"off" to turn it off. The case of these values is not
significant.
This file is intended to be fairly static. Any changes
made to it will generally not affect any running programs
until they restart. Unlike nearly every other configura
tion file, inn.conf cannot be reloaded dynamically using
ctlinnd(8); innd(8) must be stopped and restarted for rel
evant changes to inn.conf to take effect ("ctlinnd xexec
innd" is the fastest way to do this.)
This documentation is extremely long and organized as a
your first exposure to INN and these parameters, it would
be better to start by reading other man pages and refer
ring to this one only when an inn.conf parameter is
explicitly mentioned.
PARAMETERS
General Settings
These parameters are used by a wide variety of different
components of INN.
domain
This should be the domain name of the local host. It
should not have a leading period, and it should not be
a full host address. It is used only if the GetFQDN()
routine in libinn(3) cannot get the fully-qualified
domain name by using either the gethostname(3) or
gethostbyname(3) calls. The check is very simple; if
either routine returns a name with a period in it,
then it is assumed to have the full domain name. The
default value is unset.
innflags
The flags to pass to innd on startup. See innd(8) for
details on the possible flags. The default value is
unset.
mailcmd
The path to the program to be used for mailing reports
and control messages. The default is pathbin/innmail.
This should not normally need to be changed.
mta The command to use when mailing postings to moderators
and for the use of innmail(1). The message, with
headers and an added To: header, will be piped into
this program. The string "%s", if present, will be
replaced by the e-mail address of the moderator. It's
strongly recommended for this command to include "%s"
on the command line rather than use the addresses in
the To: and Cc: headers of the message, since the lat
ter approach allows the news server to be abused as a
mechanism to send mail to arbitrary addresses and will
result in unexpected behavior. There is no default
value for this parameter; it must be set in inn.conf
or a fatal error message will be logged via syslog.
For most systems, "/usr/lib/sendmail -oi -oem %s"
(adjusted for the correct path to sendmail) is a good
choice.
pathhost
What to put into the Path: header to represent the
local site. This is added to the Path: header of all
locally posted articles, and is also used when pro
cessing some control messages and when naming the
server in status reports. There is no default value;
this parameter must be set in inn.conf or INN will not
start. A good value to use is the fully-qualified
hostname of the system.
server
The name of the default NNTP server. If nnrpdposthost
is not set and UNIX domain sockets are not supported,
nnrpd(8) tries to hand off locally-posted articles
through an INET domain socket to this server.
actsync(8), nntpget(8), and getlist(8) also use this
value as the default server to connect to. In the
latter cases, the value of the NNTPSERVER environment
variable, if it exists, overrides this. The default
value is unset.
Feed Configuration
These parameters govern incoming and outgoing feeds: what
size of articles are accepted, what filtering and verifi
cation is performed on them, whether articles in groups
not carried by the server are still stored and propagated,
and other similar settings.
artcutoff
Articles older than this number of days are dropped.
This setting should probably match the setting on the
"/remember/" line in expire.ctl. The default value is
"10".
bindaddress
Which IP address innd(8) should bind itself to. This
must be in dotted-quad format (nnn.nnn.nnn.nnn). If
set to "all" or not set, innd defaults to listening on
all interfaces. The value of the INND_BIND_ADDRESS
environment variable, if set, overrides this setting.
The default value is unset.
hiscachesize
If set to a value other than "0", a hash of recently
received message IDs is kept in memory to speed his
tory lookups. The value is the amount of memory to
devote to the cache in kilobytes. The cache is only
used for incoming feeds and a small cache can hold
quite a few message IDs, so large values aren't neces
sarily useful unless you have incoming feeds that are
badly delayed. A good value for a system with more
than one incoming feed is "256"; systems with only one
incoming feed should probably leave this at "0". The
default value is "0".
Whether newsgroup creation control messages (newgroup
and rmgroup) should be fed as if they were posted to
the newsgroup they are creating or deleting rather
than to the newsgroups listed in the Newsgroups:
header. If this parameter is set, the newsgroup
affected by the control message will be extracted from
the Control: or Subject: header and the article will
be fed as if its Newsgroups: header contained solely
that newsgroup. This is useful for routing control
messages to peers when they are posted to irrelevant
newsgroups that shouldn't be matched against the
peer's desired newsgroups in newsfeeds. This is a
boolean value and the default is false.
immediatecancel
When using the timecaf storage method, article cancels
are normally just cached to be cancelled, not can
celled immediately. If this is set to true, they will
instead by cancelled as soon as the cancel is pro
cessed. This is a boolean value and the default is
false.
This setting is ignored unless the timecaf storage
method is used.
linecountfuzz
If set to something other than "0", the line count of
the article is checked against the Lines: header of
the article (if present) and the artice is rejected if
the values differ by more than this amount. A reason
able setting is "5", which is the standard maximum
signature length plus one (some injection software
calculates the Lines: header before adding the signa
ture). The default value is "0", which tells INN not
to check the Lines: header of incoming articles.
maxartsize
The maximum size of article (headers and body) that
will be accepted by the server, in bytes. A value of
"0" allows any size of article. The default value is
"1000000" (approximately 1MB). See also localmaxart
size.
maxconnections
The maximum number of incoming NNTP connections
innd(8) will accept. The default value is "50".
pathalias
If set, this value is prepended to the Path: header of
accepted posts (before pathhost) if it doesn't already
appear in the Path: header. The main purpose of this
parameter is to configure all news servers within a
particular organization to add a common identity
unset.
pgpverify
Whether to enable PGP verification of control messages
other than cancel. This is a boolean value and the
default is based on whether configure found pgp or
pgpv.
port
What TCP port innd(8) should listen on. The default
value is "119", the standard NNTP port.
refusecybercancels
Whether to refuse all articles whose message IDs start
with "<cancel.". This message ID convention is widely
followed by spam cancellers, so the vast majority of
such articles will be cancels of spam. This check, if
enabled, is done before the history check and the mes
sage ID is not written to the history file. This is a
boolean value and the default is false.
This is a somewhat messy, inefficient, and inexact way
of refusing spam cancels. A much better way is to ask
all of your upstream peers to not send to you any
articles with "cyberspam" in the Path: header (usually
accomplished by having them mark "cyberspam" as an
alias for your machine in their feed configuration).
The filtering enabled by this parameter is hard-coded;
general filtering of message IDs can be done via the
embedded filtering support.
remembertrash
By default, innd(8) records rejected articles in his
tory so that, if offered the same article again, it
can be refused before it is sent. If you wish to dis
able this behavior, set this to false. This can cause
a substantial increase in the amount of bandwidth con
sumed by incoming news if you have several peers and
reject a lot of articles, so be careful with it. Even
if this is set to true, INN won't log some rejected
articles to history if there's reason to believe the
article might be accepted if offered by a different
peer, so there is usually no reason to set this to
false (although doing so can decrease the size of the
history file). This is a boolean value and the
default is true.
sourceaddress
Which local IP address to bind to for outgoing NNTP
sockets (used by innxmit(8) among other programs).
This must be in dotted-quad format (nnn.nnn.nnn.nnn).
If set to "all" or not set, the operating system will
choose the source IP address for outgoing connections.
usecontrolchan
Whether to handle control messages (other than cancel)
in an external program rather than internally in
innd(8). Enabling this is highly recommended, as
INN's internal control message handling can cause per
formance problems and behaves very poorly under heavy
load. If you want to enable this, you also must set
up a channel feed to controlchan(8) in newsfeeds(5)
and ensure that the group "control.cancel" exists on
your server. You may also have to do a few additional
things to allow controlchan to work correctly; see
controlchan(8) for the details. This is a boolean
value and the default is false.
verifycancels
Set this to true to enable a simplistic check on all
cancel messages, attempting to verify (by simple
header comparison) that the cancel message is from the
same person as the original post. This can't be done
if the cancel arrives before the article does, and is
extremely easy to spoof. While this check may once
have served a purpose, it's now essentially security
via obscurity, commonly avoided by abusers, and proba
bly not useful. This is a boolean value, and the
default is false.
wanttrash
Set this to true if you want to file articles posted
to unknown newsgroups (newsgroups not in the active
file) into the "junk" newsgroup rather than rejecting
them. This is sometimes useful for a transit news
server that needs to propagate articles in all news
groups regardless if they're carried locally. This is
a boolean value and the default is false.
wipcheck
If INN is offered an article by a peer on one channel,
it will return deferral responses (code 436) to all
other offers of that article for this many seconds.
(After this long, if the peer that offered the article
still hasn't sent it, it will be accepted from other
channels.) The default value is "5" and probably
doesn't need to be changed.
wipexpire
How long, in seconds, to keep track of message IDs
offered on a channel before expiring articles that
still haven't been sent. The default value is "10"
and probably doesn't need to be changed.
These parameters affect how articles are stored on disk.
cnfscheckfudgesize
If set to a value other than "0", the claimed size of
articles in CNFS cycbuffs is checked against maxart
size plus this value, and if larger, the CNFS cycbuff
is considered corrupt. This can be useful as a sanity
check after a system crash, but be careful using this
parameter if you have changed maxartsize recently.
The default value is "0".
enableoverview
Whether to write out overview data for articles. If
set to false, INN will run much faster, but reading
news from the system will be impossible (the server
will be for news transit only). If this option is set
to true, ovmethod must also be set. This is a boolean
value and the default is true.
groupbaseexpiry
Whether to enable newsgroup-based expiry. If set to
false, article expiry is done based on storage class
of storing method. If set to true (and overview
information is available), expiry is done by newsgroup
name. This effects the format of expire.ctl. This is
a boolean value and the default is true.
mergetogroups
Whether to file all postings to "to.*" groups in the
pseudonewsgroup "to". If this is set to true, the
newsgroup "to" must exist in the active file or INN
will not start. This is a boolean value and the
default is false.
overcachesize
How many cache slots to reserve for open overview
files. If INN is writing overview files (see
enableoverview), ovmethod is set to "tradindexed", and
this is set to a value other than "0", INN will keep
around and open that many recently written-to overview
files in case more articles come in for those news
groups. Every overview cache slot consumes two file
descriptors, so be careful not to set this value too
high. You may be able to use the "limit" command to
see how many open file descriptors your operating sys
tem allows. innd(8) also uses an open file descriptor
for each incoming feed and outgoing channel or batch
file, and if it runs out of open file descriptors it
may throttle and stop accepting new news. The default
value is "15" (which is probably way too low if you
have a large number of file descriptors available).
"tradindexed".
ovgrouppat
If set, restricts the overview data stored by INN to
only the newsgroups matching this comma-separated list
of wildmat expressions. Newsgroups not matching this
setting may not be readable, and if groupbaseexpiry is
set to true and the storage method for these news
groups does not have self-expire functionality, stor
ing overview data will fail. The default is unset.
ovmethod
Which overview storage method to use. Currently sup
ported values are "tradindexed", "buffindexed", and
"ovdb". There is no default value; this parameter
must be set if enableoverview is true (the default).
""buffindexed""
Stores overview data and index information into
buffers, which are preconfigured files defined in
buffinedexed.conf. "buffindexed" never consumes
additional disk space beyond that allocated to
these buffers.
""tradindexed""
Uses two files per newsgroup, one containing the
overview data and one containing the index. Fast
for readers, but slow to write to.
""ovdb""
Stores data into a Berkeley DB database. See the
ovdb(5) man page.
storeonxref
If set to true, articles will be stored based on the
newsgroup names in the Xref: header rather than in the
Newsgroups: header. This affects what the patterns in
storage.conf apply to. The primary interesting effect
of setting this to true is to enable filing of all
control messages according to what storage class the
control pseudogroups are filed in rather than accord
ing to the newsgroups the control messages are posted
to. This is a boolean value and the default is false.
useoverchan
Whether to create overview data innd(8) internally
through libstorage(3). If set to false, innd create
overview data by itself. If set to true, innd does
not create. In the case, you need to run overchan(8)
by creating entry in newsfeeds(5). Setting to true
may be useful, if innd can not keep up with incoming
feed and the bottle neck is creating overview data
within innd. This is a boolean value and the default
wireformat
Only used with the tradspool storage method, this says
whether to write articles in wire format. Wire format
means storing articles with \r\n at the end of each
line and with periods at the beginning of lines dou
bled, the article format required by the NNTP proto
col. Articles stored in this format are suitable for
sending directly to a network connection without
requiring conversion, and therefore setting this to
true can make the server more efficient. The primary
reason not to set this is if you have old existing
software that looks around in the spool and doesn't
understand how to read wire format. Storage methods
other than tradspool always store articles in wire
format. This is a boolean value and the default is
false.
xrefslave
Whether to act as the slave of another server. If
set, INN attempts to duplicate exactly the article
numbering of the server feeding it by looking at the
Xref: header of incoming articles and assigning the
same article numbers to articles as was noted in the
Xref: header from the upstream server. The result is
that clients should be able to point at either server
interchangeably (using some load balancing scheme, for
example) and see the same internal article numbering.
Servers with this parameter set should generally only
have one upstream feed, and should always have nnr
pdposthost set to hand locally posted articles off to
the master server. This is a boolean value and the
default is false.
Reading
These parameters affect the behavior of INN for readers.
Most of them are used by nnrpd(8). There are some special
sets of settings that are broken out separately after the
initial alphabetized list.
allownewnews
Whether to allow use of the NEWNEWS command by
clients. This command used to put a heavy load on the
server in older versions of INN, but is now reasonably
efficient, at least if only one newsgroup is specified
by the client. This is a boolean value and the
default is true.
articlemmap
Whether to attempt to mmap() articles. Setting this
to true will give better performance on most systems,
but some systems have problems with mmap(). If this
before being sent to readers. This is a boolean value
and the default is false.
clienttimeout
How long (in seconds) a client connection can be idle
before it exits. When setting this parameter, be
aware that some newsreaders use the same connection
for reading and posting and don't deal well with the
connection timing out while a post is being composed.
If the system isn't having a problem with too many
long-lived connections, it may be a good idea to
increase this value to "3600" (an hour). The default
value is "600" (ten minutes).
nnrpdcheckart
Whether nnrpd(8) should check the existence of an
article before listing it as present in response to an
NNTP command. The primary use of this setting is to
prevent nnrpd from returning information about arti
cles which are no longer present on the server but
which still have overview data available. Checking
the existence of articles before returning overview
information slows down the overview commands, but
reduces the number of "article is missing" errors seen
by the client. This is a boolean value and the
default is true.
nnrpperlauth
Whether to use the Perl hook in nnrpd(8) to authenti
cate readers. If this is enabled, normal
readers.conf(5) authentication will not be used, and
instead the Perl hook will be called to authenticate
connections. This is a boolean value and the default
is false.
nnrppythonauth
Whether to use the Python hook in nnrpd(8) to authen
ticate readers. If this is enabled, normal
readers.conf(5) authentication will not be used, and
instead the python hook will be called to authenticate
connections. This is a boolean value and the default
is false.
noreader
Normally, innd(8) will fork a copy of nnrpd(8) for all
incoming connections from hosts not listed in incom
ing.conf. If this parameter is set to true, those
connections will instead be rejected with a 502 error
code. This should be set to true for a transit-only
server that doesn't support readers, if nnrpd is being
started out of inetd, or if nnrpd is run in daemon
mode. This is a boolean value and the default is
false.
Whether to allow readers to connect even if the server
is paused or throttled. This is only applicable if
nnrpd(8) is spawned from innd(8) rather than run out
of inetd or in daemon mode. This is a boolean value
and the default is false.
readertrack
Whether to enable the tracking system for client read
ing and posting. See nnrpd.track(5) for more informa
tion. This is a boolean value and the default is
false.
INN has optional support for generating keyword informa
tion automatically from article body text and putting that
information in overview for the use of clients that know
to look for it. The following parameters control that
feature.
This may be too slow if you're taking a substantial feed,
and probably will not be useful for the average news
reader; enabling this is not recommended unless you have
some specific intention to take advantage of it.
keywords
Whether the keyword generation support should be
enabled. This is a boolean value and the default is
false.
FIXME: Currently, support for keyword generation is
configured into INN semi-randomly (based on whether
configure found the regex library); it should be an
option to configure and that option should be men
tioned here.
keyartlimit
Articles larger than this value in bytes will not have
keywords generated for them (since it would take too
long to do so). The default value is "100000"
(approximately 100KB).
keylimit
Maximum number of bytes allocated for keyword data.
If there are more keywords than will fit, separated by
commas, into this many bytes, the rest are discarded.
The default value is "512".
keymaxwords
Maximum number of keywords that will be generated for
an article. (The keyword generation code will attempt
to discard "noise" words, so the number of keywords
actually writen into the overview will usually be
smaller than this even if the maximum number of key
words is found.) The default value is "250".
These parameters are only used by nnrpd(8), inews(1), and
other programs that accept or generate postings. There
are some special sets of settings that are broken out sep
arately after the initial alphabetized list.
addnntppostingdate
Whether to add an NNTP-Posting-Date: header to all
local posts. This is a boolean value and the default
is true.
addnntppostinghost
Whether to add an NNTP-Posting-Host: header to all
local posts giving the FQDN or IP address of the sys
tem from which the post was received. This is a
boolean value and the default is true.
checkincludedtext
Whether to check local postings for the ratio of new
to quoted text and reject them if that ratio is under
50%. Included text is recognized by looking for lines
beginning with ">", "|", or ":". This is a boolean
value and the default is false.
complaints
The value of the X-Complaints-To: header added to all
local posts. The default is the newsmaster's e-mail
address. (If the newsmaster, selected at configure
time and defaulting to "usenet", doesn't contain "@",
the address will consist of the newsmaster, a "@", and
the value of fromhost.)
fromhost
Contains a domain used to construct e-mail addresses.
The address of the local news administrator will be
given as <user>@fromhost, where <user> is the newsmas
ter user set at compile time ("usenet" by default).
This setting will also be used by mailpost(8) to fully
qualify addresses and by inews(1) to generate the
Sender: header (and From: header if missing). The
value of the FROMHOST environment variable, if set,
overrides this setting. The default is the fully-
qualified domain name of the local host.
localmaxartsize
The maximum article size (in bytes) for locally posted
articles. Articles larger than this will be rejected.
Also see maxartsize. The default value is "1000000"
(approximately 1MB).
moderatormailer
The address to which to send submissions for moderated
groups. It is only used if the moderators file
article is posted is not matched by any entry in that
file, and takes the same form as an entry in the mod
erators file. In most cases, "%s@moderators.isc.org"
is a good value for this parameter ("%s" is expanded
into a form of the newsgroup name). See moderators(5)
for more details about the syntax. The default is
unset. If this parameter isn't set and an article is
posted to a moderated group that does not have a
matching entry in the moderators file, the posting
will be rejected with an error.
nnrpdauthsender
Whether to generate a Sender: header based on reader
authentication. If this parameter is set, a Sender:
header will be added to local posts containing the
authenticated user name and the reader's hostname. If
this is enabled but authentication does not return a
username, the Sender: header will be removed from all
posts even if the poster includes one. This is a
boolean value and the default is false.
nnrpdposthost
If set, nnrpd(8) and rnews(1) will pass all locally
posted articles to the specified host rather than try
ing to inject them locally. This should always be set
if xrefslave is true. The default value is unset.
nnrpdpostport
The port on the remote server to connect to to post
when nnrpdposthost is used. The default value is
"119".
organization
What to put in the Organization: header if it is left
blank by the poster. The value of the ORGANIZATION
environment variable, if set, overrides this setting.
The default is unset, which tells INN not to insert an
Organization: header.
spoolfirst
If true, nnrpd(8) will spool new articles rather than
attempting to send them to innd(8). If false, nnrpd
will spool articles only if it receives an error try
ing to send them to innd. Setting this to true can be
useful if nnrpd must respond as fast as possible to
the client; however, when set, articles will not
appear to readers until they are given to innd. nnrpd
won't do this; "rnews -U" must be run periodically to
take the spooled articles and post them. This is a
boolean value and the default is false.
strippostcc
Whether to strip To:, Cc:, and Bcc: headers out of all
setting is to prevent abuse of the news server by
posting to a moderated group and including To: or Cc:
headers in the post so that the news server will send
the article to arbitrary addresses. INN now protects
against this abuse in other ways provided mta is set
to a command that includes "%s" and honors it, so this
is generally no longer needed. This is a boolean
value and the default is false.
nnrpd(8) has support for controlling high-volume posters
via an exponential backoff algorithm, as configured by the
following parameters.
Exponential posting backoff works as follows: News
clients are indexed by IP address (or username, see back
offauth below). Each time a post is received from an IP
address, the time of posting is stored (along with the
previous sleep time, see below). After a configurable
number of posts in a configurable period of time, nnrpd(8)
will activate posting backoff and begin to sleep for
increasing periods of time before actually posting any
thing. Posts will still be accepted, but an increasingly
reduced rate.
After backoff has been activated, the length of time to
sleep is computed based on the difference in time between
the last posting and the current posting. If this differ
ence is less than backoffpostfast, the new sleep time will
be 1 + (previous sleep time * backoffk). If this differ
ence is less than backoffpostslow but greater than back
offpostfast, then the new sleep time will equal the previ
ous sleep time. If this difference is greater than back
offpostslow, the new sleep time is zero and posting back
off is deactivated for this poster.
Exponential posting backoff will not be enabled unless
backoffdb is set and backoffpostfast and backoffpostslow
are set to something other than their default values.
Here are the parameters that control exponential posting
backoff:
backoffauth
Whether to index posting backoffs by user rather than
by source IP address. You must be using authentica
tion in nnrpd(8) for a value of true to have any mean
ing. This is a boolean value and the default is
false.
backoffdb
The path to a directory, writeable by the news user,
that will contain the backoff database. There is no
default for this parameter; you must provide a path to
tial backoff.
backoffk
The amount to multiply the previous sleep time by if
the user is still posting too quickly. A value of "2"
will double the sleep time for each excessive post.
The default value is "1".
backoffpostfast
Postings from the same identity that arrive in less
than this amount of time (in seconds) will trigger
increasing sleep time in the backoff algorithm. The
default value is "0".
backoffpostslow
Postings from the same identity that arrive in greater
than this amount of time (in seconds) will reset the
backoff algorithm. Another way to look at this con
stant is to realize that posters will be allowed to
post 86400/backoffpostslow posts per day. The default
value is "1".
backofftrigger
This many postings are allowed before the backoff
algorithm is triggered. The default value is "10000".
Monitoring
These parameters control the behavior of innwatch(8), the
program that monitors INN and informs the news administra
tor if anything goes wrong with it.
doinnwatch
Whether to start innwatch(8) from rc.news. This is a
boolean value, and the default is true.
innwatchbatchspace
Free space in pathoutgoing, in inndf(8) output units,
at which innd(8) will be throttled by innwatch(8),
assuming a default innwatch.ctl(5). The default value
is "800".
innwatchlibspace
Free space in pathdb, in inndf(8) output units, at
which innd(8) will be throttled by innwatch(8), assum
ing a default innwatch.ctl(5). The default value is
"25000".
innwatchloload
Load average times 100 at innd(8) will be restarted by
innwatch(8) (undoing a previous pause or throttle),
assuming a default innwatch.ctl(5). The default value
is "1000".
Load average times 100 at which innd(8) will be throt
tled by innwatch(8), assuming a default
innwatch.ctl(5). The default value is "2000".
innwatchpauseload
Load average times 100 at which innd(8) will be paused
by innwatch(8), assuming a default innwatch.ctl(5).
The default value is "1500".
innwatchsleeptime
How long (in seconds) innwatch(8) will sleep between
each check of INN. The default value is "600".
innwatchspoolnodes
Free inodes in patharticles at which innd(8) will be
throttled by innwatch(8), assuming a default
innwatch.ctl(5). The default value is "200".
innwatchspoolspace
Free space in patharticles and pathoverview, in
inndf(8) output units, at which innd(8) will be throt
tled by innwatch(8), assuming a default
innwatch.ctl(5). The default value is "8000".
Logging
These parameters control what information INN logs.
docnfsstat
Whether to start cnfsstat(8) when innd(8) is started.
cnfsstat will log the status of all CNFS cycbuffs to
syslog on a periodic basis. This is a boolean value
and the default is false.
logartsize
Whether the size of accepted articles (in bytes)
should be written to the article log file. This is
useful for flow rate statistics and is recommended.
This is a boolean value and the default is true.
logcancelcomm
Set this to true to log "ctlinnd cancel" commands to
syslog. This is a boolean value and the default is
false.
logcycles
How many old logs scanlogs(8) keeps. scanlogs(8) is
generally run by news.daily(8) and will archive com
pressed copies of this many days worth of old logs.
The default value is "3".
logipaddr
Whether the verified name of the remote feeding host
cles rather than the last entry in the Path: header.
The only reason to ever set this to false is due to
some interactions with newsfeeds flags; see
newsfeeds(5) for more information. This is a boolean
value and the default is true.
logsitename
Whether the names of the sites to which accepted arti
cles will be sent should be put into the article log
file. This is useful for debugging and statistics and
can be used by newsrequeue(8). This is a boolean
value and the default is true.
nnrpdoverstats
Whether nnrpd overview statistics should be logged via
syslog. This can be useful for measuring overview
performance. This is a boolean value and the default
is false.
nntpactsync
How many articles to process on an incoming channel
before logging the activity. The default value is
"200".
FIXME: This is a rather unintuitive name for this
parameter.
nntplinklog
Whether to put the storage API token for accepted
articles (used by nntplink) in the article log. This
is a boolean value and the default is false.
status
How frequently (in seconds) innd(8) should write out a
status report. The report is written to path
http/inn_status.html. If this is set to "0" or
"false", status reporting is disabled. The default
value is "0".
timer
How frequently (in seconds) innd(8) should report per
formance timings to syslog. If this is set to "0" or
"false", performance timing is disabled. Enabling
this is highly recommended, and innreport(8) can pro
duce a nice summary of the timings. The default value
is "0".
System Tuning
The following parameters can be modified to tune the low-
level operation of INN. In general, you shouldn't need to
modify any of them except possibly rlimitnofile unless the
server is having difficulty.
How many read or write failures until a channel is put
to sleep or closed. The default value is "5".
blockbackoff
Each time an attempted write returns EAGAIN or EWOULD
BLOCK, innd(8) will wait for an increasing number of
seconds before trying it again. This is the multi
plier for the sleep time. If you're having trouble
with channel feeds not keeping up, it may be good to
change this value to "2" or "3", since then when the
channel fills INN will try again in a couple of sec
onds rather than waiting two minutes. The default
value is "120".
chaninacttime
The time (in seconds) to wait between noticing inac
tive channels. The default value is "600".
chanretrytime
How many seconds to wait before a channel restarts.
The default value is "300".
icdsynccount
How many article writes between updating the active
and history files. The default value is "10".
maxforks
How many times to attempt a fork(2) before giving up.
The default value is 10.
nicekids
If set to anything other than "0", all child processes
of innd(8) will have this nice(2) value. This is usu
ally used to give all child processes of innd(8) a
lower priority (higher nice value) so that innd(8) can
get the lion's share of the CPU when it needs it. The
default value is "4".
nicenewnews
If set to anything greater than "0", all nnrpd(8) pro
cesses that receive and process a NEWNEWS command will
nice(2) themselves to this value (giving other nnrpd
processes a higher priority). The default value is
"0". Note that this value will be ignored if set to a
lower value than nicennrpd (or nicekids if nnrpd(8) is
spawned from innd(8)).
nicennrpd
If set to anything greater than "0", all nnrpd(8) pro
cesses will nice(1) themselves to this value. This
gives other news processes a higher priority and can
help overchan(8) keep up with incoming news (if that's
the object, be sure overchan(8) isn't also set to a
"0", which will cause nnrpd(8) processes spawned from
innd(8) to use the value of nicekids and nnrpd(8) run
as a daemon to use the system default priority. Note
that for nnrpd(8) processes spawned from innd(8), this
value will be ignored if set to a value lower than
nicekids.
pauseretrytime
Wait for this many seconds before noticing inactive
channels. The default value is "300".
peertimeout
How long (in seconds) an innd(8) incoming channel may
be inactive before innd closes it. The default value
is "3600" (an hour).
rlimitnofile
The maximum number of file descriptors that innd(8) or
innfeed(8) can have open at once. If innd(8) or
innfeed(8) attempts to open more file descriptors than
this value, it is possible the program may throttle or
otherwise suffer reduced functionality. The number of
open file descriptors is roughly the maximum number of
incoming feeds and outgoing batches for innd(8) and
the number of outgoing streams for innfeed(8). If
this parameter is set to a negative value, the default
limit of the operating system will be used; this will
normally be adequate on systems other than Solaris.
Nearly all operating systems have some hard maximum
limit beyond which this value cannot be raised, usu
ally either 128, 256, or 1024. The default value of
this parameter is -1. Setting it to 256 on Solaris
systems is highly recommended.
Paths and File Names
patharchive
Where to store archived news. The default value is
pathspool/archive.
patharticles
The path to where the news articles are stored (for
storage methods other than CNFS). The default value
is pathspool/spool.
pathbin
The path to the news binaries. The default value is
pathnews/bin.
pathcontrol
The path to the files that handle control messages.
If you are using controlchan(8) (usecontrolchan is
trol message is located here. If you are using INN's
built-in control message handling, each executable
file in this directory represents a handler for the
Control: message with the same name as that file. Be
very careful what you put in this directory exe
cutable, as it can potentially be a severe security
risk. The default value is pathbin/control.
pathdb
The path to the database files used and updated by the
server (currently, active, active.times, history and
its indices, and newsgroups). The default value is
pathnews/db.
pathetc
The path to the news configuration files. The default
value is pathnews/etc.
pathfilter
The path to the Perl, Tcl, and Python filters. The
default value is pathbin/filter.
pathhttp
Where any HTML files (such as periodic status reports)
are placed. If the news reports should be available
in real-time on the web, the files in this directory
should be served by a web server. The default value
is the value of pathlog.
pathincoming
Location where incoming batched news is stored. The
default value is pathspool/incoming.
pathlog
Where the news log files are written. The default
value is pathnews/log.
pathnews
The home directory of the news user and usually the
root of the news hierarchy. There is no default; this
parameter must be set in inn.conf or INN will refuse
to start.
pathoutgoing
Default location for outgoing feed files. The default
value is pathspool/outgoing.
pathoverview
The path to news overview files. The default value is
pathspool/overview.
pathrun
The path to files required while the server is running
files and the sockets for communicating with innd(8).
This directory and the control sockets in it should be
protected from unprivileged users other than the news
user. The default value is pathnews/run.
pathspool
The root of the news spool hierarchy. This used
mostly to set the defaults for other parameters, and
to determine the path to the backlog directory for
innfeed(8). The default value is pathnews/spool.
pathtmp
Where INN puts temporary files. For security reasons,
this is not the same as the system temporary files
directory (INN creates a lot of temporary files with
predictable names and does not go to particularly
great lengths to protect against symlink attacks and
the like; this is safe provided that normal users
can't write into its temporary directory). It must be
on the same partition as pathincoming for rnews(1) to
work correctly. The default value is set at configure
time and defaults to pathnews/tmp.
EXAMPLE
Here is a very minimalist example that only sets those
parameters that are required.
mta: /usr/lib/sendmail -oi -oem %s
ovmethod: tradindexed
pathhost: news.example.com
pathnews: /usr/local/news
For a more comprehensive example, see the sample inn.conf
distributed with INN and installed as a starting point; it
contains all of the default values for reference.
HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews
and since modified, updated, and reorganized by innumer
able other people.
$Id: inn.conf.5,v 1.86.2.6 2001/01/16 14:01:33 rra Exp $
SEE ALSO
inews(1), innd(8), innwatch(8), nnrpd(8), rnews(1).
Nearly every program in INN uses this file to one degree
or another. The above are just the major and most fre
quently mentioned ones.
Man(1) output converted with
man2html