Блокировка по MAC адресу в iptables
Лига сисадминовДопустим необходимо заблокировать входящие подключения к серверу для определенного MAC адреса, приведу пример правила:
iptables -A INPUT -m mac --mac-source 04:18:d6:52:1d:71 -m comment --comment "Example_ixnfo_com" -j DROP
Если сервер используется как сервер доступа, например для NAT и т.д., то можно запретить пропускать пакеты с определенным MAC адресом:
iptables -A FORWARD -m mac --mac-source 04:18:d6:52:1d:71 -m comment --comment "Example_ixnfo_com" -j DROP
Чтобы удалить правило, достаточно заменить -A на -D, например:
iptables -D FORWARD -m mac --mac-source 04:18:d6:52:1d:71 -m comment --comment "Example_ixnfo_com" -j DROP
Аналогично можно не блокировать, а разрешать доступ, приведу примеры как разрешить доступ к SSH для определенного MAC адреса:
/sbin/iptables -A INPUT -p tcp --destination-port 22 -m mac --mac-source 04:18:d6:52:1d:71 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 22 -m mac --mac-source 04:18:d6:52:1d:71 -j ACCEPT