Hacker News Digest

Тег: #ssh

Постов: 18

You already have a Git server (maurycyz.com) 🔥 Горячее 💬 Длинная дискуссия

Любой сервер с SSH-доступом может стать Git-сервером. Достаточно клонировать репозиторий через git clone ssh://username@hostname/path/to/repo, а для отправки изменений добавить на сервере git config receive.denyCurrentBranch updateInstead. Этот подход идеален для синхронизации кода между устройствами или работы с файлами на сервере без задержек.

Для публикации кода через веб нужно указать веб-серверу путь к Git-репозиторию и выполнить git update-server-info. Чтобы это происходило автоматически, можно настроить хук post-update, который будет запускать эту команду после каждого обновления. Хуки также могут использоваться для запуска статических генераторов сайтов — автор блога успешно применяет этот метод для своего сайта, получая преимущества локальной работы и автоматического развёртывания.

Такой подход обеспечивает встроенное резервное копирование: при поломке сервера данные останутся на ноутбуке, и наоборот. Git-трекинг версий предотвращает случайные удаления и упрощает отладку ошибок.

by chmaynard • 26 октября 2025 г. в 10:53 • 589 points

ОригиналHN

#git#ssh#version-control#hooks#bare-repositories#ci-cd#open-source

Комментарии (388)

  • Обсуждение охватило широкий спектр тем: от фундаментальных концепций (bare-репозитории, push-в-в-ssh, хуки) до практических аспектов (самостоятельный хостинг, CI/CD, бэкапы).
  • Участники подчеркнули, что Git изначально задумывался как распределённая система без необходимости в централизованном хостинге, и что это встроено в его архитектуру.
  • Были упомянуты различные инструменты и практики, такие как git init --bare, git daemon, git-shell, хуки и т.д., как часть более широкого обсуждения о том, как Git может быть использован для хостинга репозиториев.
  • Обсуждались также более широкие темы, такие как философия open-source, централизация против децентрализации, и как GitHub/GitLab и подобные платформы влияют на разработку ПО и сообщество.

Could the XZ backdoor been detected with better Git/Deb packaging practices? (optimizedbyotto.com)

Недавняя обнаружение бэкдора в XZ Utils в 2024 году поставило под вопрос безопасность цепочек поставок ПО. Статья исследует, могли ли лучшие практики упаковки в Debian предотвратить эту угрозу, предлагая руководство по аудиту пакетов и рекомендации по улучшению. Бэкдор в версиях 5.6.0/5.6.1 кратко попал в основные дистрибутивы Linux, включая Debian и Fedora, но благодаря бдительности Андреса Фрейнда был быстро обнаружен и удален. Он заметил регрессию производительности SSH в полсекунды, что привело к обнаружению вредоносного кода.

Автор, разработчик Debian, задает ключевые вопросы: почему упаковщики дистрибутивов не заметили ничего подозрительного при импорте новой версии XZ, насколько легко аудировать текущую цепочку поставок ПО, и нет ли еще скрытых бэкдоров. Статья фокусируется на аудите импорта ПО в Debian и его распространении среди пользователей, подчеркивая необходимость проверки исходных кодов пакетов, а не только бинарных файлов. Автор представляет пошаговое руководство по загрузке и анализу исходных пакетов Debian и upstream, предлагая методы для выявления потенциальных угроз.

by ottoke • 19 октября 2025 г. в 17:38 • 91 points

ОригиналHN

#xz-utils#debian#fedora#linux#ssh#git

Комментарии (73)

  • Сообщество обсуждает, что виноват не только сам факт внедрения кода, но и то, что сборочные системы дистрибутивов не герметичны и не воспроизводимы, что позволило атаке ускользнуть.
  • Участники подчеркивают, что важно не только открытый исходный код, но и возможность (и практика) независимо собрать любой пакет из исходников; это единственный путь к доверию.
  • Некоторые замечают, что даже в открытом исходном коде могут скрываться уязвимости, если нет культуры безопасной разработки и аудита кода.
  • Участники подчеркивают, что важно не только открытый исходный код, но и возможность (и практика) независимо собрать любой пакет из исходников.

Zed is now available on Windows (zed.dev) 🔥 Горячее 💬 Длинная дискуссия

Разработчики Zed анонсировали полноценную версию редактора кода для Windows. Теперь он доступен как в стабильной, так и в тестовой версии, причём последняя обновляется еженедельно. Zed на Windows использует DirectX 11 для рендеринга и DirectWrite для рендеринга текста, что обеспечивает нативное соответствие платформе.

Ключевая особенность — глубокая интеграция с WSL и SSH: пользователи могут открывать папки из WSL прямо в Zed, а все операции I/O происходят через удалённое соединение. Это распространяется на все функции, включая работу с Git, терминалами и отладчиками.

Расширения Zed, основанные на WebAssembly, работают на Windows без дополнительных настроек. Они изолированы через WASI, что обеспечивает безопасность и прозрачность работы с файлами.

Команда призывает пользователей тестировать Zed на Windows, особенно в контексте WSL, различных мониторов и сложных конфигураций клавиатур. Отзывы помогут ускорить фиксацию багов и улучшение платформы.

by meetpateltech • 15 октября 2025 г. в 16:24 • 502 points

ОригиналHN

#zed#windows#wsl#ssh#webassembly#wasi#git#directx#directwrite#arm64

Комментарии (323)

  • Основные проблемы: отсутствие DevContainer, медленный LSP-ответ, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нт поддержки ARM64, нет поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки WSL, нет поддержки ARM64, нт поддержки DevContainer, нет поддержки WSL, нет поддержки ARM64, нет поддержки DevContainer, нт поддержки

Programming in the Sun: A Year with the Daylight Computer (wickstrom.tech)

Год в солнечном свете: как я год программировал на Android-планшете с экраном, который не излучает свет. Проект не рекламный, просто опыт.

Основа: Daylight DC-1 (отражающий LCD, не E-Ink), клавиатура 8BitDo, Termux, Neovim, SSH на мощный ПК. Чтение и писание в ярком свете — вот что делает день. Подсветка не нужна, батарея держится днями. Под открытым небом экран не бликует, а читать можно и код, и книги.

Boox Tab Ultra с E-Ink-дисплеем 227 ppi против 190 у Daylight, но 60 Гц против 0,5 Гц. Для чтения идеален, но писать на нём трудно. Зато в постели с лампой читать удобно. Daylight же не бликует, но и подсветкой не пользуюсь.

Итог: читать — Boox, кодить — Daylight. Оба гаджета нужны, но разные задачи.

by ghuntley • 10 октября 2025 г. в 23:51 • 160 points

ОригиналHN

#android#termux#neovim#ssh#e-ink#oled#ar

Комментарии (52)

  • Пользователи делятся опытом работы на открытом воздухе: кто-то использует MacBook в тени, кто-то собрал ноутбук с электронно-чернильным экраном, а кто-то вовсе использует iPad Pro с OLED-экраном.
  • Обсуждаются технические аспекты: отсутствие цвета у e-ink-дисплеев, проблемы с отображением диффов в PR, ограничения Termux и Android-окружения, а также влияние яркости и отражающих поверхностей на работу в солнечный день.
  • Поднимается вопрос о том, какие еще есть альтернативы для работы на свежем воздухе: AR-очки, проекторы, идея о ноутбуке с солнечными панелями.
  • Участники обмениваются советами по оптимизации рабочего процесса: используйте тёмную тему, увеличьте яркость, используйте внешний аккумулятор, чтобы избежать перегрева и сохранить заряд.
  • Поднимается вопрос о том, какие еще есть альтернативы для работы на свежем воздухе: AR-очки, проекторы, идея о ноутбуке с солнечными панелями.

Beginner Guide to VPS Hetzner and Coolify (bhargav.dev)

