ओपनएसएसएच 8.7 का विमोचन

После четырёх месяцев разработки представлен релиз OpenSSH 8.7, открытой реализации клиента и сервера для работы по протоколам SSH 2.0 и SFTP.

मुख्य परिवर्तन:

  • В scp добавлен экспериментальный режим передачи данных с использованием протокола SFTP вместо традиционно применяемого протокола SCP/RCP. В SFTP применяются более предсказуемые методы обработки имён и не используется обработка glob-шаблонов через shell на стороне другого хоста, создающая проблемы с безопасностью. Для включения SFTP в scp предложен флаг «-s», но в будущем планируется перейти на данный протокол по умолчанию.
  • В sftp-server реализованы расширения протокола SFTP для раскрытия путей ~/ и ~user/, что необходимо для scp.
  • В утилите scp изменено поведение при копировании файлов между двумя удалёнными хостами (например, «scp host-a:/path host-b:»), которое теперь по умолчанию производится через промежуточный локальный хост, как при указании флага «-3». Указанный подход позволяет избежать передачи лишних учётных данных на первый хост и тройной интерпретации имён файлов в shell (на стороне источника, приёмника и локальной системы), а также при использовании SFTP позволяет использовать все методы аутентификации при обращении к удалённым хостам, а не только неинтерактивные методы. Для восстановления старого поведения добавлена опция «-R».
  • В ssh добавлена настройка ForkAfterAuthentication, соответствующая флагу «-f».
  • В ssh добавлена настройка StdinNull, соответствующая флагу «-n».
  • В ssh добавлена настройка SessionType, через которую можно установить режимы, соответствующие флагам «-N» (без сеанса) и «-s» (subsystem).
  • В ssh-keygen в файлах с ключами разрешено указывать интервал действия ключа.
  • В ssh-keygen добавлен флаг «-Oprint-pubkey» для вывода полного открытого ключа в составе подписи sshsig.
  • В ssh и sshd, как клиент, так и сервер, переведены на использование более строгого парсера файла конфигурации, в котором используются похожие на shell правила обработки кавычек, пробелов и escape-символов. Новый парсер также не пропускает ранее имевшиеся допущения, такие как пропуск аргументов в опциях (например, теперь нельзя оставлять пустой директиву DenyUsers), незакрытые кавычки и указание нескольких символов «=».
  • При использовании DNS-записей SSHFP при верификации ключей, ssh теперь проверяет все совпавшие записи, а не только содержащие определённый тип цифровой подписи.
  • В ssh-keygen при генерации ключа FIDO с указанием опции -Ochallenge для хэширования теперь используется встроенная прослойка, а не средства libfido2, что позволяет использовать challenge-последовательности, размером больше или меньше 32 байт.
  • В sshd при обработке директивы environment=»…» в файлах authorized_keys теперь принимается первое совпадение и действует ограничение в 1024 имён переменных окружения.

Разработчики OpenSSH также предупредили о переводе в разряд устаревших алгоритмов, использующих хеши SHA-1, в связи с повышением эффективности коллизионных атак с заданным префиксом (стоимость подбора коллизии оценивается примерно в 50 тысяч долларов). В следующем выпуске планируется отключить по умолчанию возможность использования алгоритма цифровых подписей по открытому ключу «ssh-rsa», который упоминается в оригинальном RFC для протокола SSH и остаётся широко распространённым на практике.

अपने सिस्टम पर ssh-rsa के उपयोग का परीक्षण करने के लिए, आप ssh के माध्यम से "-oHostKeyAlgorithms=-ssh-rsa" विकल्प से कनेक्ट करने का प्रयास कर सकते हैं। उसी समय, डिफ़ॉल्ट रूप से "ssh-rsa" डिजिटल हस्ताक्षर को अक्षम करने का मतलब RSA कुंजियों के उपयोग का पूर्ण परित्याग नहीं है, क्योंकि SHA-1 के अलावा, SSH प्रोटोकॉल अन्य हैश गणना एल्गोरिदम के उपयोग की अनुमति देता है। विशेष रूप से, "ssh-rsa" के अलावा, "rsa-sha2-256" (RSA/SHA256) और "rsa-sha2-512" (RSA/SHA512) बंडलों का उपयोग करना संभव रहेगा।

Для сглаживания перехода на новые алгоритмы в OpenSSH ранее по умолчанию была включена настройка UpdateHostKeys, которая позволяет автоматически перевести клиентов на более надёжные алгоритмы. При помощи указанной настройки включается специальное расширение протокола «[ईमेल संरक्षित]", प्रमाणीकरण के बाद, सर्वर को क्लाइंट को सभी उपलब्ध होस्ट कुंजियों के बारे में सूचित करने की अनुमति देता है। क्लाइंट इन कुंजियों को अपनी ~/.ssh/known_hosts फ़ाइल में प्रतिबिंबित कर सकता है, जो होस्ट कुंजियों को अद्यतन करने की अनुमति देता है और सर्वर पर कुंजियाँ बदलना आसान बनाता है।

UpdateHostKeys का उपयोग कई चेतावनियों द्वारा सीमित है जिन्हें भविष्य में हटाया जा सकता है: कुंजी को UserKnownHostsFile में संदर्भित किया जाना चाहिए और GlobalKnownHostsFile में उपयोग नहीं किया जाना चाहिए; कुंजी केवल एक ही नाम के अंतर्गत मौजूद होनी चाहिए; होस्ट कुंजी प्रमाणपत्र का उपयोग नहीं किया जाना चाहिए; ज्ञात_होस्ट में होस्ट नाम वाले मास्क का उपयोग नहीं किया जाना चाहिए; VerifyHostKeyDNS सेटिंग अक्षम होनी चाहिए; UserKnownHostsFile पैरामीटर सक्रिय होना चाहिए।

माइग्रेशन के लिए अनुशंसित एल्गोरिदम में RFC2 RSA SHA-256 पर आधारित rsa-sha512-8332/2 (OpenSSH 7.2 के बाद से समर्थित और डिफ़ॉल्ट रूप से उपयोग किया जाता है), ssh-ed25519 (OpenSSH 6.5 के बाद से समर्थित) और ecdsa-sha2-nistp256/384/521 आधारित शामिल हैं। RFC5656 ECDSA पर (OpenSSH 5.7 के बाद से समर्थित)।

स्रोत: opennet.ru

एक टिप्पणी जोड़ें