I tried running my own server on mcvoy.com but eventually gave up, the
spam filtering was a non-ending task.
If someone has a plug and chug setup for MX I'd love to try it.
Thanks,
--lm
This question is motivated by the posters for whom FreeBSD is not Unix
enough :-)
Probably the best known contribution of the Berkeley branch of Unix is
the sockets API for IP networking. But today, if for no other reason
than the X/Open group of standards, sockets are the preferred networking
API everywhere, even on true AT&T derived UNIX variants. So they must
have been merged back at some point, or reimplemented. My question is,
when and how did that happen?
And if there isn't a simple answer because it happened at different
times and in different ways for each variant, all the better :-)
--
Please don't Cc: me privately on mailing lists and Usenet,
if you also post the followup to the list or newsgroup.
Do obvious transformation on domain to reply privately _only_ on Usenet.
I run my own mail server, on systems in my basement.
It is a setup that no one in their right mind would
replicate, but the details may actually be proper for
this list.
A firewall/gateway system runs a custom SMTP server,
which can do simple filtering based on the SMTP envelope,
SMTP commands, calling IP address and hostname. It is
also able to call external commands to pass judgement on
a caller or a particular message.
If mail is accepted, it is passed through a simple
MTA and a stupidly-simple queueing setup (the latter
made of shell scripts) to be sent via SMTP to a
different internal system, which uses the same SMTP
server and MTA to deliver to local mailboxes.
Outbound mail is more or less the obvious inverse.
I have put off naming names for dramatic effect. The
two systems in question are MicroVAX IIIs running
my somewhat-hacked-up version of post-10/e Research
UNIX. The MTA is early-1990s-vintage upas. The SMTP
server, SMTP sender, and queuing stuff are my own.
I wrote the SMTP server originally not long after I left
Bell Labs; I was now in a world where sendmail was the
least-troublesome MTA, but in those days every month
brought news of a new sendmail vulnerability, so I wrote
my own simple server to act as a condom. Over time it
grew a bit, as I became interested in problems like
what sorts of breakin attempts are there in real life
(back then one received occasional DEBUG or WIZ commands,
but I haven't seen any since the turn of the century);
what sorts of simple filtering at the SMTP level will
get rid of most junk mail. The code is more complicated
than it used to be, but is still small enough that I am
reasonably confident that it is safe to expose to the
network.
The SMTP sender and the queueing scripts came later,
when I decided to host my own mail. Both were designed
in too much of a hurry.
There is no official spam filtering (no bogofilter or
the like). A few simple rules that really just enforce
aspects of the SMTP standard seem to catch most junk
callers: HELO argument must contain at least one . (standard
says it must be your FQDN) and must not be *.* (I see dozens
of those every day!); sender must not speak until my server
has issued a complete greeting (I follow Wietse Venema in
this: send a line with a continuation marker first, then
sleep five seconds or so, then send a finish). I also
have a very simple, naive greylisting implementation that
wouldn't work well for a site with lots of users, but is
fine for my personal traffic. The greylisting is implemented
with a pair of external shell scripts.
I have had it in mind for a long time to consult the Spamhaus
XBL too. It would be easy enough to do with another plug-in
shell script. There are stupid reasons having to do with my
current DNS setup that make that impractical for now.
The mail setup works, but is showing its age, as is the
use of Research UNIX and such old, slow hardware as a network
gateway. One of these years, when I have the time, I'd like
first to redo the mail setup so that mailboxes are stored
on my central file server (a Sun X2200 running Solaris 10,
or perhaps something illumos-based by the time I actually
do all this); then set up a new gateway, probably based on
OpenBSD. Perhaps I should calculate how much hardware I
could buy from the power savings of turning off just one of
the two MicroVAXes for a year.
I have yet to see an MTA that is spare enough for my taste,
but the old upas code just doesn't quite do what I want any
more, and is too messy to port around. (Pursuant to the
conversation earlier here about autoconf: these days I try
to need no configuration magic at all, which works as long
as I stick to ISO C and POSIX and am careful about networking.
upas was written in messier days.) At the moment I'm leaning
toward qmail, just because for other reasons I'm familiar with
it, though for my personal use I will want to make a few changes
here and there. But I'll want to keep my SMTP server because
I am still interested in what goes on there.
Norman Wilson
Toronto ON
> When you say MIT you think about ITS and Lisp. That is why emacs IMHO
> was against UNIX ideals. RMS was thinking in different terms than Bell
> Labs hackers.
Very different. Once, when visiting the Lisp machine, I saw astonishingly
irrelevant things being done as first class emacs commands, and asked
how many commands there were. The instant answer was to have emacs
print the list. Nice, but it scrolled way beyond one screenful. I
persisted: could the machine count them? It took several minutes of
head-scratching and false starts to do a task that was second nature
to Unix hands.
With hindsight, I realize that the thousand emacs commands were but a
foretaste of open-source exuberance--witness this snippet from Linux:
!ls /usr/share/man/man2|wc
468 468 6766
Even a "kernel" is as efflorescent as a tropical rainforest.
On Tue, Sep 19, 2017, at 10:42, Larry McVoy wrote:
> slib.c:1653 (bk-7.3): open failed: permission denied
>
> which is way way way more useful than just permission denied.
Random832 replied:
Well. It's less useful in one way - it doesn't say what file it was
trying to open. You could pass the filename *instead* of "open failed",
but that still omits the issue I had pointed out: what were you trying
to open the file for (at the very least, were you trying to read, write,
or exec it). Ideally the function would have a format and arguments.
====
Exactly.
The string interpretation of errno is just another
item of data that goes in an error message. There is
no fixed place it belongs, and it doesn't always
belong there, because all that is error does not
fail from a syscall (or library routine).
I do often insert a function of the form
void errmsg(char *, ...)
in my C programs. It takes printf-like arguments.
Normally they just get passed to vfprintf(stderr, ...),
though sometimes there is something more esoteric,
and often fprintf(stderr, "%s: ", progname) ends up
in front.
But errmsg never knows anything about errno. Why
should it? It's supposed to send complaints to
a standard place; it's not supposed to invent the
complaints for itself! If an errno is involved,
I write something like
errmsg("%s: cannot open: %s", filename, strerror(errno));
(Oh, yes, errmsg appends a newline too. The idea
is to avoid cluttering code with minutiae of how
errors are reported.)
I don't print the source code filename or line number
except for `this shouldn't have happened' errors.
For routine events like the user gave the wrong
filename or it had the wrong permissions or his
data are malformed, pointers to the source code are
just unhelpful clutter, like the complicated
%JARGON-OBSCURE-ABBREVIATION prefixes that accompanied
every official error message in VMS.
Of course, if the user's data are malformed, he
should be told which file has the problem and
where in the file. But that's different from
telling him that line 193 of some file he doesn't
have and will probably never see contains the system
call that reported that he typed the wrong filename.
Norman Wilson
Toronto ON
I received a private request for info on my Postfix config. I'm happy to
post to list.
This is the interesting bit:
https://pastebin.com/tNceD6zM
Running under Debian 8, soon to be upgraded to Debian 9.
Postgrey is listening on TCP/10023.
As an aside I just saw this in my mail queue:
# mailq
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
2182087EA 1618 Thu Sep 21 10:41:07 robert(a)timetraveller.org
(host aneurin.horsfall.org[110.141.193.233] said: 550 5.7.1
<dave(a)horsfall.org>... No reporting address for linode.com; see RFC 2142
(in reply to RCPT TO command))
dave(a)horsfall.org
That is aggressive standards compliance ;)
Rob
All, sorry for the test post. Grant Taylor has been helping me resolve
the mail bounces, which we think are due to the mailing list preserving the
existing DKIM information when forwarding to e-mail.
This e-mail is going to a test address which should strip the inbound
DKIM stuff before passing to the TUHS list. Hopefully we can observe
the result and check the logs.
Warren
And ... we now bring the threads on current Unix-like systems and current
mail configuration to a close, and remind the group that the mailing list
is about _old_ things :-)
Mind you, if the list lasts another 25 years, these two threads will
meet that criterion.
Thanks, Warren
I use Exchange 5.5 & MacOS + Outlook... I know very un-unixy but it's more
so a test bed for a highly modified version of Basilisk II (more so to test
appletalk of all things)
I route it through Office 365, since I use that for my company, and they
have a 'connector' to route a domain through their spam filters and then
drop it to my legacy Exchange server. I gave up on the SPAM fight, it
really was far too much of a waste of my time. That and this email address
is in far far too many databases... :|
I'm on the fence if it's really worth the effort though. I wanted to setup
some kind of UUCP / Exchange relay, and maybe go full crazy with X.25 but at
some point I need to maybe let some of this old stuff just die... It's the
same reason I don't run ATM at home.
> ----------
> From: Larry McVoy
> Sent: Thursday, September 21, 2017 12:25 AM
> To: TUHS main list
> Subject: [TUHS] Who is running their own mail server and what do you
> run?
>
> I tried running my own server on mcvoy.com but eventually gave up, the
> spam filtering was a non-ending task.
>
> If someone has a plug and chug setup for MX I'd love to try it.
>
> Thanks,
>
> --lm
>