Друкарня від WE.UA
Публікація містить рекламні матеріали.

Піднімаємо Exit Node на Linux сервері за допомогою Tailscale VPN.

Зміст

Що таке Tailscale?

Android Apps by Tailscale Inc. on Google Play

Tailscale — сервіс для обʼєднання декількох девайсів в VPN на протоколі WireGuard. Tailscale дуже легко налаштовується якщо треба обʼєднати декілька ПК/ноутів на різних ОС, і доволі легко (порівнюючи з OpenVPN) якщо треба додати сервер.

Що таке Exit Node і навіщо він нам?

“Exit Node” — вихідний вузол. Якщо підключитися до девайсу в якого увімкнений режим “Exit Node” то увесь ваш інтернет трафік буде йти через нього.

Тож, беремо гарний хостінг з потрібною вам geo-локацією (для швидкості/отримання IP адреси конкретної країни) і у вас власний VPN зі статичною IP адресою за 4-6 євро на місяць.

В моєму випадку, треба було мати сервер зі статичним IP який був би внесений в декілька whitelist-ів, щоб декілька девайсів могли робити запити через його IP.

Команди для налаштування сервера на Linux в якості Exit Node.

1. Встановіть Tailscale на сервер

(запустіть у терміналі сервера або через SSH)

curl -fsSL https://tailscale.com/install.sh | sh

2. Додайте ключ авторизації, згенерований в панелі керування Tailscale

Tailscale-клієнти для інших девайсів зазвичай мають UI в якому ви можете авторизуватися через Google або GitHub, а ось для сервера потрібно заздалегідь створити ключ в кабінеті Tailscale. Також, якщо плануєте довго користуватися сервером, раджу в тому самому кабінеті відключити cплив терміну дії ключа автентифікації (Machines → оберіть свій сервер → Options → Disable key expiry

(запустіть у терміналі сервера або через SSH)

tailscale up --authkey=<YOUR_GENERATED_KEY>

3. Переконайтеся, що переадресація портів IPv4 та IPv6 увімкнена

(запустіть у терміналі сервера або через SSH)

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

4. Позначте сервер як Exit Node

(запустіть у терміналі сервера або через SSH)

tailscale up --advertise-exit-node

5. Увімкніть Exit Node

Зайдіть в Панель керування Tailscale → Machines → оберіть свій сервер → Options → Edit route settings... → поставте прапорець "Use as exit node"

6. (Необовʼязково) Оптимізуйте пропускну здатність UDP

(запустіть у терміналі сервера або через SSH)

NETDEV=$(ip route show 0/0 | cut -f5 -d' ')
sudo ethtool -K $NETDEV rx-udp-gro-forwarding on rx-gro-list off

Зміни, внесені за допомогою ethtool, не зберігаються постійно і будуть втрачені після вимкнення севера. У дистрибутивах Linux, які використовують networkd-dispatcher (факт використання можна перевірити за допомогою systemctl is-enabled networkd-dispatcher), скопіюйте та виконайте наступні команди, щоб створити скрипт, який налаштовуватиме ці параметри при кожному завантаженні.

printf '#!/bin/sh\n\nethtool -K %s rx-udp-gro-forwarding on rx-gro-list off \n' "$(ip route show 0/0 | cut -f5 -d" ")" | sudo tee /etc/networkd-dispatcher/routable.d/50-tailscale
sudo chmod 755 /etc/networkd-dispatcher/routable.d/50-tailscale

Перевірте створений скрипт, щоб переконатися, що він успішно працює на вашому сервері:

sudo /etc/networkd-dispatcher/routable.d/50-tailscale
test $? -eq 0 || echo 'An error occured!'

Все. Сервер готовий до підключень!


Далі можете вже гратися і, наприклад:

  • створити скрипт який буде підіймати та підготовлювати сервер автоматично через API (як от у Hetzner), щоб економити гроші та платити тільки за use-time;

  • замість “Exit Node” налаштувати маршрутизацію, щоб тільки частина трафіку йшла через вузол

  • спробувати Taildrop (наразі в альфа тестуванні), щоб обмінюватися файлами

  • …і ще багато чого. Короче, ви вже зрозуміли, продукт класний!

P.S. Критика цього допису вітається!

Статті про вітчизняний бізнес та цікавих людей:

  • Як побудована програма Meest China Academy

    Курс про товарний бізнес охоплює різні етапи роботи: від пошуку ідеї до перевірки товару, логістики та масштабування. Програма Meest China Academy містить 17 модулів, які послідовно розкривають ці теми без зведення всього навчання до однієї універсальної поради.

    Теми цього довгочиту:

    Meest
  • Які технології використані в Айфон 17

    Айфон 17 поєднує OLED-дисплей із частотою до 120 Гц, чип A19, дві камери Fusion 48 Мп і швидке заряджання через USB-C. У COMFY можна купити Айфон 17 з накопичувачем на 256 або 512 ГБ, вибравши конфігурацію відповідно до обсягу фото, відео та застосунків

    Теми цього довгочиту:

    Iphone 17
  • Як вибрати вживаний iPhone: коротке керівництво для розумної покупки

    Вторинний ринок смартфонів Apple активно зростає, і питання, як вибрати вживаний iPhone, стає актуальним для дедалі більшої кількості користувачів. Правильний підхід дозволяє отримати бу iPhone з актуальною iOS і доброю камерою за помітно нижчу ціну, ніж у нових пристроїв.

    Теми цього довгочиту:

    Iphone
  • Як подолати жіночу безплідність за допомогою донорських яйцеклітин

    Діагноз "безпліддя" рідко звучить як вирок одразу. Для багатьох жінок саме в цей момент вперше звучить словосполучення "донорські яйцеклітини" — і це часто не кінець шляху до материнства, а якраз новий, реальний шанс.

    Теми цього довгочиту:

    Донорство
  • Як заспокоїти зубний біль і чому самолікування може призвести до операції?

    Раптовий біль у зубі може призвести до порушення сну та ускладненого вживання їжі. Люди часто приймають таблетки, роблять полоскання або лікуються народними засобами. В таких випадках не варто відкладати візит до стоматолога, адже можуть з’явитись ускладнення.

    Теми цього довгочиту:

    Стоматологія
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Маріо Лобстер
Маріо Лобстер@mario_lobster

І що ви мені зробите?

3Довгочити
2.1KПерегляди
2Підписники
Підтримати
На Друкарні з 24 грудня 2023

Більше від автора

Це також може зацікавити:

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити: