Поиск по сайту:

Как навсегда изменить свой MAC-адрес в Linux


Резюме: Вы можете установить постоянный новый MAC-адрес в терминале, используя утилиту macchanger и файл модуля systemctl. Или в GNOME перейдите в «Настройки» > «Wi-Fi [или сеть]» > «Идентификация» и введите собственный MAC-адрес.

Каждый сетевой интерфейс имеет уникальный MAC-адрес, установленный производителем. Это то, как сетевые подключения определяют конечные точки подключения. В Linux вы можете навсегда изменить MAC-адрес, если хотите.

Что такое MAC-адрес?

MAC-адрес — это уникальный код, используемый сетями для идентификации устройств в качестве конечных точек подключения. Он отвечает на критический вопрос «кто есть кто» среди сетевых интерфейсов.

Каждый элемент сетевого оборудования имеет как минимум один встроенный сетевой интерфейс. На стационарном компьютере или сервере может быть установлено несколько сетевых карт. Многие ноутбуки поставляются с сетевым разъемом CAT5 и картой Wi-Fi, что дает вам два сетевых интерфейса прямо из коробки.

Каждый сетевой интерфейс имеет уникальный встроенный идентификатор. Независимо от сетевого протокола, который используется для связи с этим устройством, на самом низком уровне соединение идентифицируется по его адресу управления доступом к среде или MAC-адресу. Поэтому они должны быть уникальными. Использование в сетевом интерфейсе другого MAC-адреса называется спуфингом.

MAC-адрес состоит из шести шестнадцатеричных чисел. Они пишутся с двоеточием «:» или дефисом «-» между каждым из шести чисел. Вот MAC-адрес одного из наших тестовых компьютеров.

b0:c0:90:58:b0:72

Чаще всего первые три числа представляют собой уникальный идентификатор организации, представляющий производителя оборудования. Вы можете расшифровать OUI, используя страницу поиска производителя Wireshark. Обратите внимание, что это может быть производитель материнской платы вашего компьютера, сетевой карты или карты Wi-Fi. Производители покупают многие компоненты своих компьютеров и собирают из них готовый продукт, поэтому не удивляйтесь, если он отличается от производителя вашего компьютера.

Поскольку MAC-адреса встроены, вы не можете их изменить. Что вы можете сделать, так это настроить систему Linux так, чтобы она притворялась имеющей другой MAC-адрес. Что касается любого другого устройства в сети, MAC-адрес вашего компьютера — это тот, который он транслирует, поэтому конечный результат будет таким же.

Поиск вашего MAC-адреса

Чтобы узнать свой текущий MAC-адрес, вы можете использовать команду ip с объектом link. В нем будут перечислены ваши сетевые интерфейсы, независимо от того, используются ли они или отключены от сети.

ip link

Этот компьютер представляет собой ноутбук с активным соединением Wi-Fi, wlan0 и проводным соединением Ethernet, enp3s0. Проводное соединение не подключено, поэтому оно неактивно. На ноутбуке также настроено петлевое соединение по умолчанию, lo.

Используйте macchanger для изменения вашего MAC-адреса Linux

Утилита macchanger позволяет изменять MAC-адрес сетевого интерфейса с гибкими параметрами. Вы можете установить конкретный MAC-адрес или использовать случайный MAC-адрес. Вы также можете получить новый MAC-адрес, который использует те же три байта OUI, что и ваше оборудование, чтобы производитель сетевого интерфейса оставался прежним.

Установка чейнджера

Чтобы установить macchanger в Ubuntu, используйте эту команду:

sudo apt install macchanger

Чтобы установить macchanger в Fedora, вам нужно ввести:

sudo dnf install macchanger

На Manjaro команда такая:

sudo pacman -S macchanger

В зависимости от версии macchanger, которая находится в репозиториях вашего дистрибутива, вы можете увидеть экран с вопросом, хотите ли вы, чтобы новый MAC-адрес создавался каждый раз при подключении к сети. То есть при подключении кабеля Ethernet или включении Wi-Fi.

Используйте клавиши со стрелками, чтобы переместить выделение на параметр, который вы хотите использовать, и нажмите «Ввод».

В этом методе есть некоторое удобство, но мы собираемся выбрать «Нет». Мы хотим иметь некоторый контроль над MAC-адресами, которые мы используем. Кроме того, вы можете не захотеть изменять MAC-адрес на каждом сетевом интерфейсе вашего компьютера. Возможно, вы хотите изменить его, например, только на своей карте Wi-Fi.

Использование macchanger для временного изменения MAC-адреса

Вы не можете сбросить MAC-адрес на используемом сетевом интерфейсе. Мы можем изменить MAC-адрес нашего соединения Ethernet, потому что оно не подключено, поэтому оно неактивно.

Параметр -r (случайный) генерирует полностью случайный MAC-адрес. Нам нужно передать имя сетевого интерфейса, на котором мы хотим установить MAC-адрес.

sudo macchanger -r enp3s0

Используемый MAC-адрес был таким же, как базовый аппаратный MAC-адрес или постоянный MAC-адрес. Новый MAC-адрес отображается внизу.

Мы также можем изменить MAC-адрес карты Wi-Fi, если отключим адаптер Wi-Fi, изменим MAC-адрес, а затем включим адаптер Wi-Fi.

sudo networkctl down wlan0
sudo macchanger -r wlan0
sudo networkctl up wlan0

Если вам не нужен случайный MAC-адрес, вы можете использовать -m (опция MAC-адреса) и указать MAC-адрес в формате двоеточия «:» в шестнадцатеричном формате нижнего регистра.

sudo macchanger -m ae:f9:9b:31:40:c0 enp3s0

Как навсегда изменить MAC-адрес

Все красиво и просто, но перезагрузки не выдерживает.

Однако мы можем добиться этого, используя юнит-файл systemd. Мы заставим macchanger давать нашему ноутбуку новые MAC-адреса для его интерфейсов Ethernet и Wi-Fi при каждой загрузке.

Мы собираемся использовать параметр -e (окончание), чтобы изменить MAC-адрес, но три байта OUI остались прежними.

Это означает, что наш поддельный MAC-адрес будет принадлежать оборудованию, произведенному теми же компаниями, что и наше настоящее оборудование Ethernet и Wi-Fi. Это позволит избежать проблем с любыми маршрутизаторами, брандмауэрами или коммутаторами, которые отклоняют пакеты, поступающие не от оборудования признанного производителя.

Мы собираемся создать два сервиса. Будет один для соединения Ethernet и один для соединения Wi-Fi. Один файл модуля будет действовать как шаблон для каждой службы.

Чтобы создать наш модульный файл, нам нужно использовать sudo и отредактировать файл с базовым именем, которое мы хотим, чтобы наши службы имели. Знак «@» в имени файла заменяется на имя сетевого подключения при запуске службы, как мы увидим.

Мы называем наш модульный файл «macspoof@.service», потому что он подменяет MAC-адреса.

sudo gedit /etc/systemd/system/macspoof@.service

Скопируйте этот текст в файл модуля, сохраните файл и закройте редактор.

[Unit]
Description=Spoofing MAC address on %I
Wants=network-pre.target
Before=network-pre.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device

[Service]
ExecStart=/usr/bin/macchanger -e %I
Type=oneshot

[Install]
WantedBy=multi-user.target

Нам нужно создать сервис для каждого из наших подключений. Мы делаем это, добавляя имя сетевого интерфейса после знака «@» в имени устройства. Сначала мы выполним наше соединение Ethernet:

sudo systemctl enable macspoof@enp3s0.service

И мы сделаем то же самое для нашего соединения Wi-Fi.

sudo systemctl enable macspoof@wlan0.service

После перезагрузки нашего ноутбука мы можем использовать macchanger, чтобы узнать, какие у нас текущие MAC-адреса. Обратите внимание, что нам не нужно использовать sudo, потому что мы используем macchanger только для отчета о настройках MAC-адреса, а не для их изменения.

macchanger enp3s0
macchanger wlan0

Это показывает нам текущие активные, поддельные MAC-адреса на наших двух сетевых интерфейсах и их исходные MAC-адреса.

Поскольку мы использовали параметр -e (окончание) в нашем юнит-файле, первые три байта поддельных адресов совпадают с первыми тремя байтами исходных MAC-адресов.

Постоянное изменение MAC-адреса с помощью GNOME

Большинство сред рабочего стола позволяют вам установить новый MAC-адрес. В GNOME вы можете сделать это, открыв «Настройки» и выбрав «Wi-Fi» или «Сеть» на боковой панели.

Щелкните значок зубчатого колеса рядом с подключением, для которого вы хотите установить MAC-адрес, и выберите вкладку «Идентификация».

Вы можете ввести новый MAC-адрес в поле «MAC-адрес» или выбрать настоящий MAC-адрес из раскрывающегося меню.

В раскрывающемся меню «Клонированный адрес» можно выбрать:

  • Сохранить: сохранить MAC-адрес во время загрузки. Не изменяйте установленный MAC-адрес.
  • Постоянно: используйте подлинный аппаратный MAC-адрес.
  • Случайный: создание случайного MAC-адреса.
  • Стабильный: создайте стабильный хешированный MAC-адрес. Каждый раз, когда соединение активируется, используется один и тот же поддельный MAC-адрес. Это может быть полезно в тех случаях, когда вы хотите скрыть свой аппаратный MAC-адрес, но вам нужно получить тот же IP-адрес от DHCP-маршрутизатора.

Ваши изменения вступят в силу после перезагрузки или выключения и повторного включения соединения.

Будь осторожен!

Изменение вашего MAC-адреса не является незаконным, если вы не делаете это, чтобы выдать себя за чужое сетевое устройство. В вашей юрисдикции, вероятно, есть законы, регулирующие борьбу с незаконным получением сетевого трафика. Например, в Великобритании действует Закон о неправомерном использовании компьютеров, а в США — Закон о компьютерном мошенничестве и злоупотреблениях.

Станьте анонимным во что бы то ни стало, но не притворяйтесь кем-то другим.

Статьи по данной тематике: