Slovensko.sk nemá možnosť posielania mailových notifikácií o nových verziách eID klient a Disig Web signer. Hľadal som nejaký nástroj a našiel som changedetection.io.
Čo je changedetection.io?
changedetection.io je open-source nástroj na monitorovanie zmien na webových stránkach. Aplikácia v pravidelných intervaloch kontroluje zadané URL adresy a pri zistení zmeny vie používateľa upozorniť napríklad e-mailom, cez webhook, Telegram, Discord alebo iné notifikačné kanály.
V tomto riešení sa changedetection.io používa na sledovanie stránky slovensko.sk/sk/na-stiahnutie, aby bolo možné včas zachytiť vydanie novej verzie softvéru, ako je eID klient, D.Suite/eIDAS alebo D.Launcher.
Inštalácia:
Vytvoríme si priečinok changedetection
mkdir changedetection
Cez textový editor nano, vim, alebo vi vytvoríme textový súbor
nano docker-compose.yml
Do súboru vložíme, napríklad toto. Port samozrejme môžete meniť, len u mňa som musel použiť tento.
Tu je dôležité, aby existoval mail v mojom prípade som si vytvoril mailovú schránku slovensko-monitor@ibasterisk.eu a je potrebné zadať heslo k tomuto účtu. Následne som chcel aby mi mailové notifikácie posielalo aj na služobný mail.
Vysvetlivky:
V URL sa znak @ v používateľskom mene radšej kóduje ako: %40
Keď máte napísaný reťazec, môžete otestovať spojenie
Send test notification. Ak budete mať hlášku OK – Send test notification, tak syntax je v poriadku a malo by to prísť na obe mailové adresy.
Vytvorí a spustí všetky kontajnery definované v súbore.
docker compose up
Spustí kontajnery na pozadí (tzv. „detached“ mód), takže môžete ďalej používať terminál.
docker compose up -d
Úplne zastaví a odstráni kontajnery, siete a obrázky definované v súbore. (Dáta vo volume zostanú zachované, ak ich explicitne nezmažeme).
docker compose down
Iba zastaví bežiace kontajnery, ale neodstráni ich.
docker compose stop
Opäť spustí predtým zastavené kontajnery.
docker compose start
Monitorovanie a stav
Zobrazí zoznam kontajnerov patriacich k projektu a ich aktuálny stav (či bežia, alebo spadli).
docker compose ps
Vypíše výstup (logy) zo všetkých služieb.
docker compose logs
Sleduje logy v reálnom čase (veľmi užitočné pri ladení chýb).
docker compose logs -f
Správa zmien a zostavovanie
Zostaví (alebo prebuduje) obrazy (images) podľa inštrukcií v Dockerfile.
docker compose build
Stiahne novšie verzie obrazov z Docker Hubu bez toho, aby hneď reštartoval služby.
docker compose pull
Reštartuje všetky služby (vhodné, ak si zmenil nejakú konfiguráciu v aplikácii, ale nie v samotnom compose súbore).
docker compose restart
Poznámka: Ak používate staršiu verziu Dockera, možno budete musieť písať docker-compose (s pomlčkou). V nových verziách je to už integrované priamo, ako podpríkaz docker compose
Môj syn, má rad niekoľko playlistov, ktoré rád počúva pri uspávaní. Tak som sa rozhodol, nepoužívať youtube, ale vyskúšam urobiť vlastný MP3 prehrávač, ktorý by fungoval online. Zvolil so na to Docker a zadanie bolo následovné:
Sprístupniť niekoľko playlistov
pozadie, aby sa menilo každých 5 minút
playlisty, aby sa dali meniť
Hudba aby sa dala stišovať, zosiľňovať
Playlist, aby sa dal zastaviť a znova spustiť.
Chcel som, aby docker bežal na porte 3030
Postup:
Vytvoril som jeden priečinok pomenovaný matej.
Do neho som vložil 2 priečinky
MP3
JPG
Do jpg som nahodil obrázky a do MP3 playlisty, ktoré chcem aby sa dali spúšťať.
Som robil svoju prvú vlastnú webovú aplikáciu určenú, pre odpočet dní a hodín do ďalších Vianoc. Áno, inšpirovala vianočná nálada mojej ženy.
Vymyslel som si zadanie:
Nastaviť 5 pozadí, ktoré sa budú meniť po 10 minútach
V pozadí bude hrať vianočná hudba – (Viac playlistov)
Bude tam možnosť si zvoliť časové pásmo
Zvoliť si prepočet na dni a hodiny
Bude možné hudbu zastaviť, stíšiť, znovu spustiť
Tlačidlo bude buď zelené -(Hudba hrá)
Tlačidlo bude červené – (hudba nehrá)
Vyvorenei favicon
Vytvoril som priečinok
mdkir christmas-countdown
Do priečinka som vytvoril textové súbory
Dockerfile
docker-compose.yaml
index.html
script.js
style.css
citaj
A zložky, do ktorých som vložil obrázky a hudbu
jpg som pomenoval: christmas1.jpg, christmas2.jpg, christmas3.jpg, christmas4.jpg, christmas5.jpg
mp3 som urobil niekoľko hodinový súbor a pomenoval christmas01.mp3.
favicon uložil som favicon.png
Ďalej do vytvorených súborov som napísal kódy prostredníctvom buď vim, alebo nano:
Dockerfile
FROM nginx:alpine
# Skopíruj všetky súbory do Nginxu
COPY . /usr/share/nginx/html/
# Tento riadok zabezpečí, že Nginx bude posielať správne hlavičky pre JS
RUN sed -i '/types {/a \ application/javascript js;' /etc/nginx/nginx.conf
Kibana je open-source vizualizačný nástroj pre Elasticsearch, ktorý umožňuje prehliadať, analyzovať a vizualizovať dáta pomocou dashboardov, grafov a máp. Je súčasťou Elastic Stack (ELK stack).
Podporované OS
Linux (Ubuntu, Debian, CentOS, RHEL), Windows, macOS
Podpora Docker
Áno, Kibana má oficiálny Docker image, ktorý umožňuje jednoduché spustenie a škálovanie.
Odporúčané HW požiadavky
CPU: 2 jadrá alebo viac RAM: minimálne 4 GB (8 GB pre väčšie nasadenia) Disk: SSD s dostatočnou kapacitou pre logy a indexy Sieť: stabilné pripojenie k Elasticsearch
sudo docker exec -it elasticsearch bin/elasticsearch-create-enrollment-token -s kibana
WARNING: Owner of file [/usr/share/elasticsearch/config/users] used to be [root], but now is [elasticsearc h]
WARNING: Owner of file [/usr/share/elasticsearch/config/users_roles] used to be [root], but now is [elasti csearch]
eyJ2ZXIiOiI4LjExLjEiLCJhZHIiOlsiMTcyLjE4LjAuMjo5MjAwIl0sImZnciI6IjhmYWEzYjlmZmJjMGQ4MGFjMzM1ZGEzZjM4MmFkYW VhNzg5NmUxYmUyYWZkNzQzZDNhMzJkYjMyNTY0YTZiNGYiLCJrZXkiOiJWY3lHUnBzQjJ3d1RWZWRxZXJBNzp1TWllMmZoQlM5dUc3Vy1n Um1SLVJBIn0=
Tento token sa vygeneruje len raz a má časové obmedzenie.
Po jeho vložení do Kibany sa dokončí prvotná konfigurácia.
Grafana je open-source softvérový nástroj určený na monitorovanie, vizualizáciu a analýzu dát. Slúži na vytváranie prehľadných a interaktívnych dashboardov, ktoré zobrazujú metriky a údaje získané z rôznych dátových zdrojov v reálnom čase. Grafana je využívaná najmä pri monitorovaní systémov, aplikácií, sietí a infraštruktúry.
Aplikácia podporuje inštaláciu na viacerých Linuxových distribúciách a je dostupná aj ako Docker kontajner, čo umožňuje flexibilné nasadenie v rôznych prostrediach.
Wazuh je open-source bezpečnostný systém na detekciu hrozieb a monitorovanie integrity, ktorý umožňuje zber, analýzu a vizualizáciu bezpečnostných udalostí z počítačov a serverov v reálnom čase.
Pomáha sledovať bezpečnosť a dodržiavanie predpisov, odhaľovať neautorizované zmeny v súboroch, monitorovať sieťovú aktivitu a generovať alarmy pri podozrivej činnosti. Wazuh využíva centralizovaný manažér (Manager), indexovanie logov (OpenSearch) a webový dashboard na prehľadné zobrazovanie alertov.
Používa sa na:
Monitorovanie integrity súborov a systémov
Detekciu bezpečnostných hrozieb
Analýzu logov z rôznych zariadení
Audit a dodržiavanie bezpečnostných štandardov (napr. GDPR, PCI-DSS)
Centrálne spravovanie a vizualizáciu bezpečnostných udalostí
Hardvérové požiadavky pre Wazuh Single-Node (Docker)
Komponent
Minimálne
Odporúčané
RAM
4 GB
8 GB alebo viac
CPU
2 jadrá
4 jadrá alebo viac
Disk
20 GB
50 GB alebo viac, SSD odporúčané
Sieť
1 Gbps LAN
1 Gbps alebo vyššia
OS
Ubuntu 24.04 LTS
Ubuntu 24.04 LTS alebo 22.04 LTS
Požiadavky na Docker
Docker Engine: ≥ 20.x
Docker Compose: ≥ 1.29 (alebo docker compose plugin v novších verziách)
Docker musí mať dostatočné práva (odporúčané spúšťať cez sudo alebo pridanie používateľa do skupiny docker)
Požiadavky na disk a úložisko
Každý Wazuh manager/agent ukladá logy a alerty:
Manager + Indexer môžu rýchlo narásť s počtom monitorovaných hostov.
Odporúča sa SSD disk pre rýchlejšie vyhľadávanie a indexovanie v OpenSearch.
Odporúčané miesto na Docker volumes: /var/lib/docker/volumes alebo externé úložisko ≥ 50 GB pri strednej infraštruktúre.
Nextcloud je cloudové riešenie na ukladanie, zdieľanie a spravovanie súborov. Umožňuje bezpečný prístup k dokumentom, fotkám, videám a ďalším súborom z ľubovoľného zariadenia s internetom. Okrem toho podporuje spoluprácu v reálnom čase – editovanie dokumentov, videohovory, chat či kalendáre. Nextcloud je open-source, takže máte plnú kontrolu nad svojimi dátami a ich bezpečnosťou. Jednoducho povedané: je to váš vlastný, súkromný cloud, ktorý nahrádza externé služby ako Google Drive alebo Dropbox, s dôrazom na súkromie a flexibilitu.
Komponent
Minimálne požiadavky
OS (operačný systém)
Linux (napr. Ubuntu 20.04/22.04/24.04), Windows Server, macOS
Webový server
Apache ≥ 2.4 alebo Nginx ≥ 1.10
PHP
Verzia 8.1 alebo vyššia, s nasledujúcimi rozšíreniami: gd, curl, mbstring, xml, zip, intl, bcmath, gmp, fileinfo, ctype
Databáza
MySQL/MariaDB ≥ 10.5, PostgreSQL ≥ 12, SQLite (len pre testovanie)
RAM
Minimálne 512 MB (1 GB odporúčané, viac pre veľké inštalácie)
Diskový priestor
Minimálne 500 MB pre inštaláciu + priestor pre súbory používateľov
Pripojenie na internet
Požadované pre aktualizácie, doplnky a synchronizáciu
Docker (ak používať)
Docker Engine ≥ 20 a Docker Compose ≥ 2.0
Podpora súbor a formátov
Typ
Podpora
Poznámky
Video
MP4, WebM, Ogg
Pre iné formáty treba doplnky alebo externé prehrávače
Audio / Hudba
MP3, Ogg, WAV
Prehráva sa priamo v prehliadači, podpora playlistov cez Nextcloud Music
Obrázky
JPG, PNG, GIF, SVG
Miniatury a náhľady sa generujú automaticky
Dokumenty
PDF, DOCX, ODT, XLSX
Pre editáciu v reálnom čase: Collabora Online alebo OnlyOffice
Videohovory (integrované)
Nextcloud Talk
Plne integrované, vhodné pre menšie skupiny
Videohovory (externé)
Jitsi Meet
Možno integrovať cez externý server alebo iframe, zvláda väčšie skupiny a pokročilé funkcie
Doplnky / externé úložiská
YouTube, Dropbox, Google Drive
Integrácia multimédií a súborov z externých služieb
Zabbix je open-source softvér pre monitoring IT infraštruktúry, ktorý umožňuje sledovať servery, siete, aplikácie a cloudové služby. Vďaka open-source licencii je úplne zdarma, flexibilný a prispôsobiteľný potrebám organizácie.
Hlavné možnosti využitia Zabbixu:
Monitoring serverov a pracovných staníc – CPU, RAM, disk, procesy.
Monitoring sietí a zariadení – switche, routery, firewally, SNMP zariadenia.
Monitoring aplikácií a služieb – databázy, webové servery, emailové služby, kontajnery.
Vytváranie upozornení a triggerov – Zabbix môže automaticky posielať e-maily, SMS alebo vykonať skript pri problémoch.
Dlhodobá analýza a reportovanie – grafy, histórie, reporty dostupnosti a výkonu.
Automatizácia a integrácie – API umožňuje prepojiť Zabbix s inými systémami (ticketing, Slack, Grafana).
Hlavné vlastnosti Zabbixu:
Podpora notifikácií, eskalácií a automatizovaných akcií.
Open-source a bez licenčných poplatkov.
Centralizovaný monitoring s agentami alebo agentless prístupom.
Webové rozhranie pre prehľadné grafy a dashboardy.
Škálovateľnosť – vhodný od malých prostredí po veľké dátové centrá.
Wiki.js je moderný, otvorený a flexibilný wiki systém, ktorý umožňuje tvorbu, správu a zdieľanie dokumentácie a znalostných bázy. Je postavený na Node.js a využíva databázu ako PostgreSQL, MySQL, MariaDB alebo SQLite. Jeho hlavné prednosti sú:
Moderné rozhranie (react-based UI)
Podpora Markdown a WYSIWYG editora
Silná integrácia s autentizačnými systémami (OAuth, LDAP, SAML)
Možnosť verzovania stránok a rollbacku zmien
Plná podpora multimédií a rozšírení
Technické parametre
Parameter
Hodnota / odporúčanie
Platforma
Node.js
Podporované DB
PostgreSQL, MySQL, MariaDB, SQLite, MSSQL
Minimálne OS
Linux (Ubuntu 22.04+), Docker
RAM
min. 512 MB (1 GB+ odporúčané)
CPU
1 jadro (viac pre väčšie inštalácie)
Port
3000 (default)
Web server
Vestavěný Node.js server, odporúča sa reverse proxy (Nginx, Caddy, Traefik)
Storage
Min. 1 GB pre databázu a súbory, SSD odporúčané
Docker image
ghcr.io/requarks/wiki:2
Podpora HTTPS
Treba nastaviť cez reverse proxy (Let’s Encrypt, Caddy, Traefik)
Rocket.Chat je open-source platforma na tímovú komunikáciu, podobná Slacku alebo Microsoft Teams. Slúži na chatovanie, zdieľanie súborov, videohovory a spoluprácu v tíme, pričom celý server môžete prevádzkovať lokálne alebo v cloude, takže dáta zostávajú pod Vašou kontrolou.
Kľúčové funkcie:
Textový chat v kanáloch a súkromných správach
Video a audio hovory
Zdieľanie súborov a obrazoviek
Integrácie s externými službami (GitHub, Jira, atď.)
Podpora LDAP a Single Sign-On
Systémové požiadavky pre Rocket.Chat
Tabuľka – odporúčaný výkon podľa počtu používateľov
Mailcow je open-source balík aplikácií pre správu e-mailových serverov, ktorý umožňuje jednoduchú inštaláciu, konfiguráciu a bezpečnú prevádzku poštových služieb (SMTP, IMAP, POP3) s moderným webovým rozhraním.
Mailcow slúži na efektívnu správu e-mailovej infraštruktúry: poskytuje poštové schránky, filtráciu spamu a vírusov, zabezpečenú komunikáciu cez TLS a správu domén cez prehľadný webový panel.
Technické požiadavky pre Mailcow
Kategória
Požiadavka
Odporúčanie / Poznámka
Procesor (CPU)
min. 1 GHz
Viacjadrový procesor (x86_64 alebo ARM64) pre lepší výkon
Pamäť (RAM)
min. 6 GiB + 1 GiB swap
4 GiB možné len bez antivírusu a indexovania; pre väčšie nasadenie 16 GiB+
Disk
min. 20 GiB (bez e-mailov)
Odporúča sa SSD/NVMe disk kvôli rýchlosti
Architektúra
x86_64 alebo ARM64
ARM64 podporovaný od Docker verzie 24+
Operačný systém
Debian 11–13, Ubuntu 24.04+, AlmaLinux 8/9, Rocky Linux 9
Používajte čistú inštaláciu bez predinštalovaného Dockeru zo snapu
Docker Engine
≥ 24.0.0
Vyžaduje sa funkčný Docker daemon
Docker Compose
≥ 2.0 (plugin alebo standalone)
Spúšťa kontajnery Mailcow stacku
DNS
FQDN, MX, A, AAAA, PTR, SPF, DKIM, DMARC
Nutné pre správne doručovanie a prijímanie e-mailov
Docker version 27.x.x, build ...
Docker Compose version v2.x.x
Inštalácia Mailcow
Teraz, keď je Docker pripravený, nainštalujte samotný Mailcow.
Nainštalujte git (ak nie je nainštalovaný)
sudo apt install git -y
Klonovanie repozitár Mailcow
cd /opt
sudo git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
Vygeneruj configuračný súbor
sudo ./generate_config.sh
Spustite Mailcowm
sudo docker compose pull
sudo docker compose up -d
Choďte cez mailový server napr.
https://mail.ibasterisk.eu>
default login je:
Username: admin
Password: moohoo
Je potrebné voliť možnosť Log in as admin
Pridanie domény
Je púotrebné ísť do Email a konfigurácia
Klilnite na Add Domain
Vypíšeme doménu
V spodnej časti budú možnosti
Add domain only
Add domain and restart SOGo
Je dôležité zvoliť Add domain and restart SOGo
Vytvorenie nového administrátora
Volíme systém configuration
Add administrator
Vypĺňame username a password, je možné dať aj heslo vygenerovať
Vytvorenie mailového konta
Ideme do E-mail a Configuration
Volíme Add mailbox
Vypíšeme údaje
Prihlasenie sa cez webové rohranie vytvorenou mailovou adresou
Je potrebné vybrať Log in as user
Nastavenie MFA užívateľa
A vieme si vybrať z možností
Two-factor authentification pre administratora
Two-factor authentification je nastavena automaticky pri vytvorení nového administrátora, ak si želáte tieto nasatvenia modifikovať, tak sa to robí v System >> configuration
Vytváranie záznamov
Vytvoril som A záznam na verejnú IP
mail.ibasterisk.eu 1800 A 109.230.12.223
MX záznam
ibasterisk.eu 1800 MX 10 mail.ibasterisk.eu
TXT záznam
ibasterisk.eu 1800 TXT v=spf1 a mx include:_spf.ibasterisk.eu -all
dmarc
_dmarc.ibasterisk.eu 1800 TXT v=DMARC1; p=none; pct=100; rua=mailto:p
a vytvoriť dkim
dkim.ibasterisk.eu 1800 TXT v=DKIM1; p=MIaAutorizačný_kód_vygenerovaný_na_emailovom_serveryIBIjANBgkqhkiG9w0BAQEFA
Ďalšie TXT záznamy, aby prešli na o365
ibasterisk.eu 1800 TXT v=spf1 a mx include:_spf.ibasterisk.eu -all
ibasterisk.eu 1800 TXT v=spf1 include:spf.protection.outlook.com
ibasterisk.eu 1800 TXT v=spf1 ip4:109.230.12.223 include:spf.prot
TXT pre gmailNa google
ibasterisk.eu 1800 TXT v=spf1 ip4:109.230.12.223 include:_spf.google.com ~all
Vysvetlenia
@ do poľa názvu, ktorý bude predstavovať názov hlavnej domény. v=spf1 označuje, že ide o záznam SPF a verzia je SPF1. mx znamená, že všetci hostitelia uvedení v záznamoch MX môžu odosielať e-maily pre vašu doménu a všetci ostatní hostitelia sú zakázaní. ~all znamená, že e-maily z vašej domény by mali pochádzať iba z hostiteľov uvedených v zázname SPF. E-maily od iných hostiteľov budú označené, ako sfalšované.
A Záznam určuje, na akú IP adresu bude doména nasmerovaná. Pomocou nastavení a záznamu možno vytvoriť doménu tretieho rádu už existujúcu doméne. AAAA záznam určuje, akou adresu IPv6 bude doména nasmerovaná. Tu sa pre presmerovanie použije záznam alebo AAAA záznam rozhoduje o nastavení internetových prehliadačov. CAA Definuje politiku vystavení SSL/TLS certifikátu na zvolenú doménu. Ovplyvňuje certifikačnú autoritu, ktorú možno vystaviť pre vyplnenú doménu certifikátu SSL/TLS. CNAME slúži k presmerovaniu subdomény na inú doménu. Názov CNAME musí byť vždy vyplnený. Alias sa zadáva vo forme celého názvu domény (napr. mail.ibasterisk.sk). MX Určuje mailserver, na, ktorý budú smerovať e-maily zaslané na túto doménu. Vždy sa použije celý doménový názov serveru. Ak máte iba jeho IP adresu, nastavte najprv, ako záznam a jeho doménový názov potom vyplňte pole Mailserver. NS Nastavuje sa nameserver pre konkrétnu subdoménu. Z určeného menného serveru je určené správanie subdomény. Ostatné záznamy DNS sú naďalej brány z nastavení nameserverov na menej. SRV Pomocou SRV záznamov je možné nájsť server obsluhujúcej vybranú službu v cieľovej doméne. Zvyčajne sú používané vo spojení so štandardizovanými protokolmi, ako sú XMPP, SIP alebo LDAP. SSHFP Pri použití technológie DNSSEC môžete využívať záznam typu SSHFP pre ukladanie otlačkov verejných kľúčov pre protokol SSH (nemusíte potom overovať otlačok kľúča ručne pri prvom spojení). TLSA Pri použití technológie DNSSEC môžete využívať záznam typu TLSA pre ukladanie certifikátov SSL použitých na menej. TXT stačí vložiť do DNS ľubovoľný text. Text môže byť dlhý maximálne 255 znakov. Používa sa napríklad pre podpis odoslaných emailov (DKIM, SPF).
Dark-Mode
A na záver mailcown podporuje Darkmode. Tak nastavuje pri to mesiačiku.