В Apache2 можно ли привязать VirtualHost
к другому IP-интерфейсу, отличному от других виртуальных хостов, или к серверу по умолчанию Listen
адрес?
Цель состоит в том, чтобы иметь веб-сервер, который обслуживает некоторые общедоступные сайты, а также некоторые сайты интрасети через интерфейс VPN.
Я полагаю, что другим подходом было бы сделать .htaccess
файл, который требует паролей от всех, кроме исходных адресов VPN, но я бы предпочел быть с этим очень осторожным и просто не делать сайты общедоступными в первую очередь.
Заранее большое спасибо!
Почему бы не попробовать вот так (если у вас есть доступ к файлу apache2 conf, не так ли?)
<VirtualHost 111.22.33.55:8080>
ServerName www-cache.domain.tld
...
<Directory proxy:>
Order Deny,Allow
Deny from all
Allow from 111.22.33 (IP OF THE VPN CONN)
</Directory>
</VirtualHost>
Вы должны быть Listen
ing на всех интерфейсах и портах, на которых будут видны все ваши хосты. Тогда адресная часть VirtualHost
пределы того, какой адрес обслуживает какой сайт. Именованные виртуальные хосты даже лучше для безопасности, поскольку имя сервера в URL-адресе будет дополнительно определять, какой контент исходит с какого адреса.