Tutvuge oma Linuxi arvutiga OpenSSH-i sisselülitamisel ja väljumisel

Sisukord:

Tutvuge oma Linuxi arvutiga OpenSSH-i sisselülitamisel ja väljumisel
Tutvuge oma Linuxi arvutiga OpenSSH-i sisselülitamisel ja väljumisel

Video: Tutvuge oma Linuxi arvutiga OpenSSH-i sisselülitamisel ja väljumisel

Video: Tutvuge oma Linuxi arvutiga OpenSSH-i sisselülitamisel ja väljumisel
Video: Kuidas mina kauplen Forexi valuutaturgudel. - YouTube 2024, Aprill
Anonim
Oleme SSH voorusi mitmeid kordi julgustanud nii turvalisuse kui kaugjuurdepääsu jaoks. Vaatame serverit ise, mõningaid olulisi "hoolduse" aspekte ja mõningaid nõrkusi, mis võivad lisada turbulentsi muidu sujuvaks sõiduks.
Oleme SSH voorusi mitmeid kordi julgustanud nii turvalisuse kui kaugjuurdepääsu jaoks. Vaatame serverit ise, mõningaid olulisi "hoolduse" aspekte ja mõningaid nõrkusi, mis võivad lisada turbulentsi muidu sujuvaks sõiduks.

Kuigi me oleme selle juhendi kirjutanud Linuxile, võib seda ka Cygwiniga rakendada Mac OS X-i ja Windows 7-ga OpenSSHile.

Miks see on turvaline?

Oleme mitu korda maininud, kuidas SSH on suurepärane võimalus andmete turvaliseks ühendamiseks ja tunnustamiseks ühest punktist teise. Vaatame lühidalt, kuidas asjad toimivad, et saaksite paremini mõista, miks asjad võivad mõnikord mõnikord tunduda.

Kui otsustate luua ühenduse teise arvutiga, kasutame tihtipeale protokolle, mida on lihtne kasutada. Mõlemad tulevad meelde Telnet ja FTP. Saadame andmed serveri serverisse ja seejärel kinnituse meie ühendusele tagasi. Mõne turvalisuse tagamiseks kasutavad need protokollid tihti kasutajanime ja paroolide kombinatsioone. See tähendab, et nad on täiesti turvalised, eks? Vale!
Kui otsustate luua ühenduse teise arvutiga, kasutame tihtipeale protokolle, mida on lihtne kasutada. Mõlemad tulevad meelde Telnet ja FTP. Saadame andmed serveri serverisse ja seejärel kinnituse meie ühendusele tagasi. Mõne turvalisuse tagamiseks kasutavad need protokollid tihti kasutajanime ja paroolide kombinatsioone. See tähendab, et nad on täiesti turvalised, eks? Vale!

Kui me mõtleme oma ühendamisprotsessi kui posti, siis FTP ja Telneti kasutamine jms ei ole tavaliste postipakkide kasutamine. See on pigem postkaartide kasutamine. Kui keegi astub sammu keskele, saavad nad näha kogu teavet, sealhulgas mõlema korrespondendi aadressi ja välja saadetud kasutajanime ja parooli. Seejärel saavad nad sõnumi muuta, hoides teavet sama ja kujundada üks korrespondent või teine. Seda nimetatakse rünnaku "mees-in-the-the-middle" jaoks, mis mitte ainult ei ohusta teie kontot, vaid seab kahtluse alla kõik saadetud sõnumid ja saadetud failid. Sa ei saa olla kindel, kas sa räägid saatjaga või mitte, ja isegi kui sa oled, ei saa olla kindel, et keegi ei vaataks kõike, mis on vahepeal.

Vaatame nüüd SSL-i krüpteerimist, mis muudab HTTP-i turvalisemaks. Siin on meil postkontor, mis tegeleb kirjavahetusega, kes kontrollib, kas teie saaja on see, kellele ta väidetavalt kuulub, ja on seadusi, mis kaitsevad teie posti kasutamist. See on üldiselt turvalisem ja keskne asutus - Verisign on üks meie HTTPS-i näitel - tagab, et isik, kellele saadate kirju, kontrollib välja. Nad teevad seda, jätmata postkaarte lubamata (krüpteerimata volikirjad); Selle asemel annavad nad mandaadi tegelikele ümbrikele.