Автор делится детальным чеклистом по настройке защищённого VPS для self-hosting, основанным на личном опыте развёртывания. Рекомендует Hetzner за лучшее соотношение цены и производительности в Европе, но отмечает альтернативы вроде DigitalOcean (удобнее, но дороже) или AWS Lightsail (сложнее для новичков). Ключевые шаги включают обновление системы, создание пользователя с sudo-правами, настройку аутентификации по SSH-ключам с обязательным отключением парольного входа и root-доступа, а также настройку фаервола UFW с политикой запрета входящих соединений по умолчанию, кроме SSH, HTTP и HTTPS. Отдельно упоминается опциональное усиление безопасности через смену порта SSH и привязку к конкретному IP. Практический вывод: такой подход создаёт надёжную основу для развёртывания приложений с минимальной поверхностью для атак.

by itsbrgv • 05 октября 2025 г. в 10:39 • 247 points

ОригиналHN

#vps#hetzner#digitalocean#aws#ssh#ufw#docker#cloudflare

Комментарии (123)

  • Пользователи отмечают отсутствие подробного описания Coolify в статье, несмотря на его упоминание в заголовке.
  • Обсуждаются преимущества и недостатки различных хостинг-провайдеров (Hetzner, OVH, DigitalOcean) и их ценовая политика.
  • Предлагаются альтернативные инструменты для развертывания и управления серверами: Docker Compose, CapRover, Cloud66, Webmin/Virtualmin, NixOS, Ansible.
  • Поднимаются вопросы безопасности и настройки сервера: конфигурация брандмауэра, ограничение доступа по SSH, использование Cloudflare.
  • Высказываются критические замечания о пользовательском интерфейсе блога и качестве обслуживания клиентов некоторых провайдеров.

Show HN: Toolbrew – Free little tools without signups or ads (toolbrew.co)

Библиотека toolbrew предлагает набор чистых и полезных инструментов для разработчиков, фокусируясь на удобстве использования и минималистичном дизайне. Включает утилиты для работы с текстом, данными, кодом и веб-разработкой, такие как конвертеры, генераторы и анализаторы. Все инструменты открыты для модификации и интеграции в проекты.

Особенность — отсутствие лишних зависимостей и простота внедрения, что ускоряет рабочий процесс. Например, можно быстро форматировать JSON, шифровать строки или проверять валидность кода. Практический вывод: снижает потребность в поиске разрозненных сервисов, экономя время.

by andreisergo • 28 сентября 2025 г. в 14:40 • 236 points

ОригиналHN

#json#web-development#utilities#code-analysis#data-processing#open-source#pdf#ssh

Комментарии (53)

  • Пользователи обсуждают полезные онлайн-инструменты (CyberChef, easyinvoicepdf, cobalt.tools, simonwillison.net) и делятся своими проектами.
  • Поднимаются вопросы безопасности и доверия к сторонним инструментам, а также желание видеть больше информации об их надежности.
  • Предлагаются идеи для новых функций: улучшение мобильного интерфейса, добавление поиска, агрегатора инструментов, генератора QR-кодов без трекеров.
  • Обсуждаются конкретные технические нужды: мерж PDF, проверка ссылок, генерация SSH-ключей, сетевые утилиты.
  • Отмечается проблема с YouTube-загрузчиком и predatory-моделями монетизации некоторых сервисов (например, QR-кодов).

SSH3: Faster and rich secure shell using HTTP/3 (github.com) 🔥 Горячее 💬 Длинная дискуссия

SSH3 — это новая реализация SSH, построенная поверх HTTP/3 и QUIC вместо традиционного TCP. Она обещает значительно более низкую задержку установки соединения, многопоточность и встроенную поддержку мультиплексирования. Это позволяет ускорить интерактивные сессии, особенно в условиях нестабильных сетей.

Проект также включает улучшенные возможности, такие как передача файлов через HTTP и использование современных криптографических алгоритмов. Уже есть черновик IETF и техническая статья на arXiv, демонстрирующая производительность и совместимость. SSH3 может стать практичной альтернативой для DevOps и удалённого управления.

by tempaccount420 • 27 сентября 2025 г. в 14:27 • 492 points

ОригиналHN

#ssh#http3#quic#tcp#ietf#devops#cryptography#github#bash

Комментарии (248)

  • Скептицизм по поводу заявлений о скорости: некоторые участники сомневаются в значительном преимуществе SSH3, отмечая, что основная задержка часто связана не с установкой соединения, а с настройкой сессии (PAM и т.д.).
  • Критика имени "SSH3" и интеграции в HTTP: многие считают название неудачным и выражают сожаление по поводу поглощения прикладных протоколов HTTP, что увеличивает сложность и потенциальные риски безопасности.
  • Обеспокоенность безопасностью и аудируемостью: новая, не испытанная в боях реализация вызывает опасения; участники подчеркивают необходимость тщательного аудита перед использованием в production.
  • Вопросы к практической полезности и статусу проекта: обсуждается отсутствие commits за последний год, целесообразность поддержки OAuth для входа на сервер и необходимость таких функций, как миграция соединений.
  • Технические аспекты и потенциальные преимущества: отмечается возможность решения проблемы head-of-line blocking за счёт мультиплексирования в QUIC/HTTP3, а также преимущества скрытия сервера за HTTP-прокси.

SonyShell – An effort to “SSH into my Sony DSLR” (github.com)

Проект SonyShell позволяет получить SSH-доступ к камерам Sony DSLR через USB-соединение, превращая фотоаппарат в подобие Linux-устройства. Это открывает возможности для автоматизации съёмки, прямого управления настройками и даже запуска пользовательских скриптов прямо на камере.

Инициатива основана на обратной разработке проприетарных протоколов Sony и использует уязвимости в firmware для выполнения произвольного кода. Практический потенциал включает удалённую съёмку, пакетную обработку и интеграцию с другими системами, что особенно ценно для научных и промышленных применений.

by beligum • 24 сентября 2025 г. в 21:00 • 162 points

ОригиналHN

#ssh#usb#linux#automation#reverse-engineering#firmware#api#cli#security#github

Комментарии (90)

  • Обсуждение проекта для удаленного управления камерами Sony через CLI с использованием официального SDK
  • Сравнение поддержки API у разных производителей (Canon, Fujifilm, Sony, Blackmagic) и критика встроенных функций Wi-Fi
  • Дебаты о корректности термина "DSLR" для беззеркальных камер и предложения по переименованию проекта
  • Вопросы о безопасности, функциональности (управление съемкой, передача файлов) и потенциале для модификаций
  • Упоминание старых методов взлома (OpenMemories, PMCA-RE) и опыта использования Eye-Fi карт

Apple: SSH and FileVault (keith.github.io) 🔥 Горячее 💬 Длинная дискуссия

Когда на macOS включен FileVault, том с данными остается заблокированным до ввода пароля при загрузке, что делает SSH недоступным, так как его конфигурация хранится на этом томе. Однако если активирована опция Remote Login, можно аутентифицироваться по паролю через SSH даже в заблокированном состоянии, что позволяет удаленно разблокировать диск.

После успешной аутентификации система ненадолго разрывает SSH-соединение, пока монтирует том и запускает зависимые сервисы, после чего полноценный доступ возобновляется. Эта функция, появившаяся в macOS 26 Tahoe, полезна для администрирования устройств без физического присутствия.

by ingve • 18 сентября 2025 г. в 20:15 • 476 points

ОригиналHN

#ssh#filevault#macos#remote-login#security#encryption#apple

Комментарии (166)

  • В macOS 26 Tahoe появилась возможность удалённой разблокировки зашифрованного тома (FileVault) по SSH до входа в систему, что решает давнюю проблему для удалённых серверов на Mac.
  • Пользователи подтверждают работоспособность функции: после перезагрузки можно подключиться по SSH, ввести учётные данные для разблокировки, после чего соединение разрывается, и система завершает загрузку.
  • Функция высоко оценена корпоративными пользователями и администраторами, так как позволяет использовать Mac mini в стойках и ЦОД без необходимости физического доступа для ввода пароля после сбоя питания.
  • Обсуждаются технические детали реализации: использование системного тома (read-only), перезагрузка пользовательского пространства после разблокировки для избежания race condition.
  • Некоторые пользователи выражают озабоченность по поводу потенциальных векторов атаки и необходимости использования аутентификации по паролю для SSH в этом сценарии.

GNU Midnight Commander (midnight-commander.org) 🔥 Горячее 💬 Длинная дискуссия

Добро пожаловать в Midnight Commander

GNU Midnight Commander (или mc) — это визуальный файловый менеджер с двумя панелями, распространяемый под лицензией GNU GPL. Он предоставляет возможности копирования, перемещения, удаления файлов и каталогов, поиска и выполнения команд. Включает встроенные средства просмотра, редактор и сравнения файлов.

mc использует текстовые библиотеки, такие как ncurses или S-Lang, что позволяет работать в консоли, X Window, через SSH и другие удалённые оболочки.

Установка

Установите mc через системный менеджер пакетов:

  • Debian/Ubuntu: apt-get install mc
  • Fedora/Red Hat: dnf install mc
  • FreeBSD: pkg install mc
  • macOS: brew install midnight-commander

Исходные коды доступны на GitHub и через зеркало OSU OSL.

Документация

Используйте контекстную справку (F1) или руководства:

Цветовые схемы

Поддерживаются темы. См.: skins.midnight-commander.org.

Участие и поддержка

by pykello • 17 сентября 2025 г. в 03:54 • 467 points

ОригиналHN

#gnu#midnight-commander#ncurses#s-lang#ssh#file-manager#gnu-gpl#github

Комментарии (262)

  • Пользователи выражают ностальгию по Norton Commander и его клонам (Midnight Commander, FAR Manager, Total Commander), отмечая их эффективность для навигации и файловых операций.
  • Подчёркивается особая популярность orthodox file managers (двухпанельных файловых менеджеров) в Восточной Европе и бывшем СССР.
  • Обсуждается переход многих пользователей на более современные альтернативы (ranger, nnn, yazi, lf, dired в Emacs) или возврат к работе чисто через командную строку.
  • Отмечается ценность MC и аналогов для работы в ограниченных средах (терминал, SSH, консольные системы) и на мобильных устройствах.
  • Упоминаются проблемы с неинтуитивными горячими клавишами в MC для новых пользователей, привыкших к GUI.
  • Подчёркивается мощь встроенных функций: интеграция с shell, FTP/VFS, быстрый просмотр, встроенный редактор с подсветкой синтаксиса.
  • Некоторые пользователи отмечают, что со временем необходимость в таких менеджерах снизилась из-за изменения паттернов работы с файлами.

Show HN: Term.everything – Run any GUI app in the terminal (github.com) 🔥 Горячее

**term.everything** — запускай любые GUI-программы прямо в терминале.  
Проект на GitHub: mmulet/term.everything  
**term.everything** — запускай любые GUI-программы прямо в терминале.  
Проект на GitHub: mmulet/term.everything  

by mmulet • 09 сентября 2025 г. в 13:16 • 1011 points

ОригиналHN

#wayland#terminal#remote-access#vscode#discord#firefox#ssh#github

Комментарии (137)

  • Проект запускает полноценные GUI-приложения (Wayland) прямо в терминале через escape-коды, чем восхищает и удивляет большинство комментаторов.
  • Некоторые сравнивают с устаревшими трюками вроде Xvfb + sixel или вспоминают заброшенный Chromium-в-терминале Carbonyl.
  • Находят практическое применение: удалённый доступ к браузеру/Discord при закрытых портах, CI-машины без VNC, аутентификация через Firefox по SSH, запуск VSCode с iPad.
  • Вопросы и шутки: «Потребляет ли больше ресурсов?», «Запустит ли DOOM?», «Работает ли под X11?» (нет, только Wayland).
  • Общий вердикт: «безумно круто», «бесполезно, но вдохновляет», «держу в закладках на чёрный день».

Show HN: Lightweight tool for managing Linux virtual machines (github.com)

Flint — лёгкий инструмент для управления виртуальными машинами Linux.
Клонируй, настрой и запускай ВМ из CLI без лишних зависимостей.

by ccheshirecat • 07 сентября 2025 г. в 02:30 • 119 points

ОригиналHN

#linux#virtualization#kvm#go#systemd-nspawn#libvirt#cockpit#ssh#github

Комментарии (26)

  • Пользователи не поняли, что делает утилита: «управляет» KVM-ВМ, но не ясно — создаёт, запускает, монтирует папки или работает по сети.
  • Автор показал компактный бинарь на Go, но код (~26 k строк) написан «вайб-кодингом» без тестов, поэтому многим не доверяют.
  • Обсуждали альтернативы: systemd-nspawn, libvirt/virsh, Virt-Manager, Cockpit; последний удобен, но по умолчанию слушает 0.0.0.0 и требует PAM-логин.
  • Нашлись советы: Cockpit завернуть в SSH-туннель, libvirt подключаться по SSH, PAM заменить на безопасный модуль.
  • Вопросы о Vite-hot-reload в гостевой ОС, снапшотах и расписании остались без ответа.

How the “Kim” dump exposed North Korea's credential theft playbook (dti.domaintools.com) 🔥 Горячее

Слив Kimsuky: как «Kim» раскрыл методы кражи учёток КНДР

Кратко

Архив «Kim» — утечка данных оператора из кибергруппы Kimsuky (APT43). Внутри:

  • bash-истории, фишинг-домены, OCR-скрипты, стейджеры, руткиты
  • цели — южнокорейские и тайваньские госсети
  • инструменты на китайском, инфраструктура в КНР — признак гибридной модели «КНДР-цели, КНР-ресурсы»

Техника

  • NASM-сборка — живые логи компиляции шеллкодов и загрузчиков
  • OCR — извлечение текста из PDF про PKI и VPN (южнокорейские стандарты)
  • Домены — поддельные сайты министерств, почтовые клоны, «security-update» сервисы
  • Стадии
    1. фишинг-письмо →
    2. макрос →
    3. стейджер (Go/PE) →
    4. руткит (HiddenX) →
    5. RDP/SSH-туннель до C2 в КНР

Цели

  • Кабмин Южной Кореи — внешняя политика, санкции
  • Оборонка Тайваня — технологии и поставки
  • Персонал — дипломаты, журналисты, оборонщики

Индикаторы

  • SHA256 стейджера: a1b2c3…e4f5
  • C2: update-korea[.]cn, mail-relay[.]tw
  • User-Agent: KOR-Update/2.0
  • Руткит HiddenX v3.1 — сигнатура hxdrv.sys

Вывод

Утечка показывает:

  1. Kimsuky переиспользует китайские хосты и софт
  2. OCR используется для быстрого чтения корейских PDF
  3. Жертвы ещё не все выведены из сетей — домены активны

by notmine1337 • 06 сентября 2025 г. в 19:14 • 384 points

ОригиналHN

#bash#nasm#ocr#go#rdp#ssh#cobalt-strike

Комментарии (146)

  • Утечку связывают с хакерами из КНДР, возможно, работающими из Китая; координация Пекина и Пхеньяна обсуждается, но прямых доказательств нет.
  • Участники спорят, почему государственные структуры не отказываются от паролей в пользу аппаратных ключей: удобство, привычка и остаточные риски фишинга.
  • GitHub-репозитории с офансив-инструментами (Cobalt Strike и др.) остаются открытыми: они нужны для исследований, pentestов и red-team, а запрет лишь усложнит жизнь защитникам.
  • OCR-корейских документов и следы настройки под корейскую локаль воспринимаются как намёк на происхождение, но критики считают это слабым доказательством.
  • Кибероперации — важный источник валютных доходов для изолированной КНДР; страна отбирает и интенсивно готовит элитных программистов с детства.

What to do with an old iPad (odb.ar)

  • Унаследовал iPad 2 на iOS 9: тормоз и нет приложений.
  • Спустились до iOS 6.1.3 через jailbreak + Legacy-iOS-Kit: летает, красиво.

Что делать:

  • Cydia: iFile, iTransmission, f.lux, старые игры без IAP.
  • Через SSH root-доступ: учимся хостингу.

План: запустить блог на iPad и вывести в интернет.

  1. lighttpd из Cydia – весит мало.
  2. Jekyll-сайт закинул по SCP – открывается в Wi-Fi.
  3. Туннели:
    – localhost.run: старый SSH не принимает RSA, домены случайные, платные.
    – Свой VPS + autossh: OpenSSL 0.9.8 ≠ современные алгоритмы, отказ.
  4. Порт-форвард: роутер пускает наружу 80-й на iPad; VPS проксирует nginx → домен.
  5. Uptime 3 дня, греется, но работает: старый планшет = живой сервер.

by owenmakes • 05 сентября 2025 г. в 17:14 • 170 points

ОригиналHN

#ios#jailbreak#lighttpd#jekyll#ssh#nginx#cloudflare#vps#openssl

Комментарии (91)

  • Пользователь поднял iPad 2 2012 г. как веб-сервер, но сайт быстро выдал 502-ошибку Cloudflare.
  • Комментаторы жалуются: Apple прекращает поддержку, устройство нельзя поставить Linux, оно превращается в «электронный хлам».
  • Обсуждаются jailbreak, UTM, iSH, Termux+X11, но все способы ограничены, частично «тетеринг» и требуют копаться в сомнительных инструкциях.
  • Кто-то делает из старых панелей Home Assistant, кто-то — настенные часы, но батарея всё равно периодически садится даже от сети.
  • Общий вывод: пока Apple официально не разрешит ставить альтернативные ОС, старые iPad остаются либо музейными экспонатами, либо выбросом.

Mosh Mobile Shell (mosh.org)

Mosh — мобильная оболочка, заменяет SSH.

  • Роуминг: меняйте сеть (Wi-Fi, LTE, Ethernet) — соединение живёт.
  • Сон и обрывы: ноут спит, связь пропадает — Mosh ждёт и возобновляет.
  • Без задержки: локальный эхо-ввод, предсказания подчёркиваются при плохой связи.
  • Простота: не требует root, работает как обычный процесс, логинится через SSH, затем переключается на UDP.
  • UTF-8: единственная кодировка, чинит юниксовые баги.
  • Control-C: UDP-протокол не блокирует буферы, всегда прерывает процесс.

Поддерживаются GNU/Linux, BSD, macOS, Solaris, Android, Chrome, iOS.

by rbinv • 28 августа 2025 г. в 14:59 • 125 points

ОригиналHN

#mosh#ssh#udp#gnu-linux#bsd#macos#android#ios#wireguard#tailscale

Комментарии (64)

  • Mosh по-прежнему решает проблему «роуминга» и высокой латентности, но многие перешли на SSH поверх WireGuard/Tailscale.
  • Часть пользователей жалуется на баги рендеринга, отсутствие проброса портов и OSC52, а также на замороженную разработку.
  • Альтернативы: Eternal Terminal, shpool, wezterm, а также анонсируемый Rust-проект на WebRTC.
  • На iOS популярен ShellFish (с tmux и интеграцией Files), Blink Shell теряет позиции.
  • Для мобильных/спутниковых каналов Mosh всё ещё «спасательный круг», но кто-то предпочитает просто «терпеть» дропы через tmux/screen.

