Repolode
janmojzis

janmojzis/tinyssh

TinySSH — минималистичный SSHv2-сервер, поддерживающий только современные криптографические алгоритмы и исключающий устаревшие и небезопасные функции.

Open source альтернатива:OpenSSH

Звёзды
1,538
Форки
83
Открытые issues
20
Последний коммит
7 дней назад

Что это?

TinySSH — небольшой SSH-сервер на C, реализующий намеренно ограниченное подмножество протокола SSHv2. Он поддерживает только обмен ключами, шифры и ключи хоста, которые считаются безопасными сегодня, например curve25519, chacha20-poly1305 и ssh-ed25519. RSA, DSA, 3DES, RC4, аутентификация по паролю и аутентификация на основе хоста не поддерживаются.

Сервер также не поддерживает сжатие, перенаправление портов, перенаправление агента и X11-forwarding — благодаря этому кодовая база остаётся компактной. Для обработки пакетов используются буферы фиксированного размера, а при разрешении путей авторизации доступ запрещается, если выделить память не удалось. Начиная с версии 20260906, переменные окружения, переданные клиентом, отклоняются, поэтому их нужно настроить на сервере.

В проект входят tinysshd — серверный демон — и tinysshd-makekey, инструмент для генерации ключей хоста. Сервер можно запускать через tcpserver, busybox tcpsvd, inetd или активацию сокетов systemd.

Ключевые возможности

  • 01Поддерживает только современные алгоритмы, такие как curve25519, chacha20-poly1305 и ssh-ed25519.
  • 02Включает постквантовый обмен ключами sntrup761x25519, который можно отключить флагом.
  • 03Отклоняет аутентификацию по паролю и на основе хоста, а также устаревшие шифры.
  • 04Использует буферы фиксированного размера для обработки SSH-пакетов.
  • 05Работает с tcpserver, busybox tcpsvd, inetd и systemd.

Сценарии использования

  • Запуск небольшого SSH-сервера на встроенных системах или устройствах с ограниченными ресурсами.
  • Предоставление удалённого доступа к shell по ключу в минимальной конфигурации Linux.
  • Запуск SSH-сервиса по запросу через inetd или активацию сокетов systemd.

В подборках

Темы

Частые вопросы

Что такое tinyssh?
TinySSH — минималистичный SSHv2-сервер, поддерживающий только современные криптографические алгоритмы и исключающий устаревшие и небезопасные функции. TinySSH — небольшой SSH-сервер на C, реализующий намеренно ограниченное подмножество протокола SSHv2. Он поддерживает только обмен ключами, шифры и ключи хоста, которые считаются безопасными сегодня, например curve25519, chacha20-poly1305 и ssh-ed25519. RSA, DSA, 3DES, RC4, аутентификация по паролю и аутентификация на основе хоста не поддерживаются.
tinyssh можно использовать бесплатно? Какая у него лицензия?
tinyssh распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
tinyssh всё ещё поддерживается?
Активно поддерживается. Последний коммит в tinyssh — 1 нояб. 2026 г..
Для чего можно использовать tinyssh?
Запуск небольшого SSH-сервера на встроенных системах или устройствах с ограниченными ресурсами. Предоставление удалённого доступа к shell по ключу в минимальной конфигурации Linux. Запуск SSH-сервиса по запросу через inetd или активацию сокетов systemd.
Где скачать tinyssh?
Исходный код и инструкции по установке — на GitHub: https://github.com/janmojzis/tinyssh

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Портативная версия OpenSSH — порт SSH-комплекта для систем, отличных от OpenBSD, обеспечивающий безопасный удалённый вход, выполнение команд и передачу файлов в Unix-подобных системах.

4,1 тыс.2,2 тыс.COtherАктивно поддерживаетсяОбновлён вчера

Реализация протокола Tox на C: библиотека для зашифрованного обмена мгновенными сообщениями между узлами без сервера, построенная на libsodium.

2,7 тыс.+2 за неделю311CGPL-3.0Обновлён 24 часа назад

Реализация серверов TURN и STUN с открытым исходным кодом для ретрансляции трафика VoIP и WebRTC через NAT и межсетевые экраны.

14,5 тыс.+8 за неделю2,3 тыс.COtherОбновлён 5 дней назад