При настройке сервера Apache, очевидно, можно разрешить соединения с определенного IP-адреса [/ range].
У меня динамический IP-адрес, и мне интересно, если я использую службу DDNS, можно ли разрешить соединения, если входящий IP-адрес совпадает с текущим IP-адресом DDNS? Я знаю, что вы можете заставить задачу запускаться каждые несколько минут, проверять связь и обновлять файл конфигурации с текущим IP-адресом, но для этого потребуется перезапуск службы, чего я бы хотел избежать, если это возможно.
В forward-dns
Директива кажется именно тем, что вам нужно. В соответствии с документы, Это
просто запрашивает DNS имя хоста и разрешает клиенту, если его IP совпадает. Как следствие, он будет работать только с именами хостов, а не с именами доменов. Однако, поскольку обратный DNS не используется, он будет работать с клиентами, которые используют службу динамического DNS.
Таким образом, вы можете указать что-то вроде
<Location / >
Require forward-dns your.ddns.server
</Location>
и он будет выполнять DNS-запрос всякий раз, когда клиент подключается, и запрещает подключение, если оно не от указанного имени. Следует учитывать две вещи:
forward-dns
Директива доступна с версии 2.4.19.