Selles protokollis peavad kasutajad olema autentitud. Nad saavad seda teha paroolide, privaatseid RSA-võtmeid sisaldavate failide, riistvaraseadmetega nagu Ledger Nano S ja Ledger Nano X jne.
Mõned autentimisvahendid on turvalisemad kui teised: privaatvõtme salvestamiseks loodud riistvaraseade, ilma et oleks võimalik seda kunagi välja võtta, on turvalisem kui privaatvõtme failis salvestamine. Kahjuks on kõige turvalisemate kasutamine ka valutum. Kasutajad, kellel on seadme võtmed, peavad seadet endaga kaasas kandma, sisestama oma PIN-koodi iga kord, kui nad SSH-seansi alustavad jne. See muudab paroolidest ja failidest turvalisemate viiside propageerimise üsna keeruliseks kasutamiseks juhtudel, kui juurdepääsu turvalisus ei ole prioriteet.
Seega tekib küsimus: kas autentimismaterjali on võimalik salvestada turvalisemalt kui failis (mille mõni pahavara võib varastada), ilma kasutajakogemust muutmata?
Ja vastus on: jah, kasutades TPM-i!
Mingi ajalugu
Juba mõnda aega on arvutid saanud turvakiibi otse manustada. See kiip, mille nimi on Trusted Platform Module (TPM), pakub palju funktsioone, sealhulgas võimalust kaitsta avaliku võtme krüptograafias kasutatavaid privaatvõtmeid.
Kuna see on arvutitesse sisseehitatud, ei pea selle kasutamiseks seadet arvutisse ühendama. Seetõttu peetakse seda vähem turvaliseks kui riistvaraseadet, mida saab hoida arvutist erinevas kohas (see võimaldab rakendada põhimõtet, et kui seade pole arvutiga ühendatud, ei saa ükski pahavara sellesse salvestatud saladusi kasutada).
Nii et TPM ei ole “parim turvalisus”, kuid see on siiski palju turvalisem kui selliste failide kasutamine nagu $HOME/.ssh/id_rsa
privaatvõtmete salvestamiseks.
Kuidas saab TPM-i kasutada Linuxis OpenSSH-ga? Projektiga nimega tpm2-pkcs11
, järgides juhiseid, mis on juba aastaid saadaval paljudel veebisaitidel, sealhulgas veebisaidil ametlikku dokumentatsiooni oma koodihoidlast.
Mis uudised nüüd on? See tarkvara on nüüd lõpuks pakitud Ubuntu ja Debiani, mis teeb selle lõpuks kättesaadavaks enamikule Linuxi kasutajatele!
Täpsemalt on siin ajaskaala:
- 2014. aastal avaldati TPM 2.0 peamised spetsifikatsioonid. Tarkvarast TPM-iga suhtlemiseks tehti standardimispüüdlusi ja loodi kaks kokkusobimatut tarkvarapakki: Trusted Computing Groupi (TCG) üks, nn. TPM tarkvara pinu (TSS) ja IBMi oma, mida nimetatakse ka TPM tarkvara pinu.
- 2018. aastal projekt
tpm2-pkcs11
loodi selleks, et pakkuda PKCS#11 liidest TPM 2.0-le, kasutades TCG TSS-i. PKCS nr 11 on standard, mis määratleb rakenduse programmeerimisliidese (API). Krüptoki kasutada krüptovõtmeid salvestavaid märke. Kuna OpenSSH toetas kasutaja autentimiseks liidese PKCS#11 kasutamist, võimaldas see kasutada TPM-i SSH autentimiseks kasutatavate võtmete salvestamiseks. - Veebruaris 2019
tpm2-pkcs11
lisati Fedora 29. - Septembris 2019 ilmus CentOS 8 koos selle paketiga.
- Aprillis 2020
tpm2-pkcs11
lisati Debiani sid. Kahjuks see programm ei sisaldanudtpm2_ptool
mis on vajalik võtmete lihtsaks loomiseks. Sellest probleemist teatati aastal Debiani viga #968310. - Jaanuaris 2021 oli Debiani pakett fikseeritud (ja hooldaja tunnustas minu abi!).
- Aprillis 2021 Ubuntu 21.04 Hirsute jõehobu vabastati koos fikseeritud pakett.
- 2021. aasta augustis ilmus Debian 11 Täpp vabastati koos fikseeritud pakett
Nüüd tpm2-pkcs11
on saadaval Debianis, Ubuntus ja mitmes teises loetletud Linuxi distributsioonis Repoloogia.
Kasutades tpm2-pkcs11
Debian 11 puhul on TPM-i turvaliselt salvestatud uue SSH-võtme genereerimiseks ja kasutamiseks järgmised sammud.
- Installi käsk
tpm2_ptool
ja raamatukogulibtpm2_pkcs11.so.1
, mida pakuvad kaks paketti:
2. Kontrollige, kas süsteem saab kasutada TPM 2.0. Kui üks järgmistest kontrollimistest ebaõnnestub, võib see tähendada, et süsteemil ei ole TPM-i või on TPM 1.2 või TPM 2.0, mis on BIOS-i sätetes keelatud.
3. Lisage praegune kasutaja gruppi, kellel on juurdepääs TPM-seadmele /dev/tpmrm0
. Debianis ja Ubuntus peavad kasutajad kuuluma gruppi nimega tss
(tänu pakutavale konfiguratsioonile tpm-udev
pakend). Järgmine käsk lisab praeguse kasutaja sellesse rühma:
Initsialiseerige parooliga kaitstud kasutajapood ja a SOPIN ja looge võti, näiteks elliptilise kõvera klahv kõverale nimega "NIST P-256" (tuntud ka kui "secp256r1"):
4. Akronüüm SOPIN vahendid Turvaametniku isikukood ja see on PKCS#11 spetsifikatsiooni kontseptsioon. Lihtsatel kasutusjuhtudel võib seda vaadelda kui "taasteparooli", mis võimaldab parooli muuta näiteks siis, kui see on kadunud.
5. Kuvage selle uue võtme avalik võti:
6. Konfigureerige uus avalik võti serveris, näiteks kirjutades selle sisse $HOME/.ssh/authorized_keys
või GitHubi konto seadetes või mõnes muus kohas, kus kasutatakse SSH avalikke võtmeid.
7. Konfigureerige SSH-klient kasutamiseks tpm2-pkcs11
serveriga ühenduse loomiseks, näiteks selle sisse kirjutades $HOME/.ssh/config
(kliendi pool):
Ühendage serveriga (NB: eelmise sammu võib vahele jätta:
Tuleviku töö
Eelmises jaotises kirjeldati, kuidas TPM-is uut võtit luua. Kuigi see võimaldab kasutada TPM-i SSH autentimise kaitsmiseks, on vaja kahte funktsiooni, et muuta see tõeliseks alternatiiviks failide kasutamisele privaatvõtmete salvestamiseks:
- Funktsioon nr 1: olemasolevate SSH-võtmete importimine TPM-i uute loomise asemel (mis võimaldab sujuvat üleminekut TPM-i salvestusruumile, võtmete varundamist, kui arvuti läheb katki või kaob jne).
- Funktsioon nr 2: SSH-võtmete kasutamine ilma paroolita, näiteks kaitsmata privaatvõtmefailid (see funktsioon on võtmefailidest turvalisem, kuna kaitstud võtit ei saa TPM-ist välja võtta).
Rakendasin mõlemad funktsioonid sisse tpm2-pkcs11
ja esitas need Pull Requests'is #681 ja #695. Funktsiooni nr 1 esitleti ka mais iganädalase veebikõne ajal tpm.dev kogukond ja salvestis on saadaval https://developers.tpm.dev/posts/14389750.
Seega on mõlemad funktsioonid tõenäoliselt saadaval tulevases versioonis tpm2-pkcs11
.
Muide, uudishimulikele lugejatele, kes soovivad mõista selle sisu tpm2-pkcs11
, avaldasin nende kohta artikli SSIC 2021 konverentsil nimega SSH autentimise kaitsmine TPM 2.0 abil (artikkel inglise keeles, esitlus prantsuse keeles). Lisaks võiksid lugejad, kes soovivad proovida asju ilma tõelist TPM-i puudutamata, olla huvitatud selle artikli jaotisest "TPM 2.0 emuleerimine".
(Illustratsioon: Rainer Knäpper, tasuta kunstilitsents)
- SEO-põhise sisu ja PR-levi. Võimenduge juba täna.
- PlatoAiStream. Web3 andmete luure. Täiustatud teadmised. Juurdepääs siia.
- Tuleviku rahapaja Adryenn Ashley. Juurdepääs siia.
- Ostke ja müüge IPO-eelsete ettevõtete aktsiaid koos PREIPO®-ga. Juurdepääs siia.
- Allikas: https://www.ledger.com/blog/ssh-with-tpm
- :on
- :on
- :mitte
- : kus
- $ UP
- 1
- 11
- 13
- 14
- 15%
- 2014
- 2018
- 2019
- 2020
- 2021
- 30
- 8
- 80
- a
- võime
- Võimalik
- MEIST
- juurdepääs
- konto
- tunnustatud
- lisama
- lisatud
- Lisab
- advokaat
- Ka
- alternatiiv
- an
- ja
- vastus
- mistahes
- API
- taotlus
- Aprill
- OLEME
- kunst
- artikkel
- AS
- At
- AUGUST
- autenditud
- Autentimine
- saadaval
- toetus
- BE
- muutuma
- olnud
- mõlemad
- Katki
- Bug
- kuid
- by
- helistama
- CAN
- ei saa
- viima
- juhul
- juhtudel
- CGI
- muutuv
- kontrollima
- Kontroll
- kiip
- klient
- kood
- arvuti
- arvutid
- arvutustehnika
- mõiste
- Konverents
- konfiguratsioon
- Võta meiega ühendust
- seotud
- kaaluda
- võiks
- looma
- loodud
- loomine
- krüptograafia
- krüptograafia
- uudishimulik
- Praegune
- kõver
- Määratleb
- kavandatud
- dev
- seade
- seadmed
- DID
- erinev
- raske
- otse
- blokeeritud
- Ekraan
- Väljamaksed
- do
- dokumentatsioon
- ei
- ajal
- kergesti
- jõupingutusi
- Elliptiline
- Embed
- varjatud
- lubatud
- võimaldab
- jõustamisel
- Inglise
- jms
- KUNAGI
- Iga
- näide
- olemasolevate
- kogemus
- väljavõte
- ei
- tunnusjoon
- FUNKTSIOONID
- Veebruar
- fail
- Faile
- Lõpuks
- fikseeritud
- Järel
- eest
- tasuta
- prantsuse
- Alates
- tulevik
- tekitama
- GitHub
- Grupp
- riistvara
- riistvaraseade
- riistvaraseadmed
- Olema
- siin
- Kuidas
- Kuidas
- HTML
- http
- HTTPS
- i
- IBM
- Identifitseerimine
- if
- rakendatud
- importivate
- in
- Kaasa arvatud
- Sobimatu
- algatama
- selle asemel
- juhised
- suhelda
- huvitatud
- Interface
- sisse
- probleem
- IT
- ITS
- Jaanuar
- jaanuar 2021
- jpg
- Võti
- võtmed
- teatud
- pearaamat
- Ledger Nano
- Ledger Nano S
- Pearaamat Nano X
- vähem
- nagu
- Tõenäoliselt
- Linux
- Loetletud
- liising
- kadunud
- põhiline
- tegema
- TEEB
- Tegemine
- malware
- palju
- materjal
- max laiuse
- mai..
- keskmine
- vahendid
- moodul
- rohkem
- Pealegi
- kõige
- palju
- my
- Nimega
- nano
- vajalik
- Vajadus
- vaja
- Uus
- uudised
- ei
- nüüd
- of
- Ohvitser
- on
- ONE
- ones
- Internetis
- or
- et
- Muu
- teised
- pakend
- pakendatud
- pakette
- valus
- Parool
- paroolid
- täitma
- isiklik
- Koht
- inimesele
- Platon
- Platoni andmete intelligentsus
- PlatoData
- pistik
- võimalik
- täpselt
- esitlus
- esitatud
- eelmine
- põhimõte
- prioriteet
- era-
- Private Key
- Privaatvõtmed
- Programming
- projekt
- kaitsma
- kaitstud
- kaitsta
- protokoll
- anda
- tingimusel
- annab
- avalik
- avaliku võtme
- avalikud võtmed
- avaldatud
- küsimus
- lugejad
- reaalne
- salvestamine
- vabastama
- vabastatud
- Teatatud
- nõutav
- RSA
- s
- Osa
- kindlustama
- kindlalt
- turvalisus
- nähtud
- September
- istung
- seaded
- mitu
- külg
- lihtne
- So
- tarkvara
- mõned
- täpsustus
- spetsifikatsioonid
- Hoidla
- standard
- Samm
- Sammud
- Veel
- varastatud
- ladustamine
- salvestada
- ladustatud
- esitatud
- selline
- Toetatud
- süsteem
- kui
- tänan
- et
- .
- Nädalaleht
- oma
- Neile
- Seal.
- seetõttu
- nad
- asjad
- see
- aeg
- ajakava
- et
- märgid
- liigutav
- üleminek
- Usaldatud
- püüdma
- kaks
- tüüp
- Ubuntu
- mõistma
- kahjuks
- kasutama
- Kasutatud
- Kasutaja
- User Experience
- Kasutajad
- kasutamine
- tahan
- oli
- Tee..
- kuidas
- veebilehed
- iga nädal
- olid
- millal
- mis
- kuigi
- WHO
- koos
- ilma
- kirjutamine
- X
- aastat
- jah
- sephyrnet