добро пожаловать обратно, если вы хотите сделать пакет на основе исходного MAC-адреса, используйте опцию соответствия минус-Mac,
обратите внимание, что вы можете фильтровать Ethernet или беспроводной трафик только по исходному MAC-адресу, а не по
MAC-адресу назначения, этот максимум может быть очень полезным, иногда представьте, что у вас есть
сервер в вашей локальной сети и вы хотите разрешить доступ к службам, работающим на сервере,
только списку доверенных машин, или у вас есть сетевой маршрутизатор, работающий под управлением Linux,
и вы хотите, чтобы только корпоративные устройства имели доступ к Интернету, или, другими словами, вы не разрешать устройства
, которые не являются вашими или надежными в вашей сети, имейте в виду, что MAC-адреса действительны только
внутри локальной сети, первый маршрутизатор по направлению к месту назначения изменит исходный MAC-
адрес пакета на свой собственный MAC-адрес MAC-адрес исходящего интерфейса
также обратите внимание, что вы не можете навязать строгую политику безопасности на основе MAC-адресов, потому что
MAC-адреса могут быть легко подделаны, когда мы хотим сопоставить пакеты по исходному Mac адрес мы используем
минус m mac max в этом примере мы отбрасываем все входящие пакеты, это входная цепочка, которая
поступает на интерфейс wlan 0 и имеет этот исходный MAC-адрес, давайте посмотрим еще два варианта
использования, первая задача - отбросить входящие пакеты, которые поставляется с указанным MAC-адресом,
а вторая задача - настроить сетевой маршрутизатор, на котором, конечно, работает Linux, чтобы разрешить
доступ в Интернет только к списку доверенных устройств или MAC-адресам, давайте сделаем первую задачу,
я отброшу все входящие трафик в linux 1, если исходный MAC-адрес - это Linux 2.
Mac принадлежит к уровню 2, поэтому, если вы сбрасываете по MAC-адресу, вы отбрасываете все протоколы, такие как ip
icmp tcp udp и т. д., сначала я хочу проверить, что соединение между linux 2 и linux 1 работает
идеально розовый работает, давайте посмотрим, что такое MAC-адрес linux2,
это MAC-адрес, и я скопирую
его в буфер обмена, а на linux2 я напишу правило iptables iptables минус входящий вход
минус трафика m mac minus minus mac minus source, и я вставлю MAC-адрес
минус j drop,
давайте снова пингуем этот хост,
мы замечаем, что ping больше не работает,
я останавливаю комментарий ping обратно в linux, давайте перечислим файл,
и мы увидим много из совпавших и отброшенных пакетов
все пакеты с этим исходным MAC-адресом будут отброшены, давайте продолжим и
выполним вторую задачу, я собираюсь создать сценарий и написать там все необходимые
правила iptables,
как и во всех других примерах в начале сценария Я прошиваю прямую цепочку,
потому что могут быть десятки MAC-адресов, которые я должен разрешить.Я определю новую переменную и сохраню
эти MAC-адреса в этой переменной, так что это имя моей новой переменной, разрешенное максимальное значение,
и список Mac адреса, разделенные запятыми,
первый MAC-адрес, второй MAC-адрес, третий, и так далее,
я буду что-то менять на каждом MAC-адресе, чтобы иметь разные адреса
. Хорошая практика - писать переменные заглавными буквами, не используйте пробелы слева
и d справа от знака равенства и использовать пробел между адресами,
теперь используя цикл for, я буду перебирать список MAC-адресов и запускать
правило iptables для каждого Mac в списке, поэтому для Mac это временная переменная в разрешенных долларах max
do и done между должным и завершенным у нас есть блок кода for, поэтому iptables минус форвард
помните, что мы маршрутизатор минус m мех минус минус mac минус исходный доллар mac минус j
accept, и я распечатаю сообщение, чтобы узнать, что сценарий делает разрешенный макинтош эхо-доллара,
и, наконец, я настрою политику для отбрасывания в цепочке пересылки, чтобы все другие пакеты
, которые не были приняты, будут отброшены iptables минус p forward drop
perfect Я сохраняю брандмауэр, тогда я сделаю это исполняемый файл и запустите его,
мы увидим, что эти четыре MAC-адреса были разрешены только для пакета с устройств
с этими MAC-адресами, которые могут получить доступ к Интернету,
этот тип сценария полезен также для локального сервера, если вы хотите, чтобы доступ к LAN-серверу мог получить
только список доверия ed hosts, вы просто заменяете разветвленную цепочку входной цепочкой,
когда хотите добавить или удалить MAC-адрес из списка, вы просто удалите
этот адрес из списка, сохраните скрипт и запустите его снова Я удалил два адреса,
извините, я заметил небольшая ошибка: прямая цепочка не вводится
хорошо, я сохраняю сценарий, а затем запускаю его снова, теперь разрешены только эти два MAC-адреса,
вы видите, что очень легко добавить или удалить MAC-адреса из списка