Archiv pro štítek: mini-howto

Chytrá domácnost Home Assistant – Úvod, info, instalace

Home Assistant – Úvod, info, instalace


Chytrá domácnost, domácí automatizace, smarthome, inteligentní dům, automatizace budov, aktuální téma skloňované v mnoha pádech, do pár let se tento koncept stane standardem každého bydlení, dle studií je schopna inteligentní domácnost uspořit ročně pro čtyřčlenou domácnost průměrně 40-60 tisíc úkonů a nakonec možná čas je to jediné o co v životě “hrajem” sekundárně pak pohodlnost, komfort a bezpečí našeho “lifestyle-u”.

HA-info-6656435_blog_smarthome

Jaká je situace v současné době ?

Na trhu je dnes dostupné poměrně velké množsví různě “chytrých” IoT levných i drahých zařízení a je pravděpodobně, že některé již máte instalované ve své domácnosti a nebo o nich uvažujete. Velké množsví různých vyrobců trpí silnou diverzitou, žijou osamoceným životem a jako celek spolu většinou moc nespolupracují, výsledkem je nekoncepčnost řešení, bez celkové náváznosti a vrcholem této dekance je XY aplikací v mobilním telefonu pro každé zařízení, které Vám život neulehčují :-(.

Zde nastupuje pomoc v podobě integračních platforem, které propojují do jednoho logického celku aktivní prvky různých vendorů, zde nastupují řešení typu Home Assistant. Přidanou hodnotou unifikovaného přístup k systému jako celku je rozsáhlá škála možností automatizace budovy což vede k vyšší užitné hodně, odpadají rutinní opakujicí se činnosti, odpadají starosti, získáváte komfort i čas.

Budoucnost klepe na dveře a díky zlevňování technologíí bude je dostupná takřka pro každého, je jen na Vás zdali ji otevřete.

--- EXIRTA s.r.o. ---
- Inteligentní domy a automatizace budov
- Realizujeme kompletní projekty v regionu západních čech
- Kompletní elektroinstalace, silnoproud, slaboproud
- Vytápění, rekuperace, klimatizace, žaluzie, stínění
- Osvělení, LED design, dveře, zámky, vrata
- Integrace audio, video, interkomy
- Bezpečnost, alarm, kamerový systémy, přístupový systém
--- Kontaktujte nás ---
- Kontaktní e-mail:  info@exirta.cz
- Kontaktní telefon: +420 725 714 669
- Centrála: EXIRTA s.r.o., Oldřichovská 2301, Tachov
- WWW: http://www.exirta.cz
- FB: https://www.facebook.com/exirtacz/
- IG: https://www.instagram.com/exirta.cz/

HA-Fin470-Smart-Home-Intruder

Co je to Home Assistant ?

Home Assitant (HA) je open source software integrační platforma pro autonomní domaHome_Assistant_Logo.svgcí automatizaci, jádro systému je napsáno v jazyce Python3, od prvního počátku (rok 2013) byl HA navržen jako centrální prvek chytré domácnosti s důrazem na lokální kontrolu (autonomní funkčnost) a soukromí. Možnosti samotného HA dnes silně rozšiřuje systém integrací (ovladače zařízení), ke konci roku 2020 je dostupných více než 1700 integrací.

  • HA funguje jako centrální HUB domácnost
  • Integruje a propojuje zařízení do jednoho logického celku
  • Vytváří automatizace nad integracemi
  • Podporuje skriptování, scény, triggery, časovače, zóny, …
  • Podporuje vlastnosti presence (přítomnosti osob)
  • Podporuje nástěnky (dashboard), témata, stylování
  • Podporuje RFID tagy (značky)
  • Disponuje aplikací pro Android / iOS
  • Silná komunita
  • Podpora pro gateway (zigbee,z-wave,rf433MHz, IoT, protocol bridge, MQTT, …)
  • Připraven k “ohýbání”, bastlení, cenově dostupný HW
  • Nejrychleji rostoucí opensource “home automation” systém
  • Interně k popisu využívá formát YAML
  • Logika HA používá podmíněných výrazů (conditional statements) IF THEN ELSE …

HA-If-Then-Else-diagram.svg

Co je špatného na cloudové automatizaci ?

Všechno a nic, často zde platí rovnítko, nejede internet, nejede automatizace, někdy částečně a jindy zcela, “benefitem” je absence centrálního řídícího prvku(serveru) domácnosti, je totiž hostován někde tam venku v jednom z nebeských cloudů.

Nic však není zadarmo, mnoho “chytrých” zařízení zpravidla vyžaduje konfigurovaci přes svoji aplikaci v mobilním telefonu a připojení k lokální wifi, všimněte si, že často aplikace vyžaduje odsouhlasení podmínek použití a nezřídka i registraci emailem k nějaké službě výrobce, to pravé vykoupení nastává v podobě postoupení trochu Vašeho soukromý, protože každý dnes chce mít svoje “big data” a ty ideálně dále monetizovat. Buďte obezřetní. Komu patří budoucnost ?

Vývoj

HA je stále v aktivní vývoji, přidávájí se nové vlastnosti a integrace, nové verze jsou uvolňovány “pravidelně” ve středu jednou za cca 3 týdny, pro přesné informace doporučuji sledovat https://developers.home-assistant.io, případně se zapojit, možností je mnoho.

Je to pro každého ?

Krátká odpověd NE ! :-(

HA vyžaduje znalosti resp. učení se, ostatně jako celý ekosystém otevřeného kódu, buď to uděláte sami nebo si na to někoho najdete (zaplatíte), to obecně platí i pro jiná komerční řešení.

HA-computer-geek-cartoon-clipart-geek-nerd-clip-art-d978f3a27174b0f9

Hodně věcí se změnilo k lepšímu a vývoj pokračuje.

  • Od verze 0.100 (momentálně jsme u verze ˜0.118) se zlepšilo uživatelské rozhrání, velkou část nastavení, integrací si “naklikáte”
  • Základní automatizace jednoduše “naklikáte”
  • Nástěnky si upravíte dle potřeby
  • Instalace pro hardware Raspberry Pi je velmi snadná
  • Zálohování funguje
  • Update “většinou” funguje

Pro pokročilé věci stále potřebujete editovat konfigurační soubory, výhodou je silná komunita, většinou už někdě řešil podobný problém, výhodou je mít pak někoho kdo se vyzná pro případ “troubleshootingu“, složitějších integrací a ladění.

Verze HA ?

Pojmenování částí projektu HA je trochu zmatečné i proto došlo počátkem roku 2020 k přejmenování.

  • HomeAssistant (dříve Hass.io) – Docker image obsahující Home Assistant Core, UI, možnost  instalace doplňků (AddOns, oficiálních i komunitních), funkce zálohování a update, většina návodů na internetu se točí kolem tohoto.
  • Home Assistant Core (dříve pouze Home Assistant), jádro HA v Python3, komponenty, integrace, UI, lze ho spustit i samostatně skrze pip/virtualenv
  • HassOSminimalistická Linux distribuce (Home Assistant Operation System), obsahuje HomeAssistant docker image a je sestavena pro jednodeskové počítače Raspberry Pi, Intel NUC, …

Hardware ?

Je to Linux / Python musí to běžet na čemkoliv, bohužel ne. Respektive ano a to díky Docker virtualizaci, ale očekávejte problémy pokud se budete odchylovat od “mainstreamu“.

Projekt podporuje především jednodeskové počítace Raspberry Pi, které vynikají poměřem cena/výkon a jsou velmi populární, dále Asus TinkerBoard, Odroid (zajímavá cena + odolné eMMC úložiště), pro seriozní nasazení je pak vhodná x86 platforma Intel NUC (i3/i5/i7/i9), připravené jsou obrazy virtuálních počítačů pro platformu VMware, KVM, Virtualbox, Microsoft Hyper-V. V případě potřeby lze spustit na “libovolné” Linux distribuci jen Home Assitant Core (jádro), vyžadován je Python 3.8+.

Typ Min. požadavky
Úložiště 32 GB
Paměť 1 GB
Síť 100 Mb/s
Napájení 5V/2.5A (Raspberry Pi)
MOJEservery-HA-rpi2_2020
Raspberry Pi

1. Raspberry Pi

Platforma Info
Raspberry Pi Zero/Pi 2 Vhodná pouze pro testování (sám jsem měl RPI2, poté přešel na RPI4)
Raspberry Pi 3/3+/4 Ideální způsob kde začít experimentovat, samotný hardware je cenově přijatelný, v závislosti na počtu zařízení plně dostačující pro základní automatizaci, A2 class SD doporučena jako úložiště (menší IO výkon, větší životnost), doporučuji nepodcenit napájecí adaptér (používám 5V/3A, RPI4), RPI4 výkon je ~ Intel i3, určitě zálohujte, není špatné mít záložní klon SD karty a v případě problémů ji prostě přehodit, pro správnou funkci GPIO je doporučena 32bit verze HA.
Raspberry Compute Module 4 Čtvrtá generace Raspberry Pi pro “průmyslovější” nasazení (aktuálně testujeme provoz HA jako Python venv na 2GB modelu s 16GB eMMC úložištěm), v plánu je pokusit se o 3D STL blueprint case pro IO modul.

Problematická SD karta, aneb o čem se nemluví, dříve či později dojde neustálým zápisem k poškození paměťové karty a bude potřeba ji vyměnit, mějte to na paměti a zálohujte. Výhodou je mít možnost záložní karty (klon) a prostě ji celou výměnit, jednoduchá a rychlá operace, stejně jak lze vyměnit i celé Raspberry Pi pokud odejde, hardware je identický, rychle zaměnitelný a v této cenové hladině je možné mít i záložní (testovací) hardware neustále “skladem”, věci se prostě kazí a nelze tomu zabránit, shořel i raketoplán Columbia a na tom makalo spousta chytrých lidí. ;-)

2. Raspberry Pi + SSD

Raspberry Pi 4B (a pravděpodobně i starší verze 2,3,B+ v nějakém omezení) podporuje boot z USB mass storage (SSD disk, flash USB), netestoval jsem přímo, ale RPI4 by měla být schopna bootovat přímo z USB i bez SD karty (starší verze vyžadují SD kartu). Princip je obejít nespolehlivé medium SD karty a provozovat HA na odolném SSD disku s vysokou životností, je to jeden z nejlepší “setupů” pro tuto platformu a jejích dlouhodobý provoz.

3. x86 (Intel NUC)

Platforma pro ideální nasazení, výkon, SSD disk, spolehlivost.

4. Virtuální stroj

Synology Docker,  kromě zhora uvedených populárních virtualizačních technologií existuje nemalé množství uživatelů provozující HA na svém domácí úložišti skrze Docker image, jde o další možnost jak “utilizovat” svůj domácí hardware. (nemám osobní zkušenost)

5. Zálohované napájení, fail-save stavy

HA-rge-rechargeable-battery-energy-2020

Praktické poznámky z realného provozu.

  • Zálohujte napájení HA – v lepší případě pomocí UPS, v horším případě lze Raspberry Pi “podepřít” powerbankou (! fce nabíjet a napájet zároveň)
  • Přemýšlejte dopředu o tom co chce automatizovat a stavte řešení tak, že pokud nepůjde napájení, nepojede HA, nebude XYZ tak stav bude definovaný jako bezpečný s minimalizací škod
  • TESTUJTE!  Viz předchozí bod, je potřeba vědět, né jen tušit.
  • Mějte záložní plán.
  • Znova opakuji zálohujte !

Instalace Home Assistant na Raspberry Pi

Postup instalace je velmi snadný a netřeba se obávat, připravte si Raspberry Pi + zdroj + SD kartu + čtečku karet + LAN kabel.

  1. Stáhněte si obraz pro svůj hardware.
  2. Vložte SD kartu do čtečky a pomocí nástroje Etcher nebo Rufus nahrajte stažený obraz na SD kartu. (Linuxu postačí i dd)
  3. SD kartu vložte do Raspberry, připojte LAN k routeru a napájení.
  4. Instalace HA proběhne včetně update zcela automaticky, zabere cca 20 minut, pokud připojíte HDMI lze sledovat proces instalace.
  5. Z routeru zjistěte přidělenou IP adresu HA.
  6. Připojte se pomocí internetového prohlížeče na IP adresu a port 8123, např. http://192.168.88.254:8123 .
  7. Založte si svůj první uživatelský účet, zvolte název, polohu kvůli předpovědi počasí, západu a východu slunce , zvolte jednotky a časové pásmo a jste ve hře. ;-)

HA-install-1-Screenshot_20201222_134143

Úvod do prostředí Home Assistant

Ukázka základního prostředí GUI HA, jednoduché responzivní prostředí zobrazující vše potřebné, frontend je “skinovatelný” pomocí témat / CSS od verze 0.49, viz HA Frontend themes.

Hlavní menu lze navíc rozšiřovat pomocí doplňků(add-on) a dříve či později to uděláte.

HA-FAHA-1-Screenshot_20201222_154536

Malý rychlý průvodní základním menu
  • Přehled – základní výchozí dashboard (nástěnka) HA, zde si umístíte stavy entit, proměné, přepínače,….atd, v záhlaví je možné mít odznaky (badges) informující o stavu vybraných entit, např. přítomnost (presence), teploty, atd. Dashboardů je možné mít více a navíc podporují záložky např. pro skupiny spolu souvisejících entit (topení, světla, alarm, zahrada,…), na hlavní nástěnce pak ideálně jen celkový přehled systému.
  • Mapa – zobrazení mapy (openstreetmap), úzce souvisí s presence(přítomnost) stavy a zóny (Menu nastavení -> zóny). Pro rychlou představu základní myšlenka, HA definuje na mapě zóny (oblasti, domov, práce, záhrada, chalupa, krám, … ), pokud vkročíte do zóny a např. telefon informuje HA skrze GPS polohu uživatel je v zóně XYZ, obratem lze vyvolat automatizovanou akci. Informace o vstupu do zóny může být získána velmi pružně od tlačítka, rfid čipů, přes bluetooth maják, až po co si vymyslíte (detekce SPZ?).
  • Záznamy, Historie – informace o změnách atributů entit a jejich vývoj v čase, hodí se pokud hledáte co se dělo a v jaké sledu.
  • Vývojářské nástroje – šikovná věc, při ladění automatizace budeme velmi často potřebovat simulovat stav entit, proč ale kvůli tomu např. neustále běhat k vypínači když lze snadno odsimulovat jeho zapnutí, stejně snadno lze takto volat i služby (služba v HA je volání požadavku např. zapnutí světla, nastavení teploty či notifikace), realně nedochází k fyzickému předponutí stavu (simulace), tedy při ladění nikoho neobtěžujete blikáním apod.
  • Supervisor – dashboard HA, verze systému HA a HA Core + případné aktualizace, zálohování! formou snapshotů (můžete se tak vrátit zpět ke kompletní kopii stavu), add-on store = repozitáře doplňků pro HA, system log a možnost restartovat systém.
  • Nastavení - klíčové menu, množství nastavení, dobré projít
    • Integrace
    • Zařízení
    • Entity
    • Automatizace, scripty, scény, helpers
    • Osoby, uživatelů, zóny
    • Tagy (např. načtené RFID z ruky;-), lze číst v app HA telefonu

Integrace a entity

Integrace

Integrace = ovladače pro hardware, ale i software (služby jako např. předpovědi počasí, komunikátory Signal, Telegram či hlasový asistent Google apod.), příkladem zajímavé a ohebné integracem je number, vytvoří Vám číselnou entitu (např. hladinu vody přepočítanou z ultrazvukového čidla), tu lze použit v další automatizaci. Integrace jsou klíčové, ve své podstavě jsou to Python moduly a HA je vlastně integrační platforma s raketovým růstem a neskutečným potenciálem propojovat oddělená zařízení do vetších logických celků s přidanou hodnotou automatizace.

Entity

Každé zařízení (integrace) je v HA reprezentováno jako entita, vystavuje vlastnosti (proměné) které dále zpracujeme v následné automatizaci.

HA-entities_architecture

Mobilní aplikace HA

Doporučuji nainstalovat oficiální aplikaci HA pro mobilní telefon.

Získáte tak informace přímo v telefonu a díky integraci navíc informace např. poloze (zóny), osobně dále využívám informace o stavu baterie, nastavená hodina alarmu, přenesena data, NFC čtečku a pochopitelně push notifikace přímo do stavové lišty (android je umí i barevně odlišit, červené kritické, zelené ok, žluté informativní).

Děkuji za Vaš čas. František Havel

➡️  Zaujalo Vás řešení, máte zájem smarthome koncept ? ⬅️

Kontaktujte nás, navrhneme pro Vás nejlepší řešení, realizuje kompletní řešení v oblasti chytrého bydlení a automatizaci budov.

EXIRTA s.r.o., Tachov

Linux mini-howto: Postfix MTU lost connection

Linux mini-howto?
Krátce o nástrojích ze života sysadmina.

Postfix MTU a lost connection after …

Podivné chování poštovního serveru Postfix nemusí být nutně způsobené chybnou konfigurací služby samotné, problémy s velikostí MTU jsou o to zákeřnější díky své relativně skryté povaze a “chaotickému” chování, na problém s doručování pošty ve vztahu k MTU jsme nedávno narazili u zákazníka a proto tento mikro-post, ať to neztratíme a třeba to i pomůže někomu dalšímu. Pokračování textu Linux mini-howto: Postfix MTU lost connection

Onanie KB4048953 a EPSON tiskárny

Windows peklo mini-howto?
Krátce o nástrojích ze života sysadmina.

KB4048953 a nefunkčnost EPSON tiskáren


Malé peklo u většího zákazníka, kupodivu i když se to mnoha lidem dnes zdá divné, tak jsou firmy co ještě dnes tisknout na jehličkové tiskárny, proč ? Protože velmi levný tisk, spolehlivost, traktorový papír a průklep, tedy rovnou možnost získat dvě i více kopií a to je super, zde začíná náš příběh, dotčená tiskárna Epson FX-890 přestala pracovat na systému Microsoft Windows 10.

Pokračování textu Onanie KB4048953 a EPSON tiskárny

Linux mini-howto: Systemd automatický restart služby při selhání.

Linux mini-howto?
Krátce o nástrojích ze života sysadmina.

Systemd a restart služby při selhání


Systemd je “nový” init systém pro správu služeb navržený exkluzivně pro Linux s cílem nahradit původní SysV init scripty pocházející z System V unix větve a i přes jistou kontroverzi se stává (stal) novým standardem ve světě Linuxu, najdeme ho v drtivě většině mainstream distribucí a je potřeba naučit se s ním žít.

Jednou z operací, která se často řeší je automatický restart služby po jejím zhavarování, jsou služby, které požadujeme aby běželi na serveru neustále, tedy v případě jejich výpadku chceme zkusit automaticky restart, někdo si na to píše vlastní scripty nebo nasazuje nástroj Monit, daemontools či další, Systemd tuto funkci intergruje do sebe, proč ji nevyužit, pojďme na to, je to velmi jednoduché.

Pokračování textu Linux mini-howto: Systemd automatický restart služby při selhání.

Android-sysadmin-tools: Nástroje systém administrátora #1

Android sysadmin-tools ?
Krátce o nástrojích ze života sysadmina.

Nástroje systém administrátora pro Android


Co není v hlavě, musím být v nohách říká klasické pravidlo ! Systém admin je však tvor od přírody líný a proto šetří své podrážky jak to jen jde a pokud může, tak má ve svém kapesním “android stopaři” pár více či méně šikovných “švýcarských nožů”.

Následující minisérie s předem nedefinovaným počtem dílů ukazuje pár užitečným nástrojů, začněme však od konce, ty provařené (ssh klienti, rdp, vnc, nmap, cidr calc, atd.) jsou důvěrně známe a nebudeme nosit sovy do athén.

Pokračování textu Android-sysadmin-tools: Nástroje systém administrátora #1

Linux mini-howto: Bash history a HISTTIMEFORMAT

Linux mini-howto?
Krátce o nástrojích ze života sysadmina.

Dnes krátce, ale o to možná užitečněji. :-).

Bash history a HISTTIMEFORMAT

Příkaz history je jeden z mnoha vestavěných (buildin) nástrojů populárního interpretu příkazového řádku (shell) Bash, za normálních okolností je historie provedených příkazů uchována v souboru ~/.history (~/.bash_history) každého uživatele a příkaz history přečte a zobrazí soupis provedených povelů, to je fajn, hodí se to, používá se, chceme to. Pokračování textu Linux mini-howto: Bash history a HISTTIMEFORMAT

Mikrotik mini-howto: Hlavní a záložní zavaděč RouterBOOT

Mikrotik mini-howto?
Krátce ze života sysadmina s RouterOS.

Hlavní a záložní zavaděč RouterBOOT


Zavaděč (bootloader) RouterBOOT je v zařízeních značky Routerboard software (firmware, kód) zodpovědný za inicializaci hardware po sepnutí napájení, vyhledání dostupného úložiště (NAND flash) a následné načtení operačního systému RouterOS do paměti a předání mu řízení. Pokračování textu Mikrotik mini-howto: Hlavní a záložní zavaděč RouterBOOT

Linux mini-howto: Postfix queue lifetime

Linux mini-howto?
Krátce o nástrojích ze života sysadmina.

Postfix jako jeden z nejrozšířenějších opensource SMTP serverů na světě má trochu “nesmyslně” (z pohledu uživatelů) nastavenou výchozí hodnotu fronty pro doručování pošty a to na hodnotu 5 dní a proto tento malý krátký fix. Co to znamená ? Pokud se odeslaný email nepodaří doručit a jako odpověď přijde chyba 4XX, tedy dočasný problém (např. přeplněná schránka příjemce, chybný email, problém na serveru příjemce, …) náš Postfix si ji uloží do fronty deffered a pokouší se ji doručit v intervalech po dobu 5 dnů, pokud se to nezdaří dostane odesílatel zprávu o nedoručení pro X dnech což pro může být značně matoucí.

V Postfix konfiguraci je tedy možné zkrátit maximální dobu fronty.

/etc/postfix/main.cf:

queue_run_delay = 5m
minimal_backoff_time = 5m
maximal_backoff_time = 30m
maximal_queue_lifetime = 8h

V ukázce je nastavení doby na 8 hod (maximal_queue_lifetime), nezkracujte tuto dobu příliš, můžete poté mít potíže s greylistováním a také je dobré ponechat příjemci nějaký čas pokud má problémy dočasného charakteru, nastavení na 0 lze tuto funkci úplně vypnout, tedy jeden pokus o doručení a nic více.

Hodnoty minimal_backoff_time, maximal_backoff_time definují interval opětovného odeslání zprávy, Postfix si uměle prodlužuje čas u každé zprávy po každém pokusu až po maximal, queue_run_delay je poté interval jak často “obíhat” frontu.

To bylo snadné, užívejte moudře. MOJEservery.cz

Mikrotik mini-howto: EoIP a šifrování s IPsec

Mikrotik mini-howto?
Krátce ze života sysadmina s RouterOS.

EoIP a šifrování s ipsec

Proprietární EoIP protokol Mikrotiku pro tunelování L2 provozu je na systému RouterOS velmi populární zejména pro svojí velmi snadnou konfiguraci, prakticky přidáte pouze na každé stráně (zařízení) remote-address a shodné tunnel-id a můžete začít tunelovat, jednoduché, nekomplikované.

Článek: 
Jak funguje EoIP a je možný proti Linux serveru ?
www.mojeservery.cz/linux-eoip-tunel-proti-mikrotik/

Jednou z nevýhod EoIP je nešifrovaný provoz, přirozeně je možné zabalit celý provoz a transparetně šifrovat oba konce přes IPsec, který je podporován v Mikrotiku, bohužel většina administrátorů tuto konfiguraci neřeší, mají k IPsecu “odpor”, vetšinou z důvodu neznalosti jeho problematiky, lidé se bojí toho co neznají.

Proto Mikrotik přidal podporu šifrování do EoIP skrze IPsec (dle informací k 15. výročí protokolu), a to tak snadno, že pouze vyplníte ipsec-secret (pre-shared key, heslo, ideálně netriviální), Mikrotik následně sám nakonfiguruje dynamické ipsec peery (strany tunnelu), nakonfiguruje policy s výchozím šifrováním na sha1/aes128cbc, hotovo a máte šifrováný L2 tunnel, jednodušší už to nebude, takže šifrujte !

Ukázka konfigurace EoIP s IPsec

Používáme RouterOS version: 6.37.1 (stable)

Pozn.:
IPsec u EoIP potřebuje explicitně specifikovat local-address u EoIP tunelu kvůli konfiguraci ipsec peerů a také vypnout fastpath funkcionalitu jinak není možné IPsec povolit na EoIP.

Příklad síťové topologie:

mikrotik-minihowto-eoip-ipsec-2016

Konfigurace:

Router R1:
/interface eoip add name="EOIP-R2" local-address=1.1.1.2 remote-address=2.2.2.2 tunnel-id=10 allow-fast-path=no ipsec-secret=ozCafWutIvFikamNekUlhedeipdobus5
Router R2:
/interface eoip add name="EOIP-R1" local-address=2.2.2.2 remote-address=1.1.1.2 tunnel-id=10 allow-fast-path=no ipsec-secret=ozCafWutIvFikamNekUlhedeipdobus5

A to je vše, snadné, tak šifrujte !

Děkujeme za Váš čas, MOJEservery.cz

Linux mini-howto: Let’s Encrypt snadno s ACME.sh

Linux mini-howto?
Krátce o nástrojích ze života sysadmina.

Let’s Encrypt a ACME.sh


Let’s Encrypt je “nová raketově rostoucí” certifikační autorita nabízející zdarma HTTPS (resp. obecně lze podepsat např. SMTP/IMAP,…), v současné době zatím není Let’s Encrypt kořenová certifikační autorita, proto jsou mezilehlé certifikáty podepsané autoritou IdenTrust (DST Root CA X3), tak jak je popsáno v “Chain of Trust“, na tomto kroku se pracuje, ale nebude to hned, navíc chvíli potrvá než se kořenové certifikáty rozdistribuují do prohlížečů, zařízení, atd.

Velká myšlenka výzvy Let’s Encrypt (“pojďme šifrovat”) je zlepšení situace internetové bezpečnost a masivní přechod na šifrované komunikační kanály, s tímto cílem je poskytována zcela zdarma pro každého kdo vlastní doménu, je plně automatizována (klient nasazený na Vašem serveru komunikuje s infrastrukturou Let’s Encrypt za účelem získání/prodloužení/revokování certifikátu), transparetní a otevřenáhttps://letsencrypt.org/about/Let's Encrypt obsluhované cert.

Let’s Encrypt obsluhované cert.

 

"Chain of Trust", řetězec důvěry Let's Encrypt
“Chain of Trust”, řetězec důvěry Let’s Encrypt

ACME a ACME.sh

ACME (Automatic Certificate Management Environment) je v jednoduchosti řečeno protokol pro komunikaci s infrastrukturou Let’s Encrypt, pro manipulaci s certifikáty je nutné použít na své straně klienta, který korektně implementuje právě protokol ACME.

Certifikáty pro každého ?

Jedním z klíčových požadavků pro vystavení certifikátu je ověření identity žadatele, předpoklad je, že pokud žádám o certifikát pro doménu mojedomena.cz, tak jsem schopen ji kontrolovat, nejčastější kontrola je pomocí techniky webroot , do speciálního adresáře (/.well-known/) je umístěna výzva/žádost, pro výzvu si na www.mojedomena.cz/.well-known si sáhne robot Let’s Encrypt a pokud je vše v pořádku realizuje akci (např. vystavení certifikátu), tímto mechanismem dokazuji, že jsem schopen kontrolovat svoji doménu, tedy nejsem např. schopen udělat (za normálních okolností) tento trik s cizí doménou a tím si nechat vystavit certifikát např. pro seznam.cz.

Toto nejčastější postup ověření identity žadatele, nikoliv však jediný, další možnost je DNS mode, který funguje velmi podobně, z principu je patrné, že vše je vymyšleno tak, aby bylo možné masivně a hlavně zcela automatizovaně nasazovat certifikáty, což je cílem, protože vlastní certifikáty mají platnost pouze 90 dní, takže automatická “recyklace” je v nasazení nutnost.

ACME.sh

Existuje oficiální ACME klient Let's Encrypt certbot.

Certbot je napsán v jazyce Python, který toho umí opravdu hodně, ale zároveň jde o poměrně velký kus software se spoustou závislostí, který si na serveru “builduje” vlastní prostředí pro Python, v některých případech, ale toto nechcete a třeba ani nemůžete použít (např. menší servery, embedded,…) v tomto případě sáhněte po scriptu ACME.sh.

ACME.shhttps://github.com/Neilpang/acme.sh

ACME.sh je malý shell script (unix shell) implementující plně protokol ACME, jednoduchý, snadný na použití i instalaci, kompatibilní s bash, nevyžaduje root práva.

ACME.sh a podporované ověření identity:

  • web root
  • standalone
  • DNS

Standalone mode je velmi zajímavý pro servery, kdy nemáte spuštěn www server (Apache/Nginx/…), tedy např. FTP/SMTP servery, acme.sh Vám na dobu nezbytně nutnou emuluje chování web serveru na portu 80 nástrojem netcat (nc), zde již přirozeně je nutné mít práva root.

Instalace a použití je velmi snadné a přímočaré, viz oficiální stránky projektu, dokonce je možné skrze Cygwin provozovat ACME.sh i na Windows.

https://github.com/Neilpang/acme.sh
https://github.com/Neilpang/acme.sh/wiki

Tak pojďme šifrovat, Let’s Encrypt ! 


Chcete pomoci s nasazením HTTPS na Vaše servery ?

MOJEservery.cz
Technické konzultace, implementace, kontaktujte nás.
Kontaktní e-mail:  podpora@mojeservery.cz
Kontaktní telefon: +420 725 714 669