Como posso evitar que um aplicativo (Dropbox) acesse a rede quando conectado a um determinado ESSID Wifi?

3

Às vezes, conecto meu laptop Ubuntu à conexão 3G do meu telefone via tethering. Quando conectado a essa rede, não quero que o Dropbox seja sincronizado, pois tenho um plano de dados limitado. Eu quero sincronizar quando conectado ao meu trabalho ou Wi-Fi em casa.

Estou procurando uma solução limpa e fácil no Linux e mais especificamente no Ubuntu. Uma solução mais sofisticada que colocaria limites na largura de banda do Dropbox quando conectado a certos ESSIDs Wi-Fi também é desejável.

    
por smichak 08.08.2012 / 05:46

1 resposta

9

Em vez de bloquear a caixa de depósito, você pode simplesmente pará-lo quando estiver conectado à rede em questão (não é necessário executar a caixa de depósito para acessar arquivos sincronizados localmente)

Por exemplo, colocar o seguinte em /etc/network/if-up.d/ fará com que seja executado depois que uma conexão de rede for estabelecida:

#!/bin/bash
ifconfig -a | grep -q "192\.168\.0\." && killall dropboxd

Isso matará (graciosamente) o daemon dropbox quando você se conectar a uma rede que lhe dará um endereço IP no intervalo 192.168.0. *. Se você puder determinar algo que identificará sua rede 3G após a conexão, você pode simplesmente interromper a caixa de depósito quando se conectar. Você pode estender esse script para iniciar o dropbox ao se conectar a outras redes.

    
por 08.08.2012 / 06:12