I run our servers on public IP addresses, behind a firewall. Troubleshooting and debugging is made much easier, and there's never any conflict with VPNs etc.
> It's likely that the only difference is that you'd also have to specify what ports you want exposed to the outside world
Port 80, please. With NAT, you can't offer that to more than one computer.
reverse proxies like nginx also have plain tcp support so it allows you to easily run several services
Not to mention - who runs it? It needs to be trusted to terminate TLS or do 5-tuple proxying based on the SNI destination (not all clients send SNI). Also if the MIT student is doing something akin to protocol level development it's possible a middle proxy will prevent them from doing their work.
There is also the hassle factor. You may stop people from ever trying something because of the added hoops they must go through.
That's a hack to work around a shortage of IP addresses. Why would I use one, when I don't have that shortage?
"SIPB (MIT's volunteer student computing group) offers free "cloud hosting" to anyone with an Athena account. http://xvm.mit.edu/"