> Last update 07-Oct-2000

> # MBSE BBS - Internet Gateway - INN.

> ###
> SETUP INND

> Below are the files that you need to setup for INN news. I used inn-2.2.2 on my system. It is configured to install in /opt/news with the command ./configure --prefix=/opt/news during the installation of inn.

>     ##  $Revision: 1.24.2.2 $
>     ##  inn.conf -- inn configuration data
>     ##  Format:
>     ##	:
>     ##
>     ##  See the inn.conf(5) man page for a full description of each
>     ##  of these options
>     ##
>     ##  Blank values are allowed for certain parameters
>     ## ---------------------------------
>     # All parameters must exist
>     #
>     organization:		MBSE BBS Development Site
>     server:			localhost
>     pathhost:		news.mbse.nl
>     moderatormailer:
>     domain:			mbse.nl
>     fromhost:		news.mbse.nl
>     pathalias:
>     complaints:
>     mta:			/usr/sbin/sendmail -oi %s
>     mailcmd:		/opt/news/bin/innmail
>     checkincludedtext:	false
>     maxforks:		10
>     maxartsize:		1000000
>     nicekids:		4
>     nicenewnews:		0
>     verifycancels:		false
>     logcancelcomm:		false
>     wanttrash:		false
>     remembertrash:		true
>     linecountfuzz:		0
>     peertimeout:		3600
>     clienttimeout:		600
>     allownewnews:		true
>     localmaxartsize:	1000000
>     logartsize:		true
>     logipaddr:		true
>     logsitename:		true
>     maxconnections:		50
>     artcutoff:		14
>     icdsynccount:		10
>     hiscachesize:		0
>     readertrack:		false
>     strippostcc:		false
>     status:			0
>     timer:			0
>     readerswhenstopped:	false
>     noreader:		false
>     extendeddbz:		false
>     nnrpdoverstats:		false
>     storeonxref:		true
>     nnrpdcheckart:		true
>     storemsgid:		true
>     usecontrolchan:		false
>     mergetogroups:		false
>     backoffauth:		false
>     backoffdb:		/opt/news/db/backoff
>     backoffpostfast:	0L
>     backoffpostslow:	1L
>     backofftrigger:		10000L
>     mimeversion:
>     mimecontenttype:
>     mimeencoding:
>     refusecybercancels:	false
>     activedenable:		false
>     activedupdate:		30
>     activedport:		1119
>     nnrpperlauth:		false
>     #
>     #
>     # These options are unlikely to need changing in most situations
>     #
>     chaninacttime:		600
>     chanretrytime:		300
>     pauseretrytime:		300
>     nntplinklog:		false
>     nntpactsync:		200
>     badiocount:		5
>     blockbackoff:		120
>     #
>     # ---------------------------------
>     # Changing these options can have an effect on the way articles are
>     # stored and may require recreating the spool and/or database files
>     #
>     wireformat:		false
>     xrefslave:		false
>     nnrpdposthost:
>     nnrpdpostport:		119
>     spoolfirst:		false
>     writelinks:		true
>     storageapi:		false
>     articlemmap:		false
>     overviewmmap:		true
>     bindaddress:		all
>     sourceaddress:		any
>     port:			119
>     #
>     ## Keywords-in-overview options
>     ## Enabling this without stopping innd and deleting the existing overview
>     ## database and adding  will probably confuse a lot of things. You must
>     ## have compiled this support in too.
>     #
>     keywords:		false
>     keylimit:		512
>     keyartlimit:		100000
>     keymaxwords:		250
>     #
>     # Other options
>     innflags:
>     doinnwatch:		true
>     innwatchsleeptime:	600
>     pgpverify:		false
>     controlfailnotice:	false
>     logcycles:		3
>     innwatchpauseload:	1500
>     innwatchhiload:		2000
>     innwatchloload:		1000
>     innwatchspoolspace:	8000
>     innwatchbatchspace:	800
>     innwatchlibspace:	25000
>     innwatchspoolnodes:	200
>     docnfsstat:		false
>     #
>     # ---------------------------------
>     # Paths to various aspects of the news system
>     #
>     pathnews:		/opt/news
>     pathbin:		/opt/news/bin
>     pathfilter:		/opt/news/bin/filter
>     pathcontrol:		/opt/news/bin/control
>     pathdb:			/opt/news/db
>     pathetc:		/opt/news/etc
>     pathrun:		/opt/news/run
>     pathlog:		/opt/news/log
>     pathhttp:		/opt/news/log
>     pathtmp:		/opt/news/tmp
>     pathspool:		/opt/news/spool
>     patharticles:		/opt/news/spool/articles
>     pathoverview:		/opt/news/spool/overview
>     pathoutgoing:		/opt/news/spool/outgoing
>     pathincoming:		/opt/news/spool/incoming
>     patharchive:		/opt/news/spool/archive
>     pathuniover:		/opt/news/spool/uniover
>     overviewname:		.overview
>     #
>     # ---------------------------------
>     #

>     ##  $Revision: 1.1.1.1 $
>     ##  expire.ctl - expire control file
>     ##  Format:
>     ##	/remember/:<keep>
>     ##	<patterns>:<modflag>:<keep>:<default>:<purge>
>     ##  First line gives history retention; other lines specify expiration
>     ##  for newsgroups.  Must have a "*:A:..." line which is the default.
>     ##	<patterns>	wildmat-style patterns for the newsgroups
>     ##	<modflag>	Pick one of M U A -- modifies pattern to be only
>     ##			moderated, unmoderated, or all groups
>     ##	<keep>		Mininum number of days to keep article
>     ##	<default>	Default number of days to keep the article
>     ##	<purge>		Flush article after this many days
>     ##  <keep>, <default>, and <purge> can be floating-point numbers or the
>     ##  word "never."  Times are based on when received unless -p is used;
>     ##  see expire.8

>     ##  If article expires before 14 days, we still remember it for 14 days in
>     ##  case we get offered it again.  Depending on what you use for the innd
>     ##  -c flag and how paranoid you are about old news, you might want to
>     ##  make this 28, 30, etc.
>     /remember/:14

>     ##  Keep for 1-10 days, allow Expires headers to work.
>     *:A:1:10:never

>     fido.*:A:1:30:60
>     comp.*:A:1:30:60
>     local.*:A:1:30:60
>     nl.*:A:1:30:60

>     ##  Some particular groups stay forever.
>     # Keep FAQ's for a month, so they're always available
>     #*.answers:M:1:35:90
>     news.announce.*:M:1:35:90

>     # Some other recommendations.  Uncomment if you want
>     # .announce groups tend to be low-traffic, high signal.
>     # *.announce:M:1:30:90
>     # Weather forecasts
>     # *.weather:A:1:2:7
>     # test posts
>     # *.test:A:1:1:1

>     ##  Some particular groups stay forever.
>     # dc.dining*:A:never:never:never
>     # uunet*:A:never:never:never

>     ##  $Revision: 1.2.4.1 $
>     ##  Mailing addresses for moderators.
>     ##  Format:
>     ##	<newsgroup>:<pathname>
>     ##  First match found is used.
>     ##	<newsgroup>	Shell-style newsgroup pattern or specific newsgroup
>     ##	<pathname>	Mail address, "%s" becomes newgroup name with dots
>     ##			changed to dashes.

>     ## Russian hierarchies
>     fido7.*:%s@fido7.ru
>     medlux.*:%s@news.medlux.ru
>     relcom.*:%s@moderators.relcom.ru

>     ## Direct all public hierarchies to the master moderator database.
>     *:%s@moderators.isc.org

