Zabezpečení transportní vrstvy (TLS) a Secure Shell (SSH) jsou kryptografické protokoly používané k zajištění komunikace v sítích a oba využívají obousměrné kanály k usnadnění zabezpečené a efektivní výměny dat. Jejich použití obousměrných kanálů umožňuje současnou obousměrnou komunikaci s důvěrností, integritou a ověřováním. Níže je uvedeno podrobné vysvětlení toho, jak TLS a SSH ve svých operacích využívají obousměrné kanály.
Obousměrné kanály v TLS
TLS je primárně navržena tak, aby zajistila komunikaci mezi aplikacemi klient-server v síti, jako je webový prohlížeč připojující se k webovému serveru. Protokol stanoví zabezpečený šifrovaný kanál, který podporuje obousměrný přenos dat.
- Když je zahájeno připojení TLS, klient se připojí k serveru s podporou TLS a odešle zprávu „klienta Hello“, která obsahuje podporované šifrovací algoritmy, verze TLS a další možnosti komunikace.
- Server odpovídá zprávou „serveru Hello“ s výběrem kompatibilních metod šifrování a poté odešle svůj digitální certifikát, který obsahuje veřejný klíč serveru, vydaným důvěryhodným certifikačním úřadem (CA).
- Klient ověří autentičnost tohoto digitálního certifikátu, aby zajistil, že server je legitimní.
- Obě strany pak provedou handshake a vytvoří klíč sdíleného tajného zasedání. To se obecně provádí pomocí asymetrických kryptografických algoritmů, jako jsou varianty RSA nebo Diffie-Hellman (pomíjivá DH, eliptická křivka DH atd.). Handshake zajišťuje, že obě strany se dohodnou na jedinečném klíči sezení pro tuto komunikační relaci.
- Jakmile je klíč relace stanoven, TLS používá pro zbytek relace symetrické šifrovací algoritmy, což umožňuje rychlé a bezpečné šifrování a dešifrování dat.
- Obousměrný kanál vytvořený TLS umožňuje šifrovaným datům bezpečně proudit jak z klienta na server, tak ze serveru k klientovi.
- TLS také zajišťuje integritu dat pomocí kódů ověřování zpráv (Mac), takže je detekováno jakékoli manipulace s daty během přenosu.
- Tento obousměrný kanál umožňuje interaktivní prohlížení webových stránek, zabezpečené podání formuláře a další aplikace vyžadující, aby obě strany odesílaly a přijímaly šifrovaná data současně.
Stručně řečeno, TLS vytváří obousměrný šifrovaný kanál mezi klientem a serverem, kde oba mohou současně odesílat a přijímat data při zachování důvěrnosti, integrity a ověřování. Proces handshake před výměnou dat je nezbytný pro stanovení bezpečných sdílených klíčů a ověření identity.
Bidiverní kanály v SSH
SSH je protokol navržený především tak, aby poskytoval bezpečné možnosti vzdáleného přihlášení a správy v nezajištěné síti, ale také podporuje řadu zabezpečených síťových služeb nad rámec pouhého přístupu shell, díky flexibilní podpoře obousměrných kanálů.
- SSH pracuje na modelu klienta-serveru, kde klient iniciuje připojení a ověřuje se na server pomocí hesel, veřejných/soukromých klíčů nebo jiných ověřovacích mechanismů.
- Po ověření zřídí SSH zabezpečený šifrovaný komunikační kanál, který podporuje současné obousměrné datové toky.
- Interně, SSH multiplexuje více logických kanálů přes jedno připojení SSH. Tyto kanály mohou současně nést interaktivní terminálové relace, převody souborů (SCP/SFTP) a předávání síťových portů (tuneling).
- Obousměrná povaha SSH znamená, že data mohou volně proudit v obou směrech současně â od klienta k serveru a serveru k klientovi. To je rozhodující pro interaktivní relace v reálném čase, jako je provádění vzdálených příkazů, kde jsou příkazy odesílány od klienta a výstup je vrácen ze serveru.
- SSH také podporuje zabezpečené tunelování, které přesměruje další síťový provoz, jako je předávání místního portu do vzdálené služby nebo naopak. Tato funkce tunelování využívá obousměrný kanál zapouzdřením provozu mezi dvěma koncemi uvnitř šifrovaného připojení SSH.
- Například předávání místních portů umožňuje klientovi připojit se k místnímu portu, který je předán přes připojení SSH na vzdálený server port, a vzdálené předávání portu umožňuje serveru vystavit port v klientské síti. Oba typy předávání jsou obousměrné a umožňují datům bezpečně proudit na obou koncích tunelu SSH.
- Multiplexování více kanálů na jednom připojení SSH zvyšuje flexibilitu a umožňuje současné přenosy souborů, terminální relace a předávání portů v rámci jednoho šifrovaného tunelu.
Sdílené funkce a rozdíly v obousměrnosti TLS a SSH
Ačkoli TLS i SSH tvoří obousměrné kanály umožňující bezpečnou obousměrnou komunikaci, jejich účely a struktury se liší:
- TLS obvykle zajišťuje připojení k jedinému připojení k aplikaci, např. Webový provoz HTTPS, kde si klient a server vyměňuje šifrované zprávy tam a zpět na jeden kanál.
- SSH vytváří zabezpečenou přepravní vrstvu podporující vícenásobné multiplexované kanály v rámci jednoho připojení a splňuje širší škálu případů použití, včetně vzdáleného přihlášení, přenosu souborů a tunelování.
- Handshake TLS se zaměřuje na ověřování identity serveru (a volitelně identity klienta), dohodnutí na parametrech šifrování a generování klíčů relace, zdůrazňující zabezpečenou důvěrnost a integritu pro aplikace aplikací.
- Handshake SSH také zahrnuje ověřování klienta a vytvoří zabezpečený kanál, ale jde dále podporou multiplexování kanálu a interaktivních relací.
- Obě protokoly používají asymetrické mechanismy výměny klíčů k vytvoření sdílených klíčů pro symetrické šifrování, ale SSH umožňuje rozmanitější metody ověřování (hesla, veřejné klíče, certifikáty).
- Podporují kontrolu obousměrného toku, zpracování chyb a kontrolu integrity zajištění spolehlivé komunikace za různých podmínek sítě.
Technický provoz obousměrných kanálů v TLS
- Kanály TLS fungují přes spolehlivou transportní vrstvu (obvykle TCP) a poskytují uspořádané, bezeztrátové byty.
- Poté, co handshake stanoví kryptografické parametry a klíče relace, symetrické šifrování, jako jsou AE nebo Chacha20, šifrujte všechny přenášené zprávy.
- Obousměrná komunikace je dosažena pomocí šifrování odchozích dat klienta a serverem dešifrující příchozí data a naopak.
- Každý záznam TLS (jednotka výměny dat) je chráněn a šifrován integritou a zachovává důvěrnost v obou směrech.
- Protokol používá čísla sekvencí a Mac v každém záznamu, aby se zabránilo přehrání a manipulaci.
- Základní připojení TCP umožňuje ovládání toku umožňující odesílání a přijímání zpráv souběžně bez ztráty.
- TLS 1.3 Zlepšená účinnost a bezpečnost s menším počtem handshake kulatých výletů a povinnými výměnami klíčů vpřed, což zvyšuje bezpečné obousměrné založení kanálů.
Technický provoz obousměrných kanálů v SSH
- SSH dekonstruuje zabezpečené připojení do více logických kanálů multiplexované přes jedno šifrované připojení TCP.
- Každý kanál má nezávislé identifikátory a okna řízení toku spravovaných protokolem SSH.
- SSH používá protokol transportní vrstvy k vytvoření šifrovaného tunelu pomocí handshake SSH zahrnující algoritmy pro výměnu klíčů, jako je Diffie-Hellman.
- Protokol SSH Connection Prochází tento tunel a spravuje otevření, použití a uzavření kanálů.
- Obousměrné přenos dat se vyskytuje samostatně na každém kanálu, což podporuje plně duplexní komunikaci pro příkazy, data souborů nebo předávané porty.
- SSH dynamicky vytváří a uzavírá kanály v rámci stejného připojení na základě potřeb uživatele, což umožňuje koexistenci interaktivních relací SCP, SFTP a portů.
- Sekvenování a potvrzení paketů Zajistěte spolehlivou komunikaci, v případě potřeby s opakovanými přenosy.
- Multiplexované kanály SSH a řízení obousměrného toku poskytují flexibilní a výkonný mechanismus pro širokou škálu zabezpečených operací nad jednoduchým přenosem dat.
Shrnutí rolí obousměrného kanálu
-V TLS zajišťuje obousměrný kanál výměnu dat na úrovni aplikací (webový obsah, e-maily atd.) Zajišťování důvěrnosti, integrity a ověření identity na začátku a poté šifrování všech následných obousměrných dat transparentně k aplikaci.
- V SSH jsou obousměrné kanály zásadní pro usnadnění vzdáleného přístupu a zabezpečených síťových služeb, což umožňuje více souběžným tokům pro různá použití, vše v rámci jediného zabezpečeného šifrovaného tunelu.
- Obousměrnost v obou protokolech znamená, že žádná strana není omezena na aktivně a bezpečně přijímání nebo přijímání klienta i serveru.
Tato obousměrná schopnost zabezpečeného kanálu je to, co umožňuje bezpečné procházení webového webu pro moderní zabezpečené internetové služby prostřednictvím HTTPS (TLS), zabezpečenou správu systému prostřednictvím SSH a všestranné zabezpečené síťové tunely se spoléhají na tyto robustní obousměrné šifrované kanály pro pokročilé, spolehlivé a důvěryhodné komunikace.
***
Toto podrobné vysvětlení se týká toho, jak TLS a SSH používají obousměrné kanály s ohledem na jejich procesy handshake, šifrovací metody, multiplexování kanálu (v SSH) a kontrolu toku, což zdůrazňuje jejich podobnosti a rozdíly v účelu a technickém provozu. Pro další technické nuance poskytují citované zdroje další poznatky a příklady.