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 /bin/ssh -a -x -q -i <key> -l uucp news.server.to.feed
179               reliable true
180               protocol etyig
181
182           where key is the path to the private key to use for the SSH
183           connection, 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 the following one, which
193           should be in 1 line (it is wrapped here for a proper display in man
194           page):
195
196               no-port-forwarding,no-X11-forwarding,no-agent-forwarding,
197               command="/usr/sbin/uucico -l",from="news.server.to.feed"
198               ssh-rsa xxxyyyzzz uucp@news.server.to.feed
199
200           This ensures the SSH connection will not be used for another goal
201           than exchanging UUCP batches.
202
203       12. Make sure id_private_key is correctly present, as set in
204           /etc/uucp/port, and only readable by the "uucp" user.
205
206       13. Manually run as the "uucp" user the command set in /etc/uucp/port
207           so as to create the known_hosts file to make sure the SSH setting
208           is fine.
209
210              /bin/ssh -a -x -q -i <key> -l uucp news.server.to.feed
211
212       14. Parameterize the feed to send to the remote servers.  A typical
213           entry in newsfeeds to generate batches in pathoutgoing is:
214
215               news.server.to.feed/pathname:*:Tf,Wnb,B4096/1024:
216
217       15. Set up the compression method, batch sizes and when to generate
218           them in send-uucp.cf located in pathetc, as described earlier in
219           this documentation.
220
221               news.server.to.feed   bzip2      1048576   3,7,11,15,19,23
222
223       16. Check that send-uucp is started hourly in crontab by the "news"
224           user.  For instance in /etc/cron.d/inn2:
225
226               52 * * * * news <pathbin>/send-uucp
227
228           It can be useful to set up a different launch time than your remote
229           servers.  For instance, if you generate batches every hour at
230           minute 52, a remote peer may do the same at minute 22.  This way,
231           you may exchange articles more frequently, depending on when each
232           other connects.
233
234       17. Check that UUCP programs are automatically started in crontab
235           (usually, uudemon.hr is called hourly in /etc/cron.d/uucp to poll
236           remote news servers, and uudemon.day daily in
237           /etc/cron.daily/uucp).
238
239           Like for send-uucp, adjust the launch time to maximize the number
240           and the freshness of batches to exchanges.
241
242       18. Check the logs in /var/log/uucp to ensure everything works fine,
243           both polling and sending.
244
245           You will see that send-uucp prepares rnews batches named like
246           D.0I8Y, that are queued by uux.  When uucico is afterwards started
247           from cron to transfer these batches, uucico takes available batches
248           from the remote sites at the same time.  These received batches are
249           then processed by uuxqt which calls rnews to inject them.
250
251           That's all!
252

FILES

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

HISTORY

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

SEE ALSO

273       innd(8), newsfeeds(5), uucp(8).
274
275
276
277INN 2.7.1                         2023-03-07                      SEND-UUCP(8)
Impressum