3 способа безопасного просмотра Интернета с помощью OpenVPN в Debian 8

Вступление

Причины, по которым веб-сайт должен быть более конфиденциальным, зависит от того, как этого добиться.

В этом руководстве мы подробно объясним, как настроить виртуальную частную сеть (VPN) на сервере, чтобы обеспечить три важных компонента работы в Интернете:

  • Приватизируйте ваш веб-трафик, защищая незашифрованный трафик, предотвращая использование файлов cookie и других трекеров, и маскируя IP-адрес вашего локального компьютера.

  • Запретите вашему локальному интернет-провайдеру регистрировать DNS-запросы, отправляя их из VPN прямо на DNS-серверы Google

  • Сканирование и предотвращение доступа к вирусам и вредоносным программам

Запустив собственный VPN-сервер, а не коммерческий, вы также можете избежать записи истории посещенных страниц (если только вы не решите это сделать). Наконец, вы можете выбрать его физическое местоположение, чтобы минимизировать задержку. Однако использование VPN обычно медленнее, чем прямое подключение к Интернету.

Мы сделаем это путем установки и настройки следующих приложений на вашем сервере Debian 8:

  • * http: //www.clamav.net/index.html [ClamAV] * - это антивирусный движок с открытым исходным кодом для обнаружения троянов, вирусов, вредоносных программ и других вредоносных угроз.

  • * http: //www.thekelleys.org.uk/dnsmasq/doc.html [Dnsmasq] * - это программный пакет, который предоставляет службы DNS (и еще немного). Мы будем использовать его только как кеш DNS

  • * http: //www.server-side.de/documentation.htm [HAVP] * HTTP-прокси AntiVirus - это прокси с антивирусным фильтром. Он не кэширует и не фильтрует контент. Он сканирует весь трафик с помощью сторонних антивирусных движков. В этом уроке мы будем использовать + HAVP + в качестве Transparent Proxy и соединять вместе + HAVP + и + Privoxy +

  • * https: //openvpn.net/index.php/open-source.html [OpenVPN Community Edition] * - это популярный VPN-сервер. Он обеспечивает безопасное соединение с вашим доверенным сервером, а также может передавать настройки DNS-сервера своим клиентам. В этом руководстве термин OpenVPN будет использоваться как сокращенная форма имени VPN-сервера.

  • * http: //www.privoxy.org/ [Privoxy] * с официального веб-сайта представляет собой не кэширующий веб-прокси с расширенными возможностями фильтрации для повышения конфиденциальности, изменения данных веб-страницы и заголовков HTTP, контроля доступа и удаления рекламы. и другой отвратительный интернет-мусор

После завершения этого урока у вас будет шлюз конфиденциальности, который:

  • Защищает ваше соединение при использовании общественных точек WiFi

  • Блокирует рекламу и функции отслеживания с веб-сайтов

  • Ускоряет загрузку веб-страниц за счет кэширования ответов DNS на стороне сервера

  • Сканирует посещаемые вами страницы и загружаемые файлы на наличие известных вирусов.

Как это устроено

На следующей диаграмме показан путь, по которому веб-запрос проходит через VPN, которую мы настроим в этом руководстве.

Полосы с зеленым фоном являются компонентами VPN-сервера. Зеленые прямоугольники представляют этапы запроса, а синие и красные прямоугольники представляют этапы ответа.

изображение: https: //assets.digitalocean.com/articles/3-openvpn-examples/openvpn-final.png [Блок-схема веб-запроса через VPN-сервер]

Трафик между вашим компьютером и сервером конфиденциальности будет проходить через VPN-туннель. Когда вы открываете веб-страницу в своем браузере, ваш запрос будет передан на сервер VPN. На VPN-сервере ваш запрос будет перенаправлен на HAVP, а затем на Privoxy.

Privoxy будет сопоставлять URL со своей базой данных шаблонов. Если URL совпадает, он заблокирует URL и вернет правильный, но пустой ответ.

Если URL-адрес не заблокирован, Privoxy действует как прокси-сервер без кэширования для запроса DNS и получения содержимого URL-адреса. DNS-запросы обрабатываются и кешируются Dnsmasq.

HAVP получает контент от Privoxy и выполняет проверку на вирусы через ClamAV. Если какой-либо вирус обнаружен, он возвращает страницу с ошибкой.

Предпосылки

Пожалуйста, убедитесь, что вы выполнили следующие условия:

Системные Требования

Сервер, который мы настроим, будет прост в использовании процессора, оперативной памяти и дискового пространства. Выберите Droplet с не менее 1 ГБ ОЗУ, и это обеспечивает достаточную пропускную способность для удовлетворения ваших потребностей просмотра.

В этом учебном пособии выбрана операционная система Debian 8. Он также должен работать более или менее таким же образом для других дистрибутивов Linux на основе Debian, таких как Ubuntu.

  • Лицензия *

Все программное обеспечение, используемое в этом руководстве, доступно в репозиториях Debian и подчиняется политикам Debian.

Безопасность

Этот сервер будет перехватывать все ваши HTTP-запросы. Кто-то, кто получает контроль над этим сервером, может действовать как посредник и контролировать весь ваш трафик HTTP, перенаправлять запросы DNS и т. Д. Вам * нужно * защитить свой сервер. Пожалуйста, обратитесь к учебным пособиям, упомянутым в начале этого раздела, чтобы настроить доступ sudo и брандмауэр в качестве начального уровня защиты.

Шаг 1 - Установка OpenVPN и другие необходимые компоненты

Если вы еще не установили OpenVPN, сделайте это сейчас.

Вы можете следовать руководству Как настроить сервер OpenVPN в Debian 8 ,

В следующих шагах мы установим несколько пакетов. Чтобы убедиться, что ваши индексы пакетов обновлены, выполните следующую команду.

sudo apt-get update

Если вы еще не включили + ssh + в настройке брандмауэра UFW, сделайте это с помощью следующих команд.

sudo ufw allow ssh
sudo ufw enable

Шаг 2 - Установка Dnsmasq

На этом этапе мы установим и настроим Dnsmasq. Наш прокси-сервер конфиденциальности будет использовать Dnsmasq для ускорения и защиты своих запросов DNS.

Каждый раз, когда вы подключаетесь к веб-странице, ваш компьютер пытается определить интернет-адрес этого сервера, запрашивая сервер DNS (Domain Name System). По умолчанию ваш компьютер использует DNS-серверы вашего провайдера.

Использование собственного DNS-сервера имеет следующие преимущества:

  • Ваш провайдер не будет знать имена хостов, к которым вы подключаетесь

  • Ваш провайдер не может перенаправить ваши запросы на другие серверы, что является одним из основных методов цензуры

  • Ваша скорость поиска DNS улучшится

В системе Debian конфигурация сервера имен хранится в файле с именем + / etc / resolv.conf +.

Проверьте текущую конфигурацию сервера имен с помощью следующей команды.

cat /etc/resolv.conf

Выход:

/etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
nameserver 8.8.4.4

Как видите, серверы имен по умолчанию в этой системе настроены на DNS-серверы Google.

Теперь установите + dnsmasq + с помощью следующей команды:

sudo apt-get install dnsmasq

После установки пакета снова проверьте свою конфигурацию:

cat /etc/resolv.conf

Выход:

/etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1

Сервер имен по умолчанию установлен на * 127.0.0.1 *, который является локальным интерфейсом, на котором работает Dnsmasq.

Вы можете проверить установку с помощью следующей команды. Обратите внимание на время запроса в выводе.

dig digitalocean.com @localhost

Выход:

Output. . .

;; Query time:
;; SERVER: 127.0.0.1#53(127.0.0.1)

. . .

Теперь снова запустите ту же команду и проверьте время запроса:

dig digitalocean.com @localhost

Выход:

Output. . .

;; Query time:
;; SERVER: 127.0.0.1#53(127.0.0.1)

. . .

На наш второй запрос отвечает + dnsmasq + из кэша. Время отклика уменьшилось с 20 миллисекунд до 1 миллисекунды. В зависимости от нагрузки вашей системы кэшированные результаты обычно возвращаются менее чем за 1 миллисекунду.

Шаг 3 - Установка ClamAV

Давайте установим наш антивирусный сканер, чтобы наш VPN защищал нас от известных вредоносных загрузок.

Установить ClamAV

ClamAV - это широко используемый антивирусный сканер с открытым исходным кодом.

Установите ClamAV и его демон сканера:

sudo apt-get install clamav clamav-daemon

Обновление вирусной базы

ClamAV будет обновлять свою базу данных сразу после установки и проверять наличие обновлений каждый час.

ClamAV записывает статус обновления своей базы данных в + / var / log / clamav / freshclam.log +. Вы можете проверить этот файл, чтобы увидеть, как обрабатываются его автоматические обновления.

Теперь мы дождемся завершения автоматического обновления; в противном случае наш прокси-сервер сканирования (HAVP) будет жаловаться и не запустится.

sudo tail -f /var/log/clamav/freshclam.log

В процессе обновления текущее состояние будет записано на экран.

OutputFri Jun 19 12:56:03 2015 -> ClamAV update process started at Fri Jun 19 12:56:03 2015
Fri Jun 19 12:56:12 2015 -> Downloading main.cvd [100%]
Fri Jun 19 12:56:21 2015 -> main.cvd updated (version: 55, sigs: 2424225, f-level: 60, builder: neo)
Fri Jun 19 12:56:28 2015 -> Downloading daily.cvd [100%]
Fri Jun 19 12:56:34 2015 -> daily.cvd updated (version: 20585, sigs: 1430267, f-level: 63, builder: neo)
Fri Jun 19 12:56:35 2015 -> Downloading bytecode.cvd [100%]
Fri Jun 19 12:56:35 2015 -> bytecode.cvd updated (version: 260, sigs: 47, f-level: 63, builder: shurley)
Fri Jun 19 12:56:41 2015 -> Database updated (3854539 signatures) from db.local.clamav.net (IP: 200.236.31.1)
Fri Jun 19 12:56:55 2015 ->
Fri Jun 19 12:56:55 2015 -> --------------------------------------

Подождите, пока вы не увидите текст, помеченный красным, ++.

Нажмите + CTRL + C + на клавиатуре, чтобы выйти из хвоста. Это вернет вас в командную строку.

Вы можете продолжить с разделом * Configure ClamAV *, если все прошло нормально.

(Необязательно)

Если обновление вируса занимает слишком много времени, вы можете запустить его вручную. Это не будет необходимо в нормальных условиях.

Остановите службу автообновления.

sudo service clamav-freshclam stop

Запустите программу обновления вручную и дождитесь ее завершения. Прогресс загрузки будет показан в процентах.

sudo freshclam

Запустите службу автообновления:

sudo service clamav-freshclam start

Настроить ClamAV

Теперь мы разрешим другим группам доступ к ClamAV. Это необходимо, поскольку мы настроим прокси-сервер сканирования на вирусы (HAVP) для использования ClamAV в следующих шагах.

Отредактируйте файл конфигурации ClamAV + clamd.conf + в своем любимом текстовом редакторе.

sudo vi /etc/clamav/clamd.conf

Установите следующий параметр в + true +.

/etc/clamav/clamd.conf

AllowSupplementaryGroups

Сохраните конфигурацию и выйдите.

Перезапустите + clamav-daemon +

sudo service clamav-daemon restart

Шаг 4 - Установка HAVP

HAVP - прокси-сервер для сканирования вирусов. Он сканирует каждый элемент на посещаемых вами страницах и блокирует вредоносный контент. HAVP не содержит антивирусного ядра, но может использовать несколько сторонних модулей. В этом уроке мы настроим его с помощью ClamAV.

Установите HAVP из репозиториев Debian.

sudo apt-get install havp

Установка займет некоторое время, поэтому наберитесь терпения.

Редактирование файла конфигурации

Загрузите файл конфигурации HAVP в ваш любимый редактор:

sudo vi /etc/havp/havp.config

Нам нужно установить несколько параметров конфигурации, чтобы заставить HAVP работать с демоном ClamAV.

HAVP может работать с библиотеками ClamAV (по умолчанию) или с демоном ClamAV. Библиотечный режим требует намного больше оперативной памяти, чем режим демона (сокетный сканер). Если ваша Droplet имеет 4 ГБ или более ОЗУ, вы можете установить для + ENABLECLAMLIB + значение + true + и использовать режим библиотеки.

В противном случае используйте эти настройки, расположенные в нижней части файла конфигурации.

/etc/havp/havp.config

ENABLECLAMLIB

. . .

ENABLECLAMD

Конфигурация HAVP по умолчанию может создавать помехи для некоторых сайтов потокового видео. Чтобы разрешить запросы диапазона HTTP, установите следующий параметр.

/etc/havp/havp.config

RANGE

Много контента в Интернете состоит из изображений. Хотя есть некоторые эксплойты, использующие изображения в качестве векторов, более или менее безопасно не сканировать изображения.

Мы рекомендуем установить + SCANIMAGES + в + false +, но вы можете оставить этот параметр как + true +, если вы хотите, чтобы HAVP сканировал изображения.

/etc/havp/havp.config

SCANIMAGES

Не сканируйте файлы с типом MIME изображений, видео и аудио. Этот параметр повысит производительность и позволит вам смотреть потоковое видео (при условии, что VPN в целом имеет достаточную пропускную способность). Раскомментируйте эту строку, чтобы включить ее.

/etc/havp/havp.config

SKIPMIME image/* video/* audio/*

Есть еще один параметр, который мы изменим.

Этот параметр скажет HAVP не регистрировать успешные запросы в файл журнала в + / var / log / havp / access.log +. Оставьте значение по умолчанию (+ true +), если вы хотите проверить журналы доступа, чтобы увидеть, работает ли HAVP. Для производства установите этот параметр на «+ false +», чтобы повысить производительность и конфиденциальность.

/etc/havp/havp.config

LOG_OKS

Сохраните ваши изменения и выйдите из файла.

Конфигурация пользователя

Помните, когда мы настраивали ClamAV для доступа других групп?

Теперь мы добавим пользователя * clamav * в группу * havp * и разрешим HAVP получить доступ к ClamAV. Выполните следующую команду:

sudo gpasswd -a clamav havp

Выход:

OutputAdding user clamav to group havp

Нам нужно перезапустить + clamav-daemon +, чтобы изменения в группах вступили в силу.

sudo service clamav-daemon restart

Теперь, когда мы настроили HAVP, мы можем запустить его с помощью следующей команды:

sudo service havp restart

Команды перезапуска службы должны завершаться без вывода сообщений; на консоли не должно быть сообщений.

Проверка журналов

HAVP хранит свои файлы журналов в каталоге + / var / log / havp +. Сообщения об ошибках и инициализации отправляются в файл + error.log +. Вы можете проверить статус HAVP, проверив этот файл.

sudo tail /var/log/havp/error.log

Команда + tail + отображает последние несколько строк файла. Если HAVP запущен успешно, вы увидите что-то вроде вывода, показанного ниже. Конечно, дата и время будут вашей системой:

Output17/06/2015 12:48:13 === Starting HAVP Version: 0.92
17/06/2015 12:48:13 Running as user: havp, group: havp
17/06/2015 12:48:13 --- Initializing Clamd Socket Scanner
17/06/2015 12:48:22 Clamd Socket Scanner passed EICAR virus test (Eicar-Test-Signature)
17/06/2015 12:48:22 --- All scanners initialized
17/06/2015 12:48:22 Process ID: 3896

Шаг 5 - Тестирование HAVP

В этом разделе мы убедимся, что HAVP фактически блокирует вирусы.

В журнале, показанном выше, упоминается нечто, называемое + EICAR virus test

При инициализации HAVP тестирует ядра антивирусного сканера со специально созданной вирусной сигнатурой. Все программное обеспечение антивирусного сканера обнаруживает файлы, содержащие эту (безвредную) подпись, как вирус Вы можете получить больше информации об EICAR на странице EICAR Intended Use.

Давайте проведем наш собственный ручной тест с файлом EICAR и увидим, что HAVP и ClamAV блокируют его.

Мы будем использовать утилиту командной строки + wget + для загрузки файла с веб-страницы EICAR.

Сначала загрузите тестовый файл EICAR без использования прокси:

wget http://www.eicar.org/download/eicar.com -O /tmp/eicar.com

Ваш сервер загрузит файл без жалоб:

Outputconverted 'http://www.eicar.org/download/eicar.com' (ISO-8859-1) -> 'http://www.eicar.org/download/eicar.com' (UTF-8)
--2015-06-16 13:53:41--  http://www.eicar.org/download/eicar.com
Resolving www.eicar.org (www.eicar.org)... 188.40.238.250
Connecting to www.eicar.org (www.eicar.org)|188.40.238.250|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 68 [application/octet-stream]
Saving to: '/tmp/eicar.com'

/tmp/eicar.com       100%[=====================>]      68  --.-KB/s   in 0s

2015-06-16 13:53:41 (13.7 MB/s) - '/tmp/eicar.com' saved [68/68]

Как видите, + wget + загрузил тестовый файл, содержащий сигнатуру вируса, без каких-либо жалоб.

Теперь давайте попробуем скачать тот же файл с нашим недавно настроенным прокси. Мы установим переменную окружения + http_proxy + на наш адрес и порт HAVP.

http_proxy=127.0.0.1:8080 wget http://www.eicar.org/download/eicar.com -O /tmp/eicar.com

Выход:

Outputconverted 'http://www.eicar.org/download/eicar.com' (ISO-8859-1) -> 'http://www.eicar.org/download/eicar.com' (UTF-8)
--2015-06-25 20:47:38--  http://www.eicar.org/download/eicar.com
Connecting to 127.0.0.1:8080... connected.
Proxy request sent, awaiting response... 403 Virus found by HAVP
2015-06-25 20:47:39

Наш прокси успешно перехватил загрузку и заблокировал вирус.

EICAR также предоставляет файл сигнатур вирусов, скрытый внутри ZIP-файла.

Вы можете проверить, что HAVP сканирует файлы внутри ZIP-архивов с помощью следующей команды:

http_proxy=127.0.0.1:8080 wget http://www.eicar.org/download/eicarcom2.zip -O /tmp/eicarcom2.zip

Выход:

Outputconverted 'http://www.eicar.org/download/eicarcom2.zip' (ISO-8859-1) -> 'http://www.eicar.org/download/eicarcom2.zip' (UTF-8)
--2015-06-25 20:48:28--  http://www.eicar.org/download/eicarcom2.zip
Connecting to 127.0.0.1:8080... connected.
Proxy request sent, awaiting response... 403 Virus found by HAVP
2015-06-25 20:48:28

HAVP (с ClamAV) снова обнаружил вирус.

Шаг 6 - Установка Privoxy

До сих пор мы настроили прокси-сервер для сканирования веб-страниц на наличие вирусов. А как насчет рекламы и отслеживания куки? На этом этапе мы установим и настроим Privoxy.

Используйте следующую команду для установки Privoxy:

sudo apt-get install privoxy

Конфигурация Privoxy находится в файле + / etc / privoxy / config +. Нам нужно установить два параметра, прежде чем мы начнем использовать Privoxy.

Откройте файл конфигурации в вашем любимом редакторе.

sudo vi /etc/privoxy/config

Теперь раскомментируйте и установите следующие два параметра:

/ И т.д. / Privoxy / конфигурации

listen-address

. . .

hostname

Параметр + listen-address + определяет, по какому IP и порту работает privoxy. Значением по умолчанию является + localhost: 8118 +; мы изменим это на +127.0.0.1: 8118 +.

Параметр + hostname + указывает хост, на котором запускается Privoxy, и регистрирует его; установите это имя хоста или адрес DNS вашего сервера. Это может быть любое допустимое имя хоста.

Теперь перезапустите Privoxy с его новой конфигурацией.

sudo service privoxy restart

Шаг 7 - Привязка HAVP к Privoxy

HAVP и Privoxy, по сути, являются прокси-серверами HTTP. Теперь мы chain эти два прокси-сервера, так что, когда ваш клиент запрашивает веб-страницу от HAVP, он направит этот запрос в Privoxy. Privoxy извлечет запрошенную веб-страницу, удалит угрозы конфиденциальности и рекламу, а затем HAVP продолжит обработку ответа и удалит вирусы и вредоносный код.

Загрузите файл конфигурации HAVP в ваш любимый текстовый редактор:

sudo vi /etc/havp/havp.config

Раскомментируйте следующие строки (удалите символ + # + в начале строк) и установите их значения, как показано ниже. Privoxy работает на IP + 127.0.0.1 + и порте + 8118 +.

/etc/havp/havp.config

PARENTPROXY
PARENTPORT

Сохраните ваши изменения и выйдите из файла.

Перезапустите HAVP, чтобы изменения вступили в силу:

sudo service havp restart

Проверьте журнал ошибок HAVP, отметив сообщение + Use parent proxy: 127.0.0.1: 8118 +.

sudo tail /var/log/havp/error.log

Выход:

Output17/06/2015 12:57:37 === Starting HAVP Version: 0.92
17/06/2015 12:57:37 Running as user: havp, group: havp
17/06/2015 12:57:37
17/06/2015 12:57:37 --- Initializing Clamd Socket Scanner
17/06/2015 12:57:37 Clamd Socket Scanner passed EICAR virus test (Eicar-Test-Signature)
17/06/2015 12:57:37 --- All scanners initialized
17/06/2015 12:57:37 Process ID: 4646

Наша настройка прокси-сервера завершена. Давайте проверим это снова с помощью вируса EICAR.

http_proxy=127.0.0.1:8080 wget http://www.eicar.org/download/eicarcom2.zip -O /tmp/eicarcom2.zip

Если ваша конфигурация в порядке, вы должны снова увидеть сообщение «+ ERROR 403: Virus by HAVP +».

Шаг 8 - Настройка параметров DNS для сервера OpenVPN

Хотя конфигурация сервера OpenVPN по умолчанию соответствует нашим потребностям, ее можно немного улучшить.

Загрузите файл конфигурации сервера OpenVPN в текстовом редакторе:

sudo vi /etc/openvpn/server.conf

OpenVPN по умолчанию настроен на использование серверов OpenDNS. Если вы хотите изменить его на использование DNS-серверов Google, измените параметры + dhcp-option DNS +, как показано ниже.

Добавьте новую строку + push" register-dns "+, которая может понадобиться некоторым клиентам Windows для использования DNS-серверов.

Кроме того, добавьте новую строку + push" block-ipv6 "+, чтобы заблокировать IPv6 при подключении к VPN. (Трафик IPv6 может обойти наш VPN-сервер.)

Вот как должен выглядеть этот раздел:

/etc/openvpn/server.conf

push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
push "register-dns"
push "block-ipv6"

Если вы хотите разрешить нескольким клиентам подключаться к одному и тому же файлу ovpn, раскомментируйте следующую строку. (Это удобно, но НЕ более безопасно!)

/etc/openvpn/server.conf

duplicate-cn

Перезапустите службу OpenVPN, чтобы изменения вступили в силу.

sudo service openvpn restart

Шаг 9 - Настройка вашего прозрачного прокси

Теперь мы настроим наш сервер конфиденциальности для перехвата HTTP-трафика между его клиентами (вашим браузером) и Интернетом.

Включить пересылку пакетов

Чтобы наш сервер пересылал HTTP-трафик на прокси-сервер, нам нужно включить пересылку пакетов. Вы должны были включить его уже в учебнике по настройке OpenVPN.

Проверьте конфигурацию с помощью следующей команды.

sudo sysctl -p

Должны отображаться измененные параметры, как показано ниже. Если это не так, пожалуйста, посетите учебник OpenVPN.

Outputnet.ipv4.ip_forward = 1

Настроить UFW

Нам нужно перенаправить HTTP-пакеты, которые исходят от клиентов OpenVPN, в HAVP. Мы будем использовать + ufw + для этой цели.

Сначала нам нужно разрешить трафик, исходящий от клиентов OpenVPN

sudo ufw allow in on tun0 from 10.8.0.0/24

В руководстве по OpenVPN вы должны были изменить файл + / etc / ufw / before.rules и добавить некоторые правила для OpenVPN. Теперь мы вернемся к тому же файлу и настроим перенаправление портов для прозрачного прокси.

sudo vi /etc/ufw/before.rules

Измените линии, которые вы добавили в конфигурации OpenVPN, как показано ниже. Добавьте линии в красном.

/etc/ufw/before.rules

# START OPENVPN RULES
# NAT table rules
*nat

:POSTROUTING ACCEPT [0:0]


# Allow traffic from OpenVPN client to eth0
-A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE
COMMIT
# END OPENVPN RULES

Перезагрузите конфигурацию брандмауэра.

sudo ufw reload

Проверьте статус UFW:

sudo ufw status

Выход:

OutputStatus: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
1194/udp                   ALLOW       Anywhere
Anywhere on tun0           ALLOW       10.8.0.0/24
22                         ALLOW       Anywhere (v6)
1194/udp                   ALLOW       Anywhere (v6)

Включить прозрачный режим HAVP

На предыдущих шагах мы заставляли все HTTP-пакеты проходить через HAVP. Эта конфигурация называется прозрачным прокси-сервером.

Нам нужно настроить + HAVP + как таковой.

sudo vi /etc/havp/havp.config

Установите следующий параметр:

/etc/havp/havp.config

TRANSPARENT

Перезапустите службу HAVP:

sudo service havp restart

Наш сервер теперь готов к использованию.

Шаг 10 - Тестирование конфигурации клиента

На вашем клиенте (Windows, OS X, планшет…) подключите ваш клиент к вашему серверу OpenVPN. Обратите внимание, что вы можете использовать тот же файл + .ovpn + из исходного руководства OpenVPN; все изменения на стороне сервера.

После того, как VPN-соединение установлено, вы должны увидеть ваши предпочтительные настройки DNS в журналах клиента OpenVPN. Следующий пример взят из клиента IOS.

DNS Servers
   8.8.8.8
   8.8.4.4
Search Domains:

Если вы используете Tunnelblick, вы можете увидеть такую ​​строку:

Changed DNS ServerAddresses setting from '8.8.8.8 208.67.222.222 8.8.4.4' to '8.8.8.8 8.8.4.4'

Чтобы проверить свою конфигурацию, перейдите на [тестовую страницу EICAR] (http://www.eicar.org [www.eicar.org]) в своем браузере и попытайтесь загрузить тестовый файл EICAR. Вы должны увидеть страницу * HAVP - Доступ запрещен *.

  • + HTTP: // www.eicar.org / скачать / eicarcom2.zip +

  • + HTTP: // www.eicar.org / 85-0-download.html +

изображение: https: //assets.digitalocean.com/articles/3-openvpn-examples/havp-denied.png [HAVP - доступ запрещен]

Шаг 11 - Устранение неисправностей

Этот раздел поможет вам устранить некоторые распространенные проблемы.

Не могу смотреть видео или использовать мой любимый сайт

Privoxy можно настроить как менее строгий для сайтов, которые загружаются слишком медленно. Это поведение настраивается в файле конфигурации + user.action +.

Загрузите файл действий пользователя в ваш любимый текстовый редактор.

sudo vi /etc/privoxy/user.action

Перейти в конец файла и добавить следующий контент с дополнительными адресами сайта, которые вы хотите.

/etc/privoxy/user.action

{ fragile -deanimate-gifs }
.googlevideo.com
.youtube.com
.imgur.com

После этих изменений вам не нужно перезапускать Privoxy. Однако вы должны очистить кеш вашего браузера и обновить его несколько раз.

Если проблемы по-прежнему возникают, добавьте доменные имена в белом списке в файл белого списка HAVP. HAVP проверит этот файл и не выполнит проверку на вирусы, если имя хоста совпадает.

vi /etc/havp/whitelist

Добавьте свои сайты в конец файла.

/ И т.д. / havp / белый список

# Whitelist Windowsupdate, so RANGE is allowed too
*.microsoft.com/*
*.windowsupdate.com/*

Браузер перестает отвечать на запросы при интенсивном использовании Интернета

Если вы открываете несколько веб-страниц одновременно, памяти вашего сервера может не хватить, чтобы HAVP просканировал все ваши запросы.

Вы можете попытаться увеличить ОЗУ вашего Droplet и / или добавить память подкачки. Пожалуйста, обратитесь к Wow Настроить виртуальную память (файл подкачки) на VPS статья.

Имейте в виду, что добавление VPN в ваш браузер в большинстве случаев увеличит задержку.

Заключение

После ознакомления с этим учебным пособием вы перейдете на новый уровень использования VPN с безопасностью и безопасностью просмотра.

Related