Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр «Дурак подкидной и переводной» — классика карточных игр! Яркий геймплей, простые правила. Развивайте стратегию, бросайте вызов соперникам и станьте королем карт! Играйте прямо сейчас!

Дурак подкидной и переводной

Карточные, Настольные, Логическая

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
3697
reboost
reboost
8 месяцев назад

Как создать свой личный VPN сервер VLESS+Reality⁠⁠1

UPD:

Пикабу, как обычно, своими кривыми ручками обрезает ссылки, поэтому команда по установке 3X-UI отображается не полностью.

Корректная команда всегда доступна на странице проекта на github под надписью Quick Start

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Так же обновились названия клиентов на ПК, приписка with core теперь отсутствует. Качайте Desktop версию в большинстве случаев (либо SelfContained если на вашем ПК по какой-то причине отсутствует .NET, либо без приписок, если хотите portable версию).

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

--------------------------

Почти полгода назад я написал статью о том, как создать сервер Outline.

Однако, время идет и на смену приходят более защищенные протоколы - на этот раз ставим VLESS+Reality. На данный момент - это, пожалуй, самое лучшее и самое стабильное, что можно использовать для защищенных соединений.

Сразу ссылки на :

ПК клиент - https://github.com/2dust/v2rayN

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Справа на странице есть ссылка на свежий релиз. Вам нужен архив windows-64-With-Core.zip

Приложение для Android - https://play.google.com/store/apps/details?id=com.v2raytun.android&hl=ru

Приложение для Mac и iOS - https://apps.apple.com/ru/app/v2raytun/id6476628951

Всё, с предисловием закончили.

Глава 1 - Покупка сервера

В моем случае я продолжаю использовать HSHP (ссылка реферальная, потому что я еврей - мне можно), вы же можете найти любой другой удобный для вас вариант: Aeza, Timeweb, Fornex или даже упаси господь VDSina (я аж кофем поперхнулся вспомнив о нём). Покупайте любой, с момента подключения к серверу инструкция одинакова для всех.

Единственная проблема HSHP - с некоторой вероятностью долгая активация сервера, в моем случае после данной покупки я прождал 6 часов, пока мой сервер активировали. Если вам сервер нужен вот прям срочно - то лучше покупайте у другого провайдера. В остальном к HSHP лично у меня претензий нет.

Крутой и мощный сервер нам не нужен, хватит минимума с 1 ядром, 1 Гб RAM и 10 Гб места на диске, поэтому берите самый дешевый в Германии и ставьте Ubuntu 22.

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Специально беру новый сервер, чтобы вместе с вами пройти этот квест с нуля.

Сервер куплен, активирован и запущен.

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Ваш сервер получает уникальный ip-адрес, в моем случае - 37.46.16.116

Глава 2 - Подключение к серверу

Для подключения к серверу вы можете использовать PuTTY, KiTTY, Moba, Termius, что хотите, я же воспользуюсь обычным встроенным в Windows вариантом: терминал Windows Powershell

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Открываем (найти можно в пуске)

Подключаемся по ip-адресу (естественно по адресу вашего сервера) командой:

ssh root@37.46.16.116

При первом подключении нужно подтвердить, что вы доверяете данному серверу командой yes:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Если на этом этапе у вас выскочила ошибка "WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!", то, значит, вы либо переустановили сервер, либо он просто отказывается с вами дружить, потому что заподозрил измену. Идите в папку C:\Users\%USERNAME%\.ssh и удаляйте присутствующий там файл. Потом повторяйте подключение.

Вводите пароль от root-пользователя:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

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

В случае с HSHP пароль указан в настройках вашего виртуального сервера:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

У других провайдеров он тоже указан где-то в настройках сервера, либо приходит на почту при покупке сервера, либо устанавливается в панели управления сервером

Если вдруг что-то идет не так на этапе ввода пароля, то его можно поменять зайдя в Панель управления:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

И поменять в разделе Настройка VNC

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Панель управления виртуальных машин примерно одинаковая у многих провайдеров

Успешный вход на сервер выглядит так:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Первым делом, не только в этом случае, а вообще всегда при работе с серверами - обновляем всё, что обновляется. Для этого вводим команду:

apt update && apt upgrade -y

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

команда update обновляет базы пакетов, upgrade обновляет установленное до свежих версий, команда -y автоматически соглашается на всё за вас.

В процессе обновления может встать вопрос о перезапуске служб:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Мы с вами понятия не имеем, что это за службы, ведь мы им не служим, поэтому соглашаемся на перезапуск всего вписав команду:

all

Видим, что команда не срабатывает, еще раз убеждаемся в своем величии относительно бездушной и глупой машины, так как можем мыслить шире и глобальнее, поэтому вводим другую команду:

1-9 (или 1-8, или 1-15, зависит от того, сколько служб перечислено в списке)

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Машина побеждена и обновлена, мы всё еще подключены к серверу, а значит пока что ничего не сломали и можем продолжать

Если у вас будут появляться другие какие-либо предупреждения, то просто соглашайтесь на всё. Это же сервер, а не звонящий через вацап финансовый защитник Сбербанка фиксирующий подозрительный перевод от вашего имени на имя Крымнашевой Шконки Олеговны, серверу можно верить.

После обновления вводим команду установки панели 3X-UI, в которой мы и будем настраивать и управлять нашим VPN'ом. Вводим команду:

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/inst...)

Да, кстати, те кто внезапно впервые пользуются терминалом, Ctrl-V тут не работает, как вы могли заметить, поэтому вставить скопированный текст можно нажатием правой кнопки мыши.

В будущем разработчики могут что-то поменять, поэтому актуальную команду можно посмотреть на их странице: https://github.com/MHSanaei/3x-ui

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

В процессе установки вас спросят о том, хотите ли вы определить какой-то конкретный порт для работы, и если вам совершенно пофиг как и мне или вы не понимаете в какой момент мы начали говорить о кораблях, то пишите команду:

