Релиз OpenSSH 7.6
4 октября 2017 года
После шести месяцев разработки представлен релиз OpenSSH 7.6, открытой реализации клиента и сервера для работы по протоколам SSH 2.0 и SFTP. Выпуск примечателен удалением из кодовой базы всех компонентов, связанных в реализацией протокола SSH1.
Протокол SSHv1 был признан устаревшим около 10 лет назад и серверная часть SSH1 была удалена достаточно давно, но возможность сборки клиента для SSH1 оставалась, что позволяло использовать актуальные выпуски OpenSSH для соединения с устаревшими системами и некоторым оборудованием (например, устаревшие модели Cisco и HUAWEI). Отныне код избавлен и от клиентских компонентов SSH1. Кроме недостаточного уровня защиты, обеспечение сборки с SSHv1 накладывало ограничения на кодовую базу. Например, работа OpenSSH без привязки к библиотеке OpenSSL возможна только при использовании протокола SSHv2 и отключение SSHv1 позволяет организовать поставку в дистрибутивах конфигураций OpenSSH, собранных без привязки к OpenSSL и самодостаточных в плане методов шифрования.
Полное прекращение поддержки SSH1 также позволило удалить реализации шифров arcfour, blowfish и CAST, а также RIPE-MD160 HMAC, которые были по умолчанию отключены в настройках. Кроме того, отныне запрещено использование RSA-ключей размером менее 1024 бит и отключена по умолчанию поддержка шифров CBC на стороне SSH-клиента (в сервере CBC был отключен несколько лет назад).
Другие изменения:
- Устранена проблема безопасности: sftp-server позволял создавать файлы нулевой длины, несмотря на включение в настройках режима только для чтения;
- В клиент ssh добавлена директива RemoteCommand, через которую можно на уровне файла конфигурации задать команду для выполнения на удалённой стороне сразу после входа, по аналогии с указанием команды в командной строке;
- В sshd добавлена опция ExposeAuthInfo, позволяющая организовать запись в файл лога с расширенными сведениями об используемых методах аутентификации;
- В клиент ssh добавлена поддержка динамического реверсивного проброса (reverse dynamic forwarding), при включении которого локальный ssh начинает работать как прокси SOCKS4/5, перенаправляющий через локальную систему соединения, запрошенные SOCKS-клиентом на удалённой стороне. Режим включается при помощи опции "-R" (RemoteForward) и реализован целиком на стороне клиента (может работать со старыми версиями sshd).
- В sshd разрешено указание директивы LogLevel в блоках Match файла конфигурации sshd_config;
- В ssh-keygen разрешено добавление произвольной строки или флага в создаваемый сертификат;
- В ssh-keygen обеспечена возможность использования ключа, хранимого в ssh-agent, в качестве CA при заверении сертификатов;
- В ssh и sshd разрешено указание флага IPQoS=none для выставления в ToS/DSCP значения, предлагаемого по умолчанию операционной системой;
- В ssh-add добавлен флаг "-q" для запуска ssh-add без вывода информации на экран;
- В ssh добавлены два новых режима работы директивы StrictHostKeyChecking:
- "accept-new" для автоматического принятия до сих пор не встречавшихся ключей, но блокирования сеансов для изменившихся или некорректных хостовых ключей (более безопасный вариант режима StrictHostKeyChecking=no);
- "off" - синоним ранее доступной настройки "StrictHostKeyChecking=no", при которой автоматически принимались до сих пор не встречавшихся ключи и разрешались соединения с известными некорректными хостовыми ключами;
- В ssh добавлена директива SyslogFacility, аналогичная ранее доступной директиве в sshd;
- При запуске sshd в Solaris обеспечен сброс дополнительных привилегий в sandbox-режиме: PRIV_DAX_ACCESS и PRIV_SYS_IB_INFO;
- В sshd реализована передача в PAM списка выполненных методов аутентификации через переменную окружения SSH_AUTH_INFO_0;
- Добавлены сборочные флаги "--with-cflags-after" и "--with-ldflags-after" для установки CFLAGS/LDFLAGS после завершения выполнения скрипта configure (полезно для принудительного подключения отладочных средств проверки кода и fuzzing-тестирования;
- Добавлена поверка на основе clang libFuzzer для кода разбора открытых ключей и верификации сигнатур.
Источники править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.