le script automatique de macchanger ne fonctionne pas.
J'ai cherché ici avant de demander et tout ce que j'ai trouvé était de lancer macchanger dans /etc/rc.local avec ce script simple:
ifconfig enp2s0 down
macchanger -r enp2s0
ifconfig enp2s0 up
(Je viens de modifier eth0 parce que mon nom de périphérique est enp2s0)
Clairement, il ne configure qu’une adresse MAC aléatoire au démarrage, mais si je reconnecte mon périphérique réseau, il obtient toujours ma véritable adresse Mac, ce qui n’est pas ce que je cherchais.
J'ai essayé de laisser au moins une adresse usurpée permanente mais l'option mac usurpation du gestionnaire de réseau par défaut d'ubuntu ne fait rien , elle a toujours envoyé mon adresse réelle.
Je ne me souviens pas exactement où mais j’ai lu quelque part que c’était peut-être la faute de systemd mais je ne sais pas trop comment gérer cette affaire ou si c’est vraiment sa faute.
Quelle est la bonne façon d'obtenir une adresse MAC aléatoire chaque fois que je connecte mon périphérique réseau dans Ubuntu? Je manque d'idées.
Travailler depuis le article de blog Gnome . Ces paramètres pour Ubuntu 17.10
D'abord, obtenez le nom de la connexion Internet filaire
nmcli connection show
Deuxièmement, configurez la connexion enternet pour générer une adresse "stable" ou "aléatoire"
nmcli connection modify "wired_connection_name" ethernet.cloned-mac-address random
Pour le WiFi, utilisez wifi.cloned-mac-address
. Sur le gestionnaire de réseau 1.2.6, vous aurez vous devez définir une adresse MAC au lieu de random
.
Enfin, vérifiez votre adresse Mac, établissez une connexion de haut en bas, puis vérifiez à nouveau votre adresse Mac.
ifconfig | grep Ether
nmcli connection down "wired_connection_name"
nmcli connection up "wired_connection_name"
ifconfig | grep Ether
le programme nm-connection-manager
peut également être utilisé pour accéder à ce paramètre. Vous obtiendrez alors un écran similaire à celui présenté ci-dessous, dans lequel la liste déroulante "Adresse MAC clonée" peut être modifiée en un ou plusieurs paramètres.
Nous pouvons atteindre cet objectif avec un simple script utilisant ifconfig
.
Créez un fichier de script exécutable dans le répertoire _/etc/network/if-up.d
_. Ainsi, le script sera exécuté chaque fois que la commande ifup
sera exécutée, notamment au démarrage du système. Appelons le script mac-changer
:
_Sudo touch /etc/network/if-up.d/mac-changer
Sudo chmod +x /etc/network/if-up.d/mac-changer
Sudo nano /etc/network/if-up.d/mac-changer
_
nano
: Shift+Insert pour la pâte; Ctrl+O et Enter pour sauver; Ctrl+X pour la sortie.Le contenu du script _mac-changer
_ devrait être:
_#!/bin/bash
change_mac(){
# Prevent enless loop on error
if (( COUNT >= 10 )); then exit 0; else COUNT=$(( COUNT + 1 )); echo "Attempt: $COUNT"; fi
# Generate a new MAC address
MAC="$(echo $RANDOM | md5sum | head -c 17 | sed -r 's/(..)./\1:/g')"
# Change the MAC address of the target network interface
/sbin/ifconfig "$1" hw ether "${MAC}"
# Chech whether the MAC is successfully changed anf if is not call the function again
if [ $? -ne 0 ]; then change_mac; fi
# Log the change
echo "Interface: $1 | MAC: $MAC"
}
# Call of the function; Change 'enp0s25' with the actual interface in use; Create a log file `/tmp/mac-changer-...`
change_mac 'enp0s25' > /tmp/mac-changer-enp0s25 2>&1
_
Remarques:
Dans la plupart des cas, si vous le souhaitez, vous pouvez exécuter le script directement avec Sudo
et l'adresse MAC sera modifiée:
_Sudo /etc/network/if-up.d/mac-changer
_
Veuillez noter que certaines interfaces réseau ne prennent pas en charge la fonctionnalité de modification MAC.
Voici la démonstration de cela, comment fonctionne le script:
Références: