
У моего сервера статический IP, и я настроил веб-сайт так, чтобы компьютеры в той же сети могли получить доступ к веб-сайту, используя IP-адрес. Например, вы можете ввести 192.168.1.1/#!/ в адресной строке браузера и подключиться к моему веб-сайту.
Я ищу способ ограничить подключения к рабочему столу Ubuntu либо с помощью MAC-адреса, либо с помощью сертификатов, которые находятся на компьютерах, которым я предоставляю доступ.
Есть ли способ ограничить подключения таким образом?
решение1
Вы можете использовать правила iptables для ограничения доступа на основе MAC-адреса. Вот пример из моего собственного набора правил, чтобы не разрешать пакеты с определенного MAC-адреса:
# Drop packets from a certain MAC address
#
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j LOG --log-prefix "BEFSR81:" --log-level info
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j DROP
где:
IPTABLES=/sbin/iptables
EXTIF="eth1"
UNIVERSE="0.0.0.0/0"
EXTIP="your static IP address"
Однако если бы требовалось разрешить доступ на основе MAC-адреса, правила были бы примерно такими:
$IPTABLES -A INPUT -i $EXTIF -s $UNIVERSE -d $EXTIP -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow packets from a certain MAC address and no others
#
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j LOG --log-prefix "BEFSR81:" --log-level info
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -j DROP
Примечание: для версии allow могут потребоваться некоторые другие специальные ACCEPT.
Вы можете захотеть или не захотеть строки журналирования. Если вы их сохраните, убедитесь, что они не заполняют ваши файлы журналов.