На https://stackoverflow.com/questions/316574/dhcp-setting-in-mac-os-x, должно быть возможно использовать ipconfig
получить значения произвольных опций от новой транзакции DHCP. Я предполагаю, что необходимо было бы использовать пользовательское launchd
plist для выполнения чего-то, когда интерфейс настроенное (ре).
Вы делаете это неправильно , мой друг.
Помимо локального NAT и "NAT операторского уровня" (что означает информация, которую вы получаете из ifconfig
в клиентских системах, может быть частным адресом, который вы не можете использовать в списках доступа вашего сервера), безопасность на основе IP - это фарс: интернет-провайдеры могут изменять назначения общедоступных сетей, конечных пользователей могут быть на динамических IP-адресах, или кто-то может подделать BGP и обмануть вашу безопасность.
Если вы хотите должным образом защитить свой сайт, мои рекомендации будут следующими:
SSL с взаимной аутентификацией сертификатов
Очень безопасный, поддерживается практически в каждом браузере,но немного проблематично администрировать, потому что вам нужно выдать клиентские сертификаты всем своим пользователям и объяснить, как их установить (а сертификаты привязаны к машинам, на которых вы их устанавливаете, поэтому ваши пользователи могут не иметь возможности войти в систему) из бабушкиного дома).
Это того стоит, если вам нужна безопасность.
SSL и двухфакторная аутентификация
Использование чего-то вроде Google Authenticator в дополнение к имени пользователя / паролю, что дает вашим пользователям настоящую двухфакторную аутентификацию (кое-что, что вы знаете - Имя пользователя / Пароль и что-то, что у вас есть - устройство с работающим на нем Authenticator).
Для этого может потребоваться небольшая работа с вашей стороны, либо в вашем приложении, либо на сервере с помощью чего-то вроде mod_auth_external
, но это очень хорошая безопасность: он не страдает от ограничений взаимной проверки подлинности сертификатов, и это почти -невозможно грубой силой.
SSL и аутентификация по имени пользователя / паролю
Безопасность настолько же безопасна, насколько и имя пользователя / пароль, но именно поэтому у нас есть хорошие политики паролей.
Это уязвимо для атак методом грубой силы, поэтому необходимо будет использовать методы смягчения.
Самый простой способ определить это - запустить следующее в системе, которую вы планируете разрешить .
lynx ipchicken.com
Если он соответствует вашему ifconfig, все будет в порядке. Если нет, и это домашний маршрутизатор, вы будете доверять машинам, стоящим за индивидуальным маршрутизатором. Другой способ сделать это - потребовать vpn с учетными данными и сделать этот сайт доступным только в вашей сети. Тогда вам могут потребоваться ключи или сертификат.