TI

technik informatyk

Start

Zakładając, że korzystasz z dystrybucji opartej na Debianie lub Ubuntu, możesz zainstalować całe potrzebne oprogramowanie za pomocą:

apt update
apt upgrade
apt install isc-dhcp-server bind9 bind9utils

Domyślny adres IP bramy: 192.168.101.1
ISP / Zewnętrzne serwery DNS: 62.21.99.94
Wewnętrzna nazwa DNS: INFOMATRIX.LOCAL

Generowanie bezpiecznego klucza do komunikacji między usługami BIND9 i ISC-DHCP-SERVER

rndc-confgen -a

Plik rndc.key zostanie zapisany w lokalizacji: /etc/bind/rndc.key

 
chmod 660 /etc/bind/rndc.key
chown root:bind /etc/bind/rndc.key

Teraz zmień uprawnienia do pliku, aby tylko root i bind mogli go odczytać. Dodatkowo kopiujemy ten plik do lokalizacji: /etc/dhcp/ddns-keys

Konfiguracja protokołu DHCP

Modyfikujemy plik konfiguracyjny: /etc/dhcp/dhcpd.conf

authoritative; 
default-lease-time 14400; 
max-lease-time 18000; 
log-facility local7; 
ddns-domainname "infomatrix.local."; 
ddns-rev-domainname "in-addr.arpa."; 
ddns-update-style standard; 
allow unknown-clients;
update-static-leases on; 
use-host-decl-names on; 
option domain-name "infomatrix.local."; 
include "/etc/dhcp/rndc.key"; 
update-optimization off; 
update-conflict-detection off; 
zone infomatrix.local. { 
    primary 192.168.101.1; 
    key rndc-key; 
} 
zone 101.168.192.in-addr.arpa. { 
    primary 192.168.101.1; 
    key rndc-key; 
} 
subnet 192.168.101.0 netmask 255.255.255.0 { 
    range 192.168.101.20 192.168.101.200; 
    option subnet-mask 255.255.255.0; 
    option routers 192.168.101.1; 
    option domain-name-servers 192.168.101.1; 
}

Do sprawdzenia poprawności konfiguracji wykonaj polecenie:

dhcpd -t

Jeżeli nie zobaczymy żadnych ostrzeżeń i błędów, konfiguracja serwera dhcp powinna być poprawna.

Konfiguracja BIND9 z dynamicznym DNS

Pliki konfiguracyjne programu BIND są podzielone na wiele różnych, mniejszych plików. Przyjrzymy się każdemu plikowi, pojedynczo:

/etc/bind/named.conf.local


zone "infomatrix.local" {
  type master;
  file "/var/lib/bind/db.infomatrix.local";
  allow-update { key rndc-key; };
};
zone "101.168.192.in-addr.arpa" {
  type master;
  notify no;
  file "/var/lib/bind/db.101.168.192";
  allow-update { key rndc-key; };
};

/etc/bind/named.conf.options


include "/etc/bind/rndc.key";
acl internals {
    127.0.0.1;
    192.168.101.0/24;
};

options {
	directory "/var/cache/bind";
	forwarders {
	 	62.21.99.94;
                62.21.99.95;
	};
	allow-query {
	    internals;
	};
	allow-query-cache {
	    internals;
	};
	recursion yes;
	allow-recursion {
	    internals;
	};
	allow-transfer {
	    internals;
	};
	listen-on-v6 { any; };
	auth-nxdomain no;
};

Aby sprawdzić konfigurację, uruchom następujące polecenie:

named-checkconf

Tworzymy pliki ze strefami.

db.infomatrix.local


;
; BIND reverse data file for broadcast zone
;
$TTL	604800
@	IN	SOA	ns.infomatrix.local. root.infomatrix.local. (
			      1		; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	ns.ti.local.
@	IN	A	192.168.101.1
ns	IN	A	192.168.101.1
srv1	IN	A	192.168.101.1
vm1	IN	A	192.168.101.27
srv2	IN	A	192.168.101.2

db.101.168.192


;
; BIND reverse data file for broadcast zone
;
$TTL	604800
@	IN	SOA	ns.infomatrix.local. root.infomatrix.local. (
			      1		; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			 604800 )	; Negative Cache TTL
;
@	IN	NS	ns.
1	IN	PTR	srv1.infomatrix.local.
27	IN	PTR	vm1.infomatrix.local.
2	IN	PTR	srv2.infomatrix.local.

Aby sprawdzić strefy, musimy uruchomić polecenie dla każdej strefy:

named-checkzone infomatrix.local /var/lib/bind/db.infomatrix.local
named-checkzone 101.168.192.in-addr.arpa /var/lib/bind/db.101.168.192

Na koniec możemy zrestartować usługi bind9 i isc-dhcp-server. W przypadku problemów należy sprawdzić logi systemowe -> /var/log/syslog

TI technik informatyk