OpenSSH 8.4 vrystelling

Na vier maande se ontwikkeling aangebied Ρ€Π΅Π»ΠΈΠ· OpenSSH 8.4, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌ SSH 2.0 ΠΈ SFTP.

Belangrikste veranderinge:

  • Sekuriteitsveranderinge:
    • Π’ ssh-agent ΠΏΡ€ΠΈ использовании ΠΊΠ»ΡŽΡ‡Π΅ΠΉ FIDO, созданных Π½Π΅ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· SSH (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ»ΡŽΡ‡Π° начинаСтся Π½Π΅ со строки Β«ssh:Β»), Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ выполняСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, Ρ‡Ρ‚ΠΎ сообщСниС Π±ΡƒΠ΄Π΅Ρ‚ подписано с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², примСняСмых Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ SSH. ИзмСнСниС Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ssh-agent Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ хосты, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ FIDO-ΠΊΠ»ΡŽΡ‡ΠΈ, для блокирования возмоТности использования Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ для Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ подписСй запросов web-Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ (ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ случай, ΠΊΠΎΠ³Π΄Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ запрос SSH, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Ρ‘Π½, благодаря ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ прСфикса Β«ssh:Β» Π² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ ΠΊΠ»ΡŽΡ‡Π°).
    • Π’ ssh-keygen ΠΏΡ€ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π΅Π·ΠΈΠ΄Π΅Π½Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° дополнСния credProtect, описанного Π² спСцификации FIDO 2.1, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ для ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ запрос Π²Π²ΠΎΠ΄Π° PIN-ΠΊΠΎΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ любой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, которая ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΡŽ Ρ€Π΅Π·ΠΈΠ΄Π΅Π½Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΈΠ· Ρ‚ΠΎΠΊΠ΅Π½Π°.
  • Veranderinge aan versoenbaarheid wat moontlik breek:
    • Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ FIDO/U2F Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ libfido2 ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ вСрсии 1.5.0. Частично Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования ΠΈ старых выпусков, Π½ΠΎ Π² этом случаС Π±ΡƒΠ΄ΡƒΡ‚ нСдоступны Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ Ρ€Π΅Π·ΠΈΠ΄Π΅Π½Ρ‚Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ, запрос PIN ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².
    • Π’ ssh-keygen Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ сохраняСмой ΠΏΡ€ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π° FIDO, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй.
    • Π˜Π·ΠΌΠ΅Π½Ρ‘Π½ API, примСняСмый ΠΏΡ€ΠΈ взаимодСйствии OpenSSH с прослойкой для обращСния ΠΊ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌ FIDO.
    • ΠŸΡ€ΠΈ сборкС пСрСносимой вСрсии OpenSSH Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ трСбуСтся automake для формирования скрипта configure ΠΈ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… сборочных Ρ„Π°ΠΉΠ»ΠΎΠ² (Ссли сборка выполняСтся ΠΈΠ· ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ tar-Ρ„Π°ΠΉΠ»Π° с ΠΊΠΎΠ΄ΠΎΠΌ, пСрСгСнСрация configure Π½Π΅ трСбуСтся).
  • Π’ ssh ΠΈ ssh-keygen Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° FIDO-ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… подтвСрТдСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ PIN-ΠΊΠΎΠ΄Π°. Для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ с PIN Π² ssh-keygen Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«verify-requiredΒ». Π’ случаС использования ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ создания подписи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ выводится запрос, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ свои дСйствия Ρ‡Π΅Ρ€Π΅Π· Π²Π²ΠΎΠ΄ PIN-ΠΊΠΎΠ΄Π°.
  • Π’ sshd Π² настройкС authorized_keys Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция Β«verify-requiredΒ», Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ примСнСния возмоТностСй ΠΏΠΎ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ присутствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π²ΠΎ врСмя ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ FIDO прСдусматриваСт нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Π² настоящСС врСмя Π² OpenSSH поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° основС PIN-ΠΊΠΎΠ΄Π°.
  • Π’ sshd ΠΈ ssh-keygen Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… стандарту FIDO Webauthn, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ FIDO Π² web-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ….
  • Π’ ssh Π² настройках CertificateFile,
    ControlPath, IdentityAgent, IdentityFile, LocalForward ΠΈ
    RemoteForward Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π° подстановка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«${ENV}Β».

  • Π’ ssh ΠΈ ssh-agent Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния $SSH_ASKPASS_REQUIRE, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²Ρ‹Π·ΠΎΠ²Π° ssh-askpass.
  • Π’ ssh Π² ssh_config Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ AddKeysToAgent Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ограничСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ дСйствия ΠΊΠ»ΡŽΡ‡Π°. ПослС истСчСния Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π»ΠΈΠΌΠΈΡ‚Π° ΠΊΠ»ΡŽΡ‡ΠΈ автоматичСски ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· ssh-agent.
  • Π’ scp ΠΈ sftp ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ„Π»Π°Π³Π° Β«-AΒ» Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ явно Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² scp ΠΈ sftp с использованиСм ssh-agent (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ).
  • Π’ настройках ssh Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° подстановки β€˜%k’, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅ΠΉ имя ΠΊΠ»ΡŽΡ‡Π° хоста. Π£ΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для разнСсСния ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«UserKnownHostsFile ~/.ssh/known_hosts.d/%kΒ»).
  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ использованиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Β«ssh-add -d -Β» для чтСния ΠΈΠ· stdin ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ.
  • Π’ sshd обСспСчСно ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π»ΠΎΠ³Π΅ Π½Π°Ρ‡Π°Π»Π° ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ процСсса урСзания соСдинСний, Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° MaxStartups.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ OpenSSH Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΠ»ΠΈ ΠΎ грядущСм ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ Π² разряд ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Ρ…Π΅ΡˆΠΈ SHA-1, Π² связи с bevordering die doeltreffendheid van botsingsaanvalle met 'n gegewe voorvoegsel (die koste van die keuse van 'n botsing word op ongeveer 45 duisend dollar geraam). In een van die komende vrystellings beplan hulle om by verstek die vermoΓ« om die ssh-rsa publieke sleutel digitale handtekeningalgoritme te gebruik, wat in die oorspronklike RFC vir die SSH-protokol genoem word en wydverspreid in die praktyk bly (om die gebruik van ssh na te gaan) deaktiveer -rsa in jou stelsels, kan jy probeer om via ssh te koppel met "-oHostKeyAlgorithms=-ssh-rsa" opsie).

Для сглаТивания ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π½ΠΎΠ²Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π² OpenSSH Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ выпускС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° настройка UpdateHostKeys, которая ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ автоматичСски пСрСвСсти ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹. Π‘Ρ€Π΅Π΄ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Ρ… для ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² упомянуты rsa-sha2-256/512 Π½Π° Π±Π°Π·Π΅ RFC8332 RSA SHA-2 (поддСрТиваСтся с OpenSSH 7.2 ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), ssh-ed25519 (поддСрТиваСтся с OpenSSH 6.5) ΠΈ ecdsa-sha2-nistp256/384/521 Π½Π° Π±Π°Π·Π΅ RFC5656 ECDSA (поддСрТиваСтся с OpenSSH 5.7).

Bron: opennet.ru

Voeg 'n opmerking