Lõpuks vaatame SSH-i. Siin on seadistus veidi erinev. Siin pole meil keskset autentimist, kuid asjad on endiselt turvalised. Seda sellepärast, et saadate kirju kellelegi, kelle aadressi te juba teate - näiteks öeldes telefoniga nendega vesteldes - ja kasutate ümbrikut allkirjastamiseks mõnda tõeliselt väljamõeldud matemaatikat. Saate seda oma vennale, tüdrukule, tütrele, isale või tütrele saata selle aadressi saatmiseks ja ainult siis, kui saaja väljamõeldud matemaatika vasted eeldavad, et aadress on see, mis see peaks olema. Siis sa saad kirja tagasi, samuti kaitstes utellevate silmade eest selle suurepärase matemaatika abil. Lõpuks saadate oma mandaadid teise salajase algoritmiliselt enchanted ümbrikus sihtkohta. Kui matemaatika ei sobi, võime eeldada, et esialgne adressaat kolis ja me peame oma aadressi uuesti kinnitama.
Lõpuks vaatame SSH-i. Siin on seadistus veidi erinev. Siin pole meil keskset autentimist, kuid asjad on endiselt turvalised. Seda sellepärast, et saadate kirju kellelegi, kelle aadressi te juba teate - näiteks öeldes telefoniga nendega vesteldes - ja kasutate ümbrikut allkirjastamiseks mõnda tõeliselt väljamõeldud matemaatikat. Saate seda oma vennale, tüdrukule, tütrele, isale või tütrele saata selle aadressi saatmiseks ja ainult siis, kui saaja väljamõeldud matemaatika vasted eeldavad, et aadress on see, mis see peaks olema. Siis sa saad kirja tagasi, samuti kaitstes utellevate silmade eest selle suurepärase matemaatika abil. Lõpuks saadate oma mandaadid teise salajase algoritmiliselt enchanted ümbrikus sihtkohta. Kui matemaatika ei sobi, võime eeldada, et esialgne adressaat kolis ja me peame oma aadressi uuesti kinnitama.

Kui selgitus on nii kaua, siis me arvame, et me lõigame selle seal. Kui teil on veel parem ülevaade, võite muidugi kommenteerida vestlust. Kuid nüüd vaatame SSH kõige olulisemat tunnust, host-autentimist.

Host võtmed

Vastuvõtte autentimine on sisuliselt selline osa, kus keegi, keda te usaldate, võtab ümbriku (suletud magic matemaatika abil) ja kinnitab teie adressaadi aadressi. See on aadressi päris üksikasjalik kirjeldus ja see põhineb mõnel keerulisel matemaatikas, mida me lihtsalt üle vahele jätame. Sellest hoolimata on paar olulist asja ära võtta:

  1. Kuna puudub keskasutus, on tõeline turvalisus peamise võti, avalikud võtmed ja privaatvõtmed. (Need kaks viimast võtmet on konfigureeritud, kui süsteemile juurdepääsu lubate.)
  2. Tavaliselt, kui ühendate teise arvutiga SSH-i kaudu, salvestatakse host-võti. See muudab tulevikus toimingud kiiremaks (või vähem verbiseks).
  3. Kui vastuvõttev võti muutub, kuvatakse teile tõenäoliselt hoiatusi ja peaksite olema ettevaatlik!

Kuna SSH-serveri identiteedi tuvastamiseks kasutatakse serveri võtmenüüd enne autentimist, peate enne ühenduse loomist kindlasti seda võtme kontrollima. Näete allpool kinnitusdialoogi.

Kuid ärge muretsege! Sageli, kui turvalisus on mure, tekib eriline koht, et võõrustaja võti (ECDSA sõrmejälg ülalt) saab kinnitada. Täiesti veebipõhiste ettevõtmiste puhul on sageli turvaline sisselogimine ainult saidil. Selle võtme kinnitamiseks telefoni teel peate võib-olla oma IT-osakonnale (või valima!) Telefoni. Ma olen isegi kuulnud mõnest kohast, kus võti on teie töömärgil või spetsiaalsete "hädaolukordade numbrite" loendis. Ja kui teil on füüsiline juurdepääs sihitud masinale, võite end ise kontrollida!
Kuid ärge muretsege! Sageli, kui turvalisus on mure, tekib eriline koht, et võõrustaja võti (ECDSA sõrmejälg ülalt) saab kinnitada. Täiesti veebipõhiste ettevõtmiste puhul on sageli turvaline sisselogimine ainult saidil. Selle võtme kinnitamiseks telefoni teel peate võib-olla oma IT-osakonnale (või valima!) Telefoni. Ma olen isegi kuulnud mõnest kohast, kus võti on teie töömärgil või spetsiaalsete "hädaolukordade numbrite" loendis. Ja kui teil on füüsiline juurdepääs sihitud masinale, võite end ise kontrollida!

Teie süsteemi peamise võtme kontrollimine

Klahvide tegemiseks kasutatakse nelja tüüpi krüpteerimisalgoritme, kuid OpenSSHi vaikimisi selle aasta alguseks on ECDSA (mõningate tõsiste põhjustega). Täna keskendume sellele.Siin saab käsku käivitada SSH serveril, millele teil on juurdepääs:

ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key.pub -l

Teie väljund peaks tagama midagi sellist:

256 ca:62:ea:7c:e4:9e:2e:a6:94:20:11:db:9c:78:c3:4c /etc/ssh/ssh_host_ecdsa_key.pub

Esimene number on võtme biti pikkus, siis on võtme enda ja lõpuks on teil fail, mida see on salvestatud. Võrrelge seda keskmist osa, mida näete, kui teilt küsitakse võrgust sisse logida. See peaks sobima ja sa oled kõik valmis. Kui see ei õnnestu, võib juhtuda midagi muud.

Saate vaadata kõiki hosteid, kellega olete SSH-i kaudu ühendatud, vaadates oma teadaoleva_hosti faili. Tavaliselt asub see aadressil:

~/.ssh/known_hosts

Seda saab avada mis tahes tekstitöötlusprogrammis. Kui vaatate, proovige pöörata tähelepanu sellele, kuidas võtmeid salvestatakse. Neid on salvestatud hostarvuti nimi (või veebiaadress) ja selle IP-aadress.

Võõrutusvõtmete ja probleemide muutmine

Seal on mitu põhjust, miks host-võtmed muutuvad või ei ühti sellega, mis on teie teadaolevas failis logitud.

  • Süsteem on uuesti installitud / uuesti konfigureeritud.
  • Turvaprotokollide tõttu muutus host võtmeid käsitsi.
  • OpenSSHi server värskendati ja turvaküsimuste tõttu kasutab erinevaid standardeid.
  • IP- või DNS-liising muutus. See tähendab sageli, et proovite pääseda teisele arvutile.
  • Süsteem oli mingil moel ohustatud, nii et võõrustamisvõti muutuks.

Tõenäoliselt on see probleem üks esimesi kolme ja võite muudatust eirata. Kui IP / DNS rentimine on muutunud, võib serveris tekkida probleem ning teid võib suunata teise masina. Kui te pole kindel, mis muudatus põhjustab, peaksite tõenäoliselt eeldama, et see on nimekirja viimane.

Kuidas OpenSSH käsitleb tundmatuid hoste

OpenSSH-il on seade selle kohta, kuidas ta käsitab tundmatuid hoste, mis kajastub muutujat "StrictHostKeyChecking" (ilma jutumärkideta).
OpenSSH-il on seade selle kohta, kuidas ta käsitab tundmatuid hoste, mis kajastub muutujat "StrictHostKeyChecking" (ilma jutumärkideta).

Sõltuvalt teie konfiguratsioonist võivad SSH-ühendused tundmatute hostidega (kelle võtmed pole juba teie teadaolevas failis) suudavad kolmel viisil.

  • StrictHostKeyChecking on seatud no; OpenSSH ühendab automaatselt mis tahes SSH serveriga, sõltumata hosti võtme olekust. See on ebaturvaline ja seda ei soovitata, välja arvatud juhul, kui pärast operatsioonisüsteemi uuesti installimist lisate hulgale hostetele, mille järel muudate selle tagasi.
  • StrictHostKeyChecking on seatud küsima; OpenSSH näitab sulle uusi host-võtmeid ja küsib kinnitust enne nende lisamist. See hoiab ära, et ühendused muutuvad host-võtmeks. See on vaikimisi.
  • StrictHostKeyChecking on seatud Yes; Vastupidine "ei", see hoiab ära selle, et suudate ühendada mis tahes hostiga, mis pole teie teadaolevas failis juba olemas.

Selle muutuja saab hõlpsasti käsureal muuta, kasutades järgmist paradigmat:

ssh -o 'StrictHostKeyChecking [option]' user@host

Asenda [valikuvõimalus] sõnaga "ei", "küsige" või "jah". Pidage meeles, et selle muutuja ja selle seadistused on ühesugused otsesed jutumärgid. Samuti asendage kasutaja @ host selle serveri kasutajanime ja hosti nimega, millega te ühendate. Näiteks:

ssh -o 'StrictHostKeyChecking ask' [email protected]

Blokeeritud hostid muutunud võtmete tõttu

Kui teil on server, millega püüate pääseda sellele, kui selle võti on juba muudetud, ei võimalda vaikimisi OpenSSHi konfiguratsioon sellele juurde pääseda. Sa võid muuta selle hosti StrictHostKeyChecking väärtust, kuid see ei oleks täielikult, põhjalikult, paranoidiliselt turvaline, kas see oleks? Selle asemel võime me lihtsalt eemaldada rikutud väärtuse meie teadaolevast failist.

See on ekraanis kindlasti kole asi. Õnneks oli selle põhjuseks taasinstallitud operatsioonisüsteem. Nii et suurendame joont, mida vajame.
See on ekraanis kindlasti kole asi. Õnneks oli selle põhjuseks taasinstallitud operatsioonisüsteem. Nii et suurendame joont, mida vajame.
Seal läheme. Vaadake, kuidas see tsiteerib faili, mida me peame redigeerima? See annab meile isegi rea numbri! Niisiis, avame selle faili Nano-s:
Seal läheme. Vaadake, kuidas see tsiteerib faili, mida me peame redigeerima? See annab meile isegi rea numbri! Niisiis, avame selle faili Nano-s:
Image
Image
Siin on meie solvava võti, joonisel 1. Kõik, mida me peame tegema, on vajuta kogu trüki lõikamiseks Ctrl + K.
Siin on meie solvava võti, joonisel 1. Kõik, mida me peame tegema, on vajuta kogu trüki lõikamiseks Ctrl + K.
See on palju parem! Nii et nüüd vajuta Ctrl + O faili kirjutamiseks (salvestamiseks), seejärel väljumiseks Ctrl + X.
See on palju parem! Nii et nüüd vajuta Ctrl + O faili kirjutamiseks (salvestamiseks), seejärel väljumiseks Ctrl + X.

Nüüd saadame selle asemel meeldiva vihje, millele me saame lihtsalt vastata "jah".

Image
Image

Uute serveri võtmete loomine

Rekordil pole tegelikult üldse mingit põhjust, miks te võtate võõrustaja võtit üldse, aga kui sa vajad seda ikkagi leida, saate seda teha lihtsalt.

Esiteks muutke sobivat süsteemi kataloogi:

cd /etc/ssh/

See on tavaliselt globaalsete võtmevõtmetega, kuigi mõnel distributsioonil on need paigutatud mujale. Kahtluse korral kontrollige oma dokumentatsiooni!

Seejärel eemaldame kõik vanad võtmed.

sudo rm /etc/ssh/ssh_host_*

Teise võimalusena võite soovida neid teisaldada ohutu varunduskataloogi. Lihtsalt mõte!

Siis võime OpenSSH-serverile teatada ise ümber seadistada:

sudo dpkg-reconfigure openssh-server

Näete viipa, kui teie arvuti loob uusi võtmeid. Ta-da!

Image
Image

Nüüd, kui sa tead, kuidas SSH töötab natuke paremini, peaksite saama end rasketest kohtadest välja tõmmata. Hoiatus / viga "Remote Host Identification Has Changed" on midagi, mis viskab ära palju kasutajaid, isegi neid, kes on käsureadest tuttavad.

Boonuspunktide jaoks saate kontrollida, kuidas faile koopiaid kohe kopeerida SSH-i kaudu, sisestamata parooli. Seal saate õppida veidi muud tüüpi krüpteerimisalgoritmide ja võtmefailide lisamiseks turvalisuse suurendamiseks.

Soovitan: