вторник, 3 января 2017 г.

Настройка VPN на VPS сервере за 20 минут.

Друзья, сегодня мы вплотную займемся вопросом личной безопасности. Я расскажу о том как арендовать VPS сервер и развернуть на нем OpenVPN. Это позволит нам посещать любые заблокированные сайты и оставаться при этом анонимными.
И так, для начала нам нужно выбрать и арендовать VPS сервер. И тут есть пара моментов:
  1. Нам вполне подойдет OpenVZ VPS, в первую из-за его стоимости, никакого KVM.
  2. При выборе обязательно уточняйте в описании или у техподдержки возможность включения TUN/TAP интерфейса. По-умолчанию он зачастую выключен, и VPN работать не будет.
OpenVZ — контейнер, как Docker. Нельзя сменить ядро, нельзя загрузить модули ядра. Владелец сервера может одной командой зайти внутрь контейнера от root. KVM/XEN — виртуализация, можно делать все, что угодно. Контейнеры OpenVZ дешевы, подходят для неприхотливых людей, которые всякие веб-сайты крутят и не лазят в ядро.
Выбрать дешевый VPS сервер можно на сайте lowendstock.com. Мой выбор пал на QuadHost. Согласно их тарифам я выбрал LDN-256 за 4.50 фунта в год:
При оформлении заказа указываем желаемое имя хоста, пароль Root, NS префиксы и операционную систему. Мой выбор пал на Debian 8.0:
На следующем этапе заполняем контактные данные и платим. Вот и все, половина дела уже сделана - теперь у нас есть VPS сервер.
Приступим непосредственно к настройке. Первым делом нам нужно включить Tun/Tap интерфейс. В личном кабинете переходим VPS Configuration и ставим галку на против Enable Tun/Tap. Подтверждаем кнопкой Submit:
Для того чтобы подключится по SSH к нашему серверу нужно посмотреть внутренний ip нашего сервера (сделать это так же можно в личном кабинете, мой 192.168.44.123) и сопоставить его с таблицей. Моему локальному ip соответствует публичный 185.164.138.20.
Теперь нам так же нужно понять по какому порту подключатся. Для этого опять обратимся к нашему внутреннему ip. Мой 192.168.44.123. Берем последние цифры и допишем к ним 22. Для меня получится: 12322. В итоге данные для входа выглядят так: root@185.164.138.20:12322.
Первое что нужно сделать попав на сервер - это обновить систему:
apt-get update
apt-get upgrade -y
reboot
После того как система перезагрузится, подключаемся снова и переходим непосредственно к установке OpenVPN. Для того чтобы не усложнять себе жизнь воспользуемся скриптом автоматической установки и настройки OpenVPN road warrior от Nyr. Выполняем команду и отвечаем на вопросы:
wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh

  1. IP address - оставляем как есть (должен быть локальный ip)
  2. Port - здесь у нас есть небольшие ограничения. По нашему тарифу доступно 20 портов. Чтобы узнать их номера опять же нужно обратится к локальному ip. Берем последние цифры и допишем к ним диапазон 00-20. В моем случае диапазон портов будет: 12300-12320. Выбираем любой из них, например 12319
  3. DNS - указываем цифрой какой DNS сервер хотим использовать для нашего VPN.
  4. Client name - указываем имя клиента для нашего OpenVPN сервера.
Скрипт начнет настройку нашего сервера. В процессе у нас так же спросят внешний ip адрес. Для меня это - 185.164.138.20.
Вот и все! Настройку сервера мы закончили. Если у вас это заняло больше 20 минут, то уверен что в следующий раз вы сможете сделать все гораздо быстрее.

Настройка клиента

Windows клиенты

Первым делом мы должны скачать с нашего сервера конфигурацию клиента. Для этого воспользуемся утилитой SCP. Есть версия и для Windows, она называется - WinSCP. Скачиваем, запускаем и заходим на сервер используя данные для SSH:
После удачного входа скачиваем из домашней директории файл с расширением *.ovpn:
Отлично, мы готовы подключатся. У нас есть все данные для входа.
Следующим шагом нам нужно скачать и установить клиент OpenVPN. После запуска OpenVPN GUI, программа оповестит нас о том что не удалось найти конфигурационный файл. Все нормально, так и должно быть. Чтобы добавить наш файл конфигурации *.ovpn нужно либо скопировать полученный ранее файл в директорию "C:\Users\_Имя_Пользователя_\OpenVPN\config", либо кликнуть правой клавишей на значке OpenVPN GUI в трее и выбрать пункт "Импорт конфигурации...". Где указать путь к нашему *.ovpn файлу.
Теперь уж точно все. Просто дважды кликните на значке OpenVPN GUI в трее и начнется соединение.

Linux клиенты

Для Linux клиентов все намного проще. Я буду объяснять на примере Ubuntu.
Перво наперво нам необходимо установить дополнения для Netwok Manager и Gnome. В терминале выполним следующую команду:
sudo apt-get install network-manager-openvpn network-manager-openvpn-gnome -y
Теперь мы можем импортировать наш файл конфигурации. Открываем настройки сети и добавляем новое VPN соединение:
А затем импортируем наш файл конфигурации:
Теперь в списке соединений появится наш VPN.

Добавление дополнительных клиентов

Для того чтобы создать дополнительных клиентов и файлы конфигурации для них нужно просто выполнить скрипт настройки OpenVPN на сервере еще один раз.
Подключайтесь к серверу по SSH и выполняйте команду:
bash openvpn-install.sh
На этом все. Удачи!

3 комментария:

  1. Очень долго тупил и пытался настроить vpn пока не наткнулся на эту статью.
    Спасибо тебе добрый человек!!!

    ОтветитьУдалить
  2. Спасибо, очень доходчиво и понятно! Однако 2ip.ru говорит, что я на 99% вероятно использую анонимайзер.

    ОтветитьУдалить
  3. Мы для офиса использовали VPS KVM c с бесплатным настроенным VPS https://primahosting.eu/openvz-vps-web-hosting/uk-vps-hosting/

    ОтветитьУдалить