From: tomk@westgac3.dragon.com
Subject: Submission for INN doc file
Date: Tue, 9 Jan 1996 00:28:15 -0500 (EST)

Here is a revised file for configuring INN for UUCP node under DEBIAN.
===================== Beginning of Document ===========================

           Configuring Debian GNU/Linux's INN package
                 27th July 1994  Ian Jackson
              Updated 8 Dec 1995 Thomas Kocourek

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/news, 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).

* The INN and `news overview file' FAQs have been installed in
/usr/doc/inn-faq-[1234].gz and /usr/doc/inn-nov-faq.

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.

* Note: This document includes information needed to get INN to work on
* a UUCP-only node. TK

If you feel this document is inaccurate or incomplete please send
email to <debian-bugs@pixar.com>.  Submissions for inclusion are
welcomed !

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.

1. /etc/news/inn.conf

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
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.

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

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.

* UUCP: Add your feed site as per above. Also, Add that same feed to the
* /etc/hosts file. For the IP address, either use the site's actual IP
* address (preferred) or use a bogus address (like 128.1.1.1). Keep in mind
* that you will have to change the bogus address if you get a SLIP, PPP,
* or TCP/IP connection. If you have more than one feed, add each additional
* feed to both files per above instructions. Make sure all IP addresses are
* unique!

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 wish to receive; 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 (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 `nntplink' package as well 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.

* UUCP: Add the 'dummy' site entry (dummy-feed:!*::) whether or not you feed
* other UUCP sites. For each UUCP site that you feed, add an entry using the
* format shown within the file. Additionally, create a home directory under
* /var/spool/uucp for each site that you feed. Insure that the owner & group
* attributes for the directories belong to 'uucp'. If you wish to post news
* articles, you will need to add your feed as a site to be fed news. Otherwise,
* your postings will stay local.

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.

5. nnrp.access

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

The default setup allows reading from anywhere and posting only via
the loopback network interface.

You may wish to allow posting from a wider range of hosts (for
example, you may wish to allow posting by default from all of the
hosts in your organisation, or you may wish to require the admins of
those hosts to contact you to get posting access); you may also wish
to restrict the range of sites which may connect to you to read news.

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.

7. /var/lib/news/active and /var/lib/news/history

If you are setting up a new news system you will have to obtain a list
of newsgroups, known as an `active' file.  Your newsfeed provider will
probably be the best place to go.  Use `su' to become the `news' user
and create your active file by feeding the file they give you into:
  perl -ne 's/ \d+ \d+ / 0000000000 0000000001 /' >active

* NOTE: the above script _only_ works if active file is the true active file
* from your feed. If you feed sends you a list of news groups, you will have
* to edit it by hand to create an active file. As stated earlier in this file,
* use   man 5 active   for the correct format.

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.

8. Enabling things, /etc/rc.d/rc.news and /etc/rc.d/rc.local.

After you have set everything up you should add a line
  /etc/rc.d/rc.news
to /etc/rc.d/rc.local.  This will ensure that the news system is
started at boot time.  You will probably also want to start it
manually this once by invoking /etc/rc.d/rc.news directly, rather than
rebooting.

* UPDATE: The news startup is stored in /etc/rc.misc. Change directory
* to /etc/rc2.d  and create a symlink to it like this:

    ln -s ../rc.misc/news S88news

When you have verified that your news system appears to be running
correctly you should ask your feed sites to start offering news to
you.

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.

* UUCP: additional information - Edit the /etc/news/crontab file and add

  03    *       * * *           /var/lib/news/send-uucp

* to the end of the file. Then invoke the crontab command like this:

   crontab -u news /etc/news/crontab

* and update the crontab for news. Thus at 3 minutes past the hour, any
* outbound news articles will be batched for the UUCICO daemon. Also, if
* you want the UUCICO daemon to call your feed automatically, you can do
* this one of several ways: 1) edit /etc/crontab and add a entry for
* calling the UUCICO daemon, 2) use the 'at' command, 3) create a crontab
* for 'root' with the necessary line to call UUCICO and invoke the 'crontab'
* command. UUCICO should only be called from the root account. Now, if you
* wish to manually call UUCICO, create a shell script with the necessary
* line to invoke UUCICO. Then use chmod 700 <file> to insure that only the
* root account (or su -) can execute the script.

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

I wish to thank both Ian and Tim for this document. I can be reached at
<tomk@westgac3.dragon.com>. Thomas Kocourek
============================ End of Document ==================================

-= Sent by Debian Linux =-
+ Thomas Kocourek KD4CIK +
 tomk@westgac3.dragon.com