n

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Финал установки выглядит так:

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Сохраните себе куда-нибудь следующую информацию выделенную зеленым цветом:

  • Username - это ваше имя пользователя

  • Password - пароль от вашего имени пользователя

  • Access URL - это непосредственно ссылка, по которой вам нужно перейти для входа в панель управления, зайти просто по ip:порт не получится, нужно будет вводить ссылку целиком.

    Всё это вам пригодится сейчас и в будущем при работе в панели управления VPN'ом.

Теперь мы можем закрыть и забыть про терминал, возвращаться к серверу отныне вам не придется, если, конечно, вы не потеряете учетные данные и ссылку, или не захотите внести какие-то изменения в работу сервера.

Для запроса учетных данных можно всегда воспользоваться командой: x-ui settings

Глава 3 - Создание VPN подключения

Заходим на страницу панели управления и вводим имя пользователя и пароль

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Далее заходим в "Подключения" - "Добавить новое подключение" и проверяем настройки по порядку:

  • Включить - вкл

  • Примечание - любое наименование

  • Протокол - в нашем случае vless

  • Порт IP - пусто

  • Порт - 443

  • Общий расход - 0

  • Дата окончания - пусто

  • Протокол передачи - TCP

  • Proxy Protocol, HTTP Маскировка, Sockopt, External Proxy - выкл

  • Безопасность - Reality

  • Show - выкл

  • Xver - 0

  • uTLS - любой на выбор

  • Dest (Target) - ya.ru:443 (или, например, google.com:443, а можно оставить и yahoo

  • SNI - ya.ru,www.ya.ru (или, например, google.com,www.google.com), как и тут

  • Max Time Diff (ms) - 0

  • Short IDs - не трогаем

  • SpiderX - /

  • Нажимаем кнопку Get New Cert для получения Приватного и Публичного ключей

  • Sniffing - вкл

  • HTTP, TLS, QUIC, FAKEDNS - вкл

  • Metadata Only и Route Only - выкл

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Вы могли заметить, что я пропустил блок "Клиент". Сделал я это намеренно, чтобы отдельно заострить внимание на процессе добавления пользователей.

Для добавления новых пользователей нужно нажать по многоточию Меню - Добавить пользователя

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Далее указываем:

  • Email - задайте уникальное имя, чтобы не запутаться потом какой для чего создан

  • ID - не трогаем

  • Flow - xtls-rprx-vision

  • Общий расход, Начало использования и Дата окончания - не трогаем, если вам не нужно как-то ограничить пользователя

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Жмем "Добавить пользователя"

Для раскрытия/скрытия списка пользователей достаточно нажать плюс/минус в колонке ID

Далее просто либо жмете значок QR-кода и сканируете его приложением, если вам надо настроить VPN на мобильном устройстве, либо жмете значок Информация, там указан URL, который необходимо вставить в приложение на ПК. О нем далее отдельно.

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Глава 4 - Приложение для ПК

Клиентов для ПК с возможностью создать подключение к серверу с протоколом VLESS много, это и Qv2ray, и Xray, и упомянутые выше клиенты для Mac V2RayU с V2RayTune, я же использую v2rayN, ссылка на его github: https://github.com/2dust/v2rayN

Качаем свежий релиз, разархивируем, запускаем

Копируем URL вашего пользователя (из того окна, которое открывается по кнопке Информация) с веб-страницы панели управления и нажимаем Servers - Import Share Links from clipboard

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Сервер автоматически забирает нужные настройки и добавляется в список

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Дёргаем внизу тумблер Enable Tun и готово, VPN работает

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

Иногда бывает, что VPN не срабатывает, тогда просто передёрните разок... тумблер.

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

Как создать свой личный VPN сервер VLESS+Reality Инструкция, Настройка, Гайд, VPN, Реальность, Сервер, Ubuntu, Длиннопост

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

Показать полностью 25
[моё] Инструкция Настройка Гайд VPN Реальность Сервер Ubuntu Длиннопост
1071
1818
HUNY
HUNY
4 года назад

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)⁠⁠2

Привет Пикабу!

По многочисленным просьбам трудящихся, после публикации моего предыдущего поста (Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle для нужд Умного дома) поменял приоритет тематики своих постов и сегодня создадим свой VPN-сервер.

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

Такс, с чего начать? )))


Выберем протокол для VPN.


Мне известны эти: OpenVPN, PPTP, IPsec L2TP и IKEv2.


OpenVPN — считается самым простым и популярным вариантом, у которого скорость, защита и надежность на высоком уровне, но требует установки клиентского приложения, что не всегда удобно.

По самостоятельной настройке OpenVPN продвинутым пользователям я рекомендую эту статью. В этом руководстве предполагается, что центр сертификации находится на отдельном сервере Ubuntu 20.04, и как его сделать там тоже сказано, а Oracle нам как раз даёт две VPS. Хотя технически возможно использовать сервер OpenVPN на той же машине - компьютере в качестве центра сертификации, это не рекомендуется, поскольку это открывает вашу VPN для некоторых уязвимостей безопасности. Согласно официальной документации OpenVPN , вы должны разместить свой CA на автономном компьютере, который предназначен для импорта и подписи запросов на сертификаты.

L2TP/IPSec — собственно, именно этот протокол мы будем использовать в этой статье, т.к. найденный на github сценарий автоматической установки и настройки мне показался самым простым для новичков и "чайников" + подойдёт для установки не только на Ubuntu но и на Debian и CentOS. Недостаток этого протокола, пожалуй в том, что  он считается медленным и стандартные порты может закрыть ваш интернет-провайдер или сетевой администратор.

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост
С VPN L2TP/IPSec, который мы установим, на устройстве нам нужно будет только ввести:
- IP адрес своего VPS сервера Oracle;
- 20-и значный ключ IPSec;
- Логин (имя пользователя) и пароль

PPTP — устаревший протокол, у которого конечно же достойная скорость подключения, но в плане защиты и конфиденциальности он на самом низком уровне и использовать его в проектах "Умного дома", я точно не рекомендую!


IKEv2 - считается протоколом с самой высокой степенью безопасности, стабильно подключается после разрыва соединения, быстрее, чем L2TP, но не очень простой в плане самостоятельной установки на сервер.


