Para algo simples como esse eu usaria o ufw. Ele é instalado por padrão, mas vamos garantir:
~$ which ufw
deve retornar \usr\bin\ufw
se o ufw estiver instalado. Se o ufw não estiver instalado:
~$ sudo apt-get install ufw
.
As etapas a seguir não terão efeito até que você ative ou recarregue o firewall, para que você não seja expulso.
~$ sudo ufw default deny incoming
~$ sudo ufw default allow outgoing
~$ sudo ufw allow in 22/tcp
Você acabou de dizer ao firewall para (a) não deixar nada entrar, (b) deixar tudo sair, e (c) deixar o tcp entrar na porta 22. Para tornar essas regras eficazes:
~ $ sudo ufw disable
~ $ sudo ufw enable
Agora você será avisado:
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Se tiver certeza de que seguiu estas instruções cuidadosamente, responda sim. Finalmente, vamos exibir o status do firewall com sudo ufw status verbose
:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp ALLOW IN Anywhere
22/tcp (v6) ALLOW IN Anywhere (v6)
Por favor, leia a man page do ufw para informações adicionais.