The only secure design? (Well, acceptable level of risk) Don't use Exchange for web-based mail.
We're working on an architecture, but the "folks" who wrote Exchange, and the IIS front-end obviously paid next to no attention to security. The logoff bug is enough to prove that. The architecture of the rest of the application makes it very difficult, at best, to try and set it up in a secure fashion.
<< is there any way to surf or receive mail without opening a port? >>
Yes.
1. Surfing is done on port 80, OUTBOUND only. You can use proxy servers and firewall logins/ACLs if you want to restrict/control browsing.
2. Put an email server in a DMZ. Open port 25 (SMTP) inbound to the mail server. Configure the mail server to: Drop all executable/script attachments. Virus-scan all other attachments (including opening up compressed attachments). Have some sort of spam-filtering enabled. Forward whatever mail is left to an internal mail server, for distribution to IMAP or POP3 servers on the private network. Could be port 25, but preferably a different one. Note: Write the internal firewall such that: the Email server is the only sending IP addy, the internal email server is the only recipient, and it's limited to a single port.
3. You could also set it up such that the inbound and outbound mail servers are different, on different networks, behind different firewalls. Depends on how paranoid you are.
--Woodie