<Directory /some/real/path/to/tmp>
Header Set Pragma "no-cache"
Header Set Expires "Thu, 1 Jan 1970 00:00:00 GMT"
Header Set Cache-Control "max-age=0, no-store, no-cache, must-revalidate"
Header Unset ETag
FileETag None
</Directory>
Это должно сделать это для примерно каждого браузера там.
Я думаю, ваша установка сломается или не сработает:
Ваша конфигурация клиента OpenVPN использует публичный адрес server.foo.com для подключения к серверу OpenVPN. Очевидно, этот адрес будет найден до установления VPN-туннеля.
Вы пытаетесь протолкнуть DNS-запись для server.foo.com с IP-адресом OpenVPN после того, как туннель установлен с помощью конфигурации dnsmasq. Либо клиент OpenVPN игнорирует его (поскольку он уже знает о server.foo.com, поскольку ему пришлось искать его, чтобы установить туннель), либо он будет уважать его, а затем отбросит туннель, потому что конфигурация клиента OpenVPN будет указывать на сейчас несуществующий IP-адрес. Последнее может произойти во время сеанса OpenVPN, в зависимости от TTL DNS-сервера для общедоступного IP-адреса server.foo.com.
TL; DR: вы в основном пытаетесь сообщить своему клиенту противоречивую информацию о server.foo.com. Я не могу придумать хороший способ сделать то, что ты задумал. Альтернативой может быть установка второй записи DNS A, запись vpnserver.foo.com, которая указывает на тот же IP-адрес, что и server.foo.com, а затем изменение конфигурации OpenVPN для ее использования.
Хотя и очень поздно, но одним из возможных решений может быть перенаправление всего клиентского трафика через туннель (если это позволяет клиентский сценарий). Вам необходимо добавить следующую директиву в файл конфигурации вашего сервера. например нажмите "redirect-gateway def1" Подробнее см. здесь Таким образом, клиент не будет проверять общедоступный DNS.