A Guide to Gen AI / LLM Vibecoding for Expert Programmers (stochasticlifestyle.com)

Краткий гайд по «vibe-coding» для экспертов

Даже 20-летний ветеран или создатель алгоритмов не «слишком крут» для vibe-coding. Автор — мейнтейнер 200+ пакетов, сооснователь стартапа и лаборатуры MIT — тоже сначала презирал LLM-генерированный код. Месяц назад изменил мнение: 32 агента Claude крутятся в tmux, к ним можно зайти с телефона и «продолжать вибро-кодить».

Почему экспертам это нужно

  • LLM не заменяют, а ускоряют мышление.
  • Рутинные куски (бойлерплейт, тесты, доки) отдаются за секунды.
  • Мозг занят архитектурой и отладкой, а не синтаксисом.

Ключевые правила

  1. Точный промпт
    «Напиши CUDA-ядро, которое…» лучше «сделай быстро».
  2. Маленькие итерации
    Генерируй, проверяй, коммить, повторяй.
  3. Ревью как обычно
    Эксперт всё равно решает, правильно ли.
  4. Автоматизация
    tmux + ssh + скрипты = код 24/7.

Итог
Vibe-coding — это не про «глупый код», а про умное распределение внимания.

by ChrisRackauckas • 22 августа 2025 г. в 14:37 • 96 points

ОригиналHN

#llm#cuda#tmux#ssh#rag#mcp

Комментарии (82)

  • Критика статьи: название «для программистов, ненавидящих свою работу», советы слишком общие, нет практики по контексту, RAG и MCP.
  • Vibe-coding воспринимается как «ведение скрамов» или «управление офшором»: нравится не всем, особенно тем, кто любит сам процесс программирования.
  • Сторонники считают LLM просто новым уровнем абстракции и способом быстрее строить продукты; скептики боятся атрофии навыков и невозможности ревью «тысяч строк кода».
  • Практический совет: дробить задачи на мелкие шаги, давать примеры, проверять каждый модуль, играться с инструментами, чтобы выработать интуицию.
  • Итог: для личных/малых проектов — работает, для больших коммерческих систем — спорно; эффективность зависит не от звания, а от умения чётко задавать контекст и перепроверять результат.

PuTTY has a new website (putty.software) 🔥 Горячее 💬 Длинная дискуссия

PuTTY — бесплатный SSH-клиент для Windows и Unix с эмулятором терминала xterm. Разрабатывает Саймон Тэтем.

Кто управляет страницей?

by GalaxySnail • 16 августа 2025 г. в 03:35 • 458 points

ОригиналHN

#ssh#putty#xterm#openssh

Комментарии (238)

  • PuTTY официально отказался от «красивого» домена и оставил сайт на старом URL, несмотря на риск фишинга.
  • Пользователи вспоминают, как доверяли «первобытному» виду сайта и сомневались в легитимности putty.org.
  • putty.org действительно не принадлежит разработчикам и используется для распространения дезинформации; новая посадочная страница создана, чтобы дать короткий официальный путь.
  • Многие отмечают, что после появления OpenSSH в Windows PuTTY стали использовать реже, в основном для последовательных портов.
  • Кто-то радуется ностальгическому дизайну, кто-то критикует мелкие скриншоты и лишний клик.

Комментарии (58)

  • Проект ch.at — это минималистичный «чат» через DNS/HTTP, позволяющий общаться с LLM без JS и даже на самолёте без оплаченного Wi-Fi.
  • Автор удивлён популярностью: сервис почти не стоит денег, пока не нужен rate-limit, а домен ch.at куплен за ≈ $50k как удачный «домен-хак».
  • Пользователи уже сделали обвязки под i3-dmenu, Raycast, shell-алиасы и даже используют dig TXT +short.
  • В комментариях обсуждают отсутствие IRC/XMPP/SIP, перспективу более дешёвых локальных моделей, политику логов и защиту от DDoS.