TLS a jeho předchůdce SSL jsou kryptografické protokoly, které zajišťují bezpečnost komunikace (v některých případech důvěrnost a integritu a v jiných případech nepopiratelnost) v síti.

Při jednosměrném TLS neboli běžném TLS je certifikát serveru X.509 vytvořen certifikační autoritou, které může klient důvěřovat, když se chce připojit. Za správu důvěryhodnosti a distribuci certifikátu (certifikátů) odpovídá infrastruktura veřejných klíčů (PKI). Certifikační autority (CA) hrají v PKI velmi důležitou roli. Certifikát X.509 není nic jiného než určité informace o serveru a veřejný klíč serveru, který je digitálně podepsán certifikační autoritou.

Server může být nakonfigurován tak, aby umožňoval připojení od libovolného klienta (jako v jednosměrném protokolu TLS), nebo může být nakonfigurován tak, aby požádal všechny klienty, kteří se k němu pokusí připojit, o ověření. Aby se tedy klient mohl ověřit, vyžaduje to klientský certifikát. V případě obousměrného ověřování TLS, neboli TLS s ověřováním pomocí klientského certifikátu, je kromě certifikátu serveru zapojen také klientský certifikát, aby se proces ověřování ztížil. Stejně jako certifikát serveru obsahuje klientský certifikát základní informace o identitě klienta, jeho veřejný klíč a digitální podpis certifikační autority na tomto certifikátu ověřuje, že tyto informace jsou pravé. Klientský certifikát by měl být podepsán certifikační autoritou, které server důvěřuje, a je zřejmé, že oba certifikáty X.509 by měly existovat před navázáním spojení!“

Jedním ze způsobů, jak je TLS dostatečně bezpečný, je jeho použití s ověřováním, s čímž se setkáte, když se chcete přihlásit do služby Gmail. Když používáte webové rozhraní Gmailu, používáte kromě hesla také jednosměrné TLS prostřednictvím možnosti https v prohlížeči. Pokud heslo nepoužijete, můžete pouze ověřit, že jste byli připojeni k legitimnímu serveru, ale server Gmail nemůže ověřit vaši totožnost, takže nemůžeme říci, že připojení je bezpečné. Pokud Gmail nabízí obousměrné připojení TLS, můžete se k němu snadno připojit bez zadání hesla a připojení je považováno za bezpečné.

Hlavním záměrem použití obousměrného připojení TLS by bylo, kdyby měl server přijímat připojení TLS pouze od omezené skupiny povolených klientů. Příkladem může být scénář, kdy chce organizace omezit připojení TLS k serveru tak, aby přicházela pouze od legitimních partnerů nebo zákazníků organizace. Rozhodně whitelisting IP pro klienty není dobrou bezpečnostní praxí, protože IP může být podvržena.

Pro zjednodušení procesu dvoucestného handshake TLS můžeme říci, že

  1. Klient odešle požadavek na přístup k chráněným informacím na serveru.

2. Server předloží svůj X.509 certifikát klientovi.

3. Klient ověří certifikát serveru ověřením digitálního podpisu veřejného klíče serveru pomocí veřejného klíče certifikační autority.

4. Pokud je poslední krok úspěšný, klient odešle svůj certifikát serveru.

5. Klient ověří certifikát serveru pomocí digitálního podpisu veřejného klíče serveru. Server ověří klientův certifikát pomocí stejného přístupu jako v kroku 3.

6. Pokud se to podaří, server předá klientovi přístup k chráněným informacím.

Pokud potřebujete webový server Apache nakonfigurovat tak, aby zvládal obousměrný protokol TLS, nahlédněte do tohoto dokumentu: http://www.robinhowlett.com/blog/2016/01/05/everything-you-ever-wanted-to-know-about-ssl-but-were-afraid-to-ask/

Articles

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.