Subject: Re: Air Gap & News

From: Sergey Matveev <[email-masked]>
Date: Sat, 26 Dec 2020 19:31:53 +0300

Greetings!

*** William Hay [2020-12-26 10:25]:
>http://www.nncpgo.org/UsecaseAirgap.html#UsecaseAirgap Says it is about
>using nncp via air gap but AFAICT only describes how to send via a network
>connected intermediate machine.  No documentation, or even example,
>is given for configuring  the intermediate machine to copy the packets
>to removable storage.

Well, there are so many ways how you can exchange packets with NNCP
commands, that is would be huge documentation consisting only of
examples. nncp-xfer, nncp-bundle, nncp-call/daemon and many ways to send
that bundles (tapes, filesystemless disk, CD/DVD, oneway broadcasting
channel (in theory, have not done in practice, and so on). nncp-xfer,
for example, can be run manually, by some event when mass storage device
is connected, by some cron checking routine and all of that also depends
on OS/distribution (systemd, udev, devfs, etc).

>http://www.nncpgo.org/Comparison.html#Comparison Says No for
>sneakernet friendliness/UUCP while the commentary says this
>requires more manual configuration.  I set this up a few
>years ago for myself and although there is a little setup
>work once done it is about as automatic as sneakernet can
>get. https://www.dumain.com/posts/Forward_to_the_1970s_with_UUCP.../

Although you can setup sneakernet between UUCP hosts, that does not mean
it was designed to do so and has any kind of help of doing so. UUCP does
not encrypt/authenticate transferred data -- but you can manually add
gpg invocations to deal with that. UUCP does not split huge files on
chunks -- you can freely do it manually with the "split" command.
Actually there is no need to use UUCP/NNCP at all -- you can transfer
files and pieces manually. That is why NNCP is "a collection of
utilities simplifying ...". NNCP is just a collection of various
helpers. UUCP does not contain any kind of help for dealing with
non-online data exchanging.

I can not find and remember where exactly I have asked about how to deal
with removable storage and Taylor UUCP, but Ian Lance Taylor answered
that UUCP was never intended to be used like that and the easiest
possibility to transfer data by offline is just to copy spool directory
contents. So obviously that won't work if another implementation is used
on another node.

You scripts on dumain.com URL are exactly that kind of helpers,
*additional* utilities, but it is not the part of UUCP software and its
intended use-case.

>Under News Transmission it says Yes for UUCP and No for NNCP.  The only
>support UUCP has for news transmission is that if your news system
>supplies an rnews binary then it will be enabled for remote execution
>by default.

This is mistake now. That comparison was written before NNCP have been
able to execute any kind of commands -- initially it was hard-coded to
use only sendmail. Will fix that comparison.

>Also saying UUCP only supports PAP for peer authentication is somewhat
>misleading since, by tying each peer to a particular unix login, it
>can use whatever authentication your OS provides (most of my uucp nodes
>authenticate via ssh keys).

Do not agree. I have used UUCP for years with SSH transport, but that is
literally UUCP-over-SSH. All that SSH commands are just wrappers, but
UUCP still uses his own authentication. I can transparently add IPsec,
TLS, but all of that are additions, wrappers, tunnels.

I used UUCP for years over SSH. And was happy with it. But number of
hacks, supporting scripts, additional tunnels (like ssh), need for gpg
(for examples when moving spool directory on the removable storage
around) were growing. I get tired of all of it and decided to write
NNCP, where everything I want was out-of-box conveniently existing and
working.

-- 
Sergey Matveev (http://www.stargrave.org/)
OpenPGP: CF60 E89A 5923 1E76 E263  6422 AE1A 8109 E498 57EF