Используя ubuntu и openvpn с установленным сервером apache2, мне нужно ограничить доступ к определенному веб-сайту для клиентов, подключенных через vpn
Если я приеду https://www.myip.com/ через браузер при подключении через vpn мой ip такой же, как и у сервера.
Если я попытаюсь получить доступ к веб-сайту, используя общедоступный dns subdomain.example.com, журнал apache покажет старый общедоступный IP-адрес, отключив доступ.
Вот конфигурация виртуального хоста apache2
<VirtualHost 10.1.0.4:443>
ServerName subdomain.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/website
ErrorLog ${APACHE_LOG_DIR}/website_error.log
CustomLog ${APACHE_LOG_DIR}/website_access.log combined
SSLCertificateFile /etc/letsencrypt/live/website/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/website/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
<Directory "/var/www/html/website">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order Deny,Allow
Deny from all
Allow from 10.1.0.1/24
</Directory>
</VirtualHost>
Учитывая, что мой общедоступный IP-адрес до подключения к vpn был IPX, а общедоступный IP-адрес после подключения (такой же, как и сервер) - IPY
Это журнал apache после попытки доступа к веб-сайту после подключения через vpn.
[Sat Jun 27 09:14:42.994222 2020] [access_compat:error] [pid 111752:tid 140305701463808] [client IPX:60374] AH01797: client denied by server configuration: /var/www/website
Если я попытаюсь зайти на 10.1.0.4 через браузер, я смогу увидеть сайт правильно. Я не хочу добавлять правило DNS / etc / hosts на клиентский компьютер.