Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Show HN: A simple SMTP proxy that bridges legacy software to modern SMTP servers (github.com/kz26)
47 points by whitehat2k9 on Oct 9, 2017 | hide | past | favorite | 23 comments


Can't you just do this with Postfix and the 'relayhost' setting?


And exim with a smarthost configuration. But if you already have Python, this might be simpler to install and configure.


You could, particularly on *nix machines, but the idea was to provide a more lightweight cross-platform solution that would specifically work on Windows.


Ok. I don't wanna be 'that guy' but... I feel I must point out that all Windows Server SKUs come with IIS, and a optional component of IIS is the SMTP server service which supports 'smarthost' forwarding. It takes about 5 minutes to install and configure.


nullmailer is also a solution for this case where running a full mail server is an unnecessary complication. However, it doesn’t seem like this supports queuing which I think is a requirement for real SMTP support.


Is there a POP or IMAP server for jailbroken iOS?

I tried installing Dovecot from here, but it put my iPhone into a boot loop (try it at your own risk!).

http://ios-webstack.tk

The reason I want it is so that I can distribute arbitrary files to other iPhones using a local WiFi network without sending data to a cloud sharing service. For example, a mixtape of MP3 files, or a photo album.


It sounds like you want AirDrop [0]:

> AirDrop is an ad-hoc service in Apple Inc.'s macOS and iOS operating systems [...] which enables the transfer of files among supported Macintosh computers and iOS devices over Wi-Fi and Bluetooth, without using mail or a mass storage device.

[0]: https://en.wikipedia.org/wiki/AirDrop


Why not use a static file server listening on a local IP address? Why on earth do you need an email server to transfer files??


The popular jailbreak program iFile allows running a server out of any directory. Not sure if it’s still around or not; I haven’t been jailbroken since about iOS 8, but I’m sure it still is


FTP server or web server, yes. Email server, no.

The benefit of an POP/IMAP email server is that a non-jailbroken iPhone can connect to the local hotspot, add the email account, check mail, and download all the files at once.

Saving photos one at a time via a web server is a hassle. And it doesn't work for other file types (e.g. music).


Had a similar idea.

Wanted to get my vpn keys onto an i-product without A) going over the net and without B) installing itunes.

So I first tried hosting the file on a local webserver, but apple treated it as a text file and displayed it in the browser.

Then I wrote a pop server on android to deliver a client.ovpn file as a mime attachment in an email. Worked wonderfully and thought about extending it to deliver photos from my phone to others' i-products.


You didn't set the MIME type correctly on the server. I know for a fact that you can serve .mobileconfig files to Safari iOS, which will open them as config files if the mimetype is set correctly.

I'm sorry but the idea of using email servers for file exchange, in 2017, is ridiculous.


Agreed, there are most likely projects which exist for this exact purpose. FOSS


FWIW, requiring encryption on a public MX host is a violation of RFC, if memory serves.


RFC2487 says:

A publicly-referenced SMTP server MUST NOT require use of the STARTTLS extension in order to deliver mail locally. This rule prevents the STARTTLS extension from damaging the interoperability of the Internet's SMTP infrastructure. A publicly-referenced SMTP server is an SMTP server which runs on port 25 of an Internet host listed in the MX record (or A record if an MX record is not present) for the domain name on the right hand side of an Internet mail address.

---

However, this RFC is now 18 years old.

https://datatracker.ietf.org/wg/uta/documents/

shows that https://datatracker.ietf.org/doc/draft-ietf-uta-email-deep/ is now in Last Call -- the title is "Cleartext Considered Obsolete: Use of TLS for Email Submission and Access" and coming up soon we have https://datatracker.ietf.org/doc/draft-ietf-uta-mta-sts/ with this abstract:

SMTP Mail Transfer Agent Strict Transport Security (MTA-STS) is a mechanism enabling mail service providers to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections, and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a trusted server certificate


Having written multiple RFCs, violating the RFC is not always a bad thing. Some of the MUSTs are a result of the committee process, and follow the lowest common denominator.

If the recommendations don't make sense, don't follow them.


> If the recommendations don't make sense, don't follow them.

In general, I would tend to agree -- so long as you aren't "hurting" (affecting) anyone else.

OTOH:

  $ tail -n 4 ~/.signature

  "The total budget at all receivers for solving senders' problems is
  $0. If you want them to accept your mail and manage it the way you
  want, send it the way the spec says to."  --John Levine
I'm responsible for a bunch of mail servers and occasionally get reports that messages from some random sender to a mailbox on one of these servers is not being accepted. More often than not, it's because RFCs aren't being followed (WRT SMTP, I'm not very liberal in what I accept). Of course, they will demand that I "fix" my "broken" servers that are refusing to accept their messages. Sometimes the non-compliance is intentional but usually it is simply out of ignorance (especially true when the remote host runs Microsoft Exchange); I try to point them at the RFCs, explain why their mail is being refused, and what they can change so that the mail will be accepted.


Daaamn, this would have been great when we were trying to resurrect some ancient MFDs. We ended up ditching Scan to Email completely and moving to our FTP. Cheers OP, I'll keep this in mind.


You could also have used stunnel, which is the generic program for proxying in/out of TLS connections (might not work with starttls, though).


Where do I find documentation for installing stunnel on a proprietary printer/scanner/copier? :-)


I'm confused by your question. If you can't install stunnel how are you going to install python on "a proprietary printer/scanner/copier?"


Step 1) attach lowpower Linux board of your choice

Step 2) install stunnel on it

:D


I think you can also use nginx as a SMTP proxy for a less custom made solution




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: