ГлавнаяОперационные системыLinuxКак создать VPN в Linux с помощью Tailscale

Как создать VPN в Linux с помощью Tailscale

Tailscale – это легкая, но мощная децентрализованная служба виртуальной частной сети (VPN). Он позволяет подключать несколько устройств через разные соединения в единую логическую сеть. В результате вы можете использовать Tailscale для размещения любой локальной службы в Интернете без переадресации портов.

В этой статье показано, как настроить Tailscale и маршрутизировать трафик между двумя компьютерами с Ubuntu Linux. Кроме того, в нем также будет показано, как вы можете расширить свою сеть Tailscale для других пользователей с помощью встроенной «функции общего доступа».

Знаете ли вы : вам легко создайте свой собственный VPN с OpenVPN ?

Зачем использовать Tailscale?

Одним из главных преимуществ Хвостовая чешуя является то, что он не использует центральный сервер для маршрутизации интернет-пакетов. Вместо этого он использует программные приемы для обхода маршрутизаторов как с программным, так и с жестким NAT между двумя клиентами. Это означает, что у Tailscale всегда будет меньшая задержка между клиентами по сравнению с традиционным

Зачем использовать Tailscale?

rc="https://saintist.ru/wp-content/uploads/2024/05/install-tailscale-vpn-linux-01-remote-client-ping-sample.png" alt="Установите Tailscale Vpn Linux 01. Пример проверки связи с удаленным клиентом">

Tailscale также имеет открытый исходный код и бесплатен для личного использования. Это делает его идеальным первым проектом для начинающего пользователя Linux, который хочет объединить несколько компьютеров, но не обязательно знает, как перенаправлять порты или проходить через жесткие NAT.

Совет. Узнайте, как довести свой компьютер до автоматически подключаться к VPN при входе в систему .

Получение и установка Tailscale

  1. Первый шаг в установке Tailscale — установить Curl:
sudo apt install curl
  1. Получите ключ GPG для репозитория пакетов. Это можно сделать, выполнив следующую команду:
sudo curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg > /dev/null
  1. Загрузите файл репозитория Tailscale в папку «/etc/apt/»:
sudo curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list
Терминал, показывающий недавно полученный репозиторий Tailscale.
  1. Обновите базу данных репозитория пакетов вашего компьютера, а также обновите любое устаревшее программное обеспечение:
sudo apt update && sudo apt -y upgrade
  1. Установите Tailscale с помощью apt

    Получение и установка Tailscale

    > apt install tailscale

Создание первой сети Tailscale

  1. Установив Tailscale, вы можете включить демон Tailscale на своем компьютере. Это можно сделать, запустив systemctl:
sudo systemctl enable --now tailscaled.service
  1. Запустите клиент Tailscale CLI и свяжите свой первый компьютер с учетной записью:
sudo tailscale up
  1. Нажмите правой кнопкой мыши ссылку на своем терминале и нажмите «Открыть ссылку».
Терминал, освещающий процесс открытия ссылки.
  1. Откроется новая страница браузера, на которой вам будет предложено войти в учетную запись.
  2. После входа в систему на веб-странице появится вопрос, хотите ли вы подключить свою машину к сети Tailscale. Нажмите «Подключиться».
Снимок экрана, показывающий кнопку «Подключиться» для связывания устройств.
  1. Вернитесь к своему терминалу и включите systemd-resolvedдля своего компьютера:
sudo systemctl enable --now systemd-resolved.service
  1. Создайте символическую ссылку между systemd-resolved и «/etc/resolv.conf:»
sudo rm /etc/resolv.conf
sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
  1. Перезапустите подсистему DNS вашего компьютера, чтобы применить новые настройки DNS:
sudo systemctl rest

Создание первой сети Tailscale

systemctl restart NetworkManager sudo systemctl restart tailscaled.service

Совет. Узнайте, как можно создайте VPN по требованию, установив Hamachi использовать Linux.

Добавление второй машины в Tailscale

  1. Перейдите на второй компьютер и установите Tailscale, следуя приведенным выше инструкциям.
  2. Свяжите второй компьютер со своей учетной записью Tailscale, выполнив:
 sudo tailscale up
Снимок экрана, показывающий правильное добавление клиента в сеть Tailscale.
  1. Включите и свяжите systemd-resolvedв качестве преобразователя DNS вашего второго компьютера через sudo ln -s.
  2. Перезагрузите подсистему DNS вашего компьютера, чтобы применить новые настройки.
Терминал, показывающий процесс перезапуска компонентов DNS во второй системе.

Совместное использование машины с другими пользователями

По умолчанию Tailscale допускает в сети только одного пользователя на одну учетную запись. Хотя этого достаточно для базовой настройки VPN между двумя компьютерами, это может стать проблемой, если вы хотите предоставить доступ к компьютеру другим пользователям.

Один из самых простых способов решить эту проблему — предоставить общий доступ к вашей машине через интерфейс администратора Tailscale.

  1. Перейдите на веб-страницу Tailscale и нажмите ссылку «Консоль администратора» в правом верхнем углу страницы.
Скриншот, показывающий расположение ссылки для входа в «Консоль администратора».

<старый старт="2">

  • После входа в систему выберите компьютер, который хотите экспортировать, затем нажмите «Поделиться…» в правом углу строки.
  • Терминал, показывающий расположение кнопки «Поделиться» для совместного использования внешнего устройства.
    1. Во всплывающем окне нажмите «Создать и скопировать ссылку для приглашения».
    Снимок экрана, показывающий расположение ссылки для приглашения для текущего компьютера.

    Примечание. Срок действия ссылки для приглашения автоматически истечет, как только пользователь войдет через нее. Вы можете отключить это, переключив переключател

    Добавление второй машины в Tailscale

    ия».

    <ол старт="4">

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

    <старый старт="5">

  • После входа в систему страница подтвердит, хочет ли клиент принять приглашение для вашего компьютера. Нажмите «Принять приглашение».
  • Снимок экрана, показывающий подтверждение устройства для внешней сети Tailscale.
    1. Проверьте, может ли ваша машина взаимодействовать с клиентом, проверив его адрес:
    ping 100.117.185.109
    Терминал, показывающий простой пинг между двумя устройствами в Tailscale.

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

    Создание VPN с использованием выходных узлов

    Одним из нововведений Tailscale является то, что его клиент может передавать и получать данные от других хостов в сети. В отличие от других VPN-сервисов, это означает, что можно перенаправить исходящий трафик с одного компьютера Tailscale на другой.

    Для этого вам необходимо настроить один из ваших компьютеров в качестве «Выходного узла». Это компьютеры, которые будут принимать трафик от внутренних хостов, а затем передавать его как свой собственный.

    1. Чтобы создать выходной узел, откройте терминал на компьютере и выполните следующие команды:
    echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
    echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
    sudo sysctl -p /etc/sysctl.d/99-tailscale.conf
    1. Перезапустите демон Tailscale с помощью следующей команды:
    sudo tailscale up --advertise-exit-node
    1. Откройте веб-браузер и перейдите на страницу консоли администратора.
    2. Выберите компьютер с выходным узлом, затем нажмите кнопку «…» в правой части строки.
    Снимок экрана, показывающий расположение пунктирного меню в консоли администратора Tailscale.
    1. Выберите «Изменить настройки маршрута…»
    Скриншот, показывающий расположение настроек маршрутизации в консоли администратора.
    1. Переключите переключатель «Использовать как выходной узел».
    Скриншот, показывающий расположение переключателя выходного узла в окне настроек маршрута.

    Привязка клиента к выходному узлу

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

    1. Откройте терминал на клиентском компьютере.
    2. Запустите tailscale status, чтобы найти адрес вашего выходного узла.
    Терминал, показывающий адрес примера выходного узла.
    1. Перезагрузите Tailscale с флагом --use-exit-node, за которым следует адрес вашего выходного узла:
    sudo tailscale up --use-exit-node=100.86.19.20
    1. Проверьте свой новый внешний IP-адрес, запросив службу проверки IP-адреса:
    curl ifconfig.me/ip
    Терминал, показывающий изменение внешнего IP-адреса на клиентском компьютере.

    Полезно знать: узнайте, как можно принять участие в новой форме интернет-маршрутизации к установка Yggdrasil в Linux .

    Часто задаваемые вопросы

    Есть ли ограничение на количество компьютеров и пропускную способность, которые я могу использовать с Tailscale?

    Да. На данный момент бесплатный план Tailscale гарантирует подключение до 100 устройств к личной частной сети. Однако это не ограничивает пропускную способность между компьютерами в сети, даже если эти соединения используют сторонний ретранслятор.

    Можно ли изменить адрес электронной почты после создания учетной записи?

    Нет. Одним из недостатков использования внешнего единого входа является то, что Tailscale не может изменить ваш адрес электронной почты после того, как вы начнете его использовать. Один из способов обойти это — создать новую учетную запись, используя другой метод

    Создание VPN с использованием выходных узлов

    "sc_fs_faq sc_card ">

    Мой друг не может подключиться к моей машине даже после того, как я поделился ею с ним.

    Эта проблема, скорее всего, связана с активным брандмауэром между вами и компьютером вашего друга. Один из быстрых способов решения этой проблемы – найти используемый порт sudo ufw allow, за которым следует номер используемого порта.

    Изображение предоставлено: Арис Мунандар через Unsplash (фон) и Викисклад (логотип). Все изменения и скриншоты Рамсеса Реда.

    Привязка клиента к выходному узлу

    Часто задаваемые вопросы

    Есть ли ограничение на количество компьютеров и пропускную способность, которые я могу использовать с Tailscale?

    Можно ли изменить адрес электронной почты после создания учетной записи?

    Мой друг не может подключиться к моей машине даже после того, как я поделился ею с ним.

    ПОХОЖИЕ СТАТЬИ

    Популярные записи