Linux vps as vpn

Как поднять OpenVPN сервер на Ubuntu 22.04?

В эпоху массовых блокировок и ограничений в сети, сохранение своей онлайн приватности становится все более актуальным. И здесь вам на помощь приходит OpenVPN – одно из самых популярных и надежных решений для создания безопасного туннеля в интернет. Если вы хотите обойти географические ограничения, обеспечить защиту своих данных или просто настроить собственный сервер для удаленного доступа к локальным ресурсам, то данная статья именно для вас! Мы рассмотрим этапы создания и настройки своего собственного OpenVPN сервера, чтобы вы могли насладиться свободным и безопасным интернетом, не зависимо от места нахождения. Присоединяйтесь к нам и давайте начнем этот увлекательный путь в мир безграничной свободы в онлайне!

Где взять VPS(виртуальную машину) и как к ней подключится?

Я лично использовал justhost(тык!) и брал самую дешёвую виртуалку в Нидерландах.

Далее будет инструкция по подключению:

  1. Зарегистрироваться, оплатить VPS
  2. Пока Вы ждёте её включение, скачайте PuTTy(тык!, тык!)
  3. Когда VPS запустилась, Вам на почту по которой вы регистрировались приходит письмо, в котором есть пароль от пользователя root, и IPv4 адрес, запоминаем их
  4. Открываем PuTTy и в поле Host Name (or IP address) вводим ip(IPv4) адрес который мы запомнили из письма и нажимаем Open
  5. Соглашаемся(Accept) с предупреждением о безопасности(оно появляется 1 раз)
  6. Если вы увидели надпись login as: , то Вы подключились
  7. Вводим root и при запросе пароля вводим пароль из письма

Создание нового пользователя и вход под ним(по соображениям безопасности)

  1. useradd -m
  2. passwd
  3. usermod -aG sudo

  1. sudo chsh -s /bin/bash

Подключаемся заново и входим под ранее созданным пользователем (предыдущий пункт, всё с 3 шага)

Предварительная подготовка

Установка пакетов

  1. sudo apt install easy-rsa
  2. sudo apt install openvpn
  3. sudo apt install iptables-persistent

Настройка FireWall

Настройка директорий VPN

  1. sudo mkdir -p /etc/openvpn/keys
  2. sudo mkdir /etc/openvpn/easy-rsa
  3. cd /etc/openvpn/easy-rsa
  4. sudo cp -r /usr/share/easy-rsa/* .
  1. sudo mkdir /etc/openvpn/ccd

Настройка VPN

Конфигурируем конфиги

Настройка vars

export KEY_COUNTRY=«RU» export KEY_PROVINCE=«Moscow» export KEY_CITY=«Moscow» export KEY_ORG=«sten» export KEY_ORG=»fdjgbi@sten.com« export KEY_CN=«sten» export KEY_OU=«sten» export KEY_NAME=«vpn.StenLi.com» export KEY_ALTNAMES=«vpn2.StenLi.com»

KEY_ORG, KEY_ORG, KEY_CN, KEY_OU, KEY_NAME, KEY_ALTNAMES — можно указывать всё, что угодно

Читайте также:  Восстановление файлов линукс testdisk

  1. нажимаем по порядку: ctrl+x, y, enter

Настройка /etc/nat(FireWall)

#!/bin/sh # Включаем форвардинг пакетов echo 1 > /proc/sys/net/ipv4/ip_forward # Сбрасываем настройки брандмауэра iptables -F iptables -X iptables -t nat -F iptables -t nat -X # Разрешаем инициированные нами подключения извне iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT # Разрешаем подключения по SSH iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT # Разрешаем подключения к OpenVPN iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT # Разрешает входящий трафик из tun0 iptables -A INPUT -i tun0 -j ACCEPT # Разрешает транзитный трафик между eth0 и tun0: iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT iptables -A FORWARD -i tun0 -o eth0 -j ACCEP # Запрещаем входящие извне iptables -A INPUT -i eth0 -j DROP # Разрешаем инициированные нами транзитные подключения извне iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j A # Запрещаем транзитный трафик извне iptables -A FORWARD -i eth0 -o tun0 -j DROP # Включаем маскарадинг для локальной сети iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/24 -j MASQUERADE

  1. нажимаем по порядку: ctrl+x, y, enter
  2. sudo chmod 755 /etc/nat

Создание ключей сервера

  1. sudo ./easyrsa init-pki
  2. sudo ./easyrsa build-ca
  3. вводим пароль и запоминаем его(Enter New CA Key Passphrase)
  4. sudo ./easyrsa gen-req server nopass
  5. sudo ./easyrsa sign-req server server

После ввода команды подтверждаем правильность данных, введя yes,

и вводим пароль, который указывали при создании корневого сертификата.

  1. sudo ./easyrsa gen-dh
  2. sudo openvpn —genkey secret pki/ta.key
  3. sudo cp pki/ca.crt /etc/openvpn/keys/
  4. sudo cp pki/issued/server.crt /etc/openvpn/keys/
  5. sudo cp pki/private/server.key /etc/openvpn/keys/
  6. sudo cp pki/dh.pem /etc/openvpn/keys/
  7. sudo cp pki/ta.key /etc/openvpn/keys/

Настройка сервера

 local 999.999.999.999 port 1194 proto udp dev tun ca keys/ca.crt cert keys/server.crt key keys/server.key dh keys/dh.pem tls-auth keys/ta.key 0 server 10.0.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt client-to-client client-config-dir /etc/openvpn/ccd keepalive 10 120 max-clients 32 persist-key persist-tun status /var/log/openvpn/openvpn-status.log log-append /var/log/openvpn/openvpn.log verb 4 mute 20 daemon mode server tls-server comp-lzo tun-mtu 1500 mssfix 1620 cipher AES-256-GCM topology subnet push «redirect-gateway def1» push «dhcp-option DNS 8.8.8.8» up /etc/nat

  • client-to-client даёт возможность клиентам видеть и общаться друг с другом в локальной сети
  • client-config-dir /etc/openvpn/ccd мы указываем директорию в которой задаём статические ip адреса клиентам. Об этом позже

— Меняем local 999.999.999.999 на local

Запуск сервера

Запуск сервера

  1. sudo systemctl start openvpn@server
  2. sudo systemctl status openvpn@server
  3. Вы запустили сервер. УРА.

Генерация сертификатов

Генерация сертификатов

Со 2 по 4 выполняется 1 раз!

Читайте также:  Making an alias in linux

После этого запускаем 1, и 5+

#!/bin/bash if [ $# -ne 1 ]; then echo «Usage: $0 --client-name» exit 1 fi client_name=$1 password=«» rm -r /tmp/keys mkdir /tmp/keys cd /etc/openvpn/easy-rsa export EASYRSA_CERT_EXPIRE=1460 echo «$password» | ./easyrsa build-client-full $client_name nopass cp pki/issued/client_name.key pki/ca.crt pki/ta.key /tmp/keys/ chmod -R a+r /tmp/keys cat /tmp/keys/$client_name.ovpn client resolv-retry infinite nobind remote 999.999.999.999 1194 proto udp dev tun comp-lzo ca ca.crt cert $client_name.crt key $client_name.key tls-client tls-auth ta.key 1 float keepalive 10 120 persist-key persist-tun tun-mtu 1500 mssfix 1620 cipher AES-256-GCM verb 0 EOF echo «OpenVPN client configuration file created: /tmp/keys/$client_name.ovpn»
  1. Заменяем remote 999.999.999.999 1194 на remote 1194
  2. sudo bash ./gen_sert.sh
  3. cd /tmp/keys
  4. Например с помощью winscp достаем из этой директории сертификаты(получение файлов, скачать)

Задание статических адресов клиентам

 ifconfig-push 10.0.0. 255.255.255.0 

Источник

Как поднять свой VPN на сервере

VPN (Virtual Private Network) — в переводе с английского означает «виртуальная частная сеть». Технология ВПН служит для защиты трафика от отслеживания и постороннего вмешательства. Однако бесплатные VPN-сервисы не всегда бывают надежными и безопасными на 100%, поэтому все большее количество пользователей хотят поднять собственный ВПН на личном виртуальном сервере. В нашей статье мы подробно расскажем, как настроить VPN на сервере с помощью OpenVPN. Начнем!

Как поднять VPN на VPS.

Настраиваем VPN на VPS: пошаговая инструкция 2023

Чтобы поднять свой ВПН на сервере, необходимо выполнить следующие шаги:

  1. Аренда виртуального сервера.
  2. Подключение к серверу по SSH.
  3. Установка и настройка OpenVPN.
  4. Скачивание конфига через FTP-клиент.
  5. Подключение к VPN.

Ниже мы подробнее расскажем о каждом пункте.

№1. Аренда виртуального сервера

Виртуальный выделенный сервер (VPS/VDS) — это вид хостинга, при котором в аренду сдается часть обычного физического сервера, выделенная с помощью технологии виртуализации. Арендовать VPS гораздо дешевле, чем целый физический сервер, а по возможностям они практически идентичны — свой VPN можно настроить и там и там.

В компании «RuWeb» клиенты могут арендовать VPS для VPN в двух локациях: в России и Европе (Нидерланды). Стоимость услуги начинается от 199 ₽ в месяц.

Тарифы VPS.

Для нашей задачи достаточно будет базового тарифа. Выбираем его, проходим простую процедуру регистрации и оплачиваем услугу. Обратите внимание, в нашем примере при выборе шаблона мы использовали Ubuntu 20.04.

Шаблоны VPS.

После оплаты и активации вам придут доступы к серверу, которые понадобятся для дальнейшей работы: имя пользователя (логин), пароль и IP-адрес.

№2. Подключение к серверу по SSH

SSH — это протокол, позволяющий производить удаленное управление операционной системой. С помощью SSH-клиента (специальной программы) можно подключаться к VPS и производить необходимые настройки.

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

Читайте также:  Linux windows pdf reader

Открываем Putty, в поле «Host Name» вводим IP-адрес сервера, в поле «Port» оставляем «22». Нажимаем кнопку «Open». Откроется консоль, в которой мы будем работать с сервером.

Начало работы с Putty.

Вводим логин (в нашем случае «root») и нажимаем Enter. Вручную или правой кнопкой мыши вводим пароль от сервера и нажимаем Enter. Подключение прошло успешно. Обратите внимание, пароль не отображается в интерфейсе Putty — не пугайтесь, это нормально.

Подключение к серверу.

№3. Установка и настройка OpenVPN

Чтобы установить OpenVPN на сервер, вводим следующую команду и нажимаем Enter:

wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh

Запустится процесс установки. Далее выполним настройку и создадим конфигурационный файл:

  1. Which protocol should OpenVPN use? Выбираем протокол: вводим цифру «1» и нажимаем Enter.
  2. What port should OpenVPN listen to? Ничего не вводим и просто нажимаем Enter.
  3. Select a DNS server for the clients. Выбираем DNS-сервер: например, вводим цифру «2» (Google) и нажимаем Enter.
  4. Enter a name for the first client. Придумываем имя клиента на английском языке (оно может быть любым) и нажимаем Enter.

Далее нажимаем любую кнопку для начала установки и ждем завершения.

Настройка OpenVPN.

№4. Скачивание конфига через FTP-клиент

FTP — протокол передачи файлов по сети, а FTP-клиент — специальная программа для упрощения доступа к FTP-серверу. С помощью этой программы мы подключимся к VPS и скачаем созданный конфигурационный файл.

В нашем примере мы будем использовать бесплатный FTP-клиент FileZilla — скачать его можно с официального сайта.

Открываем FileZilla. В поле «Хост» вводим:

sftp://Айпи-адрес-сервера

Имя пользователя и пароль — берем из доступов. Нажимаем кнопку «Быстрое соединение». После подключения в интерфейсе справа отобразятся папки на сервере, а слева — на вашем компьютере. Находим конфигурационный файл на сервере и сохраняем его у себя на компьютере (с помощью мыши перетаскиваем в левую часть экрана в интерфейсе FileZilla).

FileZilla.

Чтобы открыть конфигурационный файл, нужно скачать программу OpenVPN с официального сайта.

№5. Подключение к VPN

После установки OpenVPN нажимаем на конфигурационный файл два раза и нажимаем «Да». Обратите внимание, файл сохранился в папке на нашем компьютере, которая была выбрана в программе FileZilla при скачивании.

OpenVPN может запуститься в свернутом виде. Чтобы подключится к ВПН, найдите иконку приложения в правом нижнем углу и нажмите на нее правой кнопкой мыши. Выберите конфигурационный файл и нажмите «Подключиться».

Заключение

Отлично, теперь вы знаете, как создать собственный VPN с помощью VDS-сервера. Остались вопросы? Обратитесь в службу технической поддержки RuWeb — наши специалисты обязательно помогут, если у вас возникнут трудности с настройкой на серверах нашей компании.

Источник

Оцените статью
Adblock
detector