Embora compartilhamento de internet seja uma forma conveniente de compartilhar o acesso, habilitando esse recurso você pode criar um risco de segurança além de violar as políticas de segurança de grande parte das empresas.
Quando habilitado, é criada uma extensão da rede partindo do seu computador, ou seja, todos os que estiverem conectados no segmento de uma determinada interface sairão para a rede compartilhada utilizando o endereço IP da interface compartilhada. Isto chama-se network address translation (NAT) e está documentado na RFC 2663.
Você pode compartilhar qualquer interface de rede presente no computador — Wi-Fi, Bluetooth, Ethernet, modem 3G, etc. Primeiramente escolha qual interface será compartilhada e em quais interfaces os computadores que serão beneficiados estão presentes. Essas opções estão disponíveis dentro do painel Compartilhamento (Sharing), opção Compart. de Internet (Internet Sharing).
Precisamos, contudo, tratar de dois aspectos importantes.
Se você criar um ponto de acesso Wi-Fi, ou seja, compartilhar uma determinada interface (ex: Ethernet) e informar que seus computadores se conectarão utilizando Wi-Fi, certifique-se de estar criando uma rede com opções de segurança WPA2 e que tenha uma senha forte contendo letras, números e caracteres especiais. Sistemas anteriores ao OS X Mountain Lion permitiam que se optasse por WEP 40-bit ou 128-bit, entretanto, se você puder não escolha essa opção pois ela é vulnerável a ataques externos que podem, em um curto intervalo de tempo, descobrir a senha de conexão e criptografia. No pior dos cenários, 128-bit é menos vulnerável que 40-bit, e lembre-se: usou, terminou, desligou. 😀
Outro assunto importante está relacionado com as políticas de segurança da sua empresa. Ao criar uma extensão da rede, você pode gerar riscos para a sua empresa — principalmente em casos em que você compartilha um modem 3G, atacantes externos podem ter acesso à rede da empresa sem passar pela estrutura de segurança configurada na borda de entrada.
Vejo muitas pessoas habilitando o recurso de compartilhamento de acesso para criar uma rede Wi-Fi entre o computador e outro dispositivo, por exemplo em casos nos quais você precisa controlar uma apresentação feita no Keynote utilizando o app Remote do iPhone. Embora funcione, muitas das vezes você pode não ter uma segunda interface ativa para habilitar o serviço; neste caso, crie uma rede ponto-a-ponto clicando sobre o ícone de Wi-Fi no menu superior direito e selecionando Criar Rede (Create Network).
Os que me conhecem pessoalmente sabem que não sou muito fã de interface gráfica. O recurso de compartilhamento de internet via interface já me deixou na mão algumas vezes e infelizmente ele não tem registros (logs) ou mensagens de erro suficientes para você poder detectar e agir sobre o problema. Então vamos lá: para habilitar o nosso compartilhamento via linha de comando, precisaremos subir alguns serviços e recursos. Neste cenário irei rotear da interface Ethernet para a interface Wi-Fi.
Abra o Terminal e torne-se root (utilize a senha do seu usuário administrador):
sudo su
Primeiramente precisamos que o OS X tenha suporte a roteamento entre as interfaces — é assim mesmo em todos os UNIX e variantes.
sysctl -w net.inet.ip.forwarding=1
Em seguida precisamos identificar quais são as interfaces de rede que temos reconhecidas pelo sistema:
ifconfig
Encontraremos a interface en0
que, no meu caso, é a Ethernet; e a interface en1
, a Wi-Fi. Verifiquem qual é a interface correta de acordo com o IP configurado em cada interface.
Agora precisamos criar uma regra de NAT no nosso firewall:
echo "nat on en1 from any to any -> (en1)" > /tmp/nat.conf
pfctl -Nf /tmp/nat.conf
pfctl -e
Pronto, agora temos um roteamento feito via linha de comando. O roteador dos seus computadores será o IP da interface Ethernet (en0
). Para o seu conhecimento, o OS X tem serviços de DHCP e DNS nativos, caso necessário. Não adicionamos nada na inicialização do sistema, portanto ao reiniciar tudo o que foi feito será desfeito.