Я даже начал написание своего поста с него, адаптируя эту инструкцию под VPS сервер от Oracle:

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

но в итоге она мне показалось сложной для новичков и "чайников", удалил её  и решил оставить просто эту ссылку на оригинал, для продвинутых пользователей ;-)


На самом деле инструкций по ручной и автоматической установке VPN - сервера по любому протоколу в интернете существует +100500 и ещё столько же, поэтому напомню про свой disclaimer )))

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

Ну и наконец переходим к самому главному - установим VPN - сервер.

Особенности сервера, который мы будем устанавливать:
- Быстрее IPsec/XAuth ("Cisco IPsec") и поддерживается режим IKEv2;
- Доступен предварительно созданный Docker-образ VPN-сервера; 
- Полностью автоматизированная настройка IPsec VPN-сервера;

- Инкапсулирует весь трафик VPN в UDP - протокол ESP не нужен;

- Протестировано с Ubuntu, Debian, CentOS / RHEL и Amazon Linux 2


Вся наша установка сводится  к запуску сценария автоматической настройки с githab, мы лишь подготовим систему, пропишем 20-и значный ключ IPSec, логин и пароль для VPN + откроем порты для VPN в VPS от Oracle.

Другие варианты установки + дополнительная настройка IKEv2 (рекомендуется) смотрите в документации автора скрипта. Для параноиков - это "open source", исходный код скрипта смотрим там же :-)

Подключаемся через PuTTy по SSH к своему серверу (Как? В конце предыдущего поста мы это уже делали.)

1) Для получения списка новых пактов, выполните:

sudo apt-get update

2) Для выполнения обновления пакетов, выполните:

sudo apt-get upgrade

Не забываем нажать ""Y" - "Enter" ))

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

3) Скачиваем скрипт командой:

wget https://git.io/vpnsetup -O vpnsetup.sh

4) После завершения, открываем vpnsetup.sh для редактирования:

sudo nano -w vpnsetup.sh

В котором в одинарных кавычках указываем свои значения:
YOUR_IPSEC_PSK=' Защищенный PSK IPsec должен состоять мин из 20 случайных символов.'
YOUR_USERNAME=' Ваш логин для VPN'
YOUR_PASSWORD=' Ваш пароль для VPN'
Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

5) Сохраняем и закрываем файл, нажав CTRL + X, Y, а затем ENTER.

6) Запускаем скрипт и идём на пару минут пить кофе ))

sudo sh vpnsetup.sh


В С Ё !!! Готово !!! :-)

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

В случае с нашим бесплатном VPS сервере от Oracle конечно ещё не всё )))


Нужно ещё открыть порты UDP 500 и 4500 для VPN на VPS от Oracle.

Для этого открываем ссылку в письме, которая пришла после регистрации в Oracle, вводим логин и пароль и попадаем в свою учетку, где следуем по пути:Сети - Виртуальные облачные сети - vcn- (ВАШ) - Сведения о списках безопасности

Альтернативный способ попасть туда из главного окна: "Настроить сеть с помощью мастера", "Запуск мастера VNC"  нужно нажать "отмена", кликаем на свой "VNC-номер", далее в "ресурсах" нажимаем на "Списки безопасности" и кликаем на "Default Security List for vcn-номер"

где добавляем правила для входящего трафика:

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост
Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

Теперь В С Ё !!! Готово !!! :-)


Если не знаете, как настроит клиентов IPsec / L2TP VPN, то можете почитать например - ЗДЕСЬ.


Скорость этого VPN соединения (локальная 80 МБ/сек) с сервером в Амстердаме у меня получилась такая:

Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка) Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Длиннопост

Всем пока и "бобра" ;-)

UPD:  На всякий случай настройки (открыть порты для этой VPN) для файрволла IPTABLES (мне не потребовалось):

sudo iptables --policy INPUT ACCEPT

sudo iptables -F
sudo iptables -A INPUT -p tcp --dport 500 -m state --state NEW -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 4500 -m state --state NEW -j ACCEPT
sudo netfilter-persistent save
sudo ufw disable
или
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw allow 500,4500/udp
sudo ufw disable
sudo ufw enable
Показать полностью 9
[моё] Умный дом Ubuntu Linux VPS Oracle Виртуальная машина VPN Home Assistant Длиннопост
266
499
6ap6oc
6ap6oc
4 года назад

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)»⁠⁠2

В посте, на который идет данный ответ, автор не упомянул такую штуку как WireGuard. Хотя в комментариях он упоминался. Как по мне, это реально самый простой метод поднять VPN туннель с высокой и стабильной скоростью.
Из реального опыта пользования:
Уже год ввиду некоторой специфики держу на нем сервера игры Minecraft + MySql + DiscordApps + HTTP траффик, ну и парочка девайсов для общего пользования интернетом.
Общая картина сети выглядит примерно так (paint master ON):

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)» Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Ответ на пост, Длиннопост

Извиняюсь за "пэинтность" картинки, нарисовал  по быстрому в сплане.
Для общего понимания - через построенный VPN туннель на базе WireGuard у меня в месяц идет трафик порядка 4ТБ. Аптайм каналов равняется аптайму самих серверов. За год было только три сбоя с самим WG - два раза это обновления/патчи ПО, связанного с сетью, после чего трафик заворачивался в "дулю", и один раз хостер на основной VPS изменил настройки сети и у меня "отвалился" порт.
Пинги у игроков выходят крайне низкие, скорость доступа высокая, никаких заморочек для повторных соединений не требуется.
Из минусов WireGuard стоит отметить дополнительную нагрузку на ЦП, что на мобильных устройствах сказывается на повышенном потреблении заряда батареи.

Так что же это за зверь такой, WireGuard?

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

А теперь проще. Для запуска VPN-туннеля нам потребуется только 1 сервер, с которым мы будем соединятся и с которого мы будем "ходить" в сеть. На клиентских устройствах нет необходимости иметь "белый" Ip, пробрасывать порты и заниматься подобным безобразием, так как WG работает с помощью широковещательной рассылки - основной сервер "слушает" нужный порт и отвечает на приходящие запросы.
На примере ниже опишу как настроить канал клиент-сервер на примере Ubuntu 18.04 и Android, но для других ОС процесс практически не отличается, почитать можно на английском тут
В качестве заметки - рекомендую использовать для SSH Bitvise SSH Client, как по мне он очень удобный.


