What we want is for the guest in the room to not fuss about with email settings if we can avoid it. So, we want to capture their outbound SMTP session, redirect to the ISP's SMTP server and not have to tell them. If they do have TLS enabled or some other security we can expect that they will have enough knowedge to follow some simple instructions to disable TLS or use a special SMTP port that will then use Port Address Translation to get to their original SMTP server.
I don't see the issue with "expecting to talk to yahoo.com to send e-mail" failing as the redirected email server will allow mail requests from the source IP address (which will be part of our internal address range).
It should be seamless for 90-95% of the guests and the other 5-10% should be able to make the simple changes - instead of requiring all guests to change their email settings. We currently have the guests having to change their mail settings each time - this is a problem that tends to cause an issue or two a week for reception (who are not IT people).
Is this possible?
I think it's possible, but your SMTP server will have to function in a "open relay" mode, basically the clients are going to throw a username/password at it and it needs to send the "password ok" for anything they use. Those using encryption, it will fail due to certificate mismatch with the CN. I think if anyone is smart enough to use encryption, they will think someone is trying to tamper with the e-mail. That means either they will complain or just not use the SMTP to send fearing stolen mail/passwords/etc.
The default m0n0wall GUI doesn't have a place to create an outbound rule redirection, but I'm sure someone here knows a way to hack it in via the command line to test with and see how well it works. The rule would have to be a "any outbound port 25 redirect to x.x.x.x mail server instead" I've read about people using a cache proxy for web browsing, so I'm sure a proxy for email should be possible.