
           Configuring Debian GNU/Linux's INN package

             27th July     1994  Ian Jackson
             06 March      1996  Miquel van Smoorenburg
             07 December   1996  Miquel van Smoorenburg
             18 Aug        1997  Miquel van Smoorenburg

0. INTRODUCTION

  Following the installation of a new INN package you will have to set
  up several files to reflect your system.  I'm afraid that I can't do
  this automatically, as it's too complicated.

  Apart from this file, a lot of information which you may find
  useful comes with the standard INN distribution.  This has been
  installed in the usual places on your Debian system:

  * There is a file `inn-Install.ms.gz' in /usr/doc/inn, which can be
    read using zcat | nroff -ms and describes the installation and
    configuration of INN.  NB: ignore the parts about compiling the
    program - this has been done for you by the Debian maintainers.

  * There are manpages for all of the configuration files and for all of
    the news processing programs.  To find out about a particular
    configuration file format, type man 5 filename (section 5 is the
    manual section for file formats). You can get a complete list of
    manpages by using the command "dpkg -L inn inews | grep usr/man".

  * The INN FAQ has been installed in /usr/doc/inn/INN-faq_part[1-9].gz

  This file was written mainly to assist people who are permanently
  IP-connected and wish to exchange news via NNTP, the Network News
  Transfer Protocol.  If you want to do something else you should still
  read it, but look at the sources listed above for further information.

  If you feel this document is inaccurate or incomplete please send
  email to the current INN package maintainer. Submissions for inclusion are
  welcomed !

1. CONFIGURATION

  Most of the files referred to here are in the /etc/news directory;
  this is where almost all the news configuration files are stored.
  Each configuration file contains a comment at the top describing its
  contents.

  Either use "su" to become the news user (recommended), or make sure all
  files you create and update get chown'ed to the news user (news:news).

1.1 /etc/news/inn.conf

  This file will be setup by the `postinst' script of the INN
  installation, but you can always edit it by hand.

  You should replace the `organization' line with something appropriate,
  describing the site or organisation your system is part of.

  If you're running a `single machine' site, where the mail address is
  the name of the actual machine, rather than of the containing domain,
  you should put the full name of your machine, with all the domain
  components in `fromhost' and `pathhost'.  You can leave `server' set
  to `localhost' or change it to the name of your machine.

  If you're running a site where the machines are generally named
  *.dcs.ufoo.edu or some such, but where the mail addresses are
  user@dcs.ufoo.edu, you should do something like the following:

    organization:   University of Foo, Department of Computer Science
    fromhost:       dcs.ufoo.edu
    pathhost:       dcs.ufoo.edu
    server:         news.dcs.ufoo.edu

  This assumes that the machine you're running the news system on is
  called `news' - usually it is a good thing to have a DNS alias `news'
  for your news server. Do not forget to add "news.dcs.ufoo.edu" to
  the "nnrp.access" file.

  You can leave moderatormailer unset in this file; it will be dealt
  with by the `moderators' file, which comes set up to mail everything
  it doesn't know about to uunet.

1.2. hosts.nntp

  This lists the sites that may connect to you to transfer news in bulk
  - ie, your feed sites.  There is a feature here to use passwords, but
  in practice this is rarely used.

  You should list in this file at least the machine names (or aliases)
  of any of your feed sites.  This may include your IP service provider
  and anyone else you've agreed to do a bilateral feed with.

  Note that the machine people send out news from may not be the same as
  the one they receive it at.  The address here is the one that *they*
  will be connecting *to* *you* from, to transfer news from them to you
  via NNTP.

  You have to list each site with a colon after it.

1.3 newsfeeds

  This lists the people to whom you feed news, and specifies which
  groups and distributions you wish to receive.

  See newsfeeds(5) (ie, type man 5 newsfeeds) for complete details.

  The ME entry describes what articles you want to accept; the other
  entries describe what you'll offer to that `downstream' site.  Usually
  the `ME' entry on the receiving end of a feed should match the
  corresponding line of the sending end's feed. Remember that you have to
  tell them what groups to send to you (of course, the people
  you're peering with may be using C News or even B News instead of INN,
  so their files may be formatted differently).

  If you just want to send local postings back to your main feed site
  something along the lines of the example `feed all local non-internal
  postings' entry will probably serve quite well.

  If you wish to be someone's primary or backup feed I recommend you
  install the `innfeed' package too and use that to feed them.  In
  that case you will probably want to use that to send news back to your
  primary feed site as well.

1.4 expire.ctl

  How long you can keep which groups for depends on how much disk space
  you have.  All I can recommend is try it and see; any recommendations
  I make will be wrong for you by the time you read this, because the
  set of groups you receive will be different, and because total news
  traffic is doubling about once a year.

  You will probably want to set a lower expire time on binaries groups.

  Again, see the manpage for details of how to format the file.

1.5 nnrp.access

  This controls which sites can read news from you using NNTP-based
  newsreader programs.

  The default setup allows reading and posting only via the loopback network
  interface. You probably want to add an entry for your entire domain
  by using *.yourdomain_here.com. Do not add a wildcard entry for the
  entire Internet; open newsservers are a no-no in most situations nowadays.

1.6 /etc/news/whoami and /etc/news/organization

  These are used by trn and some other newsreading clients.  They should
  contain the same information as the inn.conf fromhost: and
  organization: entries, respectively.

  Each one should just be the data in question (hostname or intended
  contents of Organization field) followed by a newline.

1.7 /var/lib/news/active

  If you are setting up a new news system you will have to obtain a list
  of newsgroups, known as an `active' file. There are basically two ways
  to do this:

  * You get an active file from your provider or you create one by hand.
    In this case, you need to stop inn, fix up the active file and start
    it again. You do this in the following way:

    cd /var/lib/news
    /etc/init.d/inn start
    perl -pe 's/ \d+ \d+ / 0000000000 0000000001 /' > active < active.sample
    /etc/init.d/inn stop

    The perl command sets the numbers in the active file to zero for
    all groups.

  * You want to copy the active file from the NNTP server of your provider.
    Use the "actsync" program for this. Read the manual page for "actsync".
    You may want to adjust the /etc/news/actsync.ign file. Then run actsync
    with a command line like this:

      actsync -i /etc/news/actsync.ign -p 0 -o x -z 0 news.myprovider.com

    Actsync is located in /usr/lib/news/bin, so you might want to put that
    in your PATH or start it as /usr/lib/news/bin/actsync -i .....

1.8 /var/lib/news/history

  You will also have to create an empty history database - type:

    touch /var/lib/news/history
    /usr/lib/news/bin/makehistory -ro

  If you're installing INN as a replacement for an existing news system,
  which already has active and history files and a news spool, you can
  keep those.  You'll have to run makehistory as above though, unless
  you were already using a dbz history file.

  Remember to stop the news system before messing with these files! (And
  to restart it later on, ofcourse). Also make sure that the
  /var/lib/news/history* files are owned by news:news.

2. FAMOUS LAST WORDS.

  INN has difficulty coping with the case where one of your feed sites -
  ie, one of the sites that offer news to you via NNTP - also has users
  who wish to read news from your server.  This is because it actually
  has two NNTP server programs, one for feed sites and one for reader
  hosts.  It is possible to switch from the feeder server to the reader
  one with a MODE READER command in the NNTP protocol, and many clients
  are now compiled to do this.  I'm afraid I don't know what to suggest
  if the clients on the feed site don't have this capability.

  Thanks to Tim Morley <tim@derwent.co.uk> for some of the examples in
  this document.