(Далее текст частично копипаста)


WireGuard поддерживает свой собственный репозиторий APT, из которого мы будем устанавливать пакет и обновлять его при появлении новой версии.

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

sudo apt update
sudo apt install software-properties-common

Добавьте репозиторий WireGuard:

sudo add-apt-repository ppa:wireguard/wireguard

При появлении запроса нажмите Enter, чтобы продолжить. add-apt-repository также автоматически обновит список пакетов.

Установите пакет WireGuard:

sudo apt install wireguard

WireGuard работает как модуль ядра, который скомпилирован как модуль DKMS. В случае успеха вы увидите следующий вывод:

wireguard:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/4.15.0-88-generic/updates/dkms/
depmod...
DKMS: install completed.

При обновлении ядра модуль WireGuard будет скомпилирован с новым ядром.


Настройка.

WireGuard поставляется с двумя инструментами командной строки: wg и wg-quick, которые позволяют вам настраивать и управлять интерфейсами вашего туннеля.

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

wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey

Файлы будут сгенерированы в каталоге /etc/wireguard. Вы можете просматривать файлы с помощью cat или less. Закрытый ключ никогда не должен никому передаваться.
Теперь, когда ключи сгенерированы, нам нужно настроить туннельное устройство, которое будет маршрутизировать трафик VPN.

Устройство можно настроить либо из командной строки с помощью ip и wg, либо путем создания файла конфигурации с помощью текстового редактора.

Создайте новый файл с именем wg0.conf и добавьте следующее содержимое:

sudo nano /etc/wireguard/wg0.conf
/etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = SERVER_PRIVATE_KEY
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE

Интерфейс может быть назван как угодно, однако рекомендуется использовать что-то вроде include wg0 или wgvpn0. Настройки в разделе интерфейса имеют следующее значение:

Адрес – разделенный запятыми список IP-адресов v4 или v6 для интерфейса wg0. Используйте IP-адреса из диапазона, зарезервированного для частных сетей (10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16).

ListenPort – порт, на который WireGuard будет принимать входящие соединения.

PrivateKey – закрытый ключ, сгенерированный командой wg genkey. (Чтобы увидеть содержимое файла запуска: sudo cat /etc/wireguard/privatekey)

SaveConfig – при значении true текущее состояние интерфейса сохраняется в файле конфигурации при завершении работы.

PostUp – команда или скрипт, который выполняется до запуска интерфейса. В этом примере мы используем iptables для включения маскировки. Это позволит трафику покинуть сервер, предоставив VPN-клиентам доступ в Интернет. Обязательно замените ens3 после -A POSTROUTING, чтобы соответствовать имени вашего общедоступного сетевого интерфейса. Вы можете легко найти интерфейс, выполнив следующую команду:

ip -o -4 route show to default | awk '{print $5}'

PostDown – команда или сценарий, который выполняется перед выключением интерфейса. Правила iptables будут удалены после отключения интерфейса.

Файлы wg0.conf и privatekey не должны быть доступны для чтения для обычных пользователей. Используйте chmod для установки разрешений 600:

sudo chmod 600 /etc/wireguard/{privatekey,wg0.conf}

Когда закончите, приведите wg0 интерфейс в действие, используя атрибуты, указанные в файле конфигурации:

sudo wg-quick up wg0

Команда выдаст вывод, подобный следующему:

[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE

Запустите wg show wg0 для проверки состояния интерфейса и конфигурации:

sudo wg show wg0

interface: wg0

public key: r3imyh3MCYggaZACmkx+CxlD6uAmICI8pe/PGq8+qCg=

private key: (hidden)

listening port: 51820

Чтобы вывести интерфейс WG во время загрузки системы, выполните следующую команду:

sudo systemctl enable wg-quick@wg0


Сеть сервера и настройка брандмауэра

Чтобы NAT работал, нам нужно включить IP-пересылку. Откройте файл /etc/sysctl.conf и добавьте или раскомментируйте следующую строку:

sudo nano /etc/sysctl.conf
/etc/sysctl.conf
net.ipv4.ip_forward=1

Сохраните файл и примените изменения:

sudo sysctl -p
net.ipv4.ip_forward = 1

Если вы используете UFW для управления брандмауэром, вам нужно открыть UDP-трафик через порт 51820:

sudo ufw allow 51820/udp

Вот и все. Пир Ubuntu, который будет действовать как сервер, был настроен.

Настройка клиентов Linux и других ОС.

Инструкции по установке для всех поддерживаемых платформ доступны по адресу https://wireguard.com/install/. В системах Linux вы можете установить пакет с помощью менеджера дистрибутива и в MacOS с помощью brew. После установки WireGuard выполните следующие действия, чтобы настроить клиентское устройство.

Процесс настройки клиента Linux и macOS практически такой же, как и для сервера. Начните с создания открытого и закрытого ключей:

wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey

Создайте файл wg0.conf и добавьте следующее содержимое:

sudo nano /etc/wireguard/wg0.conf
/etc/wireguard/wg0.conf
[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24
[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP_ADDRESS:51820
AllowedIPs = 0.0.0.0/0

Настройки в разделе интерфейса имеют то же значение, что и при настройке сервера:

Адрес – разделенный запятыми список IP-адресов v4 или v6 для интерфейса wg0.

PrivateKey – Чтобы увидеть содержимое файла на клиентском компьютере, выполните: sudo cat /etc/wireguard/privatekey

Одноранговый раздел содержит следующие поля:

PublicKey – открытый ключ партнера, к которому вы хотите подключиться. (Содержимое файла сервера /etc/wireguard/publickey).

Конечная точка – IP-адрес или имя хоста узла, к которому вы хотите подключиться, за которым следует двоеточие, а затем номер порта, который прослушивает удаленный узел.

AllowedIPs – разделенный запятыми список IP-адресов v4 или v6, с которых разрешен входящий трафик для узла и на который направляется исходящий трафик для этого узла. Мы используем 0.0.0.0/0, потому что мы маршрутизируем трафик и хотим, чтобы одноранговый сервер отправлял пакеты с любым исходным IP.

Если вам нужно настроить дополнительные клиенты, просто повторите те же шаги, используя другой частный IP-адрес.

Добавьте клиентский узел на сервер

Последний шаг – добавить открытый ключ и IP-адрес клиента на сервер (выполнить команду на сервере):

sudo wg set wg0 peer CLIENT_PUBLIC_KEY allowed-ips 10.0.0.2

Убедитесь, что вы изменили открытый ключ CLIENT_PUBLIC_KEY, сгенерированный на клиентском компьютере ( sudo cat /etc/wireguard/publickey), и измените IP-адрес клиента, если он другой. Пользователи Windows могут скопировать открытый ключ из приложения WireGuard.

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

Клиенты Linux

На клиентах Linux выполните следующую команду, чтобы открыть интерфейс:

sudo wg-quick up wg0

Теперь вы должны быть подключены к серверу Ubuntu, и трафик с вашего клиентского компьютера должен направляться через него. Вы можете проверить соединение с:

sudo wg
interface: wg0
public key: sZThYo/0oECwzUsIKTa6LYXLhk+Jb/nqK4kCCP2pyFg=
private key: (hidden)
listening port: 48052
fwmark: 0xca6c
peer: r3imyh3MCYggaZACmkx+CxlD6uAmICI8pe/PGq8+qCg=
endpoint: XXX.XXX.XXX.XXX:51820
allowed ips: 0.0.0.0/0
latest handshake: 1 minute, 22 seconds ago
transfer: 58.43 KiB received, 70.82 KiB sent

Теперь осталось только открыть браузер, зайти на сайт 2ip.ru (или аналогичный), и увидеть Ip своего сервера VPN.

Чтобы остановить туннелирование, отключите интерфейс wg0:

sudo wg-quick down wg0

Теперь про Android.
Здесь все проще некуда. Для начала идем в плеймаркет и устанавливаем приложение WireGuard:

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)» Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Ответ на пост, Длиннопост

Далее жмем синий плюс внизу

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)» Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Ответ на пост, Длиннопост

Теперь осталось заполнить поля, согласно скриншоту ниже. Первый раздел идет как клиентский. После его заполнения жмем "Добавить пира" и вводим данные сервера. Не забудьте добавить публичный ключ клиента на сам сервер:

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)» Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Ответ на пост, Длиннопост

