Новая версия OpenSSH 5.6

Доступен релиз OpenSSH 5.6, открытой реализации клиента и сервера для работы по протоколу SSH версии 1.3, 1.5 и 2.0, дополнительно включающей в себя поддержку SFTP.

В новой версии исправлено 23 ошибки и добавлено несколько новшеств:

  • В конфигурации клиента (ssh_config) появилась новая опция ControlPersist, при указании которой в фоне автоматически запускается ssh-процесс, через который в последующем мультиплексируются новые клиентские соединения. После выхода из ssh-клиента соединения остаются установленными, что при следующем подключении значительно ускоряет время соединения. Возможно указание таймаута, после истечения которого неактивные соединения автоматически будут завершены;
  • При аутентификации на стороне хоста (Hostbased) теперь возможно использование сертификатов, подписанных CA-ключами, заданными в файле known_hosts с меткой "@cert-authority";
  • Утилита ssh-keygen теперь может подписывать сертификаты, используя CA-ключи, хранимые с использованием PKCS#11. Кроме того, в ssh-keygen добавлены функции импорта (-i) и экспорта (-e) ключей в форматах PEM и PKCS#8, в дополнение к ранее поддерживаемым ключам ключам в представлении RFC4716 (SSH.COM);
  • Утилита ssh (клиент) после завершения стадии аутентификации теперь сохраняет в логе имя и IP-адрес хоста к которому осуществляется подключение. Данные выводятся в лог в режиме "LogLevel=verbose". Возможность добавлена с целью отследить факты фишинга, при которых сервер сразу пускает без проверки пароля, но выводит подставную строку ввода пароля;
  • В ssh_config в директиве Hostname теперь можно указывать маску текущего хоста "%h", что несмотря на кажущуюся на первый взгляд абсурдность позволяет использовать такие конструкции (если набран не полный домен, то к нему будет добавлено ".example.org"):
           Host *.*          Hostname %h       Host *          Hostname %h.example.org  
  • Серверный процесс sshd теперь отправляет данные о правах доступа и владельцах файлов с ключами, которые фигурируют при соединении. На стороне клиента данную информацию можно увидеть в режиме "LogLevel=debug";
  • При мультиплексировании соединений в ssh теперь возможно удаленное перенаправление (remote forwarding) с динамическим выделением номера порта, который выделяется на удаленной стороне и возвращается назад пользователю: "LPORT=`ssh -S muxsocket -R0:localhost:25 -O forward somehost`";
  • В Match-блоках конфигурации sshd_config теперь можно использовать опции: AuthorizedKeysFile, AuthorizedPrincipalsFile, HostbasedUsesNameFromPacketOnly и PermitTunnel;
  • sshd теперь поддерживает косвенные проверки совпадения имен принципалов, перечисленных в сертификате. По умолчанию, если в сертификат встроен список принципалов, то для успешного прохождения аутентификации имя текущего пользователя на сервере обязательно должно совпадать с одним из них. Список принципалов, которые допустимо использовать без проверки на совпадение с именем пользователя, в случае если сертификат подпадает под действие директивы TrustedCAKeys, можно задать в файле, указанном через директиву AuthorizedPrincipalsFile. Список принципалов также можно задать через ~/.ssh/authorized_keys в формате principals="name1[,name2,...]";
  • Изменен формат хранения сертификатов ключей. Новый формат, идентифицируемый как "ssh-{dss,rsa}-cert-v01@openssh.com", включает ряд дополнительных полей. Старый формат еще примерно год будет поддерживается для аутентификации и выполнения цифровой подписи сертификатов (необходимо указать "ssh-keygen -t v00 ...), после чего его поддержка будет прекращена.

© OpenNet