Við ávísum verklagi fyrir neyðaraðgang að SSH gestgjöfum með vélbúnaðarlykla

Við ávísum verklagi fyrir neyðaraðgang að SSH gestgjöfum með vélbúnaðarlykla

Í þessari færslu munum við þróa verklag fyrir neyðaraðgang að SSH gestgjöfum með því að nota öryggislykla vélbúnaðar án nettengingar. Þetta er bara ein nálgun og þú getur aðlagað hana að þínum þörfum. Við munum geyma SSH vottorðavaldið fyrir gestgjafa okkar á öryggislyklinum vélbúnaðar. Þetta kerfi mun virka á næstum öllum OpenSSH, þar á meðal SSH með stakri innskráningu.

Til hvers er þetta allt? Jæja, þetta er síðasta úrræði. Þetta er bakdyr sem gerir þér kleift að fá aðgang að þjóninum þínum þegar af einhverjum ástæðum ekkert annað virkar.

Af hverju að nota vottorð í stað opinberra/einkalykla fyrir neyðaraðgang?

  • Ólíkt opinberum lyklum geta vottorð haft mjög stuttan líftíma. Þú getur búið til vottorð sem gildir í 1 mínútu eða jafnvel 5 sekúndur. Eftir þetta tímabil verður vottorðið ónothæft fyrir nýjar tengingar. Þetta er tilvalið fyrir neyðaraðgang.
  • Þú getur búið til vottorð fyrir hvaða reikning sem er á gestgjöfunum þínum og, ef nauðsyn krefur, sent slík „einskiptis“ vottorð til samstarfsmanna.

Hvað þarftu

  • Vélbúnaðaröryggislyklar sem styðja heimilislykla.
    Heimilislyklar eru dulmálslyklar sem eru að öllu leyti geymdir innan öryggislykilsins. Stundum eru þau varin með tölustafi PIN. Hægt er að flytja opinbera hluta heimilislykilsins út úr öryggislyklinum, mögulega ásamt handfangi einkalykils. Til dæmis, Yubikey 5 röð USB lyklar styðja heimilislykla. Æskilegt er að þeir séu aðeins ætlaðir til neyðaraðgangs að hýsilnum. Fyrir þessa færslu mun ég aðeins nota einn lykil, en þú ættir að hafa einn til viðbótar fyrir öryggisafrit.
  • Öruggur staður til að geyma þessa lykla.
  • OpenSSH útgáfa 8.2 eða nýrri á staðbundinni tölvu og á netþjónunum sem þú vilt hafa neyðaraðgang að. Ubuntu 20.04 er með OpenSSH 8.2.
  • (valfrjálst, en mælt með) CLI tól til að athuga vottorð.

Þjálfun

Fyrst þarftu að búa til vottunaryfirvald sem verður staðsett á vélbúnaðaröryggislyklinum. Settu lykilinn í og ​​keyrðu:

$ ssh-keygen -t ecdsa-sk -f sk-user-ca -O resident -C [security key ID]

Sem athugasemd (-C) benti ég á [netvarið]svo þú gleymir ekki hvaða öryggislykli þessi vottunaraðili tilheyrir.

Auk þess að bæta lyklinum við Yubikey verða tvær skrár búnar til á staðnum:

  1. sk-user-ca, lyklahandfang sem vísar til einkalykilsins sem geymdur er í öryggislyklinum,
  2. sk-user-ca.pub, sem verður almenni lykillinn fyrir vottorðsyfirvaldið þitt.

En ekki hafa áhyggjur, Yubikey geymir annan einkalykil sem ekki er hægt að sækja. Því er allt áreiðanlegt hér.

Á vélum, sem rót, bættu (ef þú hefur ekki þegar) eftirfarandi við SSHD stillingarnar þínar (/etc/ssh/sshd_config):

TrustedUserCAKeys /etc/ssh/ca.pub

Bættu síðan almenningslyklinum (sk-user-ca.pub) við /etc/ssh/ca.pub á hýsilinn

Endurræstu púkann:

# /etc/init.d/ssh restart

Nú getum við reynt að fá aðgang að gestgjafanum. En fyrst þurfum við vottorð. Búðu til lyklapar sem verður tengt við vottorðið:

$ ssh-keygen -t ecdsa -f emergency

Vottorð og SSH pör
Stundum er freistandi að nota skírteini í staðinn fyrir opinbert/einka lykilpar. En vottorð eitt og sér er ekki nóg til að auðkenna notanda. Hvert vottorð hefur einnig einkalykil sem tengist því. Þess vegna þurfum við að búa til þetta „neyðar“ lyklapar áður en við gefum út vottorð. Það mikilvæga er að við sýnum þjóninum undirritaða vottorðið, sem gefur til kynna lyklaparið sem við höfum einkalykil fyrir.

Þannig að opinber lyklaskipti eru enn á lífi. Þetta virkar jafnvel með vottorðum. Vottorð útiloka einfaldlega þörfina fyrir að þjónninn geymi opinbera lykla.

Næst skaltu búa til vottorðið sjálft. Ég þarf ubuntu notendaheimild með 10 mínútna millibili. Þú getur gert það á þinn hátt.

$ ssh-keygen -s sk-user-ca -I test-key -n ubuntu -V -5m:+5m emergency

Þú verður beðinn um að undirrita vottorðið með fingrafarinu þínu. Þú getur bætt við fleiri notendanöfnum aðskilin með kommum, til dæmis -n ubuntu,carl,ec2-user

Það er það, nú ertu kominn með skírteini! Næst þarftu að tilgreina réttar heimildir:

$ chmod 600 emergency-cert.pub

Eftir þetta geturðu skoðað innihald vottorðsins þíns:

$ step ssh inspect emergency-cert.pub

Svona lítur minn út:

emergency-cert.pub
        Type: [email protected] user certificate
        Public key: ECDSA-CERT SHA256:EJSfzfQv1UK44/LOKhBbuh5oRMqxXGBSr+UAzA7cork
        Signing CA: SK-ECDSA SHA256:kLJ7xfTTPQN0G/IF2cq5TB3EitaV4k3XczcBZcLPQ0E
        Key ID: "test-key"
        Serial: 0
        Valid: from 2020-06-24T16:53:03 to 2020-06-24T17:03:03
        Principals:
                ubuntu
        Critical Options: (none)
        Extensions:
                permit-X11-forwarding
                permit-agent-forwarding
                permit-port-forwarding
                permit-pty
                permit-user-rc

Hér er almenningslykillinn neyðarlykillinn sem við bjuggum til og sk-user-ca er tengdur vottunaryfirvaldinu.

Að lokum erum við tilbúin til að keyra SSH skipunina:


$ ssh -i emergency ubuntu@my-hostname
ubuntu@my-hostname:~$

  1. Þú getur nú búið til vottorð fyrir hvaða notanda sem er á hýsil sem treystir vottunarvaldinu þínu.
  2. Þú getur fjarlægt neyðartilvik. Þú getur vistað sk-user-ca, en þú þarft ekki þar sem það er líka á öryggislyklinum. Þú gætir líka viljað fjarlægja upprunalega PEM almenningslykilinn frá gestgjöfunum þínum (til dæmis í ~/.ssh/authorized_keys fyrir ubuntu notandann) ef þú notaðir hann fyrir neyðaraðgang.

Neyðaraðgangur: Aðgerðaráætlun

Límdu öryggislykilinn og keyrðu skipunina:

$ ssh-add -K

Þetta mun bæta opinberum lykli og lyklalýsingu vottorðastofnunarinnar við SSH umboðsmanninn.

Flyttu nú út opinbera lykilinn til að búa til vottorð:

$ ssh-add -L | tail -1 > sk-user-ca.pub

Búðu til skírteini með fyrningardagsetningu, til dæmis ekki meira en klukkutíma:

$ ssh-keygen -t ecdsa -f emergency
$ ssh-keygen -Us sk-user-ca.pub -I test-key -n [username] -V -5m:+60m emergency
$ chmod 600 emergency-cert.pub

Og nú SSH aftur:

$ ssh -i emergency username@host

Ef .ssh/config skráin þín veldur einhverjum vandræðum við tengingu geturðu keyrt ssh með -F none valkostinum til að komast framhjá henni. Ef þú þarft að senda vottorð til samstarfsmanns er auðveldasti og öruggasti kosturinn Töfra ormagöng. Til að gera þetta þarftu aðeins tvær skrár - í okkar tilviki, neyðartilvik og neyðar-cert.pub.

Það sem mér líkar við þessa nálgun er vélbúnaðarstuðningurinn. Þú getur sett öryggislyklana þína í öryggishólf og þeir fara ekki neitt.

Um réttindi auglýsinga

Epískir netþjónar - Er ódýr VPS með öflugum örgjörvum frá AMD, CPU kjarnatíðni allt að 3.4 GHz. Hámarksuppsetning gerir þér kleift að leysa nánast hvaða vandamál sem er - 128 CPU kjarna, 512 GB vinnsluminni, 4000 GB NVMe. Gakktu til liðs við okkur!

Við ávísum verklagi fyrir neyðaraðgang að SSH gestgjöfum með vélbúnaðarlykla

Heimild: www.habr.com

Bæta við athugasemd