Como alterar aleatoriamente o MAC em cada inicialização em 16.04

1

No Ubuntus anterior isto foi facilmente conseguido com o macchanger, mas parece não funcionar em 16.04. O MAC parece apenas redefinir para o padrão assim que a conexão com a Internet for restabelecida. Sim, agora isso pode ser feito no GIU do gerenciador de rede, mas isso removeu a automação de ter um script feito e também removeu o recurso de geração MAC aleatório do macchanger.

Eu vejo outras questões que apontam a solução como usar a GUI para alterá-la manualmente, mas não vejo nenhuma que possa fazer isso aleatoriamente a partir da linha de comando, como seria necessário para um script de inicialização.

    
por fpghost 11.05.2017 / 23:58

1 resposta

4

Como fazer

Sem qualquer aplicativo de terceiros, podemos simplesmente usar a ferramenta cli% do NetworkManager nmcli para alterar o endereço MAC no terminal, nos scripts, etc.

nmcli connection modify enp3s0 802-3-ethernet.cloned-mac-address 02:7d:xx:xx:...
  • Altere enp3s0 com o nome da sua conexão desejada, por exemplo: Página inicial, Wi-Fi do Office, etc.

Se você estiver tentando clonar uma conexão Wi-Fi, use 802-11-wireless.cloned-mac-address em vez de 802-3-ethernet.cloned-mac-address .

Também precisamos de uma maneira de gerar um MAC aleatório, aqui está uma solução simples para criar um endereço MAC aleatório completamente ( Base source ):

echo $RANDOM | md5sum | sed\
 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/:::::/'

Solução final

Finalmente, no seu script, use algo assim:

mac=$(echo $RANDOM | md5sum | sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/:::::/')
nmcli connection modify enp3s0 802-3-ethernet.cloned-mac-address $mac

Também pode ser necessário recarregar a conexão:

nmcli connection down enp3s0
nmcli connection up enp3s0

Você pode colocar em .profile ou qualquer outro lugar que você quiser.

Cria um mac aleatório com um OUI válido

Se você não quiser um endereço mac completamente aleatório, faça o download this Repositório GNU MAC Changer GitHub.

Em seguida, use esta linha para gerar endereços mac:

shuf -n1 OUI.list | cut -f1-3 -d' ' | tr ' ' ':' | xargs -I company echo\
 company:'echo $RANDOM|md5sum|sed 's/^\(..\)\(..\)\(..\).*$/::/''
  • shuf -n1 OUI.list : seleciona uma linha aleatória desse arquivo.
  • cut -f1-3 -d' ' corta os três campos necessários
  • tr ' ' ':' o transforma em um formato que queremos
  • xargs ... cria as outras três partes aleatórias e concatena o resultado.
por Ravexina 12.05.2017 / 00:27