NAS или небольшой домашний сервер — лучшая причина освоить SSH для большинства людей: это ваше хранилище, ваши бэкапы, ваша медиатека, может быть, горстка контейнеров — и вы хотите дотянуться до него с дивана, с работы, с телефона. SSH — это способ сделать это без подключённого к коробке монитора — с ноутбука или из SSH-клиента для iPhone или iPad, когда вы не за своим столом. Ловушка — в прыжке от «работает в моей сети» к «доступно откуда угодно», где неверный срез пути выставляет вашу домашнюю лабораторию в открытый интернет. Вот безопасный путь от начала до конца.
Шаг первый: доберитесь до него в своей сети
Прежде чем что-то хитрить, убедитесь, что SSH работает, пока вы дома в той же Wi-Fi-сети или LAN.
Включите SSH. Большинство NAS-коробок поставляются с выключенным. На Synology: Terminal & SNMP → Enable SSH service; на QNAP: Control Panel → Telnet/SSH; на TrueNAS: Services → SSH. Обычный домашний сервер на Linux обычно уже запускает sshd. Какой бы ни была коробка, переключатель есть — щёлкните его и запомните порт (22 по умолчанию, иногда переносят).
Найдите его адрес. Его показывает список клиентов вашего роутера, или админ-страница NAS отображает его LAN-IP (что-то вроде 192.168.1.50). Затем:
ssh admin@192.168.1.50
Имя пользователя — это тот аккаунт, под которым вы входите в NAS: admin на многих устройствах, ваш собственный пользователь на машине с Linux, иногда root. Если подключение проходит и высаживает вас в оболочку — трудная часть позади; всё, что ниже, — это лишь как добраться до той же оболочки снаружи дома.
Шаг второй: доступ снаружи — без открытия порта 22
Очевидный ход — пробросить порт 22 на роутере к NAS. Не делайте этого. Публично доступный SSH-порт сканеры находят за минуты — ваши логи заполнятся Connection reset by peer и тысячами попыток входа с того момента, как он окажется в сети. Четыре способа получше, которые ни разу не открывают ваш роутер, примерно в порядке того, насколько я бы их рекомендовал (плейбук «SSH за NAT» (на английском) разбирает каждый глубже):
Оверлейная сеть (простой и безопасный выбор по умолчанию). Инструменты вроде Tailscale или связки WireGuard помещают ваши устройства в частную сеть, видимую только им. Ваш ноутбук и ваш NAS получают стабильные частные адреса, и вы делаете ssh admin@100.x.y.z откуда угодно, будто вы дома, — коробка вообще никогда не выставлена в публичный интернет. Для большинства домашних лабораторий это и есть весь ответ.
Управляемый коннектор только на исходящих. Если вы предпочитаете не поднимать mesh-сеть или VPS самостоятельно, Connector от Termalin — это маленький агент, который вы ставите на NAS одной строкой. Он звонит наружу в Termalin — без входящего порта на вашем роутере — и вы добираетесь до оболочки коробки из приложения или браузера, аутентифицируясь краткосрочным сертификатом вместо ключа, живущего на NAS. Тот же принцип «без входящего порта», что и у оверлейной сети, но реле вам держать не нужно.
Обратный туннель до дешёвого VPS. Если вы уже арендуете небольшой сервер, NAS может позвонить наружу к нему и пробросить обратно свой SSH-порт — и тогда вы добираетесь до NAS, подключаясь к VPS. Ничего входящего на домашнем роутере при этом не открывается. Это паттерн обратного туннеля (на английском), самодельный родственник коннектора выше и правильный инструмент, когда оверлейная сеть невозможна.
Динамический DNS + проброс порта (старый способ — только если без него никак). Если вы настаиваете на том, чтобы выставить SSH, то хотя бы: уведите его с порта 22, разрешите только ключи (PasswordAuthentication no) и запустите fail2ban. Имя через динамический DNS справляется с вашим меняющимся домашним IP. Это работает, но теперь вы поддерживаете обращённую в интернет поверхность атаки для коробки, полной ваших личных данных, — оверлейная сеть существует именно затем, чтобы вам этого не пришлось.
Шаг третий: ключи, а не пароли
Какой бы маршрут вы ни выбрали, входите по ключу, а не по паролю. Сгенерируйте современный — версия на тридцать секунд в Ed25519 против RSA (на английском) — положите его публичную половину в authorized_keys пользователя NAS, и как только это заработает, выключите вход по паролю. Ключ, который можно отозвать для каждого устройства, лучше пароля, общего для всех, и именно он позволяет позиции «ничего не выставляем, только ключи» выше реально держаться.
Пусть ИИ-агент помогает управлять коробкой
Вот куда движутся домашние лаборатории в 2026-м: вместо того чтобы самому заходить по SSH и проверять, почему умер контейнер или заполнился диск, вы просите ассистента — Claude Code, Cursor, локальную модель — посмотреть. Это по-настоящему полезно. И это же ровно то место, где люди совершают ошибку, которую никогда не совершили бы с незнакомцем: вручают агенту оболочку на коробке с их бэкапами.
Инстинкт «притормозить» здесь верен. Агент с ключом от вашего NAS может всё, что можете вы, и его можно уговорить на что угодно отравленной строкой лога или вредоносным именем файла, которое он прочитает по пути, — радиус поражения (на английском) — это вся коробка, а не одна задача, о которой вы просили. Решение — не отказываться от идеи, а изменить то, что получает агент. Вместо ключа и сырой оболочки агент должен проходить через нечто, что:
- держит ключ за него — агент подключается, но никогда не видит и не хранит учётные данные, так что утёкший контекст агента — это не утёкший логин к NAS;
- ограничивает то, что он может запускать — политика для каждого хоста, которая говорит, что этот агент может запускать на NAS эти команды и ничего больше (читать логи и использование диска — да;
rm -rf— нет); - остаётся на виду — вы наблюдаете за сессией в реальном времени, и она пишется в журнал аудита, так что «агент освободил немного места» — это то, что вы действительно можете проверить, а не принять на веру.
Это тот же принцип, что у обратного туннеля и входа только по ключу выше — не выставляйте больше, чем нужно для задачи (на английском) — применённый к агенту вместо интернета.
Где здесь Termalin
Termalin — это кроссплатформенный SSH-клиент (Windows, macOS и Linux на десктопе, плюс нативное приложение для iPhone и iPad и клиент в браузере), созданный ровно под такую форму задачи. Он управляет туннелями (на английском), которые достают до домашней коробки без открытия роутера, держит пользователя, ключ и порт каждого хоста вместе, так что NAS — это один клик, а не запомненный IP, и показывает диск, память и нагрузку машины в реальном времени на панели статистики — так что «а коробка вообще жива и не забит ли диск?» получает ответ ещё до того, как вы наберёте команду.
А когда вы хотите, чтобы помог агент, он подключается через встроенный MCP-сервер Termalin: агент работает через ваш SSH-доступ, ни разу не держа ваш ключ, в границах политики команд для каждого хоста (на английском), которую вы задаёте, с отражением в живой сетке наблюдения и записью в журнал. Домашняя лаборатория получает умелого ассистента; ассистент никогда не получает ключей от неё. У тарифа Free нет ограничений на число хостов — заберите его и направьте на свой NAS.
Termalin — бесплатный кроссплатформенный SSH-клиент со встроенным MCP-сервером — безопасный доступ по SSH для вас и для ИИ-агентов, которым вы разрешаете помогать. Скачайте его или прочитайте модель безопасности.