Часть 00. Введение — архитектура, Tailscale, sslh, облачный фасад
Часть 00. Введение: Квартирный вопрос и домашние архивы
«Человек смертен, но это было бы ещё полбеды. Плохо то, что он иногда внезапно смертен, а главное — он внезапно оказывается в другом конце нашей необъятной страны без доступа к своим собственным документам и фотографиям.» — Воланд
Глава 1. Проблема серого IP и запертых дверей
Дома у любого уважающего себя администратора стоит сервер. Там хранятся семейные фотографии в Immich, сканы важных документов, архивы и заготовки. Всё это прекрасно работает в локальной сети 192.168.x.x.
Но стоит выехать из дома — на курорт в Сочи, в командировку в Сибирь или просто в соседнее кафе — как домашний сервер превращается в запертый сейф. Домашний провайдер прячет ваш роутер за серым NAT (CGNAT), а динамический IP меняется чаще, чем настроение у Коровьева.
Попытки пробросить порты на роутере натыкаются на глухую стену провайдерского фаервола. А открывать домашний сервер напрямую в дикий интернет — всё равно что оставить дверь квартиры на Садовой настежь и уехать на Кавказ.
Воланд, глядя на мигающий роутер за шкафом:
«Сидеть на мешке с ценными документами и не иметь возможности достать оттуда даже паспорт в нужный момент — это чисто человеческая забава. Они строят виртуальные стены вокруг своего дома, а потом удивляются, почему сами не могут войти.»
Глава 2. Архитектурный замысел: Облачный фасад
Решение этой проблемы — создание автономного моста. Мы арендуем небольшой VDS-сервер в облаке (srv02-Helsinki) с публичным белым IP-адресом (XX.XX.XX.XX).
Этот сервер будет выполнять роль публичного фасада:
- Он всегда доступен из любой точки нашей необъятной страны по доменам
psj-notes.ruиfoto.psj-notes.ru. - Между VDS и домашним сервером мы протянем защищённый P2P-туннель Tailscale.
- Веб-сервер Nginx на VDS будет принимать входящие HTTPS-запросы и незаметно проксировать их на домашний Immich через зашифрованный туннель.
- Для обхода строгих корпоративных фаерволов мы настроим sslh, чтобы через стандартный 80-й порт можно было и веб смотреть, и по SSH подключаться.
Воланд, набрасывая схему на салфетке:
«Замысел изящен. Публика будет видеть лишь красивый облачный фасад с белым SSL-сертификатом, а сами документы останутся в полной безопасности на домашнем диске за тысячу километров отсюда.»
Глава 3. Обзор ресурсов и ограничений
Наш облачный фасад разворачивается на скромных ресурсах:
- ОС: Ubuntu 24.04 LTS
- Процессор: 1 vCPU
- Память: 2 ГБ RAM
- Диск: 4 ГБ Swap для подстраховки
Чтобы эта конструкция работала быстро и не падала от нехватки памяти (OOM), каждый компонент — от PHP-FPM до Nginx — должен быть ювелирно зажат в строго отведённые лимиты.
Воланд, пересчитывая гигабайты:
«Два гигабайта оперативной памяти! В наше время некоторые браузеры требуют больше для открытия одной страницы с котиками. Но при правильном подходе этого хватит, чтобы держать целый замок с мостами и фаерволами.»
Финал части: Резюме Воланда
Воланд встаёт у окна и подводит итог введению:
«Цель поставлена: связать облако и дом, обеспечив доступ к семейным архивам и документам из любой точки страны без риска для безопасности. План утверждён, роли распределены. Пора переходить к созданию сервера!»
Комментарии
Комментарии пока не подключены.