Päivittäminen MacOS Sierraksi rikkoo SSH-avaimesi ja lukitsee sinut pois omista palvelimista.

Älä päivitä macOS Sierraksi, jos sinulla on pilvipalvelin (AWS, Digital Ocean jne.) Lue tämä viesti ensin. Se opastaa sinut turvallisesti päivittämällä Sierraan ja SSH-avaimet.

Kuten monet kehittäjät, sain Applelta ilmoituksen, joka vetoaa minua asentamaan uuden macOS Sierran. Napsautin "muistuta minua huomenna" muutama päivä peräkkäin. Sitten lopulta luolasin yhden yön ennen nukkumaanmenoa.

Kun heräsin, en voinut enää käyttää Free Code Campin palvelimia. Kesti jonkin aikaa tajuamaan mitä tapahtui. Onneksi BerkeleyTrue ei ollut vielä päivittänyt ja pystyi lisäämään uudet SSH-avaimet.

On käynyt ilmi, että Apple päätti pakottaa hiljaa 2048-bittiset RSA-avaimet kaikille, mikä on ollut lievää haittaa joillekin ja sekava paniikki muille.

Jos mietit, miksi RSA-avaimet ovat turvallisempia kuin vanhat DSA-avaimet, ne eivät ole luonnostaan ​​niin. Mutta DSA-avaimet voivat yleensä olla vain 1024 bittiä, kun taas RSA-avaimet voivat olla pidempiä, mikä pätee Sierran oletusarvoisiin 2048-bittisiin RSA-avaimiin. Nämä ylimääräiset bitit tekevät näistä uusista avaimista huomattavasti vaikeampi murtaa.

Määritetään uusi 2048-bittinen RSA SSH -avaimesi.

Vaihe 1: Poista vanha avain ja luo uusi

Ensinnäkin tarkistetaan ja varmistetaan, että tarvitset todella uuden avaimen.

Avaa päätelaite ja kirjoita:

ssh-keygen -l -f ~/.ssh/id_rsa.pub

Jos kehote vastaa merkkijonoa, joka alkaa kirjaimella ”2048 SHA256”, olet valmis, eikä sinun tarvitse tehdä muita toimia.

Muussa tapauksessa luo uusi avain suorittamalla:

ssh-keygen -t rsa

Kehotteen tulisi vastata:

Generating public/private rsa key pair.Enter file in which to save the key (/Users/freecodecamp/.ssh/id_rsa):

Voit vain painaa enter tallentaaksesi sen oletussijaintiin. Huomaa, että tämä korvaa vanhan (rikki) avaimesi.

Enter passphrase (empty for no passphrase):

Voit jättää tämän tyhjäksi tai lisätä salasanan hieman ylimääräistä turvallisuutta (ja paljon enemmän kirjoittamista) varten.

Sitten saat hienon satunnaisen "taiteen", joka näyttää aina olevan joulukuusi muotoinen:

Varmista nyt, että avaimellasi on oikeat käyttöoikeudet suorittamalla:

sudo chmod 600 ~/.ssh/id_rsa

Voit tarkistaa julkisen avaimen sisällön suorittamalla:

cat ~/.ssh/id_rsa.pub

Minkä pitäisi palauttaa jotain:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDijWK+s3ybgzEdaJ5LneNU11BsIyoNS51SV11Vi5auPJW9+Ji6OUSJ9OguZh4T019ULyFF/Qq66fhH9TvMzw80lTNoChgTRMpjs2+Qg75yTINKSde+Gv4TK6UvNw6EINORcTpb32Im9hgtdTj6WqJ/hCbSltv7IfFZU5ChV7SxTaoNZTa9M5H3N8YdQ/aGt3puh222Cq5DTjV8fRWaNVvjVQRe/huHAHEzEUr1T/eTlXtoFtGeC1z+pLfYllVzizoS7tyuUksfgqox1jJJMpaZ25V/R/p/MDUc936za/8zgB8OQFRBbrP6JvXXN99DLcvs9coz9vfb2GCVrhxi1aJ5 [email protected]

Sinun on laitettava tämä avain palvelimellesi. Varmistaaksesi, että kopioit kaiken, suosittelen, että kopioit sen suoraan leikepöydälle suorittamalla:

pbcopy < ~/.ssh/id_rsa.pub

Vaihe 2: Lisää uusi julkinen avain palvelimellesi

Jos pystyt SSH: n palvelimellesi ilman avainta, yritä saada pääsy salasanalla, jos sinulla on sellainen.

Muussa tapauksessa sinun on pyydettävä joku muu, jolla on pääsy palvelimelle, tekemään tämä puolestasi.

Jos olet poistanut salasanasi pääsyn palvelimellesi (jota monet asiantuntijat suosittelevat turvallisuussyistä), voit ehkä sallia salasanan käytön väliaikaisesti uudelleen.

Kun sinulla on pääkäyttö palvelimellesi - olettaen, että se on Linux-palvelin - sinun tarvitsee vain suorittaa tämä komento:

nano ~/.ssh/authorized_keys

Tämä avaa valtuutetun avaintiedoston käyttämällä minimalistista tekstieditoria "nano", joka sisältyy useimpiin Linux-jakeluihin. Tai voit käyttää Vimiä.

Liitä sitten julkinen SSH-avain aikaisemmasta. Tallenna muutokset napsauttamalla control + o ja lopeta nanosta painamalla + x.

Katkaise yhteys palvelimestasi. Nyt olet valmis kokeilemaan kirjautumista uudella SSH-avaimellasi.

Vaihe 3: SSH palvelimellesi

Suorita tämä komento SSH: lle sisään korvaamalla [email protected] palvelimesi kirjautumis- ja IP-osoitteella:

ssh -i ~/.ssh/id_rsa [email protected]

Sinun tulisi saada normaalit SSH-käyttöoikeudet palvelimellesi ilman salasanaa.

Onnittelut! Olet palannut eilen, paitsi nyt, Apple lopettaa vikailmoitukset käyttöjärjestelmän päivittämisestä. ?

Kirjoitan vain ohjelmoinnista ja tekniikasta. Jos seuraat minua Twitterissä, en tuhlaa aikaa. ?