Настройка VPN-сервера Tailscale
Это необязательно. Вам нужно рассматривать этот раздел, только если вы запускаете ноду дома и хотите подключаться к ней извне вашей домашней сети.
Если вы хотите подключаться к вашей домашней сети удаленно, например, во время отпуска или командировки, наиболее распространенным способом является использование сервера виртуальной частной сети (VPN). Это позволит вам подключаться к вашей ноде по SSH и отслеживать ваш дашборд Grafana из любой точки мира, не открывая ваш SSH-порт в интернет.
Многие операторы нод Rocket Pool используют Tailscale в качестве предпочтительного VPN-сервера. Tailscale — это VPN-туннель с открытым исходным кодом P2P и размещенный сервис обнаружения конечных точек. Он берет на себя аутентификацию, публикацию и обход NAT, необходимые для установления сквозного зашифрованного канала между вашей машиной и вашей нодой без отправки какого-либо конфиденциального трафика на централизованный сервер. Это очень мощный инструмент.
Мы кратко рассмотрим базовую настройку, но не стесняйтесь изучить их документацию для получения дополнительных деталей.
Настройка Tailscale
Сначала создайте бесплатную учетную запись Tailscale. Tailscale требует использования провайдера идентификации SSO, такого как Google, GitHub, Okta, Microsoft и т. д. Для получения подробной информации посетите их страницу SSO.
Рекомендуется включить 2FA (двухфакторную аутентификацию) для выбранного вами провайдера идентификации для дополнительной безопасности.
Затем следуйте их руководству по началу работы, чтобы установить Tailscale на ваш клиент — машину, с которой вы хотите подключаться к вашей сети. Например, это может быть ноутбук или ваш телефон. Обратите внимание, что это не ваша нода Rocket Pool!
После завершения вы должны увидеть свой компьютер как 'подключенный' на дашборде Tailscale.
Теперь установите Tailscale на вашу ноду Rocket Pool. Инструкции по этому поводу можно найти на их веб-сайте; например, вот инструкции по установке для Ubuntu.
Если у вас настроен UFW, вам также потребуется следовать инструкциям по настройке UFW).
Сначала добавьте ключ подписи пакетов и репозиторий Tailscale на вашей ноде Rocket Pool:
Теперь установите Tailscale на вашей ноде Rocket Pool:
Наконец, аутентифицируйтесь и подключите вашу машину к вашей сети Tailscale на вашей ноде Rocket Pool:
Вы подключены! Вы можете узнать свой IPv4-адрес Tailscale, выполнив:
Теперь вы должны увидеть вашу машину с нодой добавленной на дашборде Tailscale.
Вы также можете изменить имя машины с нодой через дашборд, например, на rocketnode.
Рекомендуется отключить истечение срока действия ключа для машины с нодой, чтобы избежать необходимости периодической повторной аутентификации.
Если вы хотите получить доступ к вашей ноде, используя запоминающееся имя хоста, такое как rocketnode, вы можете сделать это, включив MagicDNS в настройках Tailscale.
Теперь вы должны иметь возможность выполнить exit из SSH-сессии к вашей ноде на вашем клиенте и подключиться к вашей ноде снова через Tailscale, используя ssh your.user@rocketnode.
Если вы изменили SSH-порт машины с нодой в /etc/ssh/sshd_config при первоначальной настройке, используйте вместо этого ssh your.user@rocketnode -p <ваш порт>.
Например, если вы назначили SSH на порт 1234, вы должны выполнить:
Теперь вы также можете посетить http://rocketnode:3100 в вашем веб-браузере, чтобы получить доступ к вашему дашборду Grafana с вашего клиента.
Если у вас настроен UFW, вы теперь можете добавить правило для приема любых входящих SSH-соединений через Tailscale.
Следующие шаги изменят ваши правила брандмауэра. **Перед продолжением у вас должно быть открыто как минимум 2 SSH-сессии к вашей машине с нодой — одна для изменения конфигурации и тестирования после этого, и одна, которая останется залогиненной в качестве резервной на случай, если ваши изменения нарушат SSH, чтобы вы могли их отменить!
Выполните эти команды на машине с нодой.
Разрешите доступ ко всем входящим SSH-соединениям через Tailscale.
Вы также можете удалить доступ к SSH-порту, добавленному на шагах включения брандмауэра, чтобы полностью заблокировать вашу ноду. Обратите внимание, что вы не сможете войти из локальной сети, так как Tailscale станет единственным способом входа. Выполняйте следующую команду только если вы согласны с этим.
После того как вы настроили правила брандмауэра для ограничения всех соединений, не использующих Tailscale, перезагрузите UFW и SSH:
Теперь убедитесь, что все работает как ожидается.
Выполните exit из одной из ваших текущих SSH-сессий (но не забудьте оставить вторую открытой в качестве резервной).
Затем подключитесь к машине с нодой по SSH, используя IP-адрес Tailscale:
Если это работает, вы все сделали правильно и теперь можете безопасно входить в вашу домашнюю сеть, находясь за границей!
Если вы ранее настроили переадресацию портов SSH вашей ноды на вашем роутере, теперь вы можете удалить её.