Как разместить свой собственный VPN с помощью алгоритма и облачного хостинга

5 февраля 2021 |

Как разместить свой собственный VPN с помощью алгоритма и облачного хостинга

A digital illustration of a smartphone and laptop connected to a VPN.

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

VPN и доверие

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

Если вам не нравится доверять безликим онлайн-сервисам, одна из альтернатив — запустить собственный VPN-сервер. Раньше это была непростая задача, но благодаря проекту с открытым исходным кодом Algo от компании Trail of Bits, занимающейся безопасностью, создать собственный VPN теперь легко.

За 5 долларов в месяц вы можете запускать и контролировать свой собственный штатный VPN-сервер. Более того, вы можете использовать Algo для настройки и отключения VPN-серверов по мере необходимости, сэкономив при этом деньги.

Чтобы настроить Algo, вы должны использовать командную строку. Если это вас обескураживает, не беспокойтесь — мы проведем вас через каждый шаг.

Эти инструкции могут показаться сложными, но это только потому, что мы объясняем все, что можем. После того, как вы создали VPN с помощью Algo несколько раз, это не займет много времени. Кроме того, вам нужно только один раз настроить среду установки Algo. После этого вы можете создать новый VPN-сервер несколькими нажатиями клавиш.

Но можете ли вы поверить, что скрипты Algo не делают ничего плохого? Что ж, хорошая новость заключается в том, что код Algo опубликован на GitHub и доступен всем желающим. Кроме того, многие эксперты по безопасности заинтересованы в проекте Algo, который снижает вероятность совершения правонарушений.

Что может (и не может) делать Algo

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

Но будьте осторожны, пираты!Загружать трофеи через собственный VPN — не лучшая идея, так как действия можно легко отследить до вас.

Кроме того, если вы хотите смотреть Netflix через свою VPN, вам придется поискать в другом месте — Алго с этим не работает. Однако существует множество коммерческих сервисов, которые поддерживают Netflix.

Предварительные требования для Algo

Чтобы запустить и запустить сервер Algo VPN, вам потребуется оболочка Unix Bash. В системе Mac или Linux вы можете использовать программу Terminal, но в Windows вам необходимо активировать подсистему для Linux. Вот как установить и использовать оболочку Linux Bash в Windows 10.

Вам также потребуется учетная запись у поставщика услуг хостинга облачных серверов.Algo поддерживает все следующее:

  • DigitalOcean
  • Amazon Lightsail
  • Amazon EC2
  • Vultr
  • Microsoft Azure
  • Google Compute Engine
  • Scaleway
  • Hetzner Cloud
  • Он также устанавливается в экземпляры OpenStack и CloudStack.

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

Когда ваша учетная запись DigitalOcean будет готова к работе, войдите в систему, а затем на основной панели инструментов выберите «API» на левой панели под Заголовок «Учетная запись».

На следующей странице нажмите «Создать новый токен». Маркер доступа — это длинная строка букв и цифр, которая разрешает доступ к ресурсам учетной записи без имени пользователя и пароля. Вам нужно будет назвать новый токен. Как правило, рекомендуется называть его в честь используемого вами приложения, например, «algo» или «ian-algo» (если ваше имя — Ян).

The Tokens/Keys tab in the Applications and API menu on DigitalOcean. «Приложения и API» DigitalOcean ».

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

Настройка вашей среды

Вернувшись на рабочий стол, откройте новое окно терминала, введите cd (для «сменить каталог», это то, что папки называются в мире Unix) и нажмите Enter. Это гарантирует, что вы работаете из домашнего каталога терминала.

На момент написания этой статьи для Algo требуется Python 3.6 или более поздней версии. Введите в программу терминала следующее:

python3 —version

Если вы получите ответ типа Python 3.6.9, все в порядке, если нет, вам придется установить Python 3.

Чтобы установить Python 3 на Mac, вы можете использовать менеджер пакетов Homebrew. Когда Homebrew будет готов к работе, введите следующую команду в окне терминала:

brew install python3

Если вы используете Ubuntu Linux или WSL в Windows, по умолчанию у них должен быть Python 3. В противном случае методы установки зависят от вашей версии Linux. Для получения инструкций выполните поиск в Интернете по запросу «установить Python 3 на [вставьте сюда свою версию Linux]».

Затем вам необходимо установить Virtualenv из Python3, чтобы создать изолированную среду Python для Algo. Введите в Bash на Mac следующее:

python3 -m pip install —upgrade virtualenv

В Ubuntu Linux и WSL команда следующая:

sudo apt install -y python3-virtualenv

Обратите внимание, что мы адаптируем это руководство для Ubuntu и связанных дистрибутивов, но эти инструкции также будут работать для других версий Linux с некоторыми незначительными изменениями. Если вы, например, используете CentOS, замените инструкции с помощью apt на dnf.

Затем нам нужно загрузить Algo с помощью команды wget. На компьютерах Mac по умолчанию wget не установлен, поэтому, чтобы получить его через Homebrew, введите следующее:

brew install wget Утилита wget, захватывающая установочные файлы Algo.

Теперь давайте загрузим Algo’s файлы:

wget https://github.com/trailofbits/algo/archive/master.zip

После завершения работы wget в домашнем каталоге вашего терминала будет сжатый файл с именем «master.zip», давайте проверим это с помощью ls.

Если вы видите «master.zip» в списке файлы и папки, которые появляются, все готово. Если нет, попробуйте снова запустить wget.

Теперь нам нужно разархивировать файл, поэтому мы вводим следующее:

unzip master.zip

После этого снова нажмите ls. Теперь вы должны увидеть новую папку в вашем домашнем каталоге под названием «algo-master.

Мы почти готовы к действию, но сначала нам нужно настроить нашу изолированную среду и установить еще несколько зависимостей. На этот раз мы будем работать в папке «algo-master».

Введите следующее, чтобы переключиться в папку:

cd ~ / algo-master

Убедитесь, что вы там с этим command:

pwd

Это означает «рабочий каталог печати», и он должен показать вам что-то вроде / home / Bob / algo-master или / Users / Bob / algo-master. Теперь, когда мы в нужном месте, давайте все подготовим.

Либо скопируйте и вставьте, либо введите следующую команду в одной строке (не нажимайте Enter до конца):

python3 — m virtualenv —python = «$ (command -v python3)» .env && source .env / bin / activate && python3 -m pip install -U pip virtualenv && python3 -m pip install -r requirements.txt

Это вызывает целый ряд действий внутри каталога Algo для подготовки к запуску.

Затем вы должны указать своих пользователей для VPN. Если вы не назовете их всех сейчас, вам придется либо сохранить ключи безопасности (что менее безопасно), либо позже запустить новый сервер с нуля.

В любом случае введите следующее в терминале:

nano config.cfg

Откроется удобный текстовый редактор командной строки Nano. Конфигурационный файл Algo содержит много информации, но нас интересует только часть, в которой написано «пользователи.«Все, что вам нужно сделать, это удалить имена пользователей по умолчанию (телефон, ноутбук, настольный компьютер) и ввести имя для каждого устройства, которое вы хотите использовать в своей VPN.

Например, если я создаю VPN для себя , Билла и Мэри, конфигурационный файл может выглядеть следующим образом:

пользователи: — Ian_PC — Bill_Mac — Mary_PC — Ian_Android — Bill_iPhone — Mary_iPhone

После того, как вы назвали всех, нажмите Ctrl + O, чтобы сохранить файл , а затем Ctrl + X для выхода.

Мы почти готовы к действию, но сначала разработчикам Windows нужно сделать небольшой обходной путь. WSL обычно не устанавливает правильные права доступа для папки Algo, что нарушает работу Ansible (инструмент, на который полагается Algo для развертывания сервера).

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

cd

Затем введите следующее:

chmod 755 -R ~ / algo-master

Чтобы перейти вернитесь в папку Algo, введите:

cd ~ / algo-master Запуск алгоритма

И теперь момент истины.

Из В папке algo-master введите в окне терминала следующее:

./algo

Конфигурация Algo должна запуститься. Вы узнаете, что он работает, когда он спросит, какого облачного провайдера вы хотите использовать. В нашем случае мы выбираем номер (1) для DigitalOcean.

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

Если вы получили другую ошибку, проверьте страницу устранения неполадок в репозитории проекта Algo на GitHub. Вы также можете скопировать сообщение об ошибке и вставить его в Google, чтобы найти его. Вам следует найти сообщение на форуме, которое поможет, поскольку маловероятно, что вы первый, кто получит эту ошибку.

Затем вам будет предложено ввести токен доступа, который вы ранее скопировали из своей учетной записи DigitalOcean. Скопируйте и вставьте в терминал. Вы ничего не увидите, потому что Bash не отображает символы для ввода пароля и секретной фразы. Но пока вы нажимаете «Вставить», а затем нажимаете Enter, все должно быть в порядке.

Если это не удалось, возможно, вы просто испортили пасту, что все делают в Bash. Просто введите следующее, чтобы повторить попытку:

./algo

Когда Algo запущен, ответьте на вопросы, которые он задает. Все это довольно просто, например, как вы хотите назвать свой сервер (использование «algo» в имени — хорошая идея).

Затем он спросит, хотите ли вы включить «Подключение по запросу» для Устройства Mac и iOS. Если вы не используете ни одно из этих устройств, введите N, если нет. Он также спросит, хотите ли вы сохранить ключи PKI, чтобы добавить пользователей позже. Обычно вы также набираете здесь N.

Вот и все! Теперь Algo потребуется от 15 до 30 минут, чтобы ваш сервер заработал.

Использование Algo

The WireGuard logo.

Когда Algo завершит настройку, терминал вернется к команде: строка приглашения, что означает, что VPN готов к работе. Как и многие коммерческие сервисы, Algo использует протокол WireGuard VPN, который является самой популярной новинкой в ​​мире VPN. Это связано с тем, что он обеспечивает хорошую безопасность, большую скорость и упрощает работу.

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

Сначала мы установим общий настольный клиент Windows с сайта WireGuard. Затем мы должны скормить программе наш файл конфигурации для ПК. Файлы конфигурации хранятся глубоко в папке algo-master по адресу: ~ / algo-master / configs / [IP-адрес VPN-сервера] / wireguard /.

Существует два типа файлов для настройки клиентских устройств VPN: .CONF и .PNG. Последние представляют собой QR-коды для таких устройств, как телефоны, которые могут сканировать QR-коды. Файлы .CONF (конфигурация) представляют собой текстовые файлы для настольных клиентов WireGuard.

На Mac и Ubuntu несложно найти папку algo-master за пределами командной строки. На компьютерах Mac algo-master находится в домашней папке, просто используйте Finder & gt, Go & gt, Home, чтобы попасть туда. В Ubuntu вы можете открыть Nautilus, и он будет в домашней папке.

Однако в Windows WSL отделен от остальной части ОС. По этой причине проще скопировать файлы с помощью командной строки.

Используя наш предыдущий пример, допустим, мы хотим, чтобы файл конфигурации «Mary-PC.conf» использовался на ПК с Windows 10. Команда будет выглядеть примерно так:

cp ~ / algo-master / configs / [IP-адрес VPN-сервера] /wireguard/Mary-PC.conf / mnt / c / Users / [имя вашей учетной записи Windows] / Desktop /

Обратите внимание на пробел между Mary-PC.conf и / mnt /, благодаря которому Bash узнает, где находится копируемый файл и куда он направляется. Регистр также имеет значение, поэтому убедитесь, что вы набираете заглавные буквы там, где они указаны.

В Windows естественно захотеть использовать заглавную букву C на диске «C:», но в Bash это не так. Кроме того, не забудьте заменить биты в скобках фактической информацией о вашем компьютере.

Например, если ваша пользовательская папка находится на диске «D:», а не «C:», тогда замените / mnt / c / на / mnt / d /.

После копирования файла откройте клиент WireGuard для Windows. Нажмите «Импортировать туннели из файла», а затем выберите файл конфигурации на рабочем столе. После этого нажмите «Активировать».

Всего через несколько секунд вы будете подключены к своей собственной VPN!

Как разместить свой собственный VPN с помощью алгоритма и облачного хостинга


Напишите пару строк: