Como bloquear todas as conexões de saída de um usuário específico, exceto localhost?

Como bloquear todas as conexões de saída de um usuário específico, exceto localhost?

Desejo bloquear todas as conexões de saída de um usuário específico userdepois que eles tiverem feito ssh em meu servidor (executando RHEL 7.4), ou seja, usernão devo ser capaz de fazer ssh em/ping em outros servidores na rede.

Inicialmente configurei a seguinte firewall-cmdregra e estava funcionando.

firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 -m owner --uid-owner user -j DROP

No entanto, useragora precisa acessar o Jupyter Notebook também em execução no mesmo servidor ( http://localhost:8888), mas não conseguiu. Ocorreu um erro sobre o websocket. Depois que a regra de firewall acima for removida, uservocê poderá acessar o Notebook.

Não sei por que usernão consegui acessar localhost, porque pensei que a regra bloqueava apenas conexões de saída.

Como permito usero acesso localhosta qualquer porta ou intervalo de portas específico, enquanto ainda bloqueio o acesso à rede para qualquer outro lugar?

Responder1

Como djdomi mencionou, você gostaria de adicionar uma exceção antes da regra DROP que você já possui. Isso poderia funcionar

firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 -m owner --uid-owner user --dport=8888 -j ACCEPT

Coloque-o antes da regra que você já possui.

BR

informação relacionada