VPN: Защити себя сам или анонимность в сети
Virtual Private Network (виртуальная частная сеть) защищает конфиденциальность пользователя в интернет-пространстве. Это похоже на частную лаунж зону, скрытую от посторонних глаз.
VPN обеспечивает безопасное сетевое соединение через частную сеть поверх сети Интернет. Совместно с HTTPS-соединением это помогает обезопасить персональные данные от кражи. Благодаря VPN можно скрыть местонахождение или обойти региональные и государственные запреты. Например, если у вас возникли сложности с использованием Telegram мессенджера, и вы не можете написать в нашу публичную группу t.me/nicua_group. В ней наша команда в полном составе оперативно отвечает на вопросы.
Как работает VPN?
Когда вы подключаетесь к общедоступной сети Wi-Fi в аэропортах или кафе без VPN, представьте, что ваши данные проходят через большой туннель вместе с данными других пользователей. Что это значит? Их могут перехватить злоумышленники. VPN предоставляет «секретный канал» внутри этого общего туннеля. Все данные в нем шифруются, чтобы никто не мог их распознать. После подключения к VPN, отследить ваши действия сложно. В этом случае только поставщик VPN и сайт, который вы посещаете, могут следить за вашим трафиком. Теперь, чтоб зайти на веб-сайт, устройство сначала отправит запрос доступа на VPN-сервер, который отправит запрос на веб-сайт. Затем данные будут отправлены на ваше устройство. Веб-сайт будет думать, что VPN-сервер является пользователем.
Преимущества VPN
- Уберегает персональные данные от кражи.
- Скрывает ваш IP адрес и месторасположение.
- Разрешает доступ к контенту, который недоступен в конкретной стране или регионе.
- Обеспечивает единую сетевую среду для корпорации, офисы которой находятся в разных частях мира.
- Обеспечивает прямой доступ к корпоративной сети сотруднику, который не находится в офисе. Всё выглядит так, будто вы протянули сетевой кабель из офиса в дом. Все офисные ресурсы (принтеры, компьютеры коллег, файл-серверы) становятся доступными.
- Экономит расходы на отдельные выделенные линии для каждого пользователя (сотрудника).
Недостатки VPN
- Скорость доступа интернета при использовании VPN провайдера может быть ниже, чем без него. Прежде всего, это касается бесплатных VPN.
- Технические неполадки в работе небольших и малоизвестных VPN провайдеров.
- Мнимая анонимность. Не забывайте, что VPN провайдер может отслеживать ваши действия в сети, хотя открыто об этом никто не говорит. Читайте внимательно лицензионные соглашения. Не забывайте, что личность пользователя можно установить по банковским картам или через кошельки платежных систем.
Получи макисмум от облака на NIC.UA
Советуем вам установить OpenVPN на собственном облаке NIC.UA.
- Для начала необходимо выбрать и оплатить собственное облако.
- После этого в личном кабинете в разделе «Облако» у вас появится название вашего облака и кнопка «Панель». Через нее вы сможете управлять своим облачным сервером. Вам необходимо создать подписку и настроить виртуальную сеть. Подробнее о том, как это сделать, читай у нас в базе знаний NIC.UA.
- На этапе создания виртуальной машины вы можете выбрать ОС: Ubuntu, Debian, CentOS или Fedora.
- Создаем правило в сети, чтоб удаленно подключиться к виртуальной машине по SSH. Подробнее об этом, читай в нашей статье.
Теперь вы можете воспользоваться нашим готовым сценарием Install_openvpn.
- Скачайте и распакуйте на сервере архив Install_openvpn.tar
- Запустите файл install_openvpn.sh
- Дождитесь окончания работы сценария
В результате, вы получите установленный и настроенный ОpenVPN у себя на облаке, а также файл конфигураций для подключения к нему в качестве клиента. Файл необходимо будет указать выбранной вами клиентской программе.
Как самостоятельно установить Open VPN на облаке NIC.UA
Ниже мы расскажем, как настроить OpenVPN сервер, чтоб самостоятельно создать зашифрованное соединение.
Требования. Сервер с ОС Ubuntu 16.04 (по желанию можно использовать Debian, CentOS или Fedora)
Шаг 1. Установка необходимого программного обеспечения для работы OpenVPN.
Команды необходимо выполнять от имени пользователя root. Если вы работаете от имени другого пользователя, используйте команду sudo. Для установки серверной части обновите репозиторий и установите необходимое ПО.
Для Ubuntu и Debian:
apt-get update apt-get install -y openvpn easy-rsa
Для CentOS и Fedora:
yum update yum install -y openvpn easy-rsa
Шаг 2. Настройка параметров утилиты easy-rsa.
Для удобства, сменим рабочую директорию на easy-rsa:
cd /usr/share/easy-rsa
Примечание: Чтобы узнать, где установился easy-rsa, воспользуйтесь командой whereis easy-rsa
Изменим параметр KEY_NAME в файле переменных vars. Для этого воспользуйтесь любым редактором, например nano (vi, mcedit):
mcedit vars
Находим строку с нужным параметром и приводим ее к виду:
export KEY_NAME="server"
Примечание: вместо ручного редактирования файла можно использовать команду:
sed -i 's/export KEY_NAME\=\".*\"/export KEY_NAME\=\"server\"/' vars
По желанию, можно изменить такие параметры, как страна, адрес (на работу OpenVPN данные параметры не влияют).
Шаг 3. Создание сертификата, генерация RSA-ключей.
Экспортируем переменные из файла vars
source vars
Очистим все сертификаты
./clean-all
Создадим корневой сертификат на основе файла vars, на все вопросы в процессе создания нажимаем Enter
./build-ca
Создадим сертификат OpenVPN и RSA-ключи для сервера. RSA-ключи используются для аутентификации пользователей.
./build-key-server server
На все запросы нажимаем Enter. Пока не увидим запрос:
Certificate is to be certified until May 1 17:51:16 2026 GMT (3650 days) Sign the certificate? [y/n]:
Вводим “y” и нажимаем Enter.
На следующий запрос: 1 out of 1 certificate requests certified, commit? [y/n]
Также вводим “y” и нажимаем Enter.
Создаем ключ Диффи-Хеллмана. Эти ключи используются для шифрования содержимого пакетов. Создание может занять несколько минут (в это время в терминал будут выводится символы “.” и “+”. Так и должно быть, значит все идет нормально.
./build-dh
Создаем сертификат и ключ клиента. Нажимаем Enter на все запросы в процессе создания (client1 можно заменить на другое имя, но тогда его надо учесть в последующих шагах настройки)
./build-key client1
Создаем подпись HMAC, для проверки конфигурации, чтобы дать серверу возможность проверять целостность пакетов.
openvpn --genkey --secret keys/ta.key
Шаг 4. Подготовка файлов конфигурации.
Чтобы узнать локальный адрес, можно воспользоваться командами ifconfig, ip addr или hostname -I
Для удобства можно выполнить команду, которая выведет именно тот IP адрес, который нам нужен:
ip addr |grep " scope global " |grep -v -E "tun|tap" |grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" |head -1
В примере мы используем адрес 192.168.0.2
Устанавливаем в файле servers.conf опцию local для запуска на IP адресе вашего сервера.
Ниже приведен рабочий пример конфигурации сервера, можно сохранить его под именем server.conf
mcedit server.conf
local 192.168.0.2 port 1194 # Протокол может быть UDP или TCP. proto udp # В случае использования протокола UDP: dev tun # В случае использования протокола TCP: dev tap # Указываем местонахождение ключей для сервера. ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/server.crt key /etc/openvpn/keys/server.key # This file should be kept secret dh /etc/openvpn/keys/dh2048.pem # Задаем IP и маску виртуальной сети. В большинстве случаев, вы можете не менять эти значения. server 10.8.0.0 255.255.255.0 # Указываем, где хранятся файлы с настройками IP-адресов клиентов. ;client-config-dir ccd # Включаем запоминание динамически выданных адресов для VPN-клиентов. ifconfig-pool-persist ipp.txt # Указываем сети, к которым нужно подключаться через туннель. По умолчанию, в список внесены все сети. route 192.168.0.0 255.255.255.0 # Включаем TLS tls-server tls-auth /etc/openvpn/keys/ta.key 0 tls-timeout 120 auth SHA256 cipher AES-128-CBC # Если нужно, чтобы компьютеры клиентов считали, что они в локальной сети и «видели» друг друга, удаляем “;” в следующей строке. ;client-to-client keepalive 10 120 # Включаем сжатие трафика. comp-lzo # Определяем максимум одновременно подключенных клиентов. max-clients 10 user nobody group nogroup # Запрещаем перечитывать ключи, а также закрывать и переоткрывать TUN\TAP устройство после получения команд SIGUSR1 или ping-restart. persist-key persist-tun # Определяем, где будет храниться журнал. status openvpn-status.log log /var/log/openvpn.log # Определяем, насколько подробным будет журнал. verb 3 # Определяем число одинаковых сообщений подряд. mute 20 # Чтобы отозвать какой-либо сертификат, удалите “;” в строке ниже и смените адрес на адрес сертификата. ;crl-verify /etc/openvpn/crl.pem # Разрешаем VPN-серверу принудительно переключать клиентов на VPN-соединение. push "redirect-gateway def1 bypass-dhcp" # Разрешаем VPN-серверу передавать адрес внутреннего DNS-сервера для переключения клиентов на VPN-соединения. push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4"
Сохраняем файл и закрываем редактор.
Копируем конфигурацию в рабочий каталог.
cp server.conf /etc/openvpn
Копируем сертификаты в рабочий каталог.
cp -r ./keys /etc/openvpn
Шаг 5. Запуск и управление сервером OpenVPN.
Запускаем сервер.
systemctl start openvpn@server
Проверяем статус сервера.
systemctl status openvpn@server
Если сервер запустился, добавляем его в автозагрузку.
systemctl enable openvpn@server
Для остановки сервера можно использовать команду
systemctl stop openvpn@server
Шаг 6. Создание конфигурационного файла для клиентских программ.
Создаем директорию для конфигурации пользователей.
mkdir /etc/openvpn/client-configs/
Узнаем внешний адрес вашего сервера, например на сайте https://dig.ua/search/myip.html
Или можно воспользоваться командой:
curl https://www.iplocation.net/ |grep "Your public IP Address is" |grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"
Создаем файл client.conf. Пример содержимого представлен ниже.
Добавляем в файл client.conf опцию remote и вписываем свой внешний IP адрес вместо 111.222.333.444
mcedit client.conf
client dev tun proto udp remote 111.222.333.444 1194 resolv-retry infinite user nobody group nogroup #ca /etc/openvpn/keys/ca.crt #cert /etc/openvpn/keys/client.crt #key /etc/openvpn/keys/client.key tls-client tls-auth /etc/openvpn/keys/ta.key 1 auth SHA256 cipher AES-128-CBC remote-cert-tls server comp-lzo persist-key persist-tun key-direction 1 status openvpn-status.log #log /var/log/openvpn.log verb 3 mute 20
Если клиенты работают на Linux и используют файл /etc/openvpn/update-resolv-conf — раскомментируйте эти строки.
# script-security 2 # up /etc/openvpn/update-resolv-conf # down /etc/openvpn/update-resolv-conf
Можно создать сценарий создания конфигурации для клиента на основе ранее созданных конфигураций. Сертификаты и конфигурацию объединяем в один файл для удобства.
mcedit client.sh
#!/bin/bash # Первый аргумент: Идентификатор клиента KEY_DIR=/etc/openvpn/keys OUTPUT_DIR=/etc/openvpn/client-configs BASE_CONFIG=./client.conf cat ${BASE_CONFIG} \ <(echo -e '<ca>') \ ${KEY_DIR}/ca.crt \ <(echo -e '</ca>\n<cert>') \ ${KEY_DIR}/${1}.crt \ <(echo -e '</cert>\n<key>') \ ${KEY_DIR}/${1}.key \ <(echo -e '</key>\n<tls-auth>') \ ${KEY_DIR}/ta.key \ <(echo -e '</tls-auth>') \ > ${OUTPUT_DIR}/${1}.ovpn
Сохраняем файл и закрываем редактор.
Предоставляем права на выполнение.
chmod +x client.sh
Запускаем автоматическую сборку конфигурации.
./client.sh client1
Шаг 7. Настройка firewall для работы OpenVPN.
Включаем на сервере ip_forward
Для этого нужно в файле /etc/sysctl.conf раскомментировать строку
#net.ipv4.ip_forward=1
Или можно воспользоваться командой:
#sed -i 's/\#net\.ipv4\.ip\_forward\=1/net\.ipv4\.ip\_forward\=1/' /etc/sysctl.conf
Применяем настройки.
sysctl -p
Добавляем правило в firewall, если вы воспользовались предоставленной конфигурацией, то IP адрес менять не нужно
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
Сохраняем настройки firewall.
iptables-save /etc/network/iptables.save
Добавляем в файл /etc/rc.local перед exit 0
mcedit /etc/rc.local
iptables-restore </etc/network/iptables.save
В этой статье мы рассмотрели как выполняется установка и настройка OpenVPN, а также как настроить openvpn для работы с аутентификацией по ключу. Если вы хотите защитить свои данные от кражи и не зависеть от государственных блокировок, мы рекомендуем установить VPN.
Если у вас не получается настроить свое облако, наши администраторы с радостью помогут вам в этом. Просто закажите услугу настройки сервера.
Автор: Анастасия Скибина
Вы можете перейти в конец и оставить комментарий. Уведомления сейчас отключены.