Czkawka a Krokiet, grafické aplikace pro hledání duplicitních a zbytečných souborů, byly vydány ve verzi 11.0. Podrobný přehled novinek v příspěvku na Medium. Od verze 7.0 je vedle frontendu Czkawka postaveného nad frameworkem GTK 4 vyvíjen nový frontend Krokiet postavený nad frameworkem Slint. Frontend Czkawka je už pouze v udržovacím módu. Novinky jsou implementovány ve frontendu Krokiet.
Jiří Eischmann na svém blogu publikoval článek Úvod do MeshCore: "Doteď mě radioamatérské vysílání úplně míjelo. Když jsem se ale dozvěděl, že existují komunity, které svépomocí budují bezdrátové sítě, které jsou nezávislé na Internetu a do značné míry taky elektrické síti a přes které můžete komunikovat s lidmi i na druhé straně republiky, zaujalo mě to. Když o tom přede mnou pořád básnili kolegové v práci, rozhodl jsem se, že to zkusím taky.
… více »Byla vydána verze 0.5.20 open source správce počítačových her na Linuxu Lutris (Wikipedie). Přehled novinek v oznámení na GitHubu. Instalovat lze také z Flathubu.
Peter Steinberger, autor open source AI asistenta OpenClaw, nastupuje do OpenAI. OpenClaw bude převeden pod nadaci a zůstane otevřený a nezávislý.
Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2025. Ke konci roku 2025 vlastnila 349 462 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,36 %. V roce 2024 to bylo 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.
Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
PowerDNS se stále u nás používá v interní síti jako autoritativní dns server pro některé domény i jako rekurzivní dns server. Je to dáno historicky, je to dáno kvůli nezasírání si dns serverů v rámci Active Directory, ale i kvůli dalším věcem. PowerDNS se stále hodně vyvíjí a architektura se postupně přepracovala. Důvod, proč jako předsazený dns server nepoužíváme bind, je stále stejný. PowerDNS podporuje mysql, jsou k dispozici pěkná grafická klikátka a pro menší klikací nasazení je to tedy podle mě vhodnější.
Nejdříve si ujasníme základní pojmy.
Jedná se o server, kde jsou vedeny domény. Dotazy na domény tedy nikam nepřeposílá, ale jen obhospodařovává to, co je na něm nastaveno. Typickým příkladem jsou dns servery webhostingů. Když se jich zeptáte na nějakou doménu, která není u nich vedena, tak odpoví, že jí neznají. Nepřepošlou dotaz dál a nepřeloží vám to.
Jedná se o dns server, který kešuje a přeposílá dotazy. Když se ho zeptáte na cokoli, tak odpoví a správně přeloží. Na rekurzivním dns serveru nejsou vedeny domény, funguje opravdu jen jako kešovací brána pro překlady. Typickým příkladem jsou dns servery poskytovatelů připojení k internetu.
Je možné mít jednu službu, kde jsou vedeny nějaké domény, a když je nezná, přepošle dotaz dál. Od tohoto konceptu se ale ustupuje. A jeden z hráčů, který tak učinil, je i PowerDNS.
V původním článku má PowerDNS autoritativní část i rekurzivní část v rámci jednoho serveru. Od verze 4.1.0 byla rekurzivní část separována do vlastní služby. Tj. autoritativní část i rekurzivní část běží na vlastním portu.
Já chci mít ve firmě PowerDNS, klikací a chci ho mít jako autoritativní i jako rekurzivní. Jak toho docílit? Řekli jsme si, že jsou tyto části rozděleny a každá běží na svém portu. Obě tedy nemohou běžet na portu 53. Jak to tedy funguje? Jednoduše, ani jedna nepoběží na portu 53 :).
Princip je jednoduchý, autoritativní část i rekurzivní část poběží na localhostu. Autoritativní část poběží třeba na portu 5300 a rekurzivní část třeba na portu 5301. Na portu 53 pak poběží load balancer, který bude podle politik rozhazovat komunikaci. Jako dns balancer se používá dnsdist. PDNS má note, jak provést migraci: Migrating from using recursion on the Authoritative Server to using a Recursor.
V původním článku bylo zmíněno jako klikací web rozhraní PowerAdmin, který se stále vyvíjí a jedná se asi o nejlepší klikací web rozhraní pro PowerDNS, které podporuje i dnssec. Pro mé použití jsem v době minulé zkusil zaexperimentovat a nasadil jsem PDNS Manager. Důvodů bylo několik malicherných, je to jednodušší, pěknější a v tu chvíli mi to více vyhovoval. Každý, nechť se rozhodne sám, co použije a jak.
Finální architektura nakonec vypadá takto:
Jak vidíte z architektury, tak nejdříve jde komunikace na dnsdist, který požadavky přesměruje na recursor. Ten se pak postará o rozhození správným směrem. Dnsdist komunikuje ale i s autoritativním PowerDNS kvůli transféru domén s dalšími dns servery. Tj. kvůli axfr komunikaci. V síti máme další dns servery, které fungují jako slave a dělá se na ně transfer dns zón. Těmi dns servery jsou: 192.168.1.1, 192.168.1.2, 192.168.1.3. Konfigurace pak tedy bude vypadat takto:
/etc/dnsdist/dnsdist.conf
addLocal('0.0.0.0:53')
addACL('0.0.0.0/0')
newServer({address='127.0.0.1:5300', pool='auth'})
newServer({address='127.0.0.1:5301', pool='recursor'})
-- AXFR ACL
addAction(AndRule{
OrRule{
QTypeRule(dnsdist.AXFR),
QTypeRule(dnsdist.IXFR)
},
NotRule(OrRule{
-- localhost
makeRule('127.0.0.1'),
makeRule('::1'),
-- A slave
makeRule('192.168.1.1'),
makeRule('192.168.2.1'),
makeRule('192.168.3.5'),
})
}, RCodeAction(dnsdist.REFUSED))
-- Notify ACL
addAction(AndRule{
OpcodeRule(DNSOpcode.Notify),
NotRule(OrRule{
-- My superslave
makeRule('192.168.1.1'),
makeRule('192.168.2.1'),
makeRule('192.168.3.1'),
})
}, RCodeAction(dnsdist.REFUSED))
-- AXFR and Notify Target
addAction(OrRule{
QTypeRule(dnsdist.SOA),
QTypeRule(dnsdist.AXFR),
QTypeRule(dnsdist.IXFR),
OpcodeRule(DNSOpcode.Notify)
}, PoolAction("auth"))
-- IP address for redirect to recursor:
recursive_ips = newNMG()
recursive_ips:addMask('0.0.0.0/0')
addAction(NetmaskGroupRule(recursive_ips), PoolAction('recursor'))
addAction(AllRule(), PoolAction('auth'))
/etc/powerdns/pdns.conf
... allow-axfr-ips=127.0.0.1 allow-unsigned-supermaster=no also-notify=192.168.1.1,192.168.1.2,192.168.1.3 daemon=yes disable-axfr=no guardian=yes local-port=5300 log-dns-queries=no master=yes trusted-notification-proxy=127.0.0.1 webserver=yes webserver-address=0.0.0.0 webserver-allow-from=127.0.0.1,::1 webserver-password=heslo webserver-port=8081 version-string=powerdns ...
/etc/powerdns/pdns.d/mysql.conf
launch=gmysql gmysql-host=localhost gmysql-port=3306 gmysql-dbname=powerdns gmysql-user=powerdns gmysql-password=heslo123 gmysql-dnssec=no
/etc/powerdns/recursor.conf
... daemon=yes forward-zones-file=/etc/powerdns/recursor_forward_zones.conf forward-zones-recurse=.=8.8.8.8 hint-file=/usr/share/dns/root.hints local-address=0.0.0.0 local-port=5301 quiet=yes .../etc/powerdns/recursor_forward_zones.conf
devaine.local=127.0.0.1:5300 dcera.local=192.168.58.2 corp.devaine.cz=192.168.1.151:53;192.168.1.152:53
Jak vidíte, tak nastavení je jednoduché. Trochu složitější je zpočátku proniknout do nastavení politik co a jak kam směrovat u dnsdist, ale jinak je to vše úplně v klidu.
V původním článku jsem dělal sync dns zón na sekundární dns server pomocí syncu databáze. To jsem také časem změnil a sync dělám pomocí axfr transféru dns zón. Jinými slovy, uvedenou konfiguraci PowerDNS+dnsdist mám úplně stejně na dalším serveru, jen s tím rozdílem, že autoritativní část je nastavena takto:
/etc/powerdns/pdns.conf
... allow-axfr-ips=127.0.0.1 allow-unsigned-supermaster=no #also-notify=192.168.1.1,192.168.1.2,192.168.1.3 daemon=yes disable-axfr=no guardian=yes local-port=5300 log-dns-queries=no master=yes slave=yes slave-cycle-interval=60 trusted-notification-proxy=127.0.0.1 webserver=yes webserver-address=0.0.0.0 webserver-allow-from=127.0.0.1,::1 webserver-password=heslo webserver-port=8081 version-string=powerdns ...
/etc/powerdns/pdns.d/mysql.conf
launch=gmysql gmysql-host=localhost gmysql-port=3306 gmysql-dbname=powerdns gmysql-user=powerdns gmysql-password=heslo123 gmysql-dnssec=no
Pokud chceme nějak diagnostikovat problémy s dns, tak základ je samozřejmě program "dig" z balíčku dnsutils. Tento program je něco jako nslookup, ale lepší. Pár příkladů:
# pošli dotaz na konkrétní dns server dig @8.8.8.8 devaine.cz # zdiagnostikuj autoritativní část z příkladu dig @127.0.0.1 -p 5300 corp.devaine.cz # zeptej se na mx záznam dig @8.8.8.8 abclinuxu.cz mx # zeptej se na txt záznam dig @8.8.8.8 heronovo.cz txt # zeptej se na rdns dig -x 23.88.41.116
Dobrým nástrojem, který nám pomůže diagnostikovat problémy s rekurzorem je "rec_control":
# zjistit stav konkrétního záznamu rec_control dump-cache /tmp/dns-cache.txt cat /tmp/systemd-private-8e23dc6a1549477f9873f6b5594c873a-pdns-recursor.service-oBkeOV/tmp/dns-cache.txt # smaž z cache rec_control wipe-cache corp.devaine.cz # zobraz aktuální dotazy rec_control current-queries # zobraz top rec_control top-queries
Dalším nástrojem je "pdns_control", který slouží k ovládání dns serveru, pár příkladů
# jak dlouho běží služba pdns_control uptime # přehled zón na serveru pdns_control list-zones # zjisti, zda služba žije pdns_control rping # zobraz všechny statistiky pdns_control show '*' # zobraz konkrétní statistiku pdns_control show udp4-queries
Myslím si, že nemá smysl psát ucelený návod typu step2step jako v předchozím článku. Kdo chce grafické klikátko, tak si ho doinstaluje úplně stejně jako je v předchozím článku uvedeno, jinak se nic dalšího nemění.
A jak jste na tom vy? Co používáte a jak?
Zdar Max
Tiskni
Sdílej:
knot jsem zkousel, ale to je pro muj ucel kanon na orla. A take je od cznicu, ktery nemam rad.