Se non vuoi che dall'esterno "vedano" il tuo sito basta il piu' becero dei firewall, non e' una questione di porta 80. questa e' la porta di default per il server HTTP. La raggiungi senza doverla indicare in modo esplicito.

apache tomcat ha lo scopo di fornire allo sviluppatore un vero e proprio ambiente nel quale girano applicazioni Java (le servlet)

apache e' piu' genericamente indirizzato ad essere un server HTPP diciamo "general purpose"... ed e' sicuramente piu' performante.

forse sei piu' interessato a postare in programmazione.

per mysql il problema e' quello che ti e' stato indicato...