OpenSSH 8.7 хувилбар

Дөрвөн сар боловсруулсны дараа SSH 8.7 болон SFTP протоколууд дээр ажиллах үйлчлүүлэгч болон серверийн нээлттэй хувилбар болох OpenSSH 2.0 хувилбарыг танилцуулав.

Үндсэн өөрчлөлтүүд:

  • Уламжлалт SCP/RCP протоколын оронд SFTP протоколыг ашиглан scp-д туршилтын өгөгдөл дамжуулах горим нэмэгдсэн. SFTP нь илүү урьдчилан таамаглах боломжтой нэр ашиглах аргуудыг ашигладаг бөгөөд нөгөө хостын бөмбөрцгийн хэв маягийн бүрхүүлийн боловсруулалтыг ашигладаггүй бөгөөд энэ нь аюулгүй байдлын асуудал үүсгэдэг. SFTP-г scp-д идэвхжүүлэхийн тулд "-s" тугийг санал болгосон боловч ирээдүйд анхдагч байдлаар энэ протокол руу шилжихээр төлөвлөж байна.
  • sftp-сервер нь scp-д шаардлагатай ~/ болон ~user/ замыг өргөтгөхийн тулд SFTP протоколын өргөтгөлүүдийг хэрэгжүүлдэг.
  • scp хэрэгсэл нь хоёр алсын хостын хооронд файл хуулах үед (жишээ нь, "scp host-a:/path host-b:") зан үйлийг өөрчилсөн бөгөөд үүнийг одоо "scp host-a:/path host-b:") зааж өгсөн шиг завсрын локал хостоор дамжуулан анхдагчаар хийдэг. -3” туг. Энэхүү арга нь шаардлагагүй итгэмжлэлийг эхний хост руу дамжуулахаас зайлсхийх, бүрхүүл дэх файлын нэрийг гурав дахин тайлбарлах (эх сурвалж, очих газар, дотоод системийн тал дээр) бөгөөд SFTP ашиглах үед алсын удирдлагад хандах үед баталгаажуулалтын бүх аргыг ашиглах боломжийг олгодог. зөвхөн интерактив бус аргуудаас гадна хостууд . Хуучин зан төлөвийг сэргээхийн тулд "-R" сонголтыг нэмсэн.
  • "-f" тугтай харгалзах ssh-д ForkAfterAuthentication тохиргоог нэмсэн.
  • "-n" тугтай харгалзах StdinNull тохиргоог ssh-д нэмсэн.
  • SessionType тохиргоог ssh-д нэмсэн бөгөөд үүгээр дамжуулан та "-N" (сесс байхгүй) болон "-s" (дэд систем) тугуудад тохирох горимуудыг тохируулах боломжтой.
  • ssh-keygen нь түлхүүр файлуудын хүчинтэй байх хугацааг зааж өгөх боломжийг танд олгоно.
  • sshsig гарын үсгийн нэг хэсэг болгон нийтийн түлхүүрийг бүрэн хэвлэхийн тулд ssh-keygen дээр "-Oprint-pubkey" тугийг нэмсэн.
  • Ssh болон sshd-д үйлчлүүлэгч болон сервер хоёулаа хашилт, зай, зугтах тэмдэгтүүдийг зохицуулах бүрхүүлтэй төстэй дүрмийг ашигладаг илүү хязгаарлагдмал тохиргооны файл задлагч ашиглахаар шилжсэн. Шинэ задлан шинжлэгч нь сонголтууд дахь аргументуудыг орхих (жишээлбэл, DenyUsers удирдамжийг цаашид хоосон үлдээх боломжгүй), хаалтгүй хашилт, олон = тэмдэгтийг зааж өгөх гэх мэт өмнө нь хийсэн таамаглалуудыг үл тоомсорлодоггүй.
  • Түлхүүрүүдийг баталгаажуулахдаа SSHFP DNS бичлэгүүдийг ашиглах үед ssh нь зөвхөн тоон гарын үсгийн тодорхой төрлийг агуулсан бүх бичлэгийг шалгахгүй.
  • ssh-keygen-д -Ochallenge сонголтоор FIDO түлхүүр үүсгэх үед libfido2 гэхээсээ илүү 32 байт-аас том буюу түүнээс бага сорилтын дарааллыг ашиглах боломжийг олгодог хийцтэй давхаргыг хэш болгоход ашигладаг.
  • Sshd-д, authorized_keys файлууд дахь орчны = "..." удирдамжийг боловсруулах үед эхний тохирлыг одоо зөвшөөрч, 1024 орчны хувьсагчийн нэрийн хязгаартай.

OpenSSH хөгжүүлэгчид мөн өгөгдсөн угтвартай мөргөлдөөний халдлагын үр ашиг нэмэгдсэнтэй холбоотойгоор SHA-1 хэш ашиглан алгоритмуудыг задлах талаар анхааруулсан (мөргөлдөөнийг сонгох зардал нь ойролцоогоор 50 мянган доллар гэж тооцогддог). Дараагийн хувилбарт бид SSH протоколын анхны RFC-д дурдсан, практикт өргөн хэрэглэгдэж байгаа "ssh-rsa" дижитал гарын үсэг бүхий нийтийн түлхүүр алгоритмыг ашиглах боломжийг анхдагч байдлаар идэвхгүй болгохоор төлөвлөж байна.

Та өөрийн систем дээр ssh-rsa-г ашиглахыг шалгахын тулд “-oHostKeyAlgorithms=-ssh-rsa” сонголтоор ssh-ээр холбогдож үзээрэй. Үүний зэрэгцээ, "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-д ашиглагдах ёсгүй; түлхүүр нь зөвхөн нэг нэрийн дор байх ёстой; хост түлхүүрийн гэрчилгээг ашиглах ёсгүй; know_hosts-д хостын нэрээр маск хэрэглэж болохгүй; VerifyHostKeyDNS тохиргоог идэвхгүй болгосон байх ёстой; UserKnownHostsFile параметр идэвхтэй байх ёстой.

Шилжүүлэхэд санал болгож буй алгоритмууд нь RFC2 RSA SHA-256 (OpenSSH 512-с хойш дэмжигдсэн бөгөөд анхдагчаар ашиглагддаг), ssh-ed8332 (OpenSSH 2-аас хойш дэмжигдсэн) болон ecdsa-sha7.2-nistp25519/6.5 дээр суурилсан rsa-sha2-256/384 орно. RFC521 ECDSA дээр (OpenSSH 5656-с хойш дэмжигддэг).

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх