Dinamikus DNS szerver saját kezűleg

Beletelt egy a DNS-szerver, hogy hasonló funkcionalitást dyndns.com. de szinte azonnal világossá vált, hogy a szerver maga a nyilvánosság nem található. Miután vándorolt ​​át a hálózaton, találtam néhány megoldást, mint ez. Azonban néhány brutalitása megközelítés és a komplexitás megvalósulását nem szeretem azonnal.

A szerveren futó bind9. és neki, persze, van olyan megoldás, amely dinamikusan módosítani a domain rekordjait a távoli ügyfelek. Azonban ez jön le, hogy a fejlett módszer a nsupdate, amely nem támogatja a hálózati eszközök nem középszerű ipari szinten, különösen az otthoni router. Tehát a legjobb megoldás, véleményem szerint, az volt, hogy van egy szerver, protokoll összeegyeztethető ddclient. amely szinte az összes létező hálózati eszközöket.

Néhány bevezető szó

Tehát, egy gyors pillantást a szemüveg. Cayo gondolta, hogy a végrehajtás ilyen pribludy - egy nagyon egyszerű feladat. Íme néhány gondolat, amely miatt a leírt megoldás a cikket:

Az ötlet először. közvetlenül megváltoztatni a rekord viszonylag nehéz lenne, és nem biztonságos, sokkal jobb felhasználása erre nsupdate. amely lényegében elfogadja a bemeneti fájl változások és következetesen alkalmazza a rendelkezésre álló parancsokat is. Nincs szükség bűvészkedni magát kötni. A változtatások életbe léptetéséhez.

Az ötlet egy negyedik. A felhasználók vezetés ebben a végrehajtás úgy döntött, hogy írjon egy kis szkript, amely automatikusan generál egy kulcsot, és frissíti a felhasználók listáját és megkötik kulcsokat.

Dinamikusan frissített zóna bind9

Mielőtt a leírást a telepítését és konfigurálását a szolgáltatás, szeretném elmondani, hogyan működik, és nsupdate kötődnek.

létrehozni kulcsok

Tehát az első dolog, amit meg kell tennie, hogy módosítsa a területeket, hogy szeretnénk frissíteni dinamikusan. nsupdate segédprogram kölcsönhatásba lép a bind gombok használatával, így most már generálni mintegy a legfontosabb módja:

Itt már megadott kulcs típusától (hmac-md5), hosszúság (512, lehet elvileg használni bármilyen ilyen típusú kulcsot 1-512) és a felhasználó (ddserver).

Az adagolás befejezése után lesz egy pár kulcsot: magán- és kapok, mint:

Ezután kell hash (minden, ami után jön a .key száma 157 fájl) a nyilvános kulcsot, hogy add meg a szerver konfigurációját.

/etc/bind/ddserver.conf létre egy fájlt a következő tartalommal:

Következő tartalmazza azt /etc/bind/named.conf.local fájl (Caio adunk húr ismertetése előtt robbanás zónák):

Most zsonglőrködik bind9:

elérésének beállítása

Szinte mindent, de még nem adott engedélyt, hogy frissíti az egyes területeken, így tegye a következőket: találni egy leírást a kívánt területet, és add hozzá az engedélyt, hogy frissítse a megfelelő gombot:

Ez általában elég lenne, de így túl sok lehetőséget az ügyfél ddserver gombot. Lehetőség van annak meghatározására, pontosabban, hogy mely frissítések megtehetnek, például ahelyett, hogy a következő utasítást allow-update egység:

Így csak azt tették lehetővé, hogy frissítse a rekord az aldomain csak kayo-home.illumium.org.

Szükségtelenül ne rendetlenséget a cikk nem foglalkozik itt Cayo frissítés fordított zóna azonban gyakorlatilag ugyanaz.

Teszteljük a frissítés terület

Add A-típusú rögzítési kayo-home.illumium.org IP 1.2.3.4 TTL és 60 másodperc. Élettartam TTL kell megadni, a nagyobb ez, annál hosszabb a felvétel megmarad a DNS szerver cache. Például, ha pont 600 (10 perc), bejegyzés nem kért 10 percig újra, és ha ez idő alatt a VI frissített, ez lesz ismert, csak azt követően egy meghatározott intervallumban.

Most tulajdonképpen mi próbálunk frissíteni (meg lehet csinálni bármilyen host ahol nsupdate rendelkezésre, és mi korábban létrehozott privát kulcs):

Élvezi a syslog szerver induláskor csapat, ott kell lennie bejegyzések a következő formában:

Ebben az esetben a végén nsupdate nem kell semmit adni stdout és stderr. Ha nem helyesen azonosította a kiváltságokat, a segédprogram azt mondja, hogy nem lehet frissíteni. Tehát most, hogy megbizonyosodjon arról, hogy nem tudjuk, ezért frissíteni a többi bejegyzést, próbálja megváltoztatni a nevet update.ns és újra okoz a nsupdate, ha minden úgy van beállítva, ahogyan azt én, mi kap a következő:

És a syslog szerver kötődni mondani:

DynDNS Server kompatibilis protokoll dyndns2

Cayo ddserver kifejlesztett egy FastCGI háttérben. Szoftver van írva a C és démonként fut, mint egy átlag felhasználók, amely lehetővé tette a felhasználók számára megtalálni a kulcsokat és fuss nsupdate. Azt terjeszti SF.Net. Vannak is kész csomagokat Debian. Általában, mint könnyebb kiderült, mint mindig ^ _

Az alábbiakban röviden ismertetjük jegyzőkönyv

Domain nevek kell benyújtani teljes formátum, de anélkül, hogy a végső pont. Ha több domain nevek, akkor fel kell tüntetni, vesszővel elválasztva.

a felhasználók kezelése

Felügyelheti a felhasználói script ddserver-admin írta, ő a következőt teszi:

  • ddserver-admin felhasználó-lista - megjelenít egy listát a meglévő felhasználók
  • ddserver-admin felhasználó-add - hozzáad egy új felhasználói vagy meglévő
  • ddserver-admin felhasználó-del - eltávolítja a meglévő felhasználói

Amikor egy felhasználó bővül és frissül kell adnia egy jelszót, hogy belépjen az interneten keresztül. A szkript automatikusan generálja a szükséges kulcsokat és frissíti a megfelelő fájl htpasswd hasznosságát apache. A felhasználónév a neve a kulcs, hogy kötődnek.

Az / etc / ddserver mi lesz két fájlt:

hozzáférés-szabályozás

Annak elkerülése érdekében, ismétlődő rekordokat, és nem sok ide írni, adok néhány példát a beállítások automatikusan frissül zónák:

Fontos szem előtt tartani, mint a TTL értéke a zóna definíció fájlokat, hogy csökkentsék a tartózkodási idő dinamikus bejegyzéseket a névszerver cache.

Frissítése az interneten keresztül a nginx

Mivel Cayo használ nginx, itt megtudhatja, hogyan kell beállítani a szolgáltatást dolgozni, mint egy FastCGI backend-, mint ő. Nézzük, hogy azonnal a példa konfiguráció, ami elég egyszerű és nem igényel kis magyarázatot:

projekt állapotát

Bár a projekt keretében aktív tesztelés, úgyhogy nem lehet probléma.

Jelenleg támogatott:

  • frissítése A-rekordok
  • frissítheti több nevet egy időben (az azonos IP)
  • frissítés MX rekordok
  • auto-frissítés fordított zónák

Kapcsolódó cikkek