PowerDNS je bezplatný a otevřený zdrojový server názvů démonů, který poskytuje vysoký výkon a může být modelován tak, aby fungoval jako moderní a moderní autoritativní jmenný server v operačních systémech GNU / Linux, stejně jako BSD distribuce.
DNS server napsaný od nuly
PowerDNS je napsán od nuly, odpovídá všem příslušným dokumentům standardů DNS a rozhraním s téměř libovolnou databází. Je distribuován ve více samostatných balících, včetně pdns, powerdns-server, pdns-recursor a pdns-server.
Používá flexibilní architekturu backendu
Aplikace používá flexibilní architekturu backend, která umožňuje přístup k informacím DNS z libovolného zdroje dat, včetně formátů souborů, relačních databází, adresářů LDAP a souborů zóny vázání.
PowerDNS je ve výchozím nastavení konfigurován tak, aby zobrazoval všechny informace přímo z databáze, což má za následek bezkonkurenční udržovatelnost informací DNS. Je k dispozici na všech hlavních distribucích Linuxu.
Kdo používá PowerDNS?
Několik doménových firem a registrátorů domén používá software PowerDNS k jejich službám, včetně BIT Internet Technology, Hostnet, Totaalnet Internet Works, Oxilion, WebReus a mijndomein.nl.
Pod kapotou a dostupností
Software je naprogramován výhradně v programovacím jazyce C ++ a distribuován jako předinstalované binární balíčky ve formátu souboru DEB a RPM, který podporuje jak 64bitové, tak 32bitové hardwarové platformy.
Projekt PowerDNS, který je open source softwarem, je k dispozici ke stažení jako univerzální zdrojový archiv, který uživatelům umožňuje optimalizovat pro konkrétní hardwarovou architekturu a operační systémy.
Co je nového v této verzi:
- Vylepšení:
- # 6239, # 6559: pdnsutil: použijte novou doménu v b2bmigrate (Aki Tuomi)
- # 6130: Aktualizace autorských práv do roku 2018 (Matt Nordhoff)
- # 6312, # 6545: Nižší "paket příliš krátký" loglevel
- Opravy chyb:
- # 6441, # 6614: Omezení vytváření OPT a TSIG RRsets
- # 6228, # 6370: Oprava manipulace s uživatelsky definovanými filtry axfr vrátí hodnoty
- # 6584, # 6585, # 6608: Zabraňte zálohování GeoIP z kopírování NetMaskTrees kolem, opravuje zpomalení v určitých konfiguracích (Aki Tuomi)
- # 6654, # 6659: Zajistěte, aby odpovědi aliasu přes TCP obsahovaly správné jméno
Co je nového ve verzi:
- Toto vydání představuje významné příspěvky naší komunity. Rádi bychom zdůraznili neúnavnou práci společnosti Kees Monshouwer při zlepšování autoritativního serveru na základě jeho obrovských zkušeností se škálováním PowerDNS na miliony výrobních zón DNSSEC. Christian Hofstaedtler a Jan-Piet Mens přispěli masivně také na mnoha místech. Také kolo díky Gregory Oestreicherovi pro obnovu a oživení backendu LDAP. Wolfgang Studier, "# MrM0nkey", Tudor Soroceanu a Benjamin Zengin dodali API managementu DNSSEC jako součást svých studií na TU Berlín.
- Snažili jsme se vyjmenovat všechny ostatní v plném changelogu a jsme velmi vděční za veškerou práci a testování, které společnost PowerDNS získala od komunity!
- Zlepšený výkon: v některých scénářích došlo k 4x zrychlení:
- RIPE NCC před více než rokem srovnal několik implementací jmenoerverů a zjistil, že PowerDNS nebyl výkonným kořenovým serverem. Ačkoli PowerDNS je skvělý pro obsluhu milionů zón, rádi bychom byli i na menších zónách rychlejší. Výsledky této optimalizace jsou zde popsány a také v tomto delším článku "Optimalizace optimalizace: některé poznatky, které vedly k 400% zrychlení PowerDNS". Klíčová (re) práce společnosti Kees Monshouwer byla pro dosažení tohoto zlepšení výkonnosti zásadní.
- Crypto API: DNSSEC plně konfigurovatelný pomocí RESTful API:
- Naše rozhraní RESTful HTTP API získalo podporu pro správu DNSSEC a klíčů. Tento API je "bohatší než většina" protože je si vědom sémantiky DNSSEC a proto vám umožňuje manipulovat s zónami bez nutnosti přemýšlet o detailech DNSSEC. Aplikace API udělá správnou věc. Tuto práci přispěli Wolfgang Studier, # MrM0nkey, Tudor Soroceanu a Benjamin Zengin jako součást své práce na TU Berlíně.
- Související s databází: pole opětovného připojení a 64bitové idy
- Databázové servery se někdy odpojí po kratších nebo delších obdobích volnoběhu. To by mohlo zmást knihovny PowerDNS i databázových klientů za některých klidných podmínek. 4.1 obsahuje vylepšenou logiku opětovného připojení, o které se domníváme, že řeší všechny související problémy. V příjemném vývoji má jeden uživatel PowerDNS databázi tak rozsáhlou, že překročil 32-bitový id id, který byl nyní vytvořen 64 bitů.
- Vylepšená dokumentace:
- Náš Pieter Lexis investoval spoustu času, což zlepšilo nejen obsah, ale také vzhled a vyhledávání naší dokumentace. Podívejte se na stránku https://doc.powerdns.com/authoritative/ a víte, že můžete snadno upravit svou dokumentaci pomocí editoru GitHub vestavěného.
- Odstranění průchodů rektorem:
- To ovlivní mnoho instalací a uvědomujeme si, že to může být bolestné, ale je to nutné. Předtím obsahoval server PowerDNS Authoritative Server zařízení pro zasílání požadovaných dotazů na rekurzivní backend, případně po konzultaci s lokální vyrovnávací pamětí. Tato funkce ("recursor =") byla často matoucí a přinášela také nekonzistentní výsledky, například když dotaz skončil s odkazem na CNAME, který byl mimo znalosti Autoritativního serveru. Chcete-li přenést z PowerDNS autoritativního serveru se systémem PowerDNS Authoritative Server s přístupem "recursor" v konfiguračním souboru, přečtěte si v části Migrace z použití rekurze na serveru Authoritative Server pomocí příkazu Recursor.
- Různé:
- Byla přidána podpora pro TCP Fast Open. Podpora non-local je nyní podporována. Kontrolní zóna pdnsutil nyní upozorní na další chyby nebo nepravděpodobné konfigurace. Naše balíčky se nyní dodávají s podporou PKCS # 11 (která dříve vyžadovala rekompilaci). Vylepšená integrace se systémovým protokolem (odebrání časového razítka).
Co je nového ve verzi 4.0.0:
- Mnoho změn je na vnitřní straně a bylo součástí velkého "jarního čištění":
- Přesunutý do C ++ 2011, čistší výkonnější verze C ++, která nám umožnila zlepšit kvalitu implementace na mnoha místech.
- Implementovaná vyhrazená infrastruktura pro řešení DNS názvů, která je plně "DNS Native" a potřebuje méně úniku a neuskutečnění. Díky tomu server PowerDNS Authoritative Server nyní může sloužit kořenovým zónám s povolenou funkcí DNSSEC.
- Všechny backendy odvozené z generické SQL backend používají připravené příkazy.
- Server i pdns_control dělají správnou věc, když chroot'ed.
- Kalkulátory jsou nyní plně kanonicky uspořádány, což znamená, že položky lze vymazat na příponu na všech místech
- Kromě tohoto vyčištění byly přidány následující nové a zajímavé funkce:
- Oživený a podporovaný backbone ODBC (godbc).
- Oživený a podporovaný backend LDAP (ldap).
- Podpora přechodů klíčů CDS / CDNSKEY a RFC 7344
- Podpora záznamu ALIAS.
- Webový server a rozhranní API již nejsou experimentální. Cesta API se přesunula do / api / v1
- DNSUpdate již není experimentální.
- ECDSA (algoritmus 13 a 14) je podporován bez šifrovacích knihoven (poskytovaných OpenSSL).
- Experimentální podpora pro podpisy DNSSEC ed25519 (při kompilaci s podporou libsodium).
- Mnoho nových příkazů pdnsutil, např.
- Nápověda příkazu
vytvoří nápovědu - Upozorňuje, pokud konfigurační soubor nelze číst
- Nezkontroluje zakázané záznamy s kontrolní zónou, pokud není povolen podrobný režim
- příkaz create-zone vytvoří novou zónu
- Přidat záznam pro přidání záznamů
- příkazy delete-rrset a replace-rrset odstranit a přidat rrsets
- příkaz pro editační zónu, který vytváří $ EDITOR s obsahem zóny ve formátu zonefile bez ohledu na použitý backend (blogpost)
- GeoIP backend získal řadu funkcí a může nyní např. spustit na základě explicitních netmasků, které nejsou v databázích GeoIP
- S novými funkcemi jsou odstraněny. Následující záložky byly zrušeny v 4.0.0:
- LMDB.
- Geo (místo toho použijte vylepšený GeoIP).
- Další důležité změny a odmítnutí zahrnují:
- pdnssec byl přejmenován na pdnsutil.
- Podpora pro kryptografické knihovny PolarSSL / MbedTLS, Crypto ++ a Botan byla opuštěna (rychlejší) OpenSSL libcrypto (s výjimkou GOST, která je stále poskytována společností Botan).
- Při zabezpečení zón je nyní standardním algoritmem ECDSA P256 SHA256 (algoritmus 13).
- Autorizační server PowerDNS nyní ve výchozím nastavení naslouchá všem adresám IPv6.
- Některé nadbytečné dotazy byly odstraněny z generických backendů SQL, pokud používáte nestandardní schéma SQL, přečtěte si nové výchozí hodnoty
- dotaz-insert-ent-query, insert-empty-non-terminal-dotaz, insert-ent-order-query byly nahrazeny jedním dotazem s názvem insert-empty-nonterminal-order-query
- Dotaz vložit-záznam-objednávka byl zrušen, insert-record-query nyní nastavuje název objednávky (nebo NULL)
- dotaz vložte-slave-dotaz byl zrušen, insert-zone-query nyní nastavuje typ zóny
- Hodnoty metadat INCEPTION, INCEPTION-WEEK a EPOCH SOA-EDIT jsou označeny jako zastaralé a budou odstraněny v 4.1.0
Co je nového ve verzi 3.4.9:
- havárii, která se může stát během AXFR zóny s mnoha záznamy MX různých priorit.
Co je nového ve verzi 3.4.4:
- Nejdůležitější součástí této aktualizace je oprava pro CVE-2015-1868. / li>
Co je nového ve verzi 3.4.3:
- Opravy chyb:
- zavést ceb49ce: pdns_control: výstup 1 na neznámém příkazu (Ruben Kerkhof)
- provést 1406891: vyhodnotit páry KSK ZSK na algoritmus (Kees Monshouwer)
- pověřte 3ca050f: vždy nastavte di.notified_serial v getAllDomains (Kees Monshouwer)
- povolit d9d09e1: pdns_control: neotevírejte socket v / tmp (Ruben Kerkhof)
- Nové funkce:
- pověřte 2f67952: Omezte, kdo nám může zaslat dotaz AXFR (Ruben Kerkhof)
- Vylepšení:
- potvrzení d7bec64: odpověď REFUSED namísto NOERROR pro "neznámou zónu" situací
- Odpovědět ebeb9d7: Zkontrolujte Lua 5.3 (Ruben Kerkhof)
- provést d09931d: Zkontrolujte kompilátor pro podporu relro místo odkazovače (Ruben Kerkhof)
- pověřit c4b0d0c: Kde je to možné, vyměňte paketový ovladač s UeberBackendem (Christian Hofstaedtler)
- potvrdíte 5a85152: PacketHandler: Sdílejte UeberBackend s DNSSECKiewerem (Christian Hofstaedtler)
- Odpovědět 97bd444: oprava budovy s GCC 5
- Experimentální změny API (Christian Hofstaedtler):
- pověřte ca44706: API: přesuňte sdílenou čtečku DomainInfo do vlastní funkce
- povolit 102602f: API: povolit zápis do domény domains.account
- provést d82f632: rozhraní API: číst a vystavit pole účtu domény
- pověřit 2b06977: API: být při analýze obsahu záznamu přísnější
- potvrzení 2f72b7c: API: Odmítnutí neznámých typů (TYPE0)
- provést d82f632: rozhraní API: číst a vystavit pole účtu domény
Co je nového ve verzi 3.4.2:
- Vylepšení:
- zavést 73004f1: implementovat CORS pro rozhraní API HTTP
- potvrdíme 4d9c289: qtype je nyní v API a databázi nepodstatné
- potvrdíte 13af5d8, potvrdíte 223373a, potvrdíte 1d5a68d, potvrdíte 705a73f, potvrdíte b418d52: Povolit (volitelně) kalení PIE
- pověřit 2f86f20: json-api: odstranit prioritu z json
- zavést cefcf9f: backport vzdálené zpětné opravy
- potvrďte 920f987, potvrďte dd8853c: Podporujte Lua 5.3
- potvrzení 003aae5: podpora podpisu ZSK jediného typu
- Spustit 1c57e1d: Možná oprava pro lístek # 1907, nyní se pokusíme spouštět libgcc_s.so.1, aby se načítal před chroot. Nemohu reprodukovat chybu na svém místním systému, ale tato "by měla" pomoc.
- pověřit 031ab21: aktualizovat polaršlu na 1.3.9
- Opravy chyb:
- potvrďte 60b2b7c, potvrďte d962fbc: odmítněte příliš dlouhé štítky v jménech
- pověřte a64fd6a: auth: omezí řetězce dlouhé verze na 63 znaků a zachyťte výjimky v secpoll
- potvrďte fa52e02: pdnssec: opravte ttl kontrolu pro záznamy RRSIG
- pověřit 0678b25: oznamovat opožděné zpoždění pro latenci po dobu několika milisekund (spojí se s 0)
- Dotýkejte se d45c1f1: ujistěte se, že na stránce "pdns_control show" nezahrneme výjimku. neznámé proměnné
- provést 63c8088: Oprava stavu startování s uhlíkovým vláknem, který se již pokouší vysílat neinicializovaná data.
- Spusťte 796321c: Zvyšte robustnost qsize-q
- Odpovědět 407867c: Kees Monshouwer zjistil, že počítáme zkorumpované pakety a EAGAIN situace jako platně přijaté pakety, skewing grafy udp otázky / odpovědi na auth.
- potvrďte f06d069: zpoždění & qsize reportování 'live'. Opravte, že jsme ohlásili pouze qsize prvního distributora.
- pověřte 2f3498e: opravte statbag pro ukazatele uhlíku a funkce
- povolit 0f2f999: získání priority z tabulky v Lua axfrfilter; opraví lístek # 1857
- potvrdíte 96963e2, potvrdíte bbcbbbe, potvrdíte d5c9c07: různé backends: opravit záznamy ukazující na kořen
- potvrďte e94c2c4: odstraňte další vrstvu koncového bodu. které oddělily záznamy MX do kořenového adresáře v BIND backend. Měli byste uzavřít lístek # 1243.
- potvrdíte 8f35ba2: api: použijte nevybrané výsledky pro getKeys ()
- Odpovědět c574336: přečtěte ALLOW-AXFR-FROM z backendu s metadaty
- Drobné změny:
- Spustit 1e39b4c: Přesunout stránky do sekce 1
- pověřit b3992d9: secpoll: Nahradit ~ s _
- potvrdí 9799ef5: pouze zóny s aktivním ksk jsou zabezpečené
- Spusťte d02744f: api: zobrazte klíče pro zóny bez aktivního ksk
- Nové funkce:
- potvrdíme 1b97ba0: přidáme metriky podpisů k auth, takže můžeme plotovat podpisy / sekundy
- provést 92cef2d: pdns_control: je možné hlásit všechny zóny najednou
- Spusťte f648752: JSON API: poskytněte vyrovnávací paměť mezipaměti, notifikujte axfr-receive
- zavést 02653a7: přidat "bench-db", abyste provedli velmi jednoduchý benchmark výkonnosti databázového backendu
- pověřte a83257a: povolte metriky založené na zpětném volání na statbas a přidejte 5 takovýchto metrik: uptime, sys-msec, user-msec, velikost mezipaměti, velikost meta-cache, velikost mezipaměti
- Vylepšení výkonu:
- potvrďte a37fe8c: lepší klíč pro packetcache
- Spusťte e5217bb: nedělejte čas (0) pod zámkem mezipaměti
- potvrdíte d061045, potvrdíte 135db51, potvrdíte 7d0f392: zastrčíte mezipaměť paketů, uzavřete lístek # 1910.
- d71a712: díky tomu Jackovi Lloydovi to funguje kolem standardního přidělení botantem, který se nám při výrobě zpomaluje.
Co je nového ve verzi 3.4.1:
- povolte dcd6524, potvrďte a8750a5, potvrďte 7dc86bf, potvrďte 2fda71f: PowerDNS nyní zkontroluje bezpečnostní stav uvolnění při spuštění a pravidelně. Podrobnější informace o této funkci a o tom, jak ji vypnout, naleznete v sekci 2 "Bezpečnostní dotazování".
- potvrzení 5fe6dc0: API: Nahrazení HTTP Basic auth se statickým klíčem v vlastní hlavičce (klíč X-API)
- pověřte 4a95ab4: Použijte transakci pro pdnssec increase-serial
- potvrdíte 6e82a23: Nevyplňujte název objednávky během pdnssec increase-serial
- Spusťte 535f4e3: ctěte SOA-EDIT a zvážíte-li "prázdný IXFR" záložní, opraví vstupenku 1835. Tímto způsobem se opravuje slavování podepsaných zón k otrokům, které jsou si vědomy IXFR, jako je NSD nebo BIND.
Co je nového ve verzi 3.4:
- Toto je výkon, 3.3.1 a všechny dřívější verze. Obsahuje obrovské množství práce různých přispěvatelů, kterým jsme velmi vděční.
Co je nového ve verzi 3.3.1:
- Direct-dnskey již není experimentální, díky Kees Monshouwer & co pro rozsáhlé testování (commit e4b36a4).
- Během hlasování zpracujte signály (potvrďte 5dde2c6).
- Odpovědět 7538e56: Opravit zóny2 {sql, json} kódy ukončení
- potvrzení 7593c40: geobackend: opravit možný nullptr deref
- potvrďte 3506cc6: gpsqlbackend: nepřipojujte prázdné dbname = / user = hodnoty pro připojení řetězce
- dotazy gpgsql byly zjednodušeny použitím castingu (commit 9a6e39c).
- pověřte a7aa9be: Nahraďte hardcoded make s proměnnou
- povolte e4fe901: nezapomeňte spustit PKG_PROG_PKG_CONFIG před prvním použitím PKG_ *
- Odpovědět 29bf169: opravit hmac-md5 Hledání klíčů TSIG
- pověřit c4e348b: opravit 64-ti znakové klávesy TSIG
- Odpovědět 00a7b25: Opravte srovnání mezi podepsaným a nepodepsaným použitím uint32_t pro začátek na INCEPTION-EPOCH
- povolit d3f6432: oprava na os x 10,9, díky Martijn Bakker.
- Nyní povolíme budování proti Lua 5.2 (commit bef3000, commit 2bdd03b, commit 88d9e99).
- spáchat fa1f845: autodetect MySQL 5.5+ charset připojení
- Při chybném nastavení pomocí časových pásem "pravé" chyba v (g) libc gmtime porušuje naše podpisy. Opraveno v commit e4faf74 od Kees Monshouwer implementací vlastního gmtime_r.
- Při odesílání služby SERVFAIL kvůli smyčce CNAME nepoužívejte zbytečně CNAME (commit dfd1b82).
- Vytvořte opravy pro platformy s "podivným" typem (jako s390 / s390x): potvrďte c669f7c (podrobnosti), potvrďte 07b904e a potvrďte 2400764.
- Podpora + = syntaxe možností, potvrzení 98dd325 a dalších.
- přiřadit f8f29f4: nproxy: Přidání chybějícího chdir ("/") po chroot ()
- potvrzení 2e6e9ad: oprava chybějícího výrazu libmysqlclient na systémech založených na RHEL / CentOS
- Pdnssec vylepšení kontrolní zóny v commit 5205892, commit edb255f, potvrzení 0dde9d0, potvrzení 07ee700, potvrzení 79a3091, potvrzení 08f3452, potvrzení bcf9daf, potvrzení c9a3dd7, potvrzení 6ebfd08, potvrzení fd53bd0, potvrzení 7eaa83a, potvrzení e319467,
- NSEC / NSEC3 opravuje v commit 3191709, potvrdí f75293f, potvrdí cd30e94, potvrdí 74baf86, potvrdí 1fa8b2b
- Webový server by mohl dojít k selhání při změně velikosti vyrovnávacích pamětí na kruhu, opraveno v příkazu 3dfb45f.
- potvrzení 213ec4a: přidání omezení pro název schématu pg
- povolit f104427: způsobuje, že dotazy týkající se domény metadat nejsou citlivé na velikost písmen
- potvrzení 78fc378: žádná komprese štítků pro název v TSIG záznamů
- spustí 15d6ffb: pdnssec nyní vygeneruje ZSK DNSKEY záznamy, pokud je povolena podpora experimentu-direct-dnskey (přejmenována na direct-dnskey před vydáním!)
- pověřte ad67d0e: drop cryptopp ze statické sestavy, protože libcryptopp.a je v Debianu 7 poškozen, na něm stavíme
- potvrzení 7632dd8: podpora polarssl 1.3 externě.
- Vzdálený backend byl plně aktualizován v různých záležitostech.
- pověřit 82def39: SOA-EDIT: opravit INCEPTION-INCREMENT handling
- povolit a3a546c: přidat možnost innodb-read-commit pro nastavení gmysql.
- potvrdíme 9c56e16: skutečně zaznamenal časový limit při načtení AXFR, díky hkraal
Co je nového ve verzi 3.1 RC1:
- a obsahuje obrovské množství vylepšení a opraven.
Co je nového ve verzi 3.0.1:
- oprava pro CVE-2012-0206 aka PowerDNS Security Notification 2012-01. Doporučuje se upgrade.
Co je nového ve verzi 3.0 RC3:
- Tato verze poskytuje plnou podporu pro DNSSEC s automatickým podepisováním, převrácením a údržbou klíčů.
- Cílem je umožnit stávajícím instalačním systémům PowerDNS začít s minimálním potížím při poskytování služby DNSSEC, při zachování výkonu a dosažení vysoké úrovně zabezpečení.
- Mezi další nové funkce patří TSIG, MyDNS-compat backend, also-notify, master / slave přes IPv6, hromadný paralelní slaving engine, MongoDB support a Lua editace zón
Co je nového ve verzi 3.0 RC1:
- Toto vydání přináší plnou podporu pro DNSSEC s automatickým podepisováním , převrácení a údržba klíčů.
- Cílem je umožnit stávajícím instalačním systémům PowerDNS začít s minimálním potížím při poskytování služby DNSSEC, při zachování výkonu a dosažení vysoké úrovně zabezpečení.
- Mezi další nové funkce patří TSIG, MyDNS-compat backend, also-notify, master / slave přes IPv6, paralelní slaving engine a Lua editace zón
Co je nového ve verzi 2.9.22:
- Tato verze přináší přiměřené množství nových funkcí spolu s obrovským nárůstem výkonu u velkých nastavení.
- Navíc byl vyřešen významný počet chyb a problémů.
- Toto je velmi doporučená inovace.
Co je nového ve verzi 2.9.22 RC2:
- masivní zvýšení výkonu pro instalace s vysokou mezipamětí TTL nebo velkou mezipaměť paketů, v řadě případů řádově.
- Navíc bylo řešeno velké množství chyb, některé funkce byly přidány a celá řada oblastí viděla zlepšení.
- RC2 opravuje důležité problémy ve srovnání s RC1.
Co je nového ve verzi 2.9.22 RC1:
- masivní zvýšení výkonu pro instalace s vysokou mezipamětí TTL nebo velkou mezipaměť paketů, v řadě případů řádově.
- Navíc bylo řešeno velké množství chyb, některé funkce byly přidány a celá řada oblastí viděla zlepšení.
Co je nového ve verzi 2.9.21.2:
- Některé (vzácné) konfigurace serverů PowerDNS autoritativního serveru mohou být nuceny k restartování vzdáleně.
- Pro další konfigurace může být vzdáleně spuštěno opětovné připojení databáze.
- Tyto problémy byly opraveny.
Komentáře nebyl nalezen