{"id":279,"date":"2019-01-07T21:39:41","date_gmt":"2019-01-07T19:39:41","guid":{"rendered":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/?p=279"},"modified":"2020-09-19T22:32:09","modified_gmt":"2020-09-19T19:32:09","slug":"kotiautomaation-tietoturvasta","status":"publish","type":"post","link":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/kotiautomaation-tietoturvasta\/","title":{"rendered":"Parempaan tietoturvaa kotiautomaatij\u00e4rjestelm\u00e4\u00e4n"},"content":{"rendered":"<p>On helppo ymm\u00e4rt\u00e4\u00e4 ett\u00e4 kotiautomaatioj\u00e4rjestelm\u00e4n tietoturva-asioihin t\u00e4ytyy kiinnitt\u00e4\u00e4 erityist\u00e4 huomiota, varsinkin jos j\u00e4rjestelm\u00e4\u00e4n on liitetty kameroita, kodin h\u00e4lytysj\u00e4rjestelm\u00e4 tai vaikkapa \u00e4lylukkoja. T\u00e4ss\u00e4 muutamia poimintoja mit\u00e4 j\u00e4rjestelm\u00e4\u00e4 rakennettaessa kannattaa huomioida.<\/p>\n<h3>Salasanat<\/h3>\n<p>Salasanojen vahvuutta ei voi koskaan korostaa liikaa. Ennen salasanoissa on suositettu k\u00e4ytett\u00e4v\u00e4n isoja ja pieni\u00e4 kirjaimia, numeroita ja erikoismerkkej\u00e4. Paremman suojan ns. <a href=\"https:\/\/fi.wikipedia.org\/wiki\/V%C3%A4sytyshy%C3%B6kk%C3%A4ys\">brute-force<\/a> -hy\u00f6kk\u00e4yksi\u00e4 vastaan saa n\u00e4iden lis\u00e4ksi pitkill\u00e4 (yli 15 merkki\u00e4 sis\u00e4lt\u00e4vill\u00e4) salasanoilla tai lauseilla. Aiheesta lis\u00e4\u00e4 esimerkiksi\u00a0<a href=\"https:\/\/www.kyberturvallisuuskeskus.fi\/sites\/default\/files\/media\/file\/Salasanat_haltuun.pdf\">Kyberturvallisuuskeskuksen ohjeessa<\/a>.<\/p>\n<p>Home Assistantissa voi olla tallennettuna useita eri salasanoja: k\u00e4ytt\u00f6liittym\u00e4n salasana(t), MQTT, reititin, notifikaatiopalvelut, jne. Home Assistant tarjoaa salasanojen tallentamiseen k\u00e4yt\u00e4nn\u00f6ss\u00e4 kahta eri tapaa: Salasanat voivat olla selkokielisen\u00e4 <em>configuration.yaml<\/em> -tiedostossa tai erillisess\u00e4 <em><a href=\"https:\/\/www.home-assistant.io\/docs\/configuration\/secrets\/\">secrets.yaml<\/a><\/em> -tiedostossa. Turvallisempi vaihtoehto on suojata salasanat kryptaamalla ne erillisen skriptin avulla. Salasanojen kryptaamiseen on Home Assistantissa kaksi vaihtoehtoa <a href=\"https:\/\/www.home-assistant.io\/docs\/tools\/keyring\/\">keyring<\/a> tai <a href=\"https:\/\/www.home-assistant.io\/docs\/tools\/credstash\/\">credstash<\/a>.\u00a0Home Assistant tukee my\u00f6s <a href=\"https:\/\/www.home-assistant.io\/docs\/authentication\/multi-factor-auth\/\">monivaiheista tunnistautumista<\/a>, mik\u00e4 parantaa suojaustasoa merkitt\u00e4v\u00e4sti.<\/p>\n<h3>Et\u00e4yhteys<\/h3>\n<p>Kannattaa tarkkaan harkita tarvitseeko kotiautomaatioj\u00e4rjestelm\u00e4\u00e4n p\u00e4\u00e4st\u00e4 k\u00e4siksi kodin ulkopuolelta vai luottaako siihen ett\u00e4 automaatiot toimivat kuten pit\u00e4\u00e4kin ja ett\u00e4 (virhe)tilanteista saa riitt\u00e4v\u00e4t ilmoitukset vai tarvitseeko tietoja v\u00e4ltt\u00e4m\u00e4tt\u00e4 n\u00e4hd\u00e4 ja asetuksia muuttaa my\u00f6s kotoa poissa ollessaan. Yhteysmahdollisuus kotiverkon ulkopuolelta avaa my\u00f6s hy\u00f6kk\u00e4\u00e4jille mahdollisuuden p\u00e4\u00e4st\u00e4 kotiverkkoon sis\u00e4lle.<\/p>\n<p>Jos k\u00e4yt\u00f6ss\u00e4 on dynaaminen julkinen IP-osoite, saa osoitteen helpommin muistettavampaan muotoon dynaamisen DNS-palvelun avulla. T\u00e4llainen palvelu on esimerkiksi suomalainen <a href=\"https:\/\/www.dy.fi\/\">dy.fi<\/a>. Palvelu vaatii kotiverkon palvelimella tai reitittimess\u00e4 s\u00e4\u00e4nn\u00f6llisesti ajettavan skriptin, joka p\u00e4ivitt\u00e4\u00e4 IP-osoitteen palveluun. Kotiverkkoon yhdistet\u00e4\u00e4n t\u00e4m\u00e4n j\u00e4lkeen palveluun rekister\u00f6idyll\u00e4 osoitteella: esim. kotiautomaatio.dy.fi<\/p>\n<p>Riippuen kotiverkon toteutuksesta ja yhteystavasta, tarvitaan lis\u00e4ksi porttiohjaus laajakaista-modeemin ja reitittimien asetuksiin, jotta liikenne l\u00f6yt\u00e4\u00e4 reitin ulkoverkon ja Home Assistant -palvelimen v\u00e4lill\u00e4. Yhteyden muodostamiseen kannattaa ehdottomasti k\u00e4ytt\u00e4\u00e4 salattua <a href=\"https:\/\/fi.wikipedia.org\/wiki\/VPN\">VPN-tunnelia<\/a> tai <a href=\"https:\/\/fi.wikipedia.org\/wiki\/TLS\">TLS(SSL)-salattua<\/a> yhteytt\u00e4 avoimen salaamattoman yhteyden sijaan.<\/p>\n<h3>Yhteyksien hallintaa<\/h3>\n<p>Home Assistant mahdollistaa IP -osoitteiden eston v\u00e4\u00e4rien kirjautumisyritysten perusteella. T\u00e4m\u00e4n saa k\u00e4ytt\u00f6\u00f6n laittamalla <em>configuration.yaml<\/em> -tiedostoon rivit:<\/p>\n<pre class=\"highlight\"><code><span class=\"s\">http<\/span><span class=\"pi\">:<\/span>\n  <span class=\"s\">ip_ban_enabled<\/span><span class=\"pi\">:<\/span> <span class=\"s\">true<\/span>\n  <span class=\"s\">login_attempts_threshold<\/span><span class=\"pi\">:<\/span> <span class=\"s\">5\n<\/span><\/code><\/pre>\n<p>Yll\u00e4 olevat rivit saavat Home Assistantin est\u00e4m\u00e4\u00e4n kirjautumisyritykset viiden v\u00e4\u00e4r\u00e4n kirjautumisyrityksen j\u00e4lkeen. Home Assistant kirjaa estetyt IP-osoitteet konfiguraatio-hakemistossa olevaan <em>ip_bans.yaml<\/em> -tiedostoon, josta niit\u00e4 voi tarvittaessa muokata. Estetyt IP-osoitteet ilmestyv\u00e4t n\u00e4kyviin my\u00f6s k\u00e4ytt\u00f6liittym\u00e4n etusivulle.<\/p>\n<p>Laajemmat s\u00e4\u00e4t\u00f6mahdollisuudet yhteyksien hallintaan saa kodin reitittimen palomuurin tai Home Assistantin k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4n <a href=\"https:\/\/www.linux.fi\/wiki\/Iptables\">iptables<\/a>\/<a href=\"https:\/\/www.linux.fi\/wiki\/NFTables\">NFTables<\/a> -ty\u00f6kalun avulla. IP-estojen lis\u00e4ksi voi t\u00e4ll\u00f6in m\u00e4\u00e4ritt\u00e4\u00e4 esimerkiksi vain tietyt sallitut IP-osoitteet, jolloin kaikki muut yhteydet estet\u00e4\u00e4n.<\/p>\n<h3>\u00c4lylaitteiden p\u00e4\u00e4sy verkkoon<\/h3>\n<p>Monet kodin \u00e4lylaitteista haluavat pit\u00e4\u00e4 yhteytt\u00e4 laitevalmistajien omiin palveluihin, jolloin ei ole t\u00e4ytt\u00e4 varmuutta mit\u00e4 tietoja valmistajille v\u00e4litet\u00e4\u00e4n. K\u00e4ytett\u00e4ess\u00e4 laitteita Home Assistantin kanssa, laitteille riitt\u00e4\u00e4 yleens\u00e4 yhteys vain Home Assistantin kanssa, eik\u00e4 ulkopuolisia yhteyksi\u00e4 tarvitse sallia. Helpoiten t\u00e4m\u00e4 onnistuu m\u00e4\u00e4rittelem\u00e4ll\u00e4 kodin reitittimen asetuksista onko laitteella p\u00e4\u00e4sy Internetiin vai ei.<\/p>\n<p>\u00c4lylaitteiden omaan tietoturvaan kannattaa my\u00f6s kiinnitt\u00e4\u00e4 huomiota. Hy\u00f6kk\u00e4\u00e4j\u00e4 saattaa k\u00e4ytt\u00e4\u00e4 laitteiden tietoturva-aukkoja hyv\u00e4kseen ja p\u00e4\u00e4st\u00e4 sit\u00e4 kautta kodin verkkoon. Kannattaa siis huolehtia ett\u00e4 laitteiden tietoturvap\u00e4ivitykset ovat ajan tasalla. Lis\u00e4ksi auttaa yhteyksien salliminen vain luotetuista IP-osoitteista eli yhteydet vain Home Assistantin ja \u00e4lylaitteen v\u00e4lill\u00e4. Toinen hyv\u00e4 keino on erist\u00e4\u00e4 kodin \u00e4lylaitteet omaan (<a href=\"https:\/\/fi.wikipedia.org\/wiki\/Virtuaalil%C3%A4hiverkko\">virtuaaliseen<\/a>) kotiautomaatioverkkoon. T\u00e4ll\u00f6in murtautuja onnistuessaan p\u00e4\u00e4see k\u00e4siksi vain t\u00e4h\u00e4n rajattuun kotiverkon osaan.<\/p>\n<h3>Varmuuskopiot<\/h3>\n<p>Ei ehk\u00e4 liity suoraan tietoturvaan, mutta kotiautomaatioj\u00e4rjestelm\u00e4n varmuuskopioista on my\u00f6s hyv\u00e4 huolehtia. Esimerkiksi Raspberry Pi:n muistikortin pett\u00e4ess\u00e4, on j\u00e4rjestelm\u00e4 huomattavasti nopeammin palautettavissa toimintakuntoon tuoreen varmuuskopion avulla. Helpoimmat tavat lienee tehd\u00e4 varmuuskopiot valmiiden laajennusten avulla <a href=\"https:\/\/www.home-assistant.io\/docs\/ecosystem\/backup\/backup_github\/\">GitHubiin<\/a> tai <a href=\"https:\/\/github.com\/danielwelch\/hassio-gdrive-sync\">Google Driveen<\/a>.<\/p>\n<p>Kaikki omat varmuuskopioni (mukaanlukieni esimerkiksi valokuvat ja muut dokumentit) teen ensin paikalliselle NAS-palvelimelle. NAS-palvelimelta varmuuskopiot tehd\u00e4\u00e4n edelleen kotiverkon ulkopuolella olevalle palvelimelle. Varmuuskopioiden tekemiseen k\u00e4yt\u00e4n <a href=\"https:\/\/en.wikipedia.org\/wiki\/Rsync\">rsync<\/a> -skripti\u00e4, joka on ajastettu <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cron\">cron<\/a>:lla suoritettavaksi kerran viikossa. Tiedot ovat t\u00e4ll\u00f6in tallessa kolmella eri palvelimella ja kahdessa eri fyysisess\u00e4 paikassa.<\/p>\n<pre>#!\/bin\/sh<br \/>\/usr\/bin\/rsync -az \/home\/homeassistant\/.homeassistant\/ user@NAS:\/HASSBackup\/<\/pre>\n<p>Skripti kopioi kaikki Home Assistantin tiedostot alihakemistoinen, k\u00e4ytt\u00e4j\u00e4oijkeuksineen ym. (-a archive mode) NAS-palvelimelle \/HASSBackup -hakemistoon. Siirtoon k\u00e4ytet\u00e4\u00e4n SSH-yhteytt\u00e4 ja tiedostot pakataan (-z) siirron aikana. Vastaavanlainen skripti on k\u00e4yt\u00f6ss\u00e4 varmuuskopioitaessa NAS-palvelimelta ulkoiselle palvelimelle.<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>On helppo ymm\u00e4rt\u00e4\u00e4 ett\u00e4 kotiautomaatioj\u00e4rjestelm\u00e4n tietoturva-asioihin t\u00e4ytyy kiinnitt\u00e4\u00e4 erityist\u00e4 huomiota, varsinkin jos j\u00e4rjestelm\u00e4\u00e4n on liitetty kameroita, kodin h\u00e4lytysj\u00e4rjestelm\u00e4 tai vaikkapa \u00e4lylukkoja. T\u00e4ss\u00e4 muutamia poimintoja mit\u00e4 j\u00e4rjestelm\u00e4\u00e4 rakennettaessa kannattaa huomioida. Salasanat Salasanojen vahvuutta ei voi koskaan korostaa liikaa. Ennen salasanoissa on suositettu k\u00e4ytett\u00e4v\u00e4n isoja ja pieni\u00e4 kirjaimia, numeroita ja erikoismerkkej\u00e4. Paremman suojan ns. brute-force -hy\u00f6kk\u00e4yksi\u00e4 vastaan saa n\u00e4iden lis\u00e4ksi pitkill\u00e4 (yli 15 merkki\u00e4 sis\u00e4lt\u00e4vill\u00e4) salasanoilla tai lauseilla. Aiheesta lis\u00e4\u00e4 esimerkiksi\u00a0Kyberturvallisuuskeskuksen ohjeessa. Home Assistantissa voi olla tallennettuna useita eri salasanoja: k\u00e4ytt\u00f6liittym\u00e4n salasana(t),&#8230;<\/p>\n<p class=\"read-more\"><a class=\"btn btn-default\" href=\"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/kotiautomaation-tietoturvasta\/\"> Read More<span class=\"screen-reader-text\">  Read More<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[72],"tags":[37,9,22,53,35,34,52,36],"class_list":["post-279","post","type-post","status-publish","format-standard","hentry","category-kotiautomaatio","tag-etayhteys","tag-home-assistant","tag-mqtt","tag-nas","tag-salasana","tag-tietoturva","tag-varmuuskopio","tag-vpn"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/posts\/279","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/comments?post=279"}],"version-history":[{"count":0,"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/posts\/279\/revisions"}],"wp:attachment":[{"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/media?parent=279"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/categories?post=279"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hyotynen.iki.fi\/kotiautomaatio\/wp-json\/wp\/v2\/tags?post=279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}