[{"content":"Долгий apt upgrade, миграция, сборка — и ноутбук ушёл в сон. SSH рвётся, процесс получает SIGHUP и умирает. GNU Screen держит терминал на сервере: отключился, подключился снова, работа на месте.\nЭто не замена nohup и не «ещё один SSH». Это мультиплексор: именованные сессии, несколько окон внутри одной, общая сессия на двоих. На старых RHEL/Debian screen часто уже стоит, когда tmux ещё нет.\nМинимальный цикл На сервере:\nscreen -S deploy Дальше обычный шелл. Чтобы уйти, не убивая процессы: Ctrl-a, …","date":"2026-08-31","permalink":"/posts/gnu-screen/","summary":"Долгий apt upgrade, миграция, сборка — и ноутбук ушёл в сон. SSH рвётся, процесс получает SIGHUP и умирает. GNU Screen держит терминал на сервере: отключился, подключился снова, работа на месте.\nЭто …","tags":["screen","linux","ssh","terminal","devops"],"title":"GNU Screen: сессии, которые переживают обрыв SSH"},{"content":"Kubernetes-кластер на ноутбуке — задача нередкая: CI/CD, эксперименты с операторами, проверка манифестов без нагрузки на prod. minikube тянет виртуалку, k3s просит отдельный host, а kind поднимает управляющую плоскость в Docker-контейнерах. Развернули, поработали, удалили — без побочных эффектов.\nЗачем kind kind создает кластер из Docker-контейнеров: control-plane и worker-ноды — это образы kindest/node. Основной use-case — локальная разработка и CI. В GitHub Actions есть официальный action …","date":"2026-08-31","permalink":"/posts/kind-local-kubernetes-in-docker/","summary":"Kubernetes-кластер на ноутбуке — задача нередкая: CI/CD, эксперименты с операторами, проверка манифестов без нагрузки на prod. minikube тянет виртуалку, k3s просит отдельный host, а kind поднимает …","tags":["kubernetes","docker","devops","linux"],"title":"kind: локальный Kubernetes в Docker"},{"content":"TLS-ошибка «сертификат не доверен» почти никогда не значит, что сертификат «сломан». Обычно сломана точка доверия: клиент смотрит не в то хранилище, куда вы положили CA.\ncurl, openssl, Git, Python и браузер — разные клиенты. У части из них своя база корней. Один update-ca-certificates на Linux не закроет Chrome и Firefox.\nЧто именно добавлять В доверенные кладут корневой сертификат CA, которым подписан серверный сертификат, а не сам localhost.crt / app.example.internal.\nТипичный набор файлов: …","date":"2026-08-31","permalink":"/posts/trust-custom-ca/","summary":"TLS-ошибка «сертификат не доверен» почти никогда не значит, что сертификат «сломан». Обычно сломана точка доверия: клиент смотрит не в то хранилище, куда вы положили CA.\ncurl, openssl, Git, Python и …","tags":["tls","pki","certificates","devops","security"],"title":"Свой корневой сертификат: куда его класть, чтобы ему доверяли"},{"content":"Когда в ~/.ssh/config десятки стендов, bastion и jump-хостов, вспоминать алиасы уже не хочется. ssh-connection-manager — это TUI поверх обычного OpenSSH: список хостов, фильтр, подключение штатным ssh, добавление новой записи в конфиг.\nКоманда в терминале — ssh-connect. Репозиторий: gitlab.com/unsorted-projects/ssh-connection-manager.\nЗачем не ещё один SSH-клиент Клиент уже есть: системный ssh. Нужен не новый протокол, а навигация по конфигу.\nУтилита:\nчитает ~/.ssh/config или другой файл (-c); …","date":"2026-08-30","permalink":"/posts/ssh-connection-manager/","summary":"Когда в ~/.ssh/config десятки стендов, bastion и jump-хостов, вспоминать алиасы уже не хочется. ssh-connection-manager — это TUI поверх обычного OpenSSH: список хостов, фильтр, подключение штатным …","tags":["ssh","devops","python","tui","openssh"],"title":"ssh-connection-manager: TUI для хостов из ~/.ssh/config"}]