Como bloquear o acesso à Internet de um aplicativo

7

Eu procuraria uma maneira de executar um aplicativo que impedisse o acesso à Internet, possivelmente sem instalar um programa específico para isso. A maioria das respostas que encontrei se refere à postagem ESTE , então eu tentei essa solução . Em poucas palavras, criei um grupo no-internet (com um comando relacionado ni ) e iniciei o aplicativo usando esse grupo. Mas isso não funciona completamente, provavelmente porque o post é de 2009, e algo no iptables é alterado (estou usando o Ubuntu 14.04). Por exemplo, se eu executar ni "ping google.com" , a saída é ping: sendmsg: Operation not permitted , então a solução funciona muito bem. Mas com os outros programas, como o Firefox ou o wget (por exemplo, ni firefox ), a conexão com a internet ainda funciona. Como posso resolver?

    
por ᴜsᴇʀ 29.09.2015 / 00:03

1 resposta

2

Você pode usar apparmor para negar tráfego de rede para algum aplicativo. Primeiro você deve instalar apparmor e apparmor-utils ..

sudo apt-get install apparmor*

Depois disso, você pode gerar um perfil para seu aplicativo ...

sudo aa-genprof /usr/bin/google-chrome

O próximo passo é alterar Networking parte no perfil para:

sudo nano /etc/apparmor.d/usr.bin.chromium-browser

audit deny network,
audit deny network inet stream,
deny network inet6 stream,
deny @{PROC}/[0-9]*/net/if_inet6 r,
deny @{PROC}/[0-9]*/net/ipv6_route r,
deny capability net_raw,

Em seguida, verifique a configuração com apparmor_parser e recarregue a configuração

sudo apparmor_parser -r /etc/apparmor.d/usr.bin.chromium-browser

Altere o modo de complain para enforce , ou seja, ative apparmor para este aplicativo.

sudo aa-complain /etc/apparmor.d/usr.bin.chromium-browser

Mais manual você pode encontrar aqui e aqui e aqui

    
por 2707974 29.09.2015 / 08:52