Новая версия OpenSSH 6.5 — это feature-focused релиз, то есть в него включили новый функционал, накопившийся за последние месяцы.
- ssh(1), sshd(8): добавлена поддержка обмена ключами по протоколу Диффи-Хеллмана на эллиптических кривых в Curve25519. Данный метод будет стандартным для клиентов и серверов, которые его поддерживают.
- ssh(1), sshd(8): добавлена поддержка открытых ключей типа Ed25519. Такая схема обеспечивает лучшую безопасность, чем ECDSA и DSA и хорошую производительность. Ее можно использовать на стороне клиента или хоста.
- Добавлен новый формат секретных ключей, в котором используется bcrypt KDF для лучшей защиты. Этот формат всегда безоговорочно используется для ключей Ed25519, но его можно вызвать при генерации или сохранении ключей другого типа, используя опцию -o ssh-keygen(1). Новый формат планируется сделать стандартным по умолчанию в будущем. Подробности см. в файле PROTOCOL.key.
- ssh(1), sshd(8): добавлен новый транспортный шифр "chacha20-poly1305@openssh.com", который сочетает поточный шифр ChaCha20 и Poly1305 MAC для режима шифрования после аутентификации. Подробности в файле PROTOCOL.chacha20poly1305.
- ssh(1), sshd(8): отказ в использовании ключей RSA от старых проприетарных клиентов и серверов, использующих устаревшие схемы подписи RSA+MD5. Эти клиенты и серверы по-прежнему смогут устанавливать зашифрованное соединение, но только с ключами DSA. В будущей версии OpenSSH и это полностью запретят.
- ssh(1), sshd(8): отказ в поддержке старых проприетарных клиентов и серверов, использующих слабый метод вычисления хэша при обмене ключами.
- ssh(1): увеличение размера групп Диффи-Хеллмана, запрашиваемых для каждого симметричного ключа. Новые значения указаны в рекомендациях NIST Special Publication 800-57, а верхний лимит установлен стандартом RFC4419.
- ssh(1), ssh-agent(1): поддержка токенов PKCS#11, которые предоставляют только сертификаты X.509 вместо обычных ключей.
- ssh(1): добавлено ключевое слово ssh_config(5) "Match", позволяющее устанавливать условие на конфигурацию по названию хоста, имени пользователя или результату выполнения произвольной команды.
- ssh(1): добавлена поддержка нормализации названий клиентских хостов, используя набор суффиксов DNS и правил, установленных в ssh_config(5).
- sftp-server(8): возможность заносить в белый и/или черный список запросы протокола sftp по названию.
- sftp-server(8): добавлена опция sftp "fsync@openssh.com" для поддержки вызова fsync(2) с дескриптором открытого файла.
- sshd(8): добавлена опция ssh_config(5) PermitTTY, которая дублирует привычную опцию “no-pty authorized_keys”.
- ssh(1): добавлена опция ssh_config ProxyUseFDPass, чтобы запустить ProxyCommands для установки соединения, а затем передать дескриптор файла обратно в ssh(1) и спокойно закрыть ProxyCommand, не дожидаясь окончания передачи.
Кроме новых фич, исправлено также более десятка багов, в том числе несколько уязвимостей в безопасности.
Вышла и новая версия Portable OpenSSH, которая станет последней версией с поддержкой OpenSSL до 0.9.6.