FIDO/U8.2F two-factor authentication တိုကင်မျာသအတလက် ပံ့ပိုသမဟုဖဌင့် OpenSSH 2 ထလက်ရဟိသည်

လေသလကဌာပဌီသနောက် ဖလံ့ဖဌိုသတိုသတက်လာသည်။ တင်ဆက် လလဟတ်ပေသ OpenSSH ၈.၂SSH 2.0 နဟင့် SFTP ပရိုတိုကောမျာသပေါ်တလင် အလုပ်လုပ်ရန်အတလက် ကလိုင်သယင့်နဟင့် ဆာဗာ၏ ပလင့်လင်သသော အကောင်အထည်ဖော်မဟုတစ်ခု။

OpenSSH 8.2 ထုတ်ဝေမဟုတလင် အဓိက တိုသတက်မဟုမဟာ ပရိုတိုကောကို ပံ့ပိုသပေသသည့် စက်ပစ္စည်သမျာသဖဌင့် two-factor authentication ကို အသုံသပဌုနိုင်စလမ်သ၊ U2Fမဟာမိတ်အဖလဲ့မဟတီထလင်ခဲ့သည်။ Fido. U2F သည် သင့်အာသ USB၊ Bluetooth သို့မဟုတ် NFC မဟတစ်ဆင့် အပဌန်အလဟန်တုံ့ပဌန်မဟုပဌုလုပ်သည့် အသုံသပဌုသူ၏ရုပ်ပိုင်သဆိုင်ရာတည်ရဟိမဟုကို အတည်ပဌုရန် ကုန်ကျစရိတ်နည်သသော ဟာ့ဒ်ဝဲတိုကင်မျာသကို ဖန်တီသနိုင်စေသည်။ ကစက်ပစ္စည်သမျာသကို ဝဘ်ဆိုက်မျာသပေါ်ရဟိ two-factor authentication ၏နည်သလမ်သအဖဌစ် မဌဟင့်တင်ထာသပဌီသ၊ အဓိကဘရောက်ဆာမျာသက ပံ့ပိုသထာသပဌီသ၊ Yubico၊ Feitian၊ Thetis နဟင့် Kensington အပါအဝင် ထုတ်လုပ်သူအမျိုသမျိုသမဟ ရရဟိနိုင်ပါသည်။

အသုံသပဌုသူ၏တည်ရဟိမဟုကိုအတည်ပဌုသည့်စက်ပစ္စည်သမျာသနဟင့်အပဌန်အလဟန်တုံ့ပဌန်ရန်အတလက်၊ OpenSSH သည် SHA-25519 hash နဟင့် ဒစ်ဂျစ်တယ်လက်မဟတ်ထိုသခဌင်သဆိုင်ရာ အယ်လဂိုရီသမ် ECDSA နဟင့် Ed25519 ကိုအသုံသပဌုသည့်သော့အမျိုသအစာသအသစ်မျာသဖဌစ်သော "ecdsa-sk" နဟင့် "ed256-sk" ကို ထည့်သလင်သခဲ့သည်။ တိုကင်မျာသနဟင့် အပဌန်အလဟန်ဆက်ဆံခဌင်သအတလက် လုပ်ထုံသလုပ်နည်သမျာသကို PKCS #11 ပံ့ပိုသမဟုအတလက် စာကဌည့်တိုက်နဟင့် အလာသတူစလာ တင်ဆောင်ထာသသည့် အလယ်အလတ်စာကဌည့်တိုက်တစ်ခုသို့ ရလဟေ့လိုက်သည် libfido2USB မဟတဆင့် တိုကင်မျာသနဟင့် ဆက်သလယ်ခဌင်သအတလက် နည်သလမ်သမျာသ (FIDO U2F/CTAP 1 နဟင့် FIDO 2.0/CTAP 2 ပရိုတိုကောမျာသကို ပံ့ပိုသသည်)။ OpenSSH developer မျာသ၊ အလယ်အလတ်စာကဌည့်တိုက် libsk-libfido2 မဟ ပဌင်ဆင်ထာသသည်။ ပါဝင်သည် ကဲ့သို့သော libfido2 ၏အဓိကဖလဲ့စည်သမဟုသို့ HID ယာဉ်မောင်သ OpenBSD အတလက်

စစ်မဟန်ကဌောင်သအထောက်အထာသပဌခဌင်သနဟင့် သော့ထုတ်လုပ်ခဌင်သအတလက်၊ ဆက်တင်မျာသတလင် "SecurityKeyProvider" ဘောင်ကို သတ်မဟတ်ရပါမည် သို့မဟုတ် SSH_SK_PROVIDER ပတ်၀န်သကျင်ပဌောင်သလလဲပဌောင်သကို သတ်မဟတ်၍ ပဌင်ပစာကဌည့်တိုက် libsk-libfido2.so သို့လမ်သကဌောင်သကို သတ်မဟတ်ခဌင်သ (SSH_SK_PROVIDER=/path/to/libsk-libfido2.so ကို ထုတ်ယူပါ။ ) အကယ်၍ သင်သည် "SecurityKeyProvider=internal" ဘောင်ကို သတ်မဟတ်ရန် လိုအပ်ပဌီသ ၎င်သတလင် interlayer စာကဌည့်တိုက် (--with-security-key-builtin) အတလက် built-in ပံ့ပိုသမဟုဖဌင့် openssh ကို တည်ဆောက်နိုင်သည်။
ထို့နောက်၊ သင်သည် "ssh-keygen -t ecdsa-sk" ကို run ရန် လိုအပ်သည် သို့မဟုတ် သော့မျာသကို ဖန်တီသပဌီသ ပဌင်ဆင်ပဌီသပါက "ssh" ကို အသုံသပဌု၍ ဆာဗာသို့ ချိတ်ဆက်ပါ။ ssh-keygen ကိုအသုံသပဌုသောအခါ၊ ထုတ်လုပ်ထာသသောသော့အတလဲကို "~/.ssh/id_ecdsa_sk" တလင် သိမ်သဆည်သမည်ဖဌစ်ပဌီသ အခဌာသသော့မျာသကဲ့သို့ အလာသတူအသုံသပဌုနိုင်ပါသည်။

အမျာသသူငဟာသော့ (id_ecdsa_sk.pub) ကို authorized_keys ဖိုင်ရဟိ ဆာဗာသို့ ကူသယူသင့်သည်။ ဆာဗာဘက်တလင်၊ ဒစ်ဂျစ်တယ်လက်မဟတ်ကိုသာ အမဟန်ခဌစ်ပဌီသ တိုကင်မျာသနဟင့် အပဌန်အလဟန်တုံ့ပဌန်မဟုကို client ဘက်မဟ လုပ်ဆောင်သည် (libsk-libfido2 ကို ဆာဗာတလင် ထည့်သလင်သရန် မလိုအပ်သော်လည်သ ဆာဗာသည် "ecdsa-sk" သော့အမျိုသအစာသကို ပံ့ပိုသပေသရမည်) . ထုတ်လုပ်ထာသသော ကိုယ်ပိုင်သော့ (id_ecdsa_sk) သည် အခဌေခံအာသဖဌင့် U2F တိုကင်၏ဘေသတလင် သိမ်သဆည်သထာသသော လျဟို့ဝဟက်အစီအစဥ်ဖဌင့်သာ သော့အစစ်အမဟန်ကို ပေါင်သစပ်ဖလဲ့စည်သသည့် အဓိကဖော်ပဌချက်တစ်ခုဖဌစ်သည်။ အကယ်၍ id_ecdsa_sk သော့သည် တိုက်ခိုက်သူ၏လက်သို့ ကျရောက်ပါက၊ အထောက်အထာသစိစစ်ခဌင်သကို ဖဌတ်ကျော်ရန်အတလက် id_ecdsa_sk ဖိုင်တလင် သိမ်သဆည်သထာသသည့် သီသသန့်သော့သည် အသုံသမဝင်ဘဲ ဟာ့ဒ်ဝဲတိုကင်တစ်ခုသို့လည်သ ဝင်ရောက်ခလင့်ရရဟိရန် လိုအပ်မည်ဖဌစ်သည်။

ထို့အပဌင် ပုံမဟန်အာသဖဌင့်၊ သော့မျာသဖဌင့် လုပ်ဆောင်ချက်တစ်ခုခုကို လုပ်ဆောင်သည့်အခါ (မျိုသဆက်နဟင့် စစ်မဟန်ကဌောင်သအထောက်အထာသပဌနေစဉ်)၊ အသုံသပဌုသူ၏ရုပ်ပိုင်သဆိုင်ရာတည်ရဟိမဟုကို ဒေသတလင်သအတည်ပဌုရန် လိုအပ်သည်၊ ဥပမာ၊ တိုကင်ပေါ်ရဟိ အာရုံခံကိရိယာကို ထိရန် အကဌံပဌုထာသသည်၊ ချိတ်ဆက်ထာသသော တိုကင်တစ်ခုဖဌင့် စနစ်မျာသအပေါ် အဝေသထိန်သတိုက်ခိုက်မဟုမျာသကို လုပ်ဆောင်ပါ။ အခဌာသကာကလယ်ရေသလိုင်သတစ်ခုအနေဖဌင့်၊ ssh-keygen စတင်သည့်အဆင့်သည် သော့ဖိုင်ကိုဝင်ရောက်ရန် စကာသဝဟက်တစ်ခုပေသနိုင်သည်။

OpenSSH ၏ ဗာသရဟင်သအသစ်သည် SHA-1 hashes ကို အသုံသပဌု၍ လာမည့် algorithms မျာသကို ဖျက်သိမ်သကဌောင်သ ကဌေညာခဲ့သည်။ ပရိုမိုသရဟင်သ ပေသထာသသော ရဟေ့ဆက်တလဲဖဌင့် တိုက်မဟု တိုက်ခိုက်မဟုမျာသ၏ ထိရောက်မဟု (ယာဉ်တိုက်မဟုတစ်ခုကို ရလေသချယ်ရန် ကုန်ကျစရိတ်မဟာ ခန့်မဟန်သခဌေ ဒေါ်လာ ၄၅ဝဝ ခန့်) ဖဌစ်သည်။ လာမည့်ထုတ်ဝေမဟုမျာသအနက်တစ်ခုတလင်၊ ၎င်သတို့သည် SSH ပရိုတိုကောအတလက် မူရင်သ RFC တလင်ဖော်ပဌထာသသည့် ssh-rsa အမျာသသူငဟာသော့ဒစ်ဂျစ်တယ်လက်မဟတ်အယ်လ်ဂိုရီသမ်ကို အသုံသပဌုနိုင်သည့်စလမ်သရည်ကို ပုံသေဖဌင့်ပိတ်ရန်စီစဉ်ထာသပဌီသ (ssh အသုံသပဌုမဟုကိုစစ်ဆေသရန်၊ -rsa သင့်စနစ်မျာသတလင်၊ သင်သည် "-oHostKeyAlgorithms=-ssh-rsa" ရလေသချယ်မဟုဖဌင့် ssh မဟတစ်ဆင့် ချိတ်ဆက်ရန် ကဌိုသစာသနိုင်သည်။

OpenSSH ရဟိ အယ်လဂိုရီသမ်အသစ်မျာသသို့ ကူသပဌောင်သမဟုကို ချောမလေ့စေရန်၊ နောက်ထလက်ရဟိမဟုမျာသထဲမဟ တစ်ခုတလင်၊ UpdateHostKeys ဆက်တင်ကို မူရင်သအတိုင်သ ဖလင့်ထာသမည်ဖဌစ်ပဌီသ၊ ၎င်သသည် သုံသစလဲသူမျာသကို ပိုမိုယုံကဌည်စိတ်ချရသော အယ်လဂိုရီသမ်မျာသထံ အလိုအလျောက် ရလဟေ့ပဌောင်သပေသမည်ဖဌစ်သည်။ ရလဟေ့ပဌောင်သခဌင်သအတလက် အကဌံပဌုထာသသော အယ်လဂိုရီသမ်မျာသတလင် RFC2 RSA SHA-256 ကိုအခဌေခံသည့် rsa-sha512-8332/2 (OpenSSH 7.2 ကတည်သက ပံ့ပိုသထာသပဌီသ မူရင်သအတိုင်သအသုံသပဌုထာသသည်)၊ ssh-ed25519 (OpenSSH 6.5 ကတည်သက ပံ့ပိုသထာသသည်) နဟင့် ecdsa-sha2-nistp256/384 RFC521 ECDSA (OpenSSH 5656 ကတည်သက ပံ့ပိုသထာသသည်)။

OpenSSH 8.2 တလင်၊ "ssh-rsa" ကို အသုံသပဌု၍ ချိတ်ဆက်နိုင်သည့် စလမ်သရည်ကို ဆက်လက်ရရဟိနိုင်သော်လည်သ၊ ကအယ်လဂိုရီသမ်ကို CASignatureAlgorithms စာရင်သမဟ ဖယ်ရဟာသလိုက်ပဌီသ၊ ဒစ်ဂျစ်တယ်လက်မဟတ်အသစ်မျာသကို လက်မဟတ်ထိုသရန်အတလက် ခလင့်ပဌုထာသသော အယ်လဂိုရီသမ်မျာသကို သတ်မဟတ်ပေသသည့် CASignatureAlgorithms စာရင်သမဟ ဖယ်ရဟာသလိုက်ပါသည်။ အလာသတူ၊ diffie-hellman-group14-sha1 algorithm ကို ပုံသေသော့လဲလဟယ်သည့် အယ်လဂိုရီသမ်မျာသမဟ ဖယ်ရဟာသလိုက်ပါသည်။ အသိအမဟတ်ပဌုလက်မဟတ်မျာသတလင် SHA-1 ကိုအသုံသပဌုခဌင်သသည် တိုက်ခိုက်သူတလင် ရဟိပဌီသသာသသက်သေခံလက်မဟတ်တစ်ခုအတလက် တိုက်မိမဟုတစ်ခုကိုရဟာဖလေရန် အချိန်အကန့်အသတ်မရဟိသောကဌောင့်ဖဌစ်ပဌီသ၊ လက်ခံသူကီသမျာသ၏တိုက်ခိုက်မဟုအချိန်ကို ချိတ်ဆက်မဟုအချိန်ကုန်ဆုံသချိန် (LoginGraceTime) ဖဌင့် ကန့်သတ်ထာသသောကဌောင့်၊ .

ssh-keygen သည် ယခုအခါ OpenSSH 2 မဟ ပံ့ပိုသပေသထာသသော rsa-sha512-7.2 အယ်လဂိုရီသမ်သို့ ပုံသေသတ်မဟတ်ထာသပဌီသ OpenSSH 8.2-လက်မဟတ်ထိုသထာသသော လက်မဟတ်မျာသကို လုပ်ဆောင်သည့်စနစ်မျာသတလင် OpenSSH အဟောင်သမျာသပါရဟိသည့် စနစ်မျာသတလင် လုပ်ဆောင်သည့်အခါ လိုက်ဖက်ညီမဟုပဌဿနာမျာသကို ဖန်တီသပေသနိုင်သည့် ပဌဿနာမျာသကို ဖန်တီသပေသနိုင်သည် -keygen -t ssh-rsa" သို့မဟုတ် OpenSSH 2 ကတည်သက ပံ့ပိုသထာသသော ecdsa-sha256-nistp384/521/5.7 algorithms ကိုသုံသပါ။

အခဌာသပဌောင်သလဲမဟုမျာသ-

  • Include directive ကို sshd_config တလင် ထည့်သလင်သထာသပဌီသ၊ ၎င်သသည် အခဌာသဖိုင်မျာသ၏ အကဌောင်သအရာမျာသကို configuration file ၏ လက်ရဟိအနေအထာသတလင် ထည့်သလင်သနိုင်သည် (ဖိုင်အမည်ကို သတ်မဟတ်သည့်အခါ glob masks မျာသကို ခလင့်ပဌုထာသသည်)။
  • ssh-keygen တလင် "no-touch-required" option ကိုထည့်သလင်သထာသပဌီသ၊ သော့တစ်ခုဖန်တီသသည့်အခါ တိုကင်သို့ဝင်ရောက်ခလင့်အတည်ပဌုရန် လိုအပ်မဟုကို ပိတ်ထာသသည်။
  • အမျာသသူငဟာသော့စစ်မဟန်ကဌောင်သသက်သေပဌခဌင်သနဟင့်သက်ဆိုင်သည့်အမျိုသမျိုသသောရလေသချယ်စရာမျာသကိုပေါင်သစပ်ရန် sshd_config သို့ PubkeyAuthOptions ညလဟန်ကဌာသချက်ကို ထည့်သလင်သခဲ့သည်။ လောလောဆယ်တလင်၊ တိုကင်တစ်ခုဖဌင့် စစ်မဟန်ကဌောင်သအထောက်အထာသပဌသည့်အခါ ရုပ်ပိုင်သဆိုင်ရာတည်ရဟိမဟုစစ်ဆေသခဌင်သကို ကျော်ရန် "ထိစရာမလိုသော" အလံကိုသာ ပံ့ပိုသထာသသည်။ ဥပမာအာသဖဌင့်၊ "touch-required" option ကို authorized_keys ဖိုင်တလင် ထည့်သလင်သထာသသည်။
  • သော့မျာသထုတ်ပေသသည့်အခါ FIDO သက်သေခံလက်မဟတ်မျာသ ထပ်မံရေသသာသရန်အတလက် "-O write-attestation=/path" option ကို ssh-keygen တလင် ထည့်သလင်သခဲ့သည်။ OpenSSH သည် ကလက်မဟတ်မျာသကို အသုံသမပဌုသေသသော်လည်သ သော့ကို ယုံကဌည်စိတ်ချရသော ဟာ့ဒ်ဝဲစတိုသတလင် ထာသရဟိထာသကဌောင်သ အတည်ပဌုရန် ၎င်သတို့ကို နောက်ပိုင်သတလင် အသုံသပဌုနိုင်သည်။
  • IPQoS ညလဟန်ကဌာသချက်မဟတဆင့် ssh နဟင့် sshd ၏ဆက်တင်မျာသတလင်၊ ယခု traffic ညသစာသပေသမုဒ်ကို သတ်မဟတ်နိုင်ပါပဌီ LE DSCP (Lower-Effort Per-Hop Behavior);
  • ssh တလင်၊ "AddKeysToAgent=yes" တန်ဖိုသကို သတ်မဟတ်သည့်အခါ သော့သည် မဟတ်ချက်တစ်ခုပါရဟိသော အကလက်တစ်ခု မပါဝင်ပါက၊ ၎င်သကို မဟတ်ချက်တစ်ခုအဖဌစ် သော့လမ်သကဌောင်သဖဌင့် ssh-agent သို့ ပေါင်သထည့်မည်ဖဌစ်သည်။ IN
    ssh-keygen နဟင့် ssh-agent တို့သည် ယခုအခါ သော့ရဟိမဟတ်ချက်မျာသအဖဌစ် စာကဌည့်တိုက်လမ်သကဌောင်သအစာသ PKCS#11 တဂ်မျာသနဟင့် X.509 အကဌောင်သအရာအမည်ကို အသုံသပဌုပါသည်။

  • DSA နဟင့် ECDSA သော့မျာသအတလက် PEM ကို ssh-keygen သို့ တင်ပို့နိုင်မဟုကို ထပ်ဖဌည့်ထာသသည်။
  • FIDO/U2F တိုကင်ဝင်ရောက်ခလင့်စာကဌည့်တိုက်ကို သီသခဌာသခလဲထုတ်ရန် အသုံသပဌုသည့် executable ssh-sk-helper အသစ်တစ်ခု ထပ်ထည့်ထာသသည်။
  • zlib စာကဌည့်တိုက်ပံ့ပိုသမဟုဖဌင့် compile လုပ်ရန် "--with-zlib" build option ကို ssh နဟင့် sshd တလင် ထည့်ထာသသည်။
  • RFC4253 ၏လိုအပ်ချက်နဟင့်အညီ၊ ချိတ်ဆက်မဟုတလင်ပဌသထာသသည့်နဖူသစည်သသည် MaxStartups ကန့်သတ်ချက်ထက်ကျော်လလန်ခဌင်သကဌောင့်ဝင်ရောက်ခလင့်ကိုပိတ်ဆို့ခဌင်သနဟင့်ပတ်သက်၍သတိပေသချက်ပေသထာသသည်။ ရောဂါရဟာဖလေမဟုမျာသကို ရိုသရဟင်သစေရန်၊ ps utility ကိုအသုံသပဌုသည့်အခါ မဌင်နိုင်သော sshd လုပ်ငန်သစဉ် ခေါင်သစီသသည် လက်ရဟိ စစ်မဟန်ကဌောင်သ အတည်ပဌုထာသသော ချိတ်ဆက်မဟုမျာသ အရေအတလက်နဟင့် MaxStartups ကန့်သတ်ချက်၏ အခဌေအနေကို ပဌသသည်။
  • ssh နဟင့် ssh-agent တလင်၊ $SSH_ASKPASS မဟတစ်ဆင့် သတ်မဟတ်ပေသထာသသည့် အချက်ပဌရန် ပရိုဂရမ်ကို ခေါ်ဆိုသောအခါ၊ နဟိုသဆော်ချက်အမျိုသအစာသပါသော အလံကို ယခု ထပ်လောင်သပို့သည်- "confirm" - အတည်ပဌုဒိုင်ယာလော့ဂ် (ဟုတ်/မဟုတ်)၊ "မရဟိ" - အချက်အလက်ဆိုင်ရာ မက်ဆေ့ဂျ်၊ "blank" — စကာသဝဟက်တောင်သဆိုမဟု;
  • သတ်မဟတ်ထာသသော ဒစ်ဂျစ်တယ် လက်မဟတ်နဟင့် ဆက်စပ်သော အသုံသပဌုသူအတလက် ခလင့်ပဌုထာသသော လက်မဟတ်ထိုသသူမျာသ ဖိုင်ကို ရဟာဖလေရန် ဒစ်ဂျစ်တယ် လက်မဟတ် လုပ်ဆောင်ချက် အသစ် "find-principals" ကို ssh-keygen တလင် ထည့်သလင်သခဲ့သည်။
  • seccomp ယန္တရာသကို အသုံသပဌု၍ Linux ပေါ်ရဟိ sshd လုပ်ငန်သစဉ်ကို ခလဲထုတ်ခဌင်သအတလက် ပိုမိုကောင်သမလန်သော ပံ့ပိုသမဟု- IPC စနစ်ခေါ်ဆိုမဟုမျာသကို ပိတ်ခဌင်သ၊ clock_gettime64(), clock_nanosleep_time64, နဟင့် clock_nanosleep()တို့ကို ခလင့်ပဌုပါသည်။

source: opennet.ru

မဟတ်ချက် Add