1SEND-UUCP(8)              InterNetNews Documentation              SEND-UUCP(8)
2
3
4

NAME

6       send-uucp - Send Usenet articles via UUCP
7

SYNOPSIS

9       send-uucp [site ...]
10

DESCRIPTION

12       The send-uucp program processes batch files written by innd(8) to send
13       Usenet articles to UUCP sites.  It reads a configuration file to
14       control how it behaves with various sites.  Normally, it is run
15       periodically out of cron to put together batches and send them to
16       remote UUCP sites.
17
18       It makes it possible to reduce bandwidth usage and to send news to
19       remote UUCP sites which cannot receive a real-time feed (for instance
20       if they are over dial-up connections).
21

OPTIONS

23       Any arguments provided to the program are interpreted as a list of
24       sites specified in send-uucp.cf for which batches should be generated.
25       If no arguments are supplied, then batches will be generated for all
26       sites listed in that configuration file.
27

CONFIGURATION

29       The sites to which articles are to be sent must be configured in the
30       configuration file send-uucp.cf in pathetc as set in inn.conf.  Each
31       site is specified with a line of the form:
32
33           site[:host[:funnel]] [compressor [maxsize [batchtime]]]
34
35       site
36           The news site name being configured.  This must match a site name
37           from newsfeeds(5).
38
39       host
40           The UUCP host name to which batches should be sent for this site.
41           If omitted, the news site name will be used as the UUCP host name.
42
43       funnel
44           In the case of a site configured as a funnel, send-uucp needs to
45           flush the channel (or exploder) being used as the target of the
46           funnel instead of flushing the site.  This is the way to tell send-
47           uucp the name of the channel or exploder to flush for this site.
48           If not specified, default to flushing the site.
49
50       compressor
51           The compression method to use for batches.  This should be one of
52           "bzip2", "compress", "gzip" or "none".  Arguments for the
53           compression command may be specified by using "_" instead of
54           spaces.  For example, "gzip_-9".  The default value is "gzip".
55
56       maxsize
57           The maximum size in bytes of a single batch before compression.
58           The default value is 500000 bytes.
59
60       batchtime
61           A comma separated list of hours during which batches should be
62           generated for a given site.  When send-uucp runs, a site will only
63           be processed if the current hour matches one of the hours in
64           batchtime.  The default is no limitation on when to generate
65           batches.
66
67       Fields are separated by spaces and only the site name needs to be
68       specified, with defaults being used for unspecified values.  If the
69       first character on a line is a hash sign ("#") then the rest of the
70       line is ignored.
71

EXAMPLE

73       Here is an example for the send-uucp.cf configuration file:
74
75           zoetermeer      gzip            1048576         5,18,22
76           hoofddorp       gzip            1048576         5,18,22
77           pa3ebv          gzip            1048576         5,18,22
78           drinkel         bzip2           1048576         5,6,18,20,22,0,2
79           manhole         compress        1048576         5,18,22
80           owl             compress        1048576
81           able
82           pern::MYFUNNEL!
83
84       This defines eight UUCP sites.  The first three and the last two use
85       "gzip" compression, the fourth site ("drinkel") uses "bzip2" and the
86       remaining sites ("manhole" and "owl") use "compress".  The first six
87       use a batch size of 1 MB, and the two last sites ("able" and "pern")
88       use the default of 500,000 bytes.  The "zoetermeer", "hoofddorp",
89       "pa3ebv", and "manhole" sites will only have batches generated for them
90       during the hours of 05:00, 18:00, and 22:00, and the "drinkel" site
91       will only have batches generated during those hours and 06:00, 20:00,
92       00:00, and 02:00.  There are no restrictions on when batches will be
93       generated for "owl", "able" and "pern".
94
95       The "pern" site is configured as a funnel into "MYFUNNEL!".  send-uucp
96       will issue "ctlinnd flush MYFUNNEL!" instead of "ctlinnd flush pern".
97
98       As for the newsfeeds file, the usual flags used for a UUCP feed are
99       "Tf,Wnb".  Here is a typical entry for "zoetermeer", where the batching
100       is kept between 4 KB and 1 KB:
101
102           zoetermeer\
103               :*,!junk,!control,!control.*/!foo\
104               :Tf,Wnb,B4096/1024:
105

SETTING UP UUCP FEEDS

107       Here are the steps to follow to set up a UUCP feed over SSH between two
108       news servers, using the UUCP implementation available in Debian as the
109       "uucp" package.  The mechanisms described below should be transposed if
110       you use another UUCP implementation.  (And if you do, please inform the
111       INN maintainers about how to set up a feed with another UUCP
112       implementation, so that it can be added to this documentation.)
113
114       1.  First of all, make sure rnews is correctly installed setuid "news",
115           owned by group "uucp", and mode 4550.  This will allow the UUCP
116           subsystem to run rnews to process UUCP batches of news articles.
117           The "configure" flag --enable-uucp-rnews takes care of it when
118           installing INN.  Otherwise, you'll have to manually change the
119           permissions on rnews.
120
121       2.  Install the "uucp" package.  It will notably provide uucico(8) and
122           uux(1).
123
124       3.  Configure in /etc/uucp/Poll the remote news servers to poll, and
125           the hours during which they are to be polled.  For instance, if you
126           send to "news.server.to.feed" UUCP batches every 4 hours, you can
127           use:
128
129               schedule news.server.to.feed 00
130               poll news.server.to.feed 00 04 08 12 16 20
131
132           If sending is hourly, just list all the hours.
133
134       4.  Configure in /etc/uucp/call the credentials (usernames and
135           passwords) to use when authenticating against remote news servers,
136           one per line.  For instance:
137
138               news.server.to.feed login password
139
140       5.  Configure in /etc/uucp/config the UUCP name of the local news
141           server.  For instance:
142
143               nodename my.news.server
144
145       6.  Check that /etc/uucp/expire fits your needs as for the number of
146           days batches are retained as well as the configuration of daily
147           reports.  Default values are normally fine, though you may want to
148           receive a daily report only if unusual things happen (and in that
149           case, just set $important_only to 1).
150
151       7.  Configure in /etc/uucp/passwd the credentials (usernames and
152           passwords separated by a tabulation) remote news servers use when
153           authenticating against the local news server, one per line.  For
154           instance:
155
156               login<TAB>password
157
158       8.  Configure in /etc/uucp/sys how remote news servers connect to the
159           local news server.  A typical entry to set an SSH connection is the
160           following one where pathbin should be changed to the real path to
161           rnews:
162
163               system news.server.to.feed
164               call-login *
165               call-password *
166               commands <pathbin>/rnews
167               time any
168               chat "" \d\d\r\c ogin: \d\L word: \P
169               chat-timeout 120
170               protocol i
171               port ssh.news.server.to.feed
172
173       9.  Configure in /etc/uucp/port how to connect to remote news servers.
174           A typical entry to set an SSH connection using a private key is:
175
176               port ssh.news.server.to.feed
177               type pipe
178               command /usr/bin/ssh -a -x -q -i <key_file> -l uucp news.server.to.feed
179               reliable true
180               protocol etyig
181
182           where key_file is the private key to use for the SSH connection,
183           like for instance /var/spool/uucp/.ssh/id_private_key.
184
185       10. Make sure the administrators of remote news servers have added the
186           public key related to id_private_key for connections to the "uucp"
187           user of the remote news servers.
188
189       11. Supposing the home directory of the "uucp" user is /var/spool/uucp,
190           you need to configure the SSH keys in the .ssh subdirectory.
191           First, add the public keys of all remote news servers in
192           authorized_keys.  A typical entry is:
193
194               no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command="/usr/sbin/uucico -l",from="news.server.to.feed" ssh-rsa xxxyyyzzz uucp@news.server.to.feed
195
196           This ensures the SSH connection will not be used for another goal
197           than exchanging UUCP batches.
198
199       12. Make sure id_private_key is correctly present, as set in
200           /etc/uucp/port, and only readable by the "uucp" user.
201
202       13. Manually run as the "uucp" user the command set in /etc/uucp/port
203           so as to create the known_hosts file so as to make sure the SSH
204           setting is fine.
205
206              /usr/bin/ssh -a -x -q -i <key_file> -l uucp news.server.to.feed
207
208       14. Parameter the feed to send to the remote servers.  A typical entry
209           in newsfeeds to generate batches in pathoutgoing is:
210
211               news.server.to.feed/pathname:*:Tf,Wnb,B4096/1024:
212
213       15. Set up the compression method, batch sizes and when to generate
214           them in send-uucp.cf located in pathetc, as described earlier in
215           this documentation.
216
217               news.server.to.feed   bzip2      1048576   3,7,11,15,19,23
218
219       16. Check that send-uucp is started hourly in crontab by the "news"
220           user.  For instance in /etc/cron.d/inn2:
221
222               52 * * * * news <pathbin>/send-uucp
223
224           It can be useful to set up a different launch time than your remote
225           servers.  For instance, if you generate batches every hour at
226           minute 52, a remote peer may do the same at minute 22.  This way,
227           you may exchange articles more frequently, depending on when each
228           other connects.
229
230       17. Check that UUCP programs are automatically started in crontab
231           (usually, uudemon.hr is called hourly in /etc/cron.d/uucp to poll
232           remote news servers, and uudemon.day daily in
233           /etc/cron.daily/uucp).
234
235           Like for send-uucp, adjust the launch time to maximize the number
236           and the freshness of batches to exchanges.
237
238       18. Check the logs in /var/log/uucp to ensure everything works fine,
239           both polling and sending.
240
241           You will see that send-uucp prepares rnews batches named like
242           D.0I8Y, that are queued by uux.  When uucico is afterwards started
243           from cron to transfer these batches, uucico takes available batches
244           from the remote sites at the same time.  These received batches are
245           then processed by uuxqt which calls rnews to inject them.
246
247           That's all!
248

FILES

250       pathbin/send-uucp
251           The Perl script itself used to create news batches from the
252           outgoing files.
253
254       pathetc/send-uucp.cf
255           The configuration file which specifies a list of sites to be
256           processed.
257
258       pathlog/send-uucp.log
259           The log file used if the syslog facility is not available.
260

HISTORY

262       This program was originally written by Edvard Tuinder <ed@elm.net> and
263       then maintained and extended by Miquel van Smoorenburg
264       <miquels@cistron.nl>.  Marco d'Itri <md@linux.it> cleaned up the code
265       for inclusion in INN.  This manual page was written by Mark Brown
266       <broonie@sirena.org.uk>.
267

SEE ALSO

269       innd(8), newsfeeds(5), uucp(8).
270
271
272
273INN 2.6.5                         2022-01-23                      SEND-UUCP(8)
Impressum