The
Ultimate
Business Machine

Technology, business
and innovation.

And, not least, about
the Mac.

Weblog Archive Cutedge

by: Bernard Teo








Creative Commons License

Copyright © 2003-2012
Bernard Teo
Some Rights Reserved.

The Ultimate Business Machine - Archives

List of Categories : Database * Technology * Commentary * Singapore * Travel *

Fri 14 Mar 2003

Sendmail Enabler

Category : Technology/SendmailEnabler.txt

I'm finally done with this little project. First, I wrote a how-to on setting up OS X's mail server. Then I realised this would be of limited use, since I took a whole evening to set up the mail server the first time I took this path.

So, I wrote a shell script in a half-a-day that automated the whole thing so people could do this in five minutes. Actually, the script did its stuff in half a minute but people may need a totally unpredictable amount of time finding their way around the OS X Terminal. And they'll probably make mistakes that could kill their systems. So what was I getting myself into?

I was about to throw it all away. But it's such a waste. So, one more try. I remembered I could use AppleScript Studio to create a Cocoa application that can control the Mac at the Unix level, in effect hiding all the hoary stuff behind a pretty interface.

My first try at AppleScript Studio proved so enthralling, I didn't want to sleep. It's that fun. Again, the thing works in half-a-day. But I wanted to reduce to the absolute minimum, the things the user had to do. It ended up with just one field the user had to key in (the domain name) and then just one click. It can't be simpler.

But wait, things could still go wrong. I need to give to the user a POP3 server which I have pre-compiled and some configuration files that I've edited. What if these were somehow separated from the main package. So I needed to find a way to pack all these into one bundle so the user sees just one application they can download. Again, nothing simpler than that.

Finally, the S word - security. In the PC world this dredges up visions of the Thought Police. But think about it. The application which I have writtten and called Sendmail Enabler will need super-user rights to install all these stuff on your machine. One mistake and I can wipe out your system. So I have to keep testing to make sure that any mistakes I am ever likely to make is limited in its impact.

But I can't stop someone from trying to alter my scripts so that it will screw up your system. You may run it because you trust me - but what you're running may not be what I had written. So I have to make it a bit harder for the casual would-be terrorist (for indeed you will face terror) to do this. It's not foolproof but it's what I know to do at the moment. To be sure, only use a copy you downloaded directly from my site.

It took a total of one day to get the basic concept right. And five days to wrap some industrial strength around it to protect against what could go wrong. That ratio, in my experience, is usually what it takes.

(So why do people begrudge the cost of things like the Mac, which are truly well-made?)

Posted at 1:08AM UTC | permalink

Mac@Work
Put your Mac to Work

Sivasothi.com? Now how would you do something like that?

Weblogs. Download and start a weblog of your own.

A Mac Business Toolbox
A survey of the possibilities

A Business Scenario
How we could use Macs in businesses

VPN Enabler for Mavericks

MailServe for Mavericks

DNS Enabler for Mavericks

DNS Agent for Mavericks

WebMon for Mavericks

Luca for Mavericks

Liya for Mountain Lion & Mavericks

Postfix Enabler for Tiger and Panther

Sendmail Enabler for Jaguar

Services running on this server, a Mac Mini running Mac OS X 10.9.2 Mavericks:

  • Apache 2 Web Server
  • Postfix Mail Server
  • Dovecot IMAP Server
  • Fetchmail
  • SpamBayes Spam Filter
  • Procmail
  • BIND DNS Server
  • DNS Agent
  • WebDAV Server
  • VPN Server
  • PHP-based weblog
  • MySQL database
  • PostgreSQL database

all set up using MailServe, WebMon, DNS Enabler, DNS Agent, VPN Enabler, Liya and our SQL installers, all on Mavericks.