This is an old revision of the document!
Bez použití šifrování je relativně snadné odposlouchávat hovory, pokud je pro hovor použité Wifi připojení k internetu (útočníkovi se musí dozvědět heslo, to by ale neměl být větší problém), nebo pokud má útočník fyzicky přístup do lokální ethernetové sítě v místě, kudy hovor prochází. Kromě poslechu samotného hovoru bude znát, i komu jste volali. Odposlechnout SIP heslo ale není možné, i když šifrování hovoru není použito, heslo je i v tomto případě dostatečně chráněno.
Pro šifrování hovorů i signalizace tak, aby nemohlo dojít k odposlechu někde po cestě, je možné použít TLS(SIPS)/SRPT. TLS(SIPS) slouží pro šifrování signalizace, SRTP k šifrování hlasových paketů. Přestože to některé telefony umožňují, nemá smysl použít šifrovaní jen pro samotné hovory (SRTP) v situaci, kdy není šifrována signalizace, protože šifrovací klíče se přenáší samotnou signalizaci a útočník by tak k nim měl přístup.
POZOR! V případě použití TLS nesmí být u proxy definován port.
např: sip.odorik.cz:6688 pouze sip.odorik.cz.
Proxy naslouchá TLS na portech 5061 (standardní) nebo 6689. Na portu 6670 je použit jiný certifikát viz níže.
TLS je způsob šifrování TCP signalizace SIP protokolu. Signalizace není hovor samotný ale pouze informace o tom, kdo komu volá, jakým hlasovým kodekem a pod. TLS se nejčastěji používá spolu se SRTP, ale může být použito i samostatně. V tomto případě nebude možné odposlechnout, kdo komu volá, půjde však odposlechnout samotný hovor. Pokud vám jde jen o to, aby nebylo možné odposlechnout SIP heslo, nedělejte si starosti, o to je postaráno i při použití nešifrovaného SIP protokolu. Předgenerovaná SIP hesla o osmi znacích obsahující jména a číslice by nemělo být možné lousknout v rozumném čase za rozumnou cenu.
RTP jsou vlastní hlasová data. SRTP jsou šifrovaná hlasová data. Tato data proudí na jiném portu než signalizace. Pokud šifrujeme samotný hovor pomocí SRTP, je nutné šifrovat i signalizace pomocí TSL. V signalizaci se totiž předávají klíče šifrování, a pokud signalizace nebyla šifrovaná, šifrovat samotný hovor pak postrádá smysl. Bohužel toto nepochopili např. vývojáři telefonu Grandstream GXP 280, který naprosto nesmyslně podporuje SRTP ale ne TLS. http://en.wikipedia.org/wiki/Secure_Real-time_Transport_Protocol
Platny od 19.8.2015 do 16.8.2016
-----BEGIN CERTIFICATE----- MIIDuzCCAqOgAwIBAgIJAODHGEs+3z6TMA0GCSqGSIb3DQEBBQUAMHUxETAPBgNV BAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UEChMO bWluaVRFTCBzLnIuby4wHhcNMTUwODE4MDcwNDI0WhcNMTYwODE3MDcwNDI0WjB1 MREwDwYDVQQDEwhPZG9yaWtDQTEXMBUGA1UECBMOQ3plY2ggUmVwdWJsaWMxCzAJ BgNVBAYTAkNaMSEwHwYJKoZIhvcNAQkBFhJrb250YWt0QG1pbml0ZWwuY3oxFzAV BgNVBAoTDm1pbmlURUwgcy5yLm8uMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB CgKCAQEAo+M5liVAX98vB4rTvkh89Q8MFq7sRtsDptqO9dVbDZLFlloGWg2z7jUW lOKzBRg16ihV+MYasmxK3mDiL9nRGc8FzD+VD6qTxtkNJxHpL0KTHl+QtmpSxd71 8ulFoWQ81yChrHqV2niI/lKnmA903pzCXIyc/0fUsT8rwOdrOaianWD8ig7yLJy/ UEGus51UPKJl5u6/hgTcbsBTJzi/PBhQp3OcKYwmr+G+YU0Z2Fwn9vOAOcx6U/5Q 3s7l4Tx/8Kfu3wf9jLBvUmf0QitnJW/WqPx8u7w/v3TaseDBEIl3dDoDDdcxLtqO Ir/VmQMlzP7gy6xbENF68JcOph7NAQIDAQABo04wTDAMBgNVHRMEBTADAQH/MB0G A1UdEQQWMBSBEmtvbnRha3RAbWluaXRlbC5jejAdBgNVHRIEFjAUgRJrb250YWt0 QG1pbml0ZWwuY3owDQYJKoZIhvcNAQEFBQADggEBAFd3jz4kJBBqDFe6usfulDaT AmcJqUVlxAjY8+XfsX7cl26cvy4rjXHTPDpmLmJRxllH86KF2GT90Q5H6+7e1Hbb tDEBVIrfCo7mdhZm824yY3L4lU9WEYt0JV1829XX3ckZ3m9bw3WYImEiFxga15zX f13uSu+Ut4NFs3ZuI40oRCS+ercSSg+QgTtlYN7DLH0nCXyLGfe671AaDxhmIPav iL8zAyUzC/xD7uUjfJUtt25t4fi/fcc2Cu5J2ZKLeMRuiSxsyBzxz4ZbJPDQhVMR inOH6XG6pvyUK0MKRZUMnEAkVZLyQf2TuaW7QC6V8kK2iGZ1nZADsEFhGadgFmk= -----END CERTIFICATE-----
Platny od 16.8.2016 do 29.9.2055
-----BEGIN CERTIFICATE----- MIIDvTCCAqWgAwIBAgIJAOKH0n9bgybKMA0GCSqGSIb3DQEBBQUAMHUxETAPBgNV BAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UEChMO bWluaVRFTCBzLnIuby4wIBcNMTYwNDI2MTQyNDMyWhgPMjA1NTA5MjkxNDI0MzJa MHUxETAPBgNVBAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzEL MAkGA1UEBhMCQ1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEX MBUGA1UEChMObWluaVRFTCBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQCeVYv84PV4uJ1/CXZTnsxeeCSB5QFxu2894tiVrFiXI3cBMtCEtM7X jMCLMZZZJPlyRxHkSujsHJiyK61tvs26r/HSmWITWU6gpEIEXXl6j6nHC/NK+Vxi jl5RC95vZXhaRw70PYmUqNCiEgjIjznLOQZnUFIfI5OIYh5tloy7gk2HMC6FZFbz 6dDrgh6Mnk4adbeITQawnwUC4zs8pBJFJM2nKDKEL+DHaIgJKeLCMcu5EL7IATME 6wG9SjIwmCDI9EQSO1+y3+niDWno12T75M9XzNvib4TEirAke4YPImV7UJtcY9R8 dw0/AaA6JnM3f/tdpPNZw5QZHbOshzRvAgMBAAGjTjBMMAwGA1UdEwQFMAMBAf8w HQYDVR0RBBYwFIESa29udGFrdEBtaW5pdGVsLmN6MB0GA1UdEgQWMBSBEmtvbnRh a3RAbWluaXRlbC5jejANBgkqhkiG9w0BAQUFAAOCAQEAhmWpwb0VcSvLsjxiBdQu y6IaTUoaEXjOKHhfGHkCgbWCG7VVpbR+s2tOQk1VjtXF7PgFSbjFSv0Y0KQ0FByr cQ4ZFhaO4hvhrCzg7V1u64pISpAhqtdABKGDmWe/FeXsCMI63rgYDx850p98AR9T 61nCr0vPhRfYWHUdccQX2F8BrVSK6n6S2o3tyDN/VijSfLrN4vQ3f6S3VvJ35QcC psNRN5Bg77LR53L86gLR/u7MMtQ7lnU84HDyeDgCu1xEHXiM+Uba3zilKY2UGUIO 5GyLZR963gXbFIX/SnX23MBiRlTirLC1R9/Av1SpINoHPZA96qxAfx0jrM+P8C4O Vg== -----END CERTIFICATE-----
Silnejsi certifikat na portu 6670. Platny do 17.10.2056
-----BEGIN CERTIFICATE----- MIIDvTCCAqWgAwIBAgIJAIVsPyirYWShMA0GCSqGSIb3DQEBCwUAMHUxETAPBgNV BAMMCE9kb3Jpa0NBMRcwFQYDVQQIDA5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UECgwO bWluaVRFTCBzLnIuby4wIBcNMTcwNTE1MDg0MzE2WhgPMjA1NjEwMTcwODQzMTZa MHUxETAPBgNVBAMMCE9kb3Jpa0NBMRcwFQYDVQQIDA5DemVjaCBSZXB1YmxpYzEL MAkGA1UEBhMCQ1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEX MBUGA1UECgwObWluaVRFTCBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDKtbitbShMOOzZ4y1AmoMcA+L8FgtuDahpL/ZSJHvkLM4/1UgZWVNo nmSbikQ0a306O++7vrVrJf4NInIpNSCBKrp8PoUGk+v1WJSfpg/dWRRLiujh00PQ r8HbclW+KzGkb8Nj9E7bLWwMNfFqneuvSOMsXBwZypDEtMNb8UApIL/GEWMEyHZQ SsPyPLzApjnCs6y8ZymTV4UslLDoMQ+s4V+5Vf98kX92FtSbkTXJpmIpFfqVGF7B PJZxHF8C0UrbPZKXTH103kIwFdm9J37v6kt6XHwzYhxIQq+5rMmTMwpcKWIOy2Aa /VEVtm1q7E7TujhrfodKUJ+CTpM0fh+nAgMBAAGjTjBMMAwGA1UdEwQFMAMBAf8w HQYDVR0RBBYwFIESa29udGFrdEBtaW5pdGVsLmN6MB0GA1UdEgQWMBSBEmtvbnRh a3RAbWluaXRlbC5jejANBgkqhkiG9w0BAQsFAAOCAQEAL2XLfmwX1Ky4tiCTEbYd X+YFWH+Nz0AWMqYvU6p5b9Ctgxk21UJ3VWspiGfJMOQicgtL/2okggKN3Ud6GgGb O5hpLQUPhzKHIBb4IIc+DCcLi7qRaVTk0OG/PWtsamadwJf3d5HIs1ZT6TjMj5ez 3kEOQOpMrhq7pK+jOmkpGkqeTBfSwConfQsMtRY3YpvQ0gqSOmUC+yW4swzFIPgo xLPl7bJj7yqgfYr4MOlkSYiUc0YMw7mJlTBgHZ3yhh8BV7igUXXF+enPDGhx6ozO paxiwuPwAfN3XM91mqhBnu+pSqXQpoYJJ1TBfbVS5Oxq51rtJ1ZThBEMdT3v8d6b Jw== -----END CERTIFICATE-----
Používat certifikáty je nutné, jen pokud si tuto možnost zapnete (nebo ji máte defaultně zapnutou na svém telefonu). Doporučujeme si do telefonu přidat oba certifikáty (např. u telefonu Yealling/Well), abyste později při změně certifikátů nemuseli nic přidávat či měnit.
Co se týče příchozích šifrovaných hovorů a vůbec hovorů se signalizaci na TCP, jeví se nám telefony Grandstrem GXP 1400 a GXP 1450 problémové. Můžete ale zkusit tento návod. Doporučujeme na jedné lince používat jen jeden telefon. Postup, jak si nahrát nejnovější firmware, naleznete zde http://www.odorik.cz/w/grandstream_gxp1400
Samotná věta “Protokol pro RTP pakety:” UDP/TCP/TLS TCP “ je nehorázná chyba překladatele. RTP totiž nikdy přes TCP nechodí. Vždy jde přes UDP. Zjevně tam mělo být protokol SIP signalizace:. V angličtině je tam “SIP Transport”.
Zde zapnete šifrování pro samotný RTP tok, tedy hovor samotný.
Šifrovaný hovor poznáte tak, že je na displeji telefonu zobrazen zámeček během hovoru.
Pokud telefon záhadně zlobí, nebo si již nevíte rady, můžete začít úplně od začátku restartováním do továrního nastavení:
České menu telefonu:
menu → konfigurace → tovární reset
Anglické menu telefonu:
menu → config → factory reset
Mějte na paměti, že k datu 01.03.2013 není telefon stále dokonale odladěn ani s nejnovějším firmware. Např. zapomíná ručně vložené kontakty při restartu.
Pokud si telefon kupujete vyloženě kvůli šifrovaným hovorům, dejte v tomto případě přednost telefonu Well. Chová se korektněji než telefony Grandstream GXP 1400.
Zde zapnete šifrování signalizace.
Zde zapnete šifrování samotného hovoru.
Šifrovaný hovor poznáte tak, že je na displeji telefonu zobrazen zámeček během hovoru.
Buď si kontrolu kontrolu certifikátu vypněte, nebo nahrajte naše certifikáty (viz výše) do telefonu jako důvěryhodné
Aby vám fungovalo vynucení šifrování i u příchozích hovorů, zapněte si tuto volbu.
Z výpisu přihlášených zařízení, je zjevné, že se zařízení hlásí přes TLS (sloupeček protokol) na portu 5061, který je vyhrazen pro SIP signalizaci šifrovanou přes TLS.
Začněte tím, aby fungovalo nešifrované volání pomocí wizardu najdete odorik.cz a vyplnít jen jméno a heslo linky a pak si TLS a SRTP dodatečně zapněte v expertním režimu. Přepnutí do expertního režimu provedete následovně: Ve výchozí obrazovce s číselníkem stiskněte menu a vyberte ucty, potom dlouhý stisk na Odorik.cz v menu vyberte 'Vybrat pruvodce' (může být nutné zkrolovat) a projeďte nabízené operátory a zvolte Expert.
Podporu TLS, SRTP a případně ZRTP je nutné nečekaně povolit nejen u daného SIP účtu, ale i v celkovém nastavení programu společném pro všechny SIP účty. Najdete to v “nastavení→síť→zabezpečení přenosu”. Další nastavení se provádí logicky u SIP linky, kterou chcete použít. Tedy Přenos na TLS a SRTP mod na povinné. Netradiční port můžete (ale nemusíte - použije se pak automaticky 5061) nastavit v položce která se jmenuje Proxy URI: např. sip:sip.odorik.cz je můžete změnit na sip:sip.odorik.cz:6670 Pokud máte všechno správně, u probíhajícího hovoru pak svítí na žlutém pozadí, že je použit TLS i SRTP. Celá bíle napsaná věta na žlutém pozadí, která je nejspíš špatným překladem z angličtiny, co je vidět během hovoru, zní: “TLS přenos je využíván k okamžitému hopu SRTP”. Obrázky s nastavením na našem fóru: http://forum.odorik.cz/viewtopic.php?f=32&t=4536#p35501, tam ale zapomněli na nastavení SRTP.
Vypadá to, že v CSIPSimple nelze nastavit vlastní certifikační autoritu ani certifikát a program se zaregistruje a volá i s použitím našeho certifikátu podepsaného vlastní nedůvěryhodnou autoritou. Dobrý kompromis by byl, kdyby CSIPsimple varoval alespoň při prvním hovoru. Ale ani to, zdá se se neděje. A nenašel jsem nikde volbu, kde by se tohle ne úplně bezpečné chování dalo vypnout/zapnout. Možná to někdy opraví a pak TLS přestane fungovat nebo se začne při prvním hovoru ptát.
CSIPSimple podporuje i šifrování přes ZRTP, které si můžete také povolit. ZRTP lze využít jen pro hovory uvnitř sítě Odorik, ale ZRTP má zásadní výhodu, že se jedná o šifrování end to end s tím, že klíče se nepředávají v signalizaci, ale přímo ve zvuku takovým způsobem, že je není možné získat nikde po cestě ani na SIP a RTP proxy. Tedy není možný odposlech nikde po cestě, ani kdyby servery Odoriku obsadilo novodobé gestapo. I když SRTP v případě vytočení dvou hvězdiček před číslem linky proudí také napřímo, klíče jsou posílány pomocí TLS, které je na odorik sip proxy dešifrováno. Ke klíčům má tak teoreticky přístup ten, kdo má přístup k SIP proxy, tedy teoreticky ono novodobé gestapo.
Pro hovory přes ZRTP je nutné volat jen linky v síti, a to se dvěmi hvězdičkami na začátku. Tedy vytočíte číslo např. **300116. ZRTP je vhodné kombinovat s TLS (aby nešlo odposlechnout, kdo komu volá). Pokud ale necháte povoloné obojí, jak SRTP tak ZRTP bohužel přednost dostane “horší” SRTP. Aby si tedy byly schopny volat dvě linky s využitím ZRTP, je alespoň na jedné z těch linek nutné zakázat SRTP, jinak by bohužel dostalo přednost. Použité šifrování můžete zkontrolovat kdykoli během hovoru ve žlutém pruhu.
U Zoiperu je šifrování jednodušší. Stačí povolit SRTP, čímž bude vyzváni i povolení TLS. Pokud Zoiper používáte na nestandardním portu jako 443 je nutné port smazat, nebo upravit na jeden z portů využívaný pro TLS. Při prvním přihlášení jste varování, že se certifikát na sip.odorik.cz není podepsán důvěryhodnou autoritou, to nechte ignorovat.