Ismerje meg az OpenSSH Ins és Out-t a Linux PC-n
Számos alkalommal kiterjesztettük az SSH erényeit a biztonság és a távoli elérés érdekében. Vessünk egy pillantást a szerverre, néhány fontos „karbantartási” szempontra, és néhány olyan kérdésre, amelyek turbulenciát adhatnak az egyébként sima útnak.
Miközben ezt az útmutatót Linux szemszögéből írtuk, ez az OpenSSH-ra is vonatkozik a Mac OS X és a Windows 7 Cygwin rendszeren keresztül..
Miért biztonságos
Sokszor megemlítettük, hogy az SSH egy nagyszerű módja annak, hogy biztonságosan csatlakozzon az alagutakhoz és az alagutak egyik pontjáról a másikra. Vegyünk egy nagyon rövid pillantást arra, hogy a dolgok hogyan működnek, így jobban megértheted, hogy a dolgok miért néha furcsa.
Amikor úgy döntünk, hogy kapcsolatot létesítünk egy másik számítógéppel, gyakran olyan protokollokat használunk, amelyekkel könnyen kezelhető. Mindketten a Telnet és az FTP eszébe jut. Információt küldünk egy távoli kiszolgálónak, majd visszaigazolást kapunk a kapcsolatunkról. Annak érdekében, hogy bizonyos típusú biztonságot megállapítsanak, ezek a protokollok gyakran használják a felhasználónevet és a jelszót. Ez azt jelenti, hogy teljesen biztonságosak, igaz? Rossz!
Ha úgy gondoljuk, hogy az összekapcsolási folyamatot levélként használjuk, akkor az FTP és a Telnet és hasonlók használata nem olyan, mint a szokásos levelezési borítékok használata. Ez inkább a képeslapok használata. Ha valaki közepén lép be, láthatják az összes információt, beleértve mindkét levelező címét, valamint a kiállított felhasználónévet és jelszót. Ezután megváltoztathatják az üzenetet, ugyanazokat az információkat tarthatják fenn, és az egyik levelezőt vagy a másik személyt megszemélyesíthetik. Ezt „ember-közepén” támadásnak nevezik, és nemcsak a fiókot veszélyezteti, hanem minden elküldött üzenetet és a beérkezett fájlt megkérdőjelez. Nem lehet biztos benne, hogy a feladóval beszél vagy nem, és még ha te is, akkor nem lehet biztos benne, hogy senki sem néz mindent belőlük.
Most nézzük meg az SSL titkosítást, ami a HTTP-t biztonságosabbá teszi. Itt van egy postahivatalunk, amely kezeli a levelezést, aki ellenőrzi, hogy a címzettje-e, akit ő állít, és van-e törvénye, amely megvédi a leveleket attól, hogy nézzenek. Biztonságosabb az egész, és a központi hatóság - a Verisign az egyik, a HTTPS példánk esetében - biztosítja, hogy az a személy, akinek e-mailt küld, ellenőrzi. Ezt úgy teszik, hogy nem engedélyezik a képeslapokat (titkosítatlan hitelesítő adatok); ehelyett valódi borítékokat rendelnek.
Végül nézzük meg az SSH-t. Itt a beállítás egy kicsit más. Itt nincs központi hitelesítőünk, de a dolgok még mindig biztonságosak. Ennek az az oka, hogy olyan leveleket küldesz valakinek, akinek a címe már ismert - mondván, beszélgetni velük a telefonon -, és néhány igazán divatos matematikát használ, hogy aláírja a borítékot. Átadod a bátyádnak, barátnődnek, apádnak vagy lányodnak, hogy vigye el a címet, és csak akkor, ha a címzett divatos matematikai mérkőzéseit feltételezed, hogy a cím az, amit kell. Ezután kapsz egy levelet, amit ez a félelmetes matematika megvéd a szemétől. Végül elküldjük hitelesítő adatait egy másik titkos algoritmikusan elvarázsolt borítékban a rendeltetési helyre. Ha a matematika nem egyezik, feltételezhetjük, hogy az eredeti címzett költözött, és újra meg kell erősítenünk a címüket.
A magyarázattal, ameddig csak van, úgy gondoljuk, hogy ott vágjuk. Ha még több betekintést nyerhetsz, nyugodtan beszélhetsz a megjegyzésekben. Most pedig nézzük meg az SSH legmegfelelőbb jellemzőjét, a hoszt hitelesítést.
Host Keys
A gazdagép-hitelesítés lényegében az a rész, ahol valaki, akiben megbízik, a borítékot (mágikus matematikával lezárt) veszi át, és megerősíti a címzett címét. Ez egy nagyon részletes leírás a címről, és néhány bonyolult matematikán alapul, amit csak átugorunk. Van néhány fontos dolog, amit el kell távolítani ebből:
- Mivel nincs központi hatóság, az igazi biztonság a gazda kulcsban, a nyilvános kulcsokban és a magánkulcsokban rejlik. (Ez utóbbi két kulcs konfigurálása akkor történik, amikor hozzáférést kap a rendszerhez.)
- Általában, amikor egy másik számítógéphez csatlakozik SSH-n keresztül, a gazdagép tárolódik. Ez gyorsabbá teszi a jövőbeni műveleteket (vagy kevesebbet).
- Ha a gazda kulcsát megváltoztatja, akkor valószínűleg figyelmeztetést kap, és óvatosnak kell lennie!
Mivel az SSH-kiszolgáló személyazonosságának megállapításához a gazdagombot a hitelesítés előtt használják, biztosan ellenőrizze a kulcsot a csatlakoztatás előtt. Az alábbiakban egy megerősítő párbeszédpanel jelenik meg.
Nem kell aggódnia! Gyakran, amikor a biztonság aggodalomra ad okot, egy különleges hely lesz, amelyet a gazda kulcs (a fenti ECDSA ujjlenyomat) megerősíthet. Teljesen online vállalkozásokban gyakran csak biztonságos bejelentkezési webhelyen lesz. Előfordulhat, hogy telefonon keresztül (vagy úgy dönt, hogy!) Telefonáljon az IT-részleggel, hogy megerősítse ezt a kulcsot. Még olyan helyeken is hallottam, ahol a kulcs a munkajelvényén vagy a különleges „Sürgősségi számok” listán található. És ha fizikai hozzáférése van a célgéphez, akkor is ellenőrizheti magát!
A rendszer gazda kulcsának ellenőrzése
A kulcsok készítéséhez négyféle típusú titkosítási algoritmus létezik, de az OpenSSH alapértelmezettsége az év elején az ECDSA (néhány jó okkal). Ma erre összpontosítunk. Íme az az SSH-kiszolgálón futó parancs, amelyhez hozzáférhet:
ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key.pub -l
A kimenetnek valami ilyet kell tennie:
256 kb. 62: ea: 7c: e4: 9e: 2e: a6: 94: 20: 11: db: 9c: 78: c3: 4c /etc/ssh/ssh_host_ecdsa_key.pub
Az első szám a kulcs bithossza, majd maga a kulcs, és végül megvan a tárolt fájlja. Hasonlítsa össze ezt a középső részt azzal, amit a távoli bejelentkezéskor kéri. Meg kell egyeznie, és mindannyian be van állítva. Ha nem, akkor valami más is történhet.
Az SSH-n keresztül csatlakoztatott összes gazdagépet megtekintheti az ismert_fájlfájlja alapján. Általában a következő címen található:
~ / .Ssh / known_hosts
Ezt bármely szövegszerkesztőben megnyithatja. Ha megnézi, próbálja meg figyelni a kulcsok tárolására. A gazdagép nevét (vagy webcímét) és IP-címét tárolják.
A Host Keys és a problémák megváltoztatása
Néhány oka van annak, hogy a gazda kulcsok megváltoztak, vagy nem egyeznek meg az ismert_fájlfájlban bejelentkezett adatokkal.
- A rendszert újra telepítették / újra konfigurálták.
- A gazdagombokat manuálisan módosították a biztonsági protokollok miatt.
- Az OpenSSH szerver a biztonsági problémák miatt frissített és különböző szabványokat használ.
- Megváltozott az IP vagy a DNS lízing. Ez gyakran azt jelenti, hogy megpróbál hozzáférni egy másik számítógéphez.
- A rendszert valamilyen módon veszélyeztették, hogy megváltozott a gazda kulcs.
A legvalószínűbb, hogy a probléma az első három, és figyelmen kívül hagyhatja a változást. Ha megváltozott az IP / DNS lízing, akkor lehet, hogy probléma merül fel a szerverrel, és lehet, hogy egy másik gépre irányítódik. Ha nem biztos benne, mi az oka a változásnak, akkor valószínűleg feltételezzük, hogy ez a lista utolsó listája.
Hogyan kezeli az OpenSSH ismeretlen házakat
Az OpenSSH rendelkezik egy beállítással az ismeretlen gazdagépek kezelésére, amely a „StrictHostKeyChecking” változó (idézőjelek nélkül) tükröződik..
A konfigurációtól függően az ismeretlen gazdagépekkel rendelkező SSH-kapcsolatok (amelyek kulcsai még nem szerepelnek az ismert_fájlfájlban) háromféleképpen járhatnak.
- A StrictHostKeyChecking értéke nincs; Az OpenSSH automatikusan csatlakozik bármely SSH szerverhez, függetlenül a gazdagép állapotától. Ez bizonytalan és nem ajánlott, kivéve, ha az operációs rendszer újratelepítése után egy csomó gazdagépet ad hozzá, ami után visszaállítja azt.
- A StrictHostKeyChecking meg van kérdezve; Az OpenSSH megmutatja az új gazda kulcsokat, és megerősítést kér, mielőtt hozzáadná őket. Ez megakadályozza, hogy a kapcsolatok megváltoztassák a megváltoztatott gazdagombokat. Ez az alapértelmezett.
- A StrictHostKeyChecking értéke igen; A „nem” ellenkezője megakadályozza, hogy csatlakozzon olyan állomáshoz, amely még nincs jelen az ismert_fájlfájljában.
Ezt a változót könnyedén megváltoztathatja a parancssorban a következő paradigma használatával:
ssh -o 'StrictHostKeyChecking [opció]' felhasználó @ host
Cserélje ki az [opció] értékét a „nem”, „kérdezze” vagy „igen” jelzéssel. Légy tudatában annak, hogy egyetlen egyenes idézet van körülvéve a változót és annak beállítását. A felhasználó @ gazdagépét is cserélje azon kiszolgáló felhasználónevével és gazdanevével, amelyhez csatlakozik. Például:
ssh -o 'StrictHostKeyChecking kérdezze' [email protected]
A módosított kulcsok miatt blokkolt kezelők
Ha olyan kiszolgálót szeretne elérni, amelynek kulcsát már megváltoztatta, az alapértelmezett OpenSSH konfiguráció megakadályozza, hogy hozzáférjen hozzá. Megváltoztathatná a StrictHostKeyChecking értékét az adott fogadó számára, de ez nem lenne teljesen, alaposan, paranoiásan biztonságos, ugye? Ehelyett egyszerűen eltávolíthatjuk a sértő értéket az ismert_hosts fájlunkból.
Ez minden bizonnyal egy csúnya dolog a képernyőn. Szerencsére ennek oka az újratelepített operációs rendszer volt. Szóval, közelítsük meg a szükséges vonalat.
Ott megyünk. Nézze meg, hogyan idézi a szerkeszteni kívánt fájlt? Még a sorszámot is megadja nekünk! Tehát nyissuk meg a fájlt Nano-ban:
Itt van a sértő kulcs, az 1. sorban. Mindössze annyit kell tennünk, hogy a Ctrl + K-t megütjük, hogy kivágjuk az egész sort.
Ez sokkal jobb! Tehát most megérintjük a Ctrl + O billentyűt, hogy kiírjuk (mentjük) a fájlt, majd a Ctrl + X kilépéshez.
Most kapunk egy szép üzenetet, amire egyszerűen „igen” válaszolhatunk.
Új gazda kulcsok létrehozása
A rekordért valójában nem túl sok ok van arra, hogy egyáltalán megváltoztassa a gazda kulcsát, de ha valaha találja meg a szükségességet, könnyen elvégezheti.
Először változtassa meg a megfelelő rendszerkönyvtárat:
cd / etc / ssh /
Általában ez a hely, ahol a globális gazda kulcsok vannak, noha egyes disztribútorok máshol helyezkednek el. Ha kétségei vannak, ellenőrizze a dokumentációt!
Ezután töröljük az összes régi kulcsot.
sudo rm / etc / ssh / ssh_host_ *
Alternatív megoldásként áthelyezheti őket egy biztonságos mentési könyvtárba. Csak egy gondolat!
Ezután elmondhatjuk, hogy az OpenSSH szerver újra konfigurálhatja magát:
sudo dpkg-reinfigure openssh-server
Egy gyors üzenet jelenik meg, miközben a számítógép létrehozza az új kulcsokat. Ta-da!
Most, hogy tudod, hogyan működik az SSH egy kicsit jobban, meg kell tudnod érni magát a kemény foltokból. A „Távoli gazdaazonosító megváltozott” figyelmeztetés / hiba az, ami sok felhasználót dob ki, még azok is, akik ismerik a parancssort.
.