Остался только пункт "Все приложения". Если его оставить как есть - то VPN будет работать для всех приложений на вашем смартфоне. В случае, если вы хотите чтобы только некоторые приложения ходили в сеть через VPN, нажмите на данный пункт и выберете раздел "Исключить" или "Только включить". В первом случае, из VPN-туннеля будут исключены выбранные вами приложения, во втором случае в туннеле будут работать только указанные.
После завершения настройки останется в главном меню только включить ползунок напротив вашего туннеля. На сервере можно будет проверить подключившегося клиента как в мануале выше:

sudo wg
При смене сети (мобильный интернет/wifi) траффик автоматически будет перенаправлятся на новые адреса устройств.
Достаточно длинный и скомканый пост вышел. Но все же, WireGuard позволяет реализовывать достаточно сложные сети с малейшими усилиями.
P.S. Minecraft тут чисто для примера. Адрес сервера не дам, ибо трафик с пикабу будет хуже ддоса)

Показать полностью 4
[моё] Умный дом Ubuntu Linux VPS Oracle Виртуальная машина VPN Home Assistant Ответ на пост Длиннопост
56
322
HUNY
HUNY
4 года назад

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома"⁠⁠

Привет Пикабу!

В предыдущем посте мы успешно зарегистрировали бесплатный VPS - сервер от Oracle для сервисов Умного дома. Установка ОС Ubuntu 20.04 там у меня не уместилась, поэтому продолжаю в этом посте ;-)

Для профессионалов - ссылка на документацию по этой теме.

А мы, входим в свою  панель управления VPS по ссылке которая вам пришла от Oracle после регистрации и переходим в первый блок, кликнув на "Создать экземпляр Compute"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Здесь нажимаем "Изменить"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

В выпадающем окне в правом нижнем углу нажимаем "Изменить образ"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

В открывшемся окне выбираем Canonical Ubuntu 20.04 Режим "Всегда бесплатно" применим

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Спускаемся ниже,  в настройках сети я ничего не меняю.

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

На следующем этапе нам нужно будет добавить ключ SSH, для дальнейшей авторизации через Putty. Для этого скачиваем с официального сайта весь пакет, в зависимости от разрядности вашей операционной системы на ПК или ноутбуке (Посмотреть можно "Мой компьютер" правой клавишей мыши "Свойства") и устанавливаем.

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

После установки через "Пуск" - "Программы" запускаем "PuTTy gen" (в папке PuTTy )

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

В открывшемся окне программы нажимаем "Generate" и водим мышкой или прокручиваем сколом, пока зелёная полоска наверху не завершит свой путь )))

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Через несколько мгновений сгенерируется ключ, копируем его из верхнего окна

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

И вставляем в панели управления VPS в "Добавить ключи SSH" и нажимаем внизу "Создать"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Затем возвращаемся в "PuTTY Key Generator" и нажимаем "Save private key" - сохраняем с понятным названием английскими символами в нужную нам папку

Важно!!! Не про..бите потеряйте его, ибо это фактически ключ для дальнейшего входа в только что созданную операционную систему, если потеряете, то придётся всё переустанавливать, способа восстановить или поменять в панели VPS я не нашёл.
Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Тем временем возвращаемся в панель управления VPS  и видим, что наша система готова.

Копируем  IP адрес своей операционной системе, это фактически IP адрес Вашей виртуальной машины.

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Открываем программу для доступа к системе по SSH - "PuTTy" (в той же папке, где мы открывали выше  "PuTTy gen"), вставляем скопированный IP адрес в соответствующее окно и нажимаем в правой панели SSH  - Auth

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Здесь в окне "Private key file for autorithashion" выбираем ранее сохранённый  приватный ключ в формате *.ppk и нажимаем "Open"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Открывается терминал и всплывает окно, в котором нажимаем "Да"

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

Переключаем раскладку на английскую клавиатуру и вводим логин "ubuntu" (пароля пока нет) нажимаем "Enter".

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

и наконец ОБЯЗАТЕЛЬНО задаём пароль для входа в систему и ЗАПОМИНАЕМ! )))

Для этого пишем команду sudo passwd ubuntu нажимаем "Enter".

Придумываем, запоминаем и водим пароль (при вводе никакие символы не отображаются) нажимаем "Enter".

Ещё раз  вводим пароль и  нажимаем "Enter".

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

В С Ё !!! ))) Вы вошли в свою только что созданную систему на VPS - Ubuntu 20.04 и создали пароль....

Впереди много интересного на этом чёрном экране, как в этом эпизоде из фильма: )))

Установка Ubuntu 20.04 на бесплатный VPS сервер от Oracle. Продолжение поста "Регистрируем Always Free VPS сервер для нужд Умного дома" Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Установка, Настройка, Длиннопост

В следующем посте (ну это теперь, как только я отдохну от написанного и переварю всё сам..., может на следующей недельке) в этой операционной системе мы  поставим своего MQTT брокера для контроля датчиков IoT-устройств на ESP и их дальнейшей связки с умным домом...


А Вы тем временем можете поставить на неё тестовую систему умного дома Home assistant (ТЕСТОВУЮ! Ибо Умный дом нужно ставить на локальном сервере!), пока не решились на установку своего сервера или покупку какой-нибудь raspberry, сможете поставить VPN-сервер (Virtual Private Network) и/или прокси-сервер и можете проводить свои другие эксперименты....


Как всё это сделать в формате, как этот пост,  я постараюсь написать как-нибудь в своих следующих публикациях, но по времени (когда) пока ничего обещать не буду...


Всем бобра ;-)

Показать полностью 18
[моё] Умный дом Ubuntu Linux VPS Oracle Виртуальная машина VPN Home Assistant Установка Настройка Длиннопост
99
189
YarikR
YarikR
4 года назад
Лига Сисадминов

Тру Vpn за 4 бакса в месяц)⁠⁠

Привет, дорогой Пикабу!


Здесь произойдёт краткий(насколько это возможно) раccказ о том как я строил настоящий впн за недорого.


Как выглядит ТЗ:

– возможность создавать несколько учётных записей пользователей

– высокая скорость доступа (в рамках бюджета)

– безопасность данных (как настроишь, так и полетит)

– бюджет реализации 4$ :-)


Что мне для этого понадобится?

Совсем не много:

1. Хостинг провайдер с VPS, в моём случае это OVHcloud

(уважаемые читатели могут выбрать любой хостинг!)

2. Необходим облачный MicrotikCHR (Кликабельно)

3. VPS-сервер c предварительно установленной Ubuntu 20.10

4. Множко времени для настройки и тестирования


Процесс заказа VPS я пропущу, много бесполезной информации и куча лишних скриншотов!

Один важный момент связан с выбором локации хостинга VPS, чем дальше от меня сервер, тем выше латенси/ping, важно для онлайн игр, но в моём случае особой роли не играет.

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

После покупки VPS-ки мне на почту упало письмо с доступами в машине.

Залетаем в ssh, меняем сгенерированный хостингом пароль, добавляем свой публичный ключ для root, меняем hostname, обновляем, устанавливаем unzip перезагружаем.


На этом базовая подготовка VPS закончена, дальше интересней.

1 - Необходимо создать временный раздел для хранения образа MicrotikCHR

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост
mount -t tmpfs tmpfs /tmp/

2 - через wget скачать образ MicrotikCHR raw по ссылке, что приведена выше

wget https://download.mikrotik.com/routeros/6.47.9/chr-6.47.9.img...
Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

3 - распаковать скачанный архив


unzip chr-6*
Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

4 - просмотреть разделы на диске, это необходимо, для того чтобы знать на какой из их,  записать образ RoS CHR


fdisk -l

· в моём случае это - /dev/sda: 20GiB (Основной раздел диска)

· если ошибиться с выбором раздела, прийдётся вернуться к установке ОС и повторной первичной настройке

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

5 - Записать образ с помощью dd на нужный раздел

dd if=chr-6.47.9.img of=/dev/sda bs=4M oflag=sync

· if= то что ми пишем
· of= то куда пишем
· bs= размер блока записи
· oflag= опция дополнительных параметров, sysnc - дополняет сектора значениями NUL

6 - Перезагрузится, обычный reboot не сработает, потому:

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

Дальше перехожу в веб-интерфейс хостинга и задаю пароль для пользователя admin через KVM (по умолчанию логин Mikrotik, admin без пароля)

/user set [find name=admin] password=SupeR_stronG_paSs-228

Параллельно добрые люди с ботами хотят взломать мой облачный роутер :-)

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

Дабы избежать неловких ситуаций, следует ограничить доступ к сервисам ssh, winbox , остальные отключить.


IP - Services

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

Теперь предстоит самое интересное, а именно настроить l2tp/IPSec


1. Ip - pool


– name : l2tp=pool

– addresses : 192.168.20.2-192.168.20.200

– next pool : none

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

2. PPP - Profiles / Создать профиль для l2tp туннеля


– name : l2tp-profile

– local address : l2tp-pool

– remote address : l2tp-pool

– DNS servers : 1.1.1.1 (можно использовавать любые)

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

3. PPP - Secrets / Создать профиль пользователя

– name : vpn-user001 (уникальность имён приветствуется)

– password : пароль умеренной сложности

– service : l2tp

– profiles : ранее созданный l2tp-profile

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

4. PPP - Interface - L2TP Server


– Enable

– default profile : ранее созданный l2tp-profile

– authentification : оставить только (mschap2)

– use ipsec : required

– ipsec secret : не самый простой Shared Secret

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

5. IP - IPSec - Proposals


– name : default

– auth algorithms : sha1

– encr. algorithms : aes-128 cbc / aes-192 cbc / aes- 256 cbc

– pfs group : modp 1024

· этот конфиг создается по умолчанию, но всё же стоит проверить ;-)
Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

6. IP - FireWall - NAT

· без nat, подключение произойдёт, но сети не будет

– nat rule : srcnat

– out. interface list : all

– переходим на вкладку Action

– action : masquerade

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

7. Простая настройка firewall


· буду приводить только консольные команды без скриншотов (ну ладно будет один финальный в конце ;-) )

· В терминале через winbox или ssh

/ip firewall filter

· добавить правила fasttrack connections

add action=fasttrack-connection chain=forward connection-state=\
established,related
add action=fasttrack-connection chain=forward connection-state=\
established,related protocol=tcp
add action=fasttrack-connection chain=forward connection-state=\
established,related protocol=udp
add action=accept chain=forward comment="FastTrack Connection" \
connection-state=established,related

· Правила для established, related + открыть порты для l2tp (500,1701,4500)

add action=accept chain=in connection-state=established,related
add action=accept chain=input comment="Port Access" dst-port=500,1701,4500 \
in-interface=ether1 protocol=udp

· разрешить ping (icmp)

add action=accept chain=in in-interface=etgher1 protocol=icmp

· остальное drop

add action=drop chain=forward connection-state=invalid
add action=drop chain=input connection-state=invalid
add action=drop chain=in
Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

8. получить лицензию на CHR

- Зарегистрироваться на оф.сайте Mikrotik

- Зарегистрировать CHR (после триального периода роутер не превращается в тыкву, если его не обновлять, продолжит работать на полной скорости даже после истечения лицензии)


system - license - renew license


- account : логин в учётную запись на Mikrotik.com

- passwrod : пароль от учётной записи на Mikrotik.com

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

А в личном кабинете видно временную лицензию

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

И на финал, тест скорости ;-)

Тру Vpn за 4 бакса в месяц) VPN, Mikrotik, Ubuntu, Linux, Гайд, Облачное хранилище, Длиннопост

Из минусов, не гигабит)


Крайне приветствую комментарии и предложения по теме!)

Показать полностью 17
[моё] VPN Mikrotik Ubuntu Linux Гайд Облачное хранилище Длиннопост
110
173
egouho
egouho
4 года назад

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)»⁠⁠2

Создаём свой VPN сервер IPsec / L2TP + Wireguard.

Будем ходить в интернет легко и по большому.


Во-первых спасибо амиго HUNY за интересный и полезный цикл постов.

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


Неожиданностью оказался звонок из Оракла, видимо из-за резкого наплыва пользователей они решили в ручном режиме что-то провер[и|я]ть. Мне позвонила англоговорящая тётенька, представилась что она из Оракла, я спросил чем бы я ей мог помочь, она сказала что хочет узнать как меня зовут и в какой компании я работаю. Я подтвердил что меня зовут Вася Пупкинсон, а вот насчет компании я сказал, что я написал в регистрационной форме "Home" поскольку собираюсь протестировать их сервисы исключительно в личных целях. Видимо я был достаточно вежлив и убедителен так что она сказала что немедля отправит мне имейл с подтверждением регистрации и доступом к телу (сервера).


Амиго HUNY написал очень толковую инструкцию, так что в скором времени у меня был свой работающий VPN сервер, но .... возникла маленькая трудность - мой телефон Xiaomi Redmi Note 8T напрочь отказался подключаться к этому серверу. Быстрое гугление показало что я не одинок в своих проблемах, пользователи xiaomi уже давно жалуются на неработающий vpn  в телефонах  https://c.mi.com/thread-2569606-1-0.html?mobile=no


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


Итак по инструкциям HUNY вы получили работающий VPN сервер.

Добрые люди приготовили для нас легкий инсталлятор Wireguard, он лежит на https://github.com/angristan/wireguard-install

Зайдите в свой сервер и терминале напишите  команды

curl -O https://raw.githubusercontent.com/angristan/wireguard-instal...

chmod +x wireguard-install.sh

sudo ./wireguard-install.sh


Скрипт задаст вам несколько вопросов и быстренько всё установит:

~$ sudo ./wireguard-install.sh

Welcome to the WireGuard installer!

The git repository is available at: https://github.com/angristan/wireguard-install

I need to ask you a few questions before starting the setup.

You can leave the default options and just press enter if you are ok with them.

IPv4 or IPv6 public address: СЮДА ВЫ ВПИСЫВАЕТЕ РЕАЛЬНЫЙ IP ВАШЕГО СЕРВЕРА

Public interface: ens3

WireGuard interface name: wg0

Server's WireGuard IPv4: 172.22.22.1 ЕСЛИ В ВАШЕЙ ЛОКАЛКЕ НЕТ АДРЕСОВ 172.22.x.x ТОГДА ПИШИТЕ  ЭТО

Server's WireGuard IPv6: fd42:42:42::1

Server's WireGuard port [1-65535]: 4600 ПИШИТЕ 4600, ПОТОМ ФАЙРВОЛ БУДЕМ НАСТРАИВАТЬ

First DNS resolver to use for the clients: 94.140.14.14

Second DNS resolver to use for the clients (optional): 94.140.15.15

Okay, that was all I needed. We are ready to setup your WireGuard server now.

You will be able to generate a client at the end of the installation.

Press any key to continue...


Через несколько минут скрипт все установит,  задаст еще пару вопросов

Tell me a name for the client.

The name must consist of alphanumeric character. It may also include an underscore or a dash and can't exceed 15 chars.

Client name: Xiaomi8T  ИМЯ ВАШЕГО ПЕРВОГО КЛИЕНТА ДЛЯ ВПН, ПРИДУМАЙТЕ ЧТО НИБУДЬ

Client's WireGuard IPv4: 172.22.22.2 АДРЕС ДЛЯ НЕГО, ОСТАВЬТЕ ПО УМОЛЧАНИЮ

Client's WireGuard IPv6: fd42:42:42::2

Here is your client config file as a QR Code:

и выведет на экран картинку QR кода.


