рекомендации

понедельник, 20 апреля 2020 г.

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

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


Я проверил это руководство на серверах CentOS 7 и Ubuntu 18.04 LTS. Все работало хорошо, как описано ниже. Давайте начнем.

Как найти MAC-адрес в Linux

Во-первых, давайте выясним MAC-адрес или аппаратный адрес сетевой карты в Linux.
$ ifconfig | grep HWaddr
Пример вывода:
enp0s3    Link encap:Ethernet  HWaddr 08:xx:xx:xx:xx:x1
или,
$ ip link show
enp0s3:  mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
 link/ether 08:xx:xx:xx:xx:x1 brd ff:ff:ff:ff:ff:ff
 или
$ ifconfig | grep ether
Пример вывода:
ether 24:xx:xx:xx:xx:x9 txqueuelen 1000 (Ethernet)
ether c0:xx:xx:xx:xx:xf txqueuelen 1000 (Ethernet)
Вы можете использовать любую из приведенных выше команд, чтобы узнать MAC-адрес сетевой карты. Эти команды должны работать практически во всех дистрибутивах Linux.

Теперь давайте посмотрим, как изменить MAC-адрес.

Изменение MAC-адреса в Linux

Мы можем сделать это двумя способами. Пожалуйста, помните, что вы не должны делать это на действующей сетевой карте, которая используется в настоящее время. Если вы сделаете это, возможно, ваше сетевое соединение будет разорвано. Попробуйте этот метод с дополнительной картой.

Способ 1: использование Macchanger

Macchanger - это простая утилита для просмотра, изменения и управления MAC-адресами для сетевых карт. Он доступен практически во всех операционных системах GNU/Linux.

В Arch Linux:

Чтобы установить Macchanger в Arch Linux и его производных, выполните:
$ sudo pacman -S macchanger
В Fedora, CentOS, RHEL:
$ sudo yum install macchanger
или
$ sudo dnf install macchanger
В Debian / Ubuntu:

Чтобы получить Macchanger в Debian, Ubuntu и его производных, выполните:
$ sudo apt-get install macchanger
Укажите, должен ли Macchanger быть настроен на автоматический запуск при каждом включении или выключении сетевого устройства. Это даст вам новый MAC-адрес всякий раз, когда вы подключаете кабель Ethernet или включаете Wi-Fi.

Я рекомендую вам не запускать его автоматически, если вам не нужно каждый раз менять MAC-адрес. Итак, выберите No и нажмите клавишу ENTER, чтобы продолжить.


Macchanger установлен.

Использование

Чтобы назначить любой случайный MAC-адрес, выполните:
$ macchanger -r <interface-name>
Чтобы узнать имя сетевого интерфейса, выполните:
$ ip addr
Пример вывода:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 inet 127.0.0.1/8 scope host lo
 valid_lft forever preferred_lft forever
 inet6 ::1/128 scope host 
 valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
 link/ether 08:xx:xx:xx:xx:x1 brd ff:ff:ff:ff:ff:ff
 inet 192.168.1.105/24 brd 192.168.1.255 scope global enp0s3
 valid_lft forever preferred_lft forever
 inet6 fe80::a00:27ff:fe12:f8c1/64 scope link 
 valid_lft forever preferred_lft forever

Как вы видите на скриншоте выше, enp0s3 - это имя моей сетевой карты.

Чтобы изменить MAC-адрес сетевой карты enp0s3, выполните:
$ sudo macchanger -r enp0s3
После изменения MAC-адреса проверьте его с помощью команды:
$ ip addr
Пример вывода:


Теперь вы видите, что MAC был изменен.

Чтобы изменить MAC-адрес на конкретное значение, укажите любой пользовательский MAC-адрес с помощью команды:
$ macchanger --mac=XX:XX:XX:XX:XX:XX 
Где XX:XX:XX:XX:XX:XX - это новый MAC-адрес, который вы хотите установить.

Наконец, чтобы вернуть MAC-адрес к его первоначальному постоянному аппаратному значению, выполните следующую команду:
$ macchanger -p enp0s3

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

Для более подробной информации, обратитесь к справочной странице:
$ man macchanger
Способ 2: использование iproute2

Сначала отключите сетевую карту с помощью команды:
$ sudo ip link set dev enp0s3 down
Далее установите новый MAC с помощью команды:
$ sudo ip link set dev enp0s3 address XX:XX:XX:XX:XX:XX
Наконец, включите его снова командой:
$ sudo ip link set dev enp0s3 up
Теперь проверьте новый MAC-адрес с помощью команды:
$ ip link show enp0s3
Пример вывода:
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
В качестве альтернативы, вы можете сделать это, используя команду ifconfig, как показано ниже.
$ sudo ifconfig eth0 down
$ sudo ifconfig eth0 hw ether 00:80:48:BA:d1:30
$ sudo ifconfig eth0 up
$ ifconfig eth0 | grep HWaddr
Это все.

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

Комментариев нет:

Отправка комментария