Как скрыть поддомены nginx с ограниченным доступом?
Чтобы скрыть ограниченное местоположение, например
location /secret/ {
allow 10.0.0.0/24;
deny all;
}
можно было бы установить
error_page 403 =404 /404.html;
error_page 404 /404.html;
сделать невозможным отличить несуществующее местоположение (404) от ограниченного (403).
Есть ли способ выполнить аналогичную подделку для поддоменов?
Я хочу, чтобы https://admin.example.org/, который обычно возвращает 403, если он не посещается через VPN, показывал то же самое, что и https://nonexistingsubdomain.example.org/, например, страницу .html с перенаправлением на https://example.org/ .
1 ответ
Обычно поддомен представляет собой другую запись DNS и указывает на IP-адрес (сервер). В вашем случае вы можете создать виртуальный хост, который будет обрабатывать все запросы к https://admin.example.com, например. и настройте там разрешения.
Взгляните на эту статью: https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-16-04 .