Оставьте это окно терминала как есть, оно вам пригодится чтобы не вводить руками в телефон все данные для vpn подключения. Или прямо сейчас возьмите смартфон, установите на него клиент WireGuard https://play.google.com/store/apps/details?id=com.wireguard....

в клиенте нажмите на создание нового соединения и сосканируйте QR код и пока отложите смартфон, нам надо будет еще немного поработать напильником.

Если вы не сосканировали код тогда откройте еще одно соединение с сервером (запустите еще раз putty). Напишите команду

sudo nano /etc/iptables/rules.v4


найдите там строку

-A INPUT -p udp -m multiport --dports 500,4500 -j ACCEPT

и сделайте из нее

-A INPUT -p udp -m multiport --dports 500,4500,4600 -j ACCEPT

Сохраните файл Ctrl-X  Y и Enter


Напишите команду

sudo nano /etc/wireguard/wg0.conf


Найдите там длинную строку

PostUp = iptables -A FORWARD -i ens3 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o ens3 -j MASQUERADE

В этой строке все -A на поменять на -I (i большое) так что строка будет вот такой

PostUp = iptables -I FORWARD -i ens3 -o wg0 -j ACCEPT; iptables -I FORWARD -i wg0 -j ACCEPT; iptables -t nat -I POSTROUTING -o ens3 -j MASQUERADE; ip6tables -I FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -I POSTROUTING -o ens3 -j MASQUERADE

Сохраните файл Ctrl-X Y и Enter


И последнее действие, надо в глобальном Оракловском файрволе добавить проброс порта 4600 (вспоминайте инструкцию HUNY, он там прокидывал порты 500 и 4500) см. картинку ниже.

Перезагрузите сервер sudo reboot и теперь можно пробовать подключаться смартфоном.


Клиенты WireGuard для различных ОС можно скачать тут - https://www.wireguard.com/install/

Пока мы с вами создали подключение для одного клиента/устройства, чтобы создать еще подключения запустите в терминале еще раз скрипт

sudo ./wireguard-install.sh

и так далее.

Ответ на пост «Создаём свой VPN-сервер IPsec / L2TP за пару минут на бесплатном VPS сервере от Oracle с ОС Ubuntu 20.04 (автоматизированная настройка)» Умный дом, Ubuntu, Linux, VPS, Oracle, Виртуальная машина, VPN, Home Assistant, Ответ на пост, Длиннопост
Показать полностью 1
[моё] Умный дом Ubuntu Linux VPS Oracle Виртуальная машина VPN Home Assistant Ответ на пост Длиннопост
53
12
404ErrorUsrNtFnd
404ErrorUsrNtFnd
1 год назад
Лига Сисадминов

Требуется помощь в настройке клиента OpenVPN на MikroTik⁠⁠

Приветствую всех!

Очень прошу помощи с настройкой OVPN клиента в RouterOS. Имеется VDS с Ubuntu 24.04 и с предустановленным OpenVPN. Сразу скажу, для меня юзверя, всю сознательную жизнь тыкавшего только графические интерфейсы просто какая то неимоверная боль, что то делать через терминал, тем паче если на сервере стоит стороннее ПО которое надо как то настроить. И вот больно мне уже 3 дня, активный гуглёж, гайды и т.д... Но конкретно по микроту в части клиента вообще какой то 0 по инфе и инструкциям. Суть проблемы:

Создал нового клиента через команду

/root/openvpn-config.sh

При это ни логина ни пароля задать не предлагалось, только имя клиента и всё на этом.

В корне root высрался сертификат с заданным мною именем. Забираю этот сертификат (конфиг?) и иду его кормить микроту и тут непонятность номера раз:

Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост

Т.е. загружал один файлик, а при импорте микрот увидел 2, и с обоими ничего не получается но об это далее..

Затем создаю новый интерфейс, такой:

Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост

Параметры, которые я перебирал по всякому и проебал 1 день жизни, в клиенте выглядят следующим образом:

Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост
Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост

Вообще не уверен что в поле User надо вписывать тупо имя клиента, но оставить поле пустым не даёт. Так вот помните про два файлика? Теперь их можно выбрать в поле Certificate, но как уже говорил нихуя путного не выходит ни с того ни с другого.

Привило в Firewall выглядит вот так:

Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост
Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост

И наконец, при попытке коннекта, тот самый бесконечный фейл на выходе который я уже устал наблюдать:

Требуется помощь в настройке клиента OpenVPN на MikroTik Mikrotik, VPN, Openvpn, Ubuntu, Помощь, Вопрос, Спроси Пикабу, Мат, Длиннопост

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

Есть клиенты OpenVPN под Windows и iOS, они успешно принимают этот сертификат и всё довольно весело работает, коннекты коннектятся, впны впнятся, что было нельзя становится льзя. Но мне нужно именно на роутере. Именно на микроте.

Если хотите что то посоветовать сделать на сервере, очень прошу, пожалуйста, пишите команды))

Для понимания того, кто у вас просит помощи - человек который познакомился с VDSами, убунтами, SSH и т.д. ровно три дня назад))).

Буду очень благодарен за любую инфу, ссылки, подсказки.

Показать полностью 6
[моё] Mikrotik VPN Openvpn Ubuntu Помощь Вопрос Спроси Пикабу Мат Длиннопост
54
8
CrazyXoxoL
CrazyXoxoL
1 год назад
GNU/Linux

Ошибка при установке ShadowSocks (need help)⁠⁠

Добрый день.
Есть у меня халявный сервак на Oracle и я решил поставить на него VPN, а в частности ShadowSocks.
На сервере установлена Ununtu. Установка пакетов проходит успешно, но при проверке статуса вылетает ошибка $CONFFILE $DAEMON_ARGS (code=exited, status=255/EXCEPTION)

Ошибка при установке ShadowSocks (need help) Linux, Ubuntu, VPN

Пошарился в интернетах и ничего не смог найти (я нубас и в линухах и в поиске).
Возможно кто-то сталкивался с такой проблемой и знает как решить.

Заранее благадарю

Показать полностью 1
[моё] Linux Ubuntu VPN
27
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии