Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
sk2:dns-config [2024/12/17 13:29] jkonczak |
sk2:dns-config [2024/12/20 09:42] (aktualna) jkonczak [Przygotowanie do kolejnej części laboratoriów] |
||
---|---|---|---|
Linia 160: | Linia 160: | ||
===== Przygotowanie do kolejnej części laboratoriów ===== | ===== Przygotowanie do kolejnej części laboratoriów ===== | ||
- | ~~Krok.#1~~ Przestaw używany przez system serwer DNS wykonując: | + | ~~Krok.#1~~ Dodaj swojemu komputerowi adres 192.168.//X//.1/16 do urządzenia |
- | * zmień w pliku ''/etc/sysconfig/network/config'' wartość dla ''NETCONFIG_DNS_STATIC_SERVERS'' na ''192.168.0.1'', | + | |
- | * wykonaj komendę ''netconfig update -f'', | + | |
- | * sprawdź czy na początku pliku ''/etc/resolv.conf'' pojawił się podany adres IP. | + | |
- | <html><div style="margin-top:-1.2em"></div></html> | + | |
- | <small>Do zmiany wspomianego pliku możesz użyć komendy: \\ | + | |
- | ''sed -i 's/NETCONFIG_DNS_STATIC_SERVERS="[^"]*"/NETCONFIG_DNS_STATIC_SERVERS="192.168.0.1"/' /etc/sysconfig/network/config'' | + | |
- | </small> | + | |
- | + | ||
- | ~~Krok.#~~ Dodaj swojemu komputerowi adres 192.168.//X//.1/16 do urządzenia | + | |
''br0'', gdzie //X// to numer twojego komputera. | ''br0'', gdzie //X// to numer twojego komputera. | ||
\\ | \\ | ||
Linia 175: | Linia 166: | ||
Możesz to zrobić np. komendą: ''ip address add 192.168.//X//.1/16 dev br0'' | Możesz to zrobić np. komendą: ''ip address add 192.168.//X//.1/16 dev br0'' | ||
</small> | </small> | ||
+ | |||
+ | ~~Krok.#~~ | ||
+ | Przestaw używany przez system serwer DNS wykonując: | ||
+ | <html><div style="margin-top:-1.2em"></div></html> | ||
+ | * zmień w pliku ''/etc/sysconfig/network/config'' wartość dla ''NETCONFIG_DNS_STATIC_SERVERS'' na ''192.168.0.1'', \\ <small>Do tej zmiany możesz użyć komendy: \\ ''sed -i 's/NETCONFIG_DNS_STATIC_SERVERS="[^"]*"/NETCONFIG_DNS_STATIC_SERVERS="192.168.0.1"/' /etc/sysconfig/network/config'' </small> | ||
+ | * wykonaj komendę ''netconfig update -f'', | ||
+ | * <small>sprawdź czy na początku pliku ''/etc/resolv.conf'' pojawił się podany adres IP.</small> | ||
+ | |||
+ | <html><!-- Przestaw używany przez system serwer DNS wykonując: | ||
+ | * usuń plik ''/etc/resolv.conf'' np. komendą ''rm /etc/resolv.conf'' | ||
+ | * umieść w pliku ''/etc/resolv.conf'' linię ''nameserver 192.168.0.1'' np. komendą \\ ''echo "nameserver 192.168.0.1" > /etc/resolv.conf'' | ||
+ | --></html> | ||
~~Krok.#~~ Pobierz plik {{sk2:dns-lab-lxc.tar.xz}} i rozpakuj go jako //root// | ~~Krok.#~~ Pobierz plik {{sk2:dns-lab-lxc.tar.xz}} i rozpakuj go jako //root// | ||
Linia 180: | Linia 183: | ||
\\ | \\ | ||
<small> | <small> | ||
- | Możesz to zrobić komendą: \\ | + | Możesz to zrobić komendą: |
''%%cd /var/lib/lxc && curl https://www.cs.put.poznan.pl/jkonczak/_media/sk2:dns-lab-lxc.tar.xz | tar xvJ%%'' | ''%%cd /var/lib/lxc && curl https://www.cs.put.poznan.pl/jkonczak/_media/sk2:dns-lab-lxc.tar.xz | tar xvJ%%'' | ||
</small> | </small> | ||
+ | \\ | ||
+ | Jeżeli w katalogu były wcześniej pliki ''www'', ''mx'' i ''www2'', to usuń z tych katalogów zawartość podkatalogu ''rootfs-overlay''. | ||
+ | \\ | ||
+ | <small> Możesz to zrobić komendą: ''rm -rf /var/lib/lxc/{www,mx,www2}/rootfs-overlay/*''</small> | ||
+ | |||
~~Krok.#~~ Wybierz sobie nazwę domenową: | ~~Krok.#~~ Wybierz sobie nazwę domenową: | ||
Linia 257: | Linia 265: | ||
- dodaj wszystkim uprawnienia do zapisu w tym katalogu (np. ''chmod a+w .'') | - dodaj wszystkim uprawnienia do zapisu w tym katalogu (np. ''chmod a+w .'') | ||
- uruchom serwer DNS z tą konfiguracja komendą: \\ ''named -4 -g -c bind9-authoritative-server.conf'' | - uruchom serwer DNS z tą konfiguracja komendą: \\ ''named -4 -g -c bind9-authoritative-server.conf'' | ||
- | - upewnij się że program działa i po uruchomieniu wyświetlił **''all zones loaded''** i ''running'' oraz nie przerywaj jego działania | + | - upewnij się że program działa i po uruchomieniu //nie// wyświetlił ''zone … not loaded due to errors'' przed komunikatem ''all zones loaded'' oraz nie przerywaj jego działania |
- odpytaj serwer DNS o rekord SOA i NS dla swojej domeny | - odpytaj serwer DNS o rekord SOA i NS dla swojej domeny | ||
+ | |||
+ | <html> | ||
+ | <p style="margin:0">Przykładowe <u>wykluczające się wzajemnie</u> wpisy dla poddomeny <code>sub</code>: </p> | ||
+ | <pre style="margin:0; padding-top:2px; padding-bottom:2px"> | ||
+ | sub IN <span style="background-color:#00f2" title="Rekord NS wskazuje że ta domena jest w osobnej strefie którą zarządza wskazany serwer nazw">NS</span> <span style="background-color:#00f2" title="Wartością rekordu NS musi być nazwa domenowa">ns.gdzies.indziej.com.pl.</span> <span style="color:gray">; wskazuje że domeną ma się zająć inny serwer nazw</span> | ||
+ | </pre> | ||
+ | <pre style="margin:0; padding-top:2px; padding-bottom:2px"> | ||
+ | <span style="background-color:#00f2" title="Pamiętaj że za 'sub' bez kropki na końcu zostanie dopisana nazwa strefy/ORIGIN, więc z tego wyjdzie np. sub.example.com.">sub</span> IN NS <span style="background-color:#00f2" title="a z 'ns.sub' powstanie np. 'ns.sub.example.com.'">ns.sub</span> <span style="color:gray">; podobnie, ale serwer nazw jest wewnątrz poddomeny</span> | ||
+ | ns.sub IN A 192.168.99.1 <span style="color:gray">; więc trzeba dokleić jego adres IP (glue record)</span> | ||
+ | </pre> | ||
+ | <pre style="margin:0; padding-top:2px; padding-bottom:2px"> | ||
+ | sub IN A 192.168.99.2 <span style="color:gray">; poddomena nie ma osobnego serwera nazw, więc jej</span> | ||
+ | b.sub IN A 192.168.99.3 <span style="color:gray">; wszystkie wpisy znajdują się w tej strefie</span> | ||
+ | </pre> | ||
+ | <pre style="margin:0; padding-top:2px; padding-bottom:2px"> | ||
+ | sub IN <span style="background-color:#00f2" title="Pamiętaj że rekord CNAME wyklucza inne rekordy dla tej nazwy domenowej">CNAME</span> inna.nazwa.domenowa.com.pl. <span style="color:gray">; poddomena jest aliasem na inną nazwę domenową, klient</span> | ||
+ | www.sub IN CNAME sub <span style="color:gray">; pytając o tą nazwę ponowi pytanie dla wskazanej nazwy</span> | ||
+ | </pre> | ||
+ | </html> | ||
~~Zadanie.#~~ Poproś administratora domeny nadrzędnej (inną osobę z rzędu bądź | ~~Zadanie.#~~ Poproś administratora domeny nadrzędnej (inną osobę z rzędu bądź | ||
Linia 276: | Linia 303: | ||
wybranej poddomeny. Poproś jedną osobę z innego rzędu żeby sprawdziła czy może | wybranej poddomeny. Poproś jedną osobę z innego rzędu żeby sprawdziła czy może | ||
wejść w przeglądarce internetowej na strony z tymi nazwami domenowymi. | wejść w przeglądarce internetowej na strony z tymi nazwami domenowymi. | ||
- | |||
- | ~~Zadanie.#~~ Wykonaj zapytanie iteracyjne (''dig +trace …'') o nazwę domenową | ||
- | składającą się z największej liczby etykiet w rzędzie w którym siedzisz. | ||
~~Zadanie.#~~ | ~~Zadanie.#~~ | ||
Linia 296: | Linia 320: | ||
wpisze adres | wpisze adres | ||
<html><span style="white-space:nowrap; font-style: italic;">http://www.⟨twoja.domena⟩.put</span></html> | <html><span style="white-space:nowrap; font-style: italic;">http://www.⟨twoja.domena⟩.put</span></html> | ||
+ | |||
+ | Przykładowy plik strefy dla odwzorowania odwrotnego z dwoma obowiązkowymi rekordami (SOA i NS) i jednym rekordem odwzorowania odwrotnego (<small>zwróć uwagę na kropki na końcach nazw domenowych - bez tego na końcu będzie dodane ''//X//.168.192.in-addr.arpa''</small>): | ||
+ | <html><div style="margin-top:-1.2em"></div></html> | ||
+ | <code - X.168.192.in-addr.arpa.zone> | ||
+ | $TTL 10M | ||
+ | @ IN SOA nic.example.com. admin.example.com. 2024121700 6H 1H 1W 10M | ||
+ | IN NS nic.example.com. | ||
+ | 1 IN PTR nic.example.com. | ||
+ | </code> | ||
~~Zadanie.#~~ Stwórz plik strefy dla odwzorowania odwrotnego, czyli domeny | ~~Zadanie.#~~ Stwórz plik strefy dla odwzorowania odwrotnego, czyli domeny | ||
Linia 382: | Linia 415: | ||
\\ | \\ | ||
Dodaj do niej nowy rekord z innego komputera. | Dodaj do niej nowy rekord z innego komputera. | ||
+ | |||
+ | ~~Zadanie.#~~ Wykonaj komendę ''rndc sync -clean'' która zaktualizuje pliki stref dla | ||
+ | dynamicznych domen. Obejrzyj jak wygląda zaktualizowany przez serwer plik. | ||
+ | |||
<small>Informacje o dynamicznej aktualizacji rekordów w strefie w | <small>Informacje o dynamicznej aktualizacji rekordów w strefie w |