Я вже писав (буквально в минулому пості), шо в мене вдома стоїть окремий старий макбук, на якому 24/7 крутяться агенти, а я заходжу туди по SSH і вебу звідки завгодно. Схема доволі зручна, бо робочий ноут можна закрити, забути вдома чи залити кавою (боже збав), а робота йде далі сама.
Але ось на днях, коли я був не вдома, ноут перестав виходити на зв'язок. Підключаюсь, таймаут, пробую ще раз, знову таймаут. При цьому Hermes, який на ньому живе, бадьоренько відписує в Telegram, шо все добре, тільки він чомусь перезавантажився. Ну, це вже щось.
Скоріш за все, macOS накотила собі апдейт, ребутнулась і зависла на екрані логіну. Hermes стартанув, бо він там як сервіс, а Tailscale ні. Вдома я буду тільки ввечері, а без ноута я, виявляється, вже трохи не вмію.
Добре, шо в tailnet у мене є ще пара машин, і серед них Umbrel. Далі я зробив те саме, шо і під час минулого outage: відкрив Claude Code і написав йому "ось Umbrel, зайди туди, знайди в локалці макбук і пофікси. make no mistakes". Він зайшов, знайшов, побачив, шо Tailscale лежить, підняв його, і все знову працює. Деталі тут мабуть неважливі, звісно це можна зробити самому руками, але нашо.
І чого ж має навчити нас ця історія?
Перше, треба мати декілька пристроїв у tailnet. Якщо один відвалиться, можна зайти через інший.
Друге, заходити на один хост через інший можна прямо з одного компа, не відкриваючи термінал на проміжній машині і звідти ще один. Хост, через який заходиш, називається bastion, і в SSH для нього є вбудований прапорець:
ssh -J user@bastion user@target. Я так роблю час від часу з іншими мережами. Робиш бастіон, додаєш собі в tailnet і потім через ньогоходиш.Третє, макбук як сервер має певні обмеження. Tailscale на macOS піднімається лише разом з юзером. Автологін теоретично є, але увімкнути не можна коли диск зашифрований. Плюс періодично вилазять дозволи на запуск, наприклад, коли оновлюєш шось через brew, то вилазить в UI вікно, а в ssh все просто підвисає. Це вирішується через Screen Sharing (який працює через той самий tailscale), але додає фрікшена.
Коротше, є питання, і вони трішки псують враження від мака як автономного сервера. Але там де всі бачать проблеми, ми бачимо можливості, тому все працює і далі.
І поки я тут розповідаю про Tailscale, пан Сіпласпластик написав про фішку Tailscale, про яку я не чув. Дуже раджу почитати, ось посилання: пост про tailcat.