Se você estiver conectando esse servidor a um roteador ao qual vários dispositivos se conectam para acessar a Internet, sua rede provavelmente já estará atrás de um firewall NAT, a menos que você configure especificamente seu roteador para permitir isso, ninguém, inclusive você , pode entrar em contato com seu servidor do lado de fora de qualquer maneira.
Se você está conectando diretamente à internet, uma história totalmente diferente. Eu recomendaria o seguinte:
- Aprenda iptables ou ufw, ambos são ferramentas de configuração de firewall que vêm com o Ubuntu. Se você está fazendo qualquer coisa com qualquer tipo de servidor Linux, estas são praticamente uma obrigação de qualquer maneira. Ambos permitem que você seja muito específico sobre como seu servidor pode ser acessado e de onde. Normalmente o firewall tem tudo aberto por padrão, e você vai querer configurar o firewall do seu servidor para ter tudo FECHADO por padrão e só abrir o que você precisa.
- Certifique-se de saber todos os números de porta para TODOS os servidores que você terá em execução. Com base no que você lista, o SSH é a porta 22 por padrão, então feche essa opção, e o fail2ban também é uma ferramenta recomendada. Pode querer alterar a porta padrão do SSH de 22 para outra coisa, o que pode ser feito no arquivo de configuração do SSH. Com uma pilha LAMP, você tem 80 e possivelmente 443 para assistir, e o MySQL roda em 3306, mas normalmente o MySQL apenas escuta localhost por padrão. O Samba escuta em 137-139 e 445.