>     ##  $Revision: 1.3.2.3 $
>     ##  newsfeeds - determine where Usenet articles get sent
>     ##  Format:
>     ##	site[/exclude,exclude...]\
>     ##		:pattern,pattern...[/distrib,distrib...]\
>     ##		:flag,flag...\
>     ##		:param
>     ##  Summary of flags:
>     ##	<size		Article must be less then size bytes.
>     ##	>size		Article must be more then size bytes.
>     ##	Aitems		Article checks -- d (must have Distribution header)
>     ##			p (don't check for site in Path header)
>     ##			c (no control messages) C (only control messages)
>     ##			e (all groups must exist).
>     ##	Bhigh/low	Internal buffer size before writing to output.
>     ##	Fname		Name of the spool file.
>     ##	Gcount		Crossposts limited to count groups.
>     ##	H[count]	Article must have less then count hops; default is 1.
>     ##	Isize		Internal buffer size (if a file feed)
>     ##	Nm		Only moderated groups that match the patterns.
>     ##	Nu		Only unmoderated groups that match the patterns.
>     ##	Ppriority	Nice priority of channel or program feed.
>     ##	Ooriginator	First field of X-Trace must match originator (wildmat).
>     ##	Ssize		Start spooling if more than size bytes get queued.
>     ##	Ttype		Feed types -- f (file) m (funnel; param names the
>     ##			real entry) p (pipe to program) c (send to stdin
>     ##			channel of param's sub-process) x (like c, but
>     ##			handles commands on stdin) x (log entry only).
>     ##	Witems		What to write -- b (article bytesize) f (full path)
>     ##			g (first newsgroup) h (Message-ID hash)
>     ##			m (Message-ID) n (relative path) p (posted time)
>     ##			s (site that fed article) t (time received)
>     ##			* (names of funnel feed-in's or all sites that get
>     ##			the article) N (Newsgroups header) D (Distribution
>     ##			header) H (all headers) O (overview data)
>     ##			P (path header) R (replication information)
>     ##  Param field depends on T flag.  For Tf, relative paths are from the
>     ##  out.going directory.  For Tp and Tc, it is a shell command to execute.
>     ##  If a Tm refers to this entry (which will have its own T param) then "*"
>     ##  is expanded to all the funnel sites that triggered this one.  Useful
>     ##  for spawning one mail process, e.g.
>     ##
>     ##  This file is complicated -- see newsfeeds.5!

>     ##  This is the local site.
>     ##  The "pattern" field gives the initial subscription list for
>     ##  all other sites.  You might want to put "!control,!junk,!.*"
>     ##  there.  The "distrib" subfield limits incoming articles.
>     ##
>     ##  You can also have ME/bad.site: to refuse articles from a particular
>     ##  site (by matching the Path: entry).  Other pseudo-sites may be put
>     ##  in here, to REFUSE certain types of 3rd-party cancel messages
>     ##  (See the "Cancel FAQ" news.admin.net-abuse.misc):
>     ##	cyberspam	Spam cancels, munged articles, binary postings
>     ##	spewcancel	just munged articles from runaway gateways
>     ##	bincancel	just binary postings to non-binaries groups
>     ##
>     ##  Note that refusing articles means you won't offer them to sites you feed

>     ## Default of  everything to everybody except for junk, control, anything
>     ## with "local" as the newsgroup prefix (i.e. matches "localhost.stuff") or
>     ## groups under foo. Articles posted to any group under alt.binaries.warez
>     ## will not get propagated, even if they're cross posted to something that
>     ## is.
>     ME\
>     	:*,!junk,!control*,!foo.*/fido,local\
>     	::

>     ##  News overview
>     # use this flag if storage api is used
>     #overview!:*:Tc,Ao,WhR,S30000:/opt/news/bin/overchan
>     # else
>     overview!:*:Tc,WO,S30000:/opt/news/bin/overchan

>     f2802.n280/f2802.n280.z2.fidonet\
>             :!junk,!control*,fido.*,comp.*,nl.comp.os.linux.announce/!foo,fido\
>             :Tf,Wfb,B4096/1024:

>     ##  $Revision: 1.1.1.1 $
>     ##  distrib.pats -- specify default Distribution header for newsgroups
>     ##  Format:
>     ##	<weight>:<pattern>:<value>
>     ##  All articles are matched against all patterns, value to be used is the
>     ##  one with the highest weight.
>     ##	<weight>	The weight assigned to this match, integer
>     ##	<pattern>	Newsgroup name or single wildmat(3) pattern
>     ##	<value>		Value of Distribution header.
>     ##
>     ##
>     ## Uncomment to default all local.* groups to a distribution of local.
>     #10:local.*:local
>     10:local.*:local
>     10:fido.*:fido

>     ##  $Revision: 1.3.2.1 $
>     ##  nnrp.access - access file for on-campus NNTP sites
>     ##  Format:
>     ##	<host>:<perm>:<user>:<pass>:<groups>
>     ##	<host>:</path/file>
>     ##  Connecting host must be found in this file; the last match found is
>     ##  used, so put defaults first.
>     ##	<host>		Wildcard name or IP address
>     ##	<perm>		R to read; P to post
>     ##	<user>		Username for authentication before posting
>     ##	<pass>		Password, for same reason
>     ##	<groups>	Newsgroup patterns that can be read or not read
>     ##	</path/file>	A second file to scan in the same format as this
>     ##  To disable posting put a space in the <user> and <pass> fields, since
>     ##  there is no way for client to enter one.
>     ##
>     ## Default is no access, no way to authentication, and no groups.
>     *::::!*
>     stdin:Read Post:::*
>     localhost:Read Post:::*
>     127.0.0.1:Read Post:::*
>     *.mbse.nl:Read Post:::*

> The next file, send-ifmail, comes from the ifmail package. This file must be placed in /opt/news/bin (or wherever you newsconfig files are) and must be owned by user news, group news, mode 0550. You must edit this file before it can be used. The lines with innshellvars and ifnews in it must be adjusted to the paths on your system.

>     #! /bin/sh
>     ##  $Revision: 1.11 $
>     ##  SH script to send UUCP batches out.

>     . /opt/news/lib/innshellvars

>     PROGNAME=`basename $0`
>     LOCK=${LOCKS}/LOCK.${PROGNAME}
>     LOG=${MOST_LOGS}/${PROGNAME}.log

>     MAXJOBS=200
>     UUXFLAGS="- -r -gd"

>     ##  Start logging.
>     test ! -f ${LOG} && touch ${LOG}
>     chmod 0660 ${LOG}
>     exec >>${LOG} 2>&1
>     echo "${PROGNAME}: [$$] begin `date`"
>     cd ${BATCH}

>     ##  Anyone else there?
>     trap 'rm -f ${LOCK} ; exit 1' 1 2 3 15
>     shlock -p $$ -f ${LOCK} || {
>         echo "${PROGNAME}: [$$] locked by [`cat ${LOCK}`]"
>         exit 0
>     }

>     ##  Who are we sending to?
>     if [ -n "$1" ] ; then
>         LIST="$*"
>     else
>         LIST=`ls ${BATCH}|egrep "f[0-9]*\.n[0-9]*\.z[0-9]\.fidonet\.org$"`
>         LIST=$LIST\ `ls ${BATCH}|egrep "f[0-9]*\.n[0-9]*\.z[0-9]*\.[^\.]*\.ftn$"`
>         LIST=$LIST\ `ls ${BATCH}|egrep "f[0-9]*\.n[0-9]*\.z[0-9]*\.[^\.]*$"`
>         LIST=$LIST\ `ls ${BATCH}|egrep "f[0-9]*\.n[0-9]*\.z[0-9]*$"`
>         LIST=$LIST\ `ls ${BATCH}|egrep "f[0-9]*\.n[0-9]*$"`
>     fi

>     case ${HAVE_UUSTAT} in
>     DONT)
>         TEMP=${TMPDIR}/uuq$$
>         uuq -h |tr -d : >${TEMP}
>         ;;
>     esac

>     ##  Do the work...

>     for SITE in ${LIST}; do

>         ##  See if any data is ready for host.
>         BATCHFILE=${SITE}.uucp
>         if [ -f ${SITE}.work ] ; then
>     	cat ${SITE}.work >>${BATCHFILE}
>     	rm -f ${SITE}.work
>         fi
>         mv ${SITE} ${SITE}.work
>         ctlinnd -s -t30 flush ${SITE} || continue
>         cat ${SITE}.work >>${BATCHFILE}
>         rm -f ${SITE}.work
>         if [ ! -s ${BATCHFILE} ] ; then
>     	echo "${PROGNAME}: [$$] no articles for ${SITE}"
>     	rm -f ${BATCHFILE}
>     	continue
>         fi

>         ##  Get the compression flags.
>         case "${SITE}" in
>         f456.n23.z1.fidonet.org)
>     	IFNEWS_OPTIONS="-gc"
>     	;;
>         *)
>     	IFNEWS_OPTIONS="-gc -n -xeipq"
>             ROUTE=f2802.n280.z2.fidonet
>     	;;
>         esac
>         echo "${PROGNAME}: [$$] begin ${SITE} via ${ROUTE}"

>         time batcher \
>     	-p"/opt/mbse/bin/ifnews ${IFNEWS_OPTIONS} -r ${ROUTE} %s" \
>     	${SITE} ${BATCHFILE}

>         rm -f ${BATCHFILE}
>         touch /opt/mbse/sema/mailin
>         chmod 666 /opt/mbse/sema/mailin

>         echo "${PROGNAME}: [$$] end ${SITE}"
>     done

>     case ${HAVE_UUSTAT} in
>     DONT)
>         rm -f ${TEMP}
>         ;;
>     esac

>     ##  Remove the lock file.
>     rm -f ${LOCK}

>     echo "${PROGNAME}: [$$] end `date`"

> Go back Go to main