Basic Mail Server

Richard Gaskin ambassador at fourthworld.com
Mon Oct 12 16:08:28 EDT 2015


Here I took the laziest route available, since I just needed a quick 
solution for monitoring notifications:  I used the email options 
provided by one of my shared hosting providers.  I have neither the 
patience or time to setup and manage SMTP myself (been there, and as 
much as I enjoy poking around in Apache I find SMTP uninteresting), so 
I'm always happy to let dedicated staff handle that for me, esp. with 
today's low prices for hosting.

LC Server runs on just about any shared host, and any CGI that can send 
mail is fine.

Since it uses the email account set up with the host for the 
domain/subdomain, this does mean that all email is sent from one 
apparent sender.  But if you set the account up with a meaningful name 
that's not necessarily a bad thing (could reflect something related to 
sales or whatever department your recipient might expect).

In my case encryption isn't an issue since I'm only sending monitoring 
data to the CGI.  But if I needed it HTTPS could be used to call the CGI 
- free certs become available later this year, cheap certs are available 
now, and one could easily encrypt the data client-side before sending 
and decrypt on the server with LC's encrypt/decrypt functions.

As for the hash, just use anything that works for you. I use sha1digest 
with input being the message concatenated with the date and the IP 
address along with a "shared secret" salt, a file containing a long 
string on both the client and server.  Could be just about anything you 
like, but with this simple setup anyone attempting to send spam with it 
needs to do the following:

- Build a hash that satisfies what the server will expect, and while
   most of it is simple the "shared secret" file is unlikely to be
   guessed successfully.

- Know the name of the CGI to call

- Know the name of the subdomain I set up for it (as inconveniently
   named as the CGI file)

And in my case I'm the only recipient so it's not like anyone can spam 
the world with my setup anyway.

If you wanted to use something like that for sending email to others, 
encryption is likely useful (so that if decrypt fails you know it's spam 
junk and can just discard it), and even restrict by IP address if that's 
a practical option (it is for me since the CGI is only called from a 
known number of other systems, all of which have fixed IP addresses).

-- 
  Richard Gaskin
  Fourth World Systems
  Software Design and Development for the Desktop, Mobile, and the Web
  ____________________________________________________________________
  Ambassador at FourthWorld.com                http://www.FourthWorld.com



Bob Sneidar wrote:
> I'm curious about this. Are you saying you have an SMTP service running?
> If so, who do you relay through? I have an issue with customers
> frequently, where the contact does not know what their email server is,
> who provides it, or even who the IT company is that maintains it.
> (Frankly it shocks me to see how many people run businesses with a
> complete lack of any technical expertise whatsoever).
>
> What I would like to offer the customer is an easy to set up SMTP server
> to act as a relay. The problem then becomes encryption. Sarah's library
> does not do any encryption, and all attempts by anyone (including
> myself) have failed to get this to work even with the shell.
>
> If you have something that has gotten around this (you mentioned a hash)
> I'd be interested in it and would be glad to pay a fair price for it to
> use in these situations.
>
> *Bob Sneidar* | IT Technician
> Integrated Office Technology | 12150 Mora Drive, Unit 2, Santa Fe
> Springs, CA  90670
> /
> /
>
> I don't know if this will help the OP's situation, but here I have a
> number of apps that need to send email notifications, and some of them
> are running on systems that have no email server installed. Most of
> these are for server monitoring so I'm the only recipient, but maybe
> the general idea may be useful:
>
> I set up a CGI on one system that I want the emails to be sent from
> (which happens to also be written in LC, but it could be Perl, PHP,
> Python, bash, etc.) which accepts a recipient address, subject, and
> body, along with an obscure hash used for authentication, and puts
> those together to send the email from there.
>
> The CGI itself is named very obscurely (e.g. something like
> "gfdRRth88ewLYKss.cgi"), so it's unlikely to be guessed by any
> spiders.  And even if it were, anyone attempting to use the CGI for
> spamming would also need to figure out the hash inputs, and there are
> enough zombied Win installs that there are easier ways to hijack
> machines; this one just isn't worth the effort :)
>
> Not bullet-proof (nothing is), but reasonably secure and super-easy to
> use.  Now I have a single location for notifications that I can use
> from any client or server process that needs to send email, without
> even needing to have an email server installed.  Sending notifications
> is a one-liner anywhere I need 'em.





More information about the use-livecode mailing list