Síťová infrastruktura pro domácí prostředí a malé firmy (SOHO) – síťové služby 2

SOHO - NTPSprávně pracující místní síť umožňuje bezproblémový provoz všech zařízení a jejich připojení ke zdrojům v síti Internet. Pokud ale nepoužijeme dalších sofistikovaných služeb, musíme každé z těchto zařízení ručně nastavit. Abychom tuto nutnost co nejvíce zautomatizovali, implementujeme sadu dalších aplikací, které se o vše postarají jednoduše a efektivně. V našem příkladu přidáme služby pro distribuci přesného času pomocí NTP, webový server, proxy server a přidělování IP adres pomocí DHCP.

Přesný čas pomocí NTP

Synchronizovaný přesný čas je jedním z nejdůležitějších předpokladů pro správné fungování systému. Zejména v případě využití šifrovacích algoritmů (pro SSL, DNSSEC, atd.) může jeho posun oproti časovému normálu vyústit v nepoužitelnost služeb.

Systém NTP (Network Time Protocol) využívá infrastrukturu serverů umístěných v internetu, které získávají přesný čas z atomových hodin a GPS. Tento přesný čas je dále distribuován a je možné jím synchronizovat veškerá zařízení, s patřičnou podporou, umístěná v internetu. Těmi mohou být počítače, chytré telefony, televizory, domácí kina, atp., ale i výrobní linky, telekomunikační systémy, … Zkrátka vše, kde je přesný čas klíčový, a pořízení rubidiového kmitočtového standardu by bylo finančně náročné.

V naší infrastruktuře bude přesný čas z internetu získáván pouze servery srv-01, srv-02, net-01 a net-02. Ostatní zařízení budou pouze klienty místních serverů (net-01 a net-02).

Použité softwarové balíčky: ntp

Servery srv-01, srv-02, net-01 a net-02

V této části bude popsáno nastavení a spuštění služby NTP a úprava DNS serveru.

Synchronizace času

[root@net-01 ~]# ntpdate pool.ntp.org
24 Jul 12:54:17 ntpdate[671]: adjust time server 212.96.168.167 offset -0.024180 sec

Nastavení služby

Nastavení služby NTP se provádí změnou souboru /etc/ntp.conf. V případě serverů srv-01 a srv-02 nebudeme žádné úpravy provádět.
V nastavení místních serverů net-01 a net-02 změníme řádek restrict default kod limited nomodify nopeer noquery notrap na restrict default nomodify nopeer noquery a přidáme:

server 127.127.1.1
fudge  127.127.1.1 stratum 12

broadcast 10.11.1.255

Definice serveru 127.127.1.1 slouží pro případ, že nebudou dostupné NTP servery v internetu. V tom případě bude jako zdroj času pro službu NTP využíváno interních hodin serveru. Parametr broadcast určuje pravidelné vysílání časové informace do naší sítě. Je potřeba zadat správnou broadcast adresu.

Spuštění služby

Spustíme a povolíme službu ntpd:

[root@net-01 ~]# systemctl start ntpd
[root@net-01 ~]# systemctl enable ntpd

Povolíme synchronizaci času v systému:

[root@net-01 ~]# timedatectl set-ntp yes

DNS záznamy

Na serverech net-01 a net-02 můžeme přidat do místní DNS zóny záznam ntp (příklad se vztahuje k serveru net-01, v případě přidání záznamu na server net-02 je nutné změnit název domény a serveru):

[root@net-01 ~]# nsupdate -k /etc/rndc.key
> update add ntp.praha.my-own-domain.net 86400 CNAME net-01.praha.my-own-domain.net
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
ntp.praha.my-own-domain.net. 86400 IN    CNAME   net-01.praha.my-own-domain.net.

> send
> update add _ntp._udp.praha.my-own-domain.net 86400 SRV 0 2 123 ntp.praha.my-own-domain.net
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
_ntp._udp.praha.my-own-domain.net. 86400 IN SRV 0 2 123 ntp.praha.my-own-domain.net.

> send
> ^D

Jelikož je zóna praha.my-own-domain.net nastaven jako dynamická (parametr allow-update, nemůžeme přidání řádku řešit přímou úpravou zónového souboru /var/named/pri/praha.my-own-domain.net).

Zónu local.my-own-domain.net upravíme ručně, pro Prahu přidáme:

ntp             A       10.11.1.253
_ntp._udp       SRV     0 2 123 ntp

Provedeme načtení změn v zónovém souboru:

[root@net-01 pri]# rndc reload local.my-own-domain.net
zone reload up-to-date

Test služby

Ověříme otevřené síťové porty pro službu:

[root@net-01 ~]# netstat -lutpn | grep ntpd
udp        0      0 10.11.1.253:123         0.0.0.0:*                           678/ntpd
udp        0      0 127.0.0.1:123           0.0.0.0:*                           678/ntpd
udp        0      0 0.0.0.0:123             0.0.0.0:*                           678/ntpd
udp6       0      0 fe80::20c:29ff:feaa:123 :::*                                678/ntpd
udp6       0      0 ::1:123                 :::*                                678/ntpd
udp6       0      0 :::123                  :::*                                678/ntpd

Stav systémových volání vztahující se k NTP:

[root@net-01 etc]# ntptime
ntp_gettime() returns code 0 (OK)
  time d95cafbb.dea25d8c  Fri, Jul 24 2015 14:36:11.869, (.869665448),
  maximum error 284793 us, estimated error 1982 us, TAI offset 0
ntp_adjtime() returns code 0 (OK)
  modes 0x0 (),
  offset 15.408 us, frequency 33.313 ppm, interval 1 s,
  maximum error 284793 us, estimated error 1982 us,
  status 0x2001 (PLL,NANO),
  time constant 7, precision 0.001 us, tolerance 500 ppm,

Vypíšeme seznam NTP serverů, se kterými se provádí synchronizace:

[root@net-01 ~]# ntpq -c peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+u001.net.paskov 195.113.144.201  2 u   37   64  377   19.500   11.946   8.787
+ntp1.kajot.cz   46.243.52.222    3 u   37   64  377   18.355   -1.014   5.594
*81.0.208.219 (m 195.113.144.238  2 u   37   64  377   15.955   -0.477   6.452
+xm02.qls.cz     116.49.102.213   2 u   39   64  377   19.257    1.966   4.984

Zjistíme stav synchronizace času v systému:

[root@net-01 ~]# timedatectl status
      Local time: Fri 2015-07-24 12:13:38 CEST
  Universal time: Fri 2015-07-24 10:13:38 UTC
        RTC time: Fri 2015-07-24 10:13:38
       Time zone: Europe/Prague (CEST, +0200)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

Ověření DNS záznamu:

[root@net-01 ~]# dig ntp.praha.my-own-domain.net

; <<>> DiG 9.10.2-P2 <<>> ntp.praha.my-own-domain.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36341
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ntp.praha.my-own-domain.net.   IN      A

;; ANSWER SECTION:
ntp.praha.my-own-domain.net. 86400 IN   CNAME   net-01.praha.my-own-domain.net.
net-01.praha.my-own-domain.net. 86400 IN A      10.11.1.253

;; AUTHORITY SECTION:
praha.my-own-domain.net. 86400  IN      NS      net-01.praha.my-own-domain.net.

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jul 24 14:11:40 CEST 2015
;; MSG SIZE  rcvd: 107

Firewall

Nebudeme nastavovat. U serverů srv-01 a srv-02 je připojení k portu 123/udp zakázáno ve výchozím stavu, servery net-01 a net-02 nemají firewall spuštěn.
Pokud budeme chtít zavést restrikce na úrovni služby ntpd, provedem úpravu souboru /etc/ntp.conf.

Internetové brány gw-01, gw-02 a ostatní zařízení

Pro další servery a zařízení v síti, které mají pevnou IP adresu můžeme ručně nastavit NTP. V případě automatického nastavení můžeme využít DHCP serveru (bude popsán v samostatné kapitole).

Nastavení služby

Nastavení služby NTP se provádí opět změnou souboru /etc/ntp.conf.
Do konfiguračního souboru přidáme řádky (platí pro obě lokality):

server ntp.local.my-own-domain.net prefer
broadcastclient

Spuštění služby

Spustíme a povolíme službu ntpd:

[root@gw-01 ~]# systemctl start ntpd
[root@gw-01 ~]# systemctl enable ntpd

Povolíme synchronizaci času v systému:

[root@gw-01 ~]# timedatectl set-ntp yes

Webový server

Server pro zprostředkování obsahu využívající protokoly HTTP a HTTPS bude v naší infrastruktuře sloužit pro distribuování specifických nastavení klientům a zobrazení statistik o využití systémů.

Na serverech srv-01 a srv-02 bude zpracovávat požadavky pouze z VPN. V případě net-01, net-02, gw-01 a gw-02 z místních sítí.

Použité softwarové balíčky: nginx php-fpm

Nastavení a spuštění PHP-FPM

(na všech serverech: srv-01, srv-02, net-01, net-02, gw-01, gw-02)

PHP-FPM je implementace FastCGI programovacího jazyka PHP.
Konfigurace je umístěna v adresáři /etc/php/.

Spustíme a povolíme službu php-fpm:

[root@net-01 ~]# systemctl start php-fpm
[root@net-01 ~]# systemctl enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.

Webový server nginx

Nginx je jednoduchý a nenáročný webový server. Konfigurace je uložena v souboru /etc/nginx/nginx.conf.

Centrální servery srv-01 a srv-02

Obsah konfiguračního souboru nahradíme následujícím:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  600;
    gzip  on;

    server {
        listen       10.128.1.1:80;
        server_name  localhost;
        root   /srv/http/;
        client_max_body_size 100M;

        location / {
            index index.php index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /srv/http/;
        }

        location ~ [^/]\.php(/|$) {
                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                if (!-f $document_root$fastcgi_script_name) {
                        return 404;
                }

                fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }

        location ~ /\.ht {
            deny  all;
        }
    }
}

U serveru srv-02 musíme IP adresu VPN rozhraní nastavit dle aktuální.

Vytvoříme dočasný soubor /srv/http/index.php s obsahem:

<?php print('Nginx/PHP pracuje...'); ?>

Službu spustíme a povolíme:

[root@srv-01 ~]# systemctl start nginx
[root@srv-01 ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

Nastavíme firewall. Do souboru /etc/nftables.conf přidáme k pravidlu povolující službu SSH další řádky:

    # Sluzba HTTP
    iif tun0 tcp dport 80 counter accept

Provedeme restart firewallu:

[root@srv-01 etc]# systemctl restart nftables

Ověříme, zda služba naslouchá na správné kombinaci ip:port:

[root@srv-01 ~]# netstat -lutpn | grep nginx
tcp        0      0 10.128.1.1:80           0.0.0.0:*               LISTEN      543/nginx: master

Zkusíme se připojit a zobrazit obsah (např. z net-01):

[root@net-01 ~]# links http://10.128.1.1

Místní servery net-01 a net-02

Obsah konfiguračního souboru nahradíme následujícím:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  600;
    gzip  on;

    server {
        listen       80;
        server_name  localhost;
        root   /srv/http/;
        client_max_body_size 100M;

        location / {
            index index.php index.html index.htm;
        }

        location /proxy.pac { rewrite ^(.*)$ /proxy.php last; }
        location /wpad.dat { rewrite ^(.*)$ /proxy.php last; }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /srv/http/;
        }

        location ~ [^/]\.php(/|$) {
                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                if (!-f $document_root$fastcgi_script_name) {
                        return 404;
                }

                fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }

        location ~ /\.ht {
            deny  all;
        }
    }
}

Jak je možné z nastavení poznat, webový obsah je umístěn v adresáři /srv/http/. Řádky začínající location /proxy.paclocation /wpad.dat definují umístění souborů obsahující nastavení autokonfigurace proxy (služba proxy bude popsána dále). Tyto soubory jsou načítány operačními systémy a webovými prohlížeči, a jejich obsahem je řízeno připojování k síťovým zdrojům.

Pro budoucí proxy vytvoříme soubor /srv/http/proxy.php:

<?php
header("Content-Type: application/x-ns-proxy-autoconfig");
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>

function FindProxyForURL(url, host) {
    var proxy = "PROXY local.my-own-domain.net:3128; DIRECT";
    var direct = "DIRECT";

    if (isPlainHostName(host)) return direct;

    if ( shExpMatch( host, "*bern.my-own-domain.net" ) ) return proxy;
    if ( shExpMatch( host, "*vpn-net.my-own-domain.net" ) ) return proxy;

    if (shExpMatch( host, "192.168.*" )
    ||  shExpMatch( host, "172.16.*" )
    ||  shExpMatch( host, "127.*" )
    ||  shExpMatch( host, "10.*" )
    ||  isInNet(dnsResolve(host), "10.0.0.0", "255.0.0.0")
    ||  isInNet(dnsResolve(host), "172.16.0.0",  "255.240.0.0")
    ||  isInNet(dnsResolve(host), "192.168.0.0",  "255.255.0.0")
    ||  isInNet(dnsResolve(host), "127.0.0.0", "255.255.255.0")
    ||  shExpMatch( host, "localhost" )
    ||  shExpMatch( host, "*.local" )
    ||  shExpMatch( host, "*praha.my-own-domain.net" )
    ||  isPlainHostName( host ))
    return direct;

    return proxy;
}

Konfigurace proxy je platná pro lokalitu Praha. Pro Bern je nutné ji upravit.

Vytvoříme dočasný soubor /srv/http/index.php s obsahem:

<?php print('Nginx/PHP pracuje...'); ?>

Službu spustíme a povolíme:

[root@net-01 ~]# systemctl start nginx
[root@net-01 ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

Ověříme, zda služba naslouchá na správné kombinaci ip:port:

[root@net-01 ~]# netstat -lutpn | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1155/nginx: master

Internetové brány gw-01 a gw-02

Obsah konfiguračního souboru nahradíme následujícím:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  600;
    gzip  on;

    server {
        listen       80;
        server_name  localhost;
        root   /srv/http/;
        client_max_body_size 100M;

        location / {
            index index.php index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /srv/http/;
        }

        location ~ [^/]\.php(/|$) {
                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                if (!-f $document_root$fastcgi_script_name) {
                        return 404;
                }

                fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }

        location ~ /\.ht {
            deny  all;
        }
    }
}

Vytvoříme dočasný soubor /srv/http/index.php s obsahem:

<?php print('Nginx/PHP pracuje...'); ?>

Službu spustíme a povolíme:

[root@gw-01 ~]# systemctl start nginx
[root@gw-01 ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

Logy lze nalézt v adresáři /var/log/nginx/.

Nastavíme firewall. Do souboru /etc/nftables.conf přidáme k pravidlu povolující službu SSH další řádky:

    # Sluzba HTTP
    iif tun0 tcp dport 80 counter accept
    iif eno33554976 tcp dport 80 counter accept

Provedeme restart firewallu:

[root@gw-01 etc]# systemctl restart nftables

Ověříme, zda služba naslouchá na správné kombinaci ip:port:

[root@gw-01 ~]# netstat -lutpn | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      581/nginx: master

Proxy server

Služba proxy server bude v naší infrastruktuře složit pro urychlení komunikace a snížení využití přenosového pásma z internetu do místní sítě. Pokud to bude možné, uloží již stažená data do prostoru na pevném disku a v případě opětovného požadavku na načtení již nebude obsah získáván z internetu, ale načten právě z onoho lokálního umístění. V případě nutnosti lze proxy nastavit takovým způsobem, že blokuje nevhodný internetový obsah. V naší infrastruktuře bude proxy server, squid, nasazen na místních serverech net-01 a net-02.

Použité softwarové balíčky: squid

Nastavení proxy serveru

Nastavení se provádí úpravou souboru /etc/squid/squid.conf. Jeho obsah nahradíme následujícím:

acl localnet src 10.11.0.0/16

#acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
#acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
#acl localnet src 192.168.0.0/16        # RFC1918 possible internal network
#acl localnet src fc00::/7       # RFC 4193 local private network range
#acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow manager
http_access allow localnet
http_access allow localhost
http_access deny all
http_port 3128
cache_dir diskd /var/cache/squid 4096 8 128
coredump_dir /var/cache/squid

refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

quick_abort_min -1 KB
client_persistent_connections on

dns_v4_first on
dns_nameservers 127.0.0.1

cache_mem 16 MB
memory_replacement_policy lru

cache_replacement_policy lru
maximum_object_size 100 MB

Parametr cache_dir určuje kromě umístění také velikost prostoru v MB, které může služba využít. V našem případě je to 4 GB (4096 MB). Je tedy nezbytně nutné, aby bylo potřebné volné místo k dispozici.

Spuštění a povolení služby

Před tím, než spustíme službu proxy server, musíme nechat vytvořit v adresáři daném volbou cache_dir příslušnou strukturu adresářů:

[root@net-01 ~]# squid -zN
2015/07/24 22:01:57| Set Current Directory to /var/cache/squid
2015/07/24 22:01:57| Creating missing swap directories
2015/07/24 22:01:57| /var/cache/squid exists
2015/07/24 22:01:57| Making directories in /var/cache/squid/00
2015/07/24 22:01:57| Making directories in /var/cache/squid/01
2015/07/24 22:01:57| Making directories in /var/cache/squid/02
2015/07/24 22:01:57| Making directories in /var/cache/squid/03
2015/07/24 22:01:57| Making directories in /var/cache/squid/04
2015/07/24 22:01:57| Making directories in /var/cache/squid/05
2015/07/24 22:01:57| Making directories in /var/cache/squid/06
2015/07/24 22:01:57| Making directories in /var/cache/squid/07

Nyní můžeme službu spustit a povolit:

[root@net-01 ~]# systemctl start squid
[root@net-01 ~]# systemctl enable squid
Created symlink from /etc/systemd/system/multi-user.target.wants/squid.service to /usr/lib/systemd/system/squid.service.

Logy lze nalézt v adresáři /var/log/squid/.

1437769563.080   9637 10.11.1.254 TCP_MISS/200 2856508 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_DIRECT/217.31.202.63 application/octet-stream
1437769563.565    480 10.11.1.254 TCP_MISS/404 539 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db.sig - HIER_DIRECT/217.31.202.63 text/html
1444495531.878   5209 10.11.1.254 TCP_HIT_ABORTED/000 0 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_NONE/- -
1445521251.489    118 10.11.1.23 TCP_MISS/503 4000 GET http://ipv6.msftncsi.com/ncsi.txt - HIER_DIRECT/2a02:26f0:10e::6860:5a50 text/html
1445521251.519    241 10.11.1.23 TCP_MISS/200 286 GET http://www.msftncsi.com/ncsi.txt - HIER_DIRECT/104.96.91.10 text/plain
1445521315.752   2579 10.11.1.23 TCP_TUNNEL/200 10946 CONNECT login.live.com:443 - HIER_DIRECT/131.253.61.84 -
1445521617.277   1899 10.11.1.23 TCP_TUNNEL/200 4233 CONNECT next-services.apps.microsoft.com:443 - HIER_DIRECT/157.56.194.73 -
1445521718.170     66 10.11.1.23 TCP_MISS/200 2442 GET http://ocsp.msocsp.com/MFQwUjBQME4wTDAJBgUrDgMCGgUABBQmECJms4f7i5EbxtN7NbzQCBwAdAQUUa8kJpz0daCJXgCYrO0ZiFXsezKUCE1oAAMNOb6rRX3F6JvkAAQAAw04%3D - HIER_DIRECT/108.162.232.203 application/ocsp-response
1445521718.172      0 10.11.1.23 TCP_MEM_HIT/200 2307 GET http://ocsp.msocsp.com/MFQwUjBQME4wTDAJBgUrDgMCGgUABBQmECJms4f7i5EbxtN7NbzQCBwAdAQUUa8kJpz0aCJXgCdYrO0ZiFXsezKUCE1oAAMNOb6rRX3F6JvkAAQAAw04%3D - HIER_NONE/- application/ocsp-response
1445521932.621      0 10.11.1.253 TCP_IMS_HIT/304 290 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_NONE/- application/octet-stream
1445521932.638     16 10.11.1.253 TCP_IMS_HIT/200 1857019 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db - HIER_NONE/- application/octet-stream
1445521932.676     30 10.11.1.253 TCP_MISS/404 532 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db.sig - HIER_DIRECT/217.31.202.63 text/html
1445521933.772   1096 10.11.1.253 TCP_REFRESH_MODIFIED_ABORTED/200 606818 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_DIRECT/217.31.202.63 application/octet-stream
1445521994.005     36 10.11.1.23 TCP_MISS/304 349 GET http://res2.windows.microsoft.com/resbox/en/windows/main/5a7873a1-fd4e-4462-8ab2-32bd729117c6_7.png - HIER_DIRECT/104.96.91.8 image/png
1445521994.175      0 10.11.1.23 TCP_MEM_HIT/200 2232 GET http://s2.symcb.com/MFEwTzBNMEswSTAJBgUrDgMCGgUABBS56bKHAoUD%2BOyl%2B0LhPg9JxyQmd4gQUf9Nlp8Ld7LvwMAnzQzn6Aq8zMTMCEH7hSm9v7%2FLTfz%2BtZU062rQ%3D - HIER_NONE/- application/ocsp-response
1445522002.386      0 10.11.1.23 TCP_MEM_HIT/200 1736 GET http://ocsp.omniroot.com/baltimoreroot/MEUwQzBBMD8wPTAJBgUrDgMCGgUABBTBL0V27RVZ7LBduom%2FnYB45SPUEwdQU5Z1ZMIJHWMys%2BghUNoZ7OrUETfACBAcnqkc%3D - HIER_NONE/- application/ocsp-response
1445522002.397      0 10.11.1.23 TCP_MEM_HIT/200 2309 GET http://ocsp.msocsp.com/MFQwUjBQME4wTDAJBgUrDgMCGgUABBQmECJms4f7i5EbxtN7NbzQCBwAdAQUUad8kJpz0aCJXgCYrO0ZiFXsezKUCE1oAAN43VPPQBXGCMiwAAQAA3jc%3D - HIER_NONE/- application/ocsp-response
1445522161.191      1 10.11.1.254 TCP_IMS_HIT/200 125165 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_NONE/- application/octet-stream
1445522162.484   1291 10.11.1.254 TCP_MISS/404 530 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db.sig - HIER_DIRECT/217.31.202.63 text/html
1445522162.524     38 10.11.1.254 TCP_IMS_HIT/200 1857020 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db - HIER_NONE/- application/octet-stream
1445522162.572     24 10.11.1.254 TCP_MISS/404 532 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db.sig - HIER_DIRECT/217.31.202.63 text/html
1445522162.618     45 10.11.1.254 TCP_IMS_HIT/200 3074935 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_NONE/- application/octet-stream
1445522162.675     21 10.11.1.254 TCP_MISS/404 540 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db.sig - HIER_DIRECT/217.31.202.63 text/html
1445522166.400      0 10.11.1.254 TCP_IMS_HIT/304 291 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_NONE/- application/octet-stream
1445522166.401      0 10.11.1.254 TCP_IMS_HIT/304 291 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db - HIER_NONE/- application/octet-stream
1445522166.401      0 10.11.1.254 TCP_IMS_HIT/304 291 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_NONE/- application/octet-stream
1445522183.530      0 10.11.1.254 TCP_IMS_HIT/304 291 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_NONE/- application/octet-stream
1445522189.323     31 10.11.1.253 TCP_IMS_HIT/200 3074935 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_NONE/- application/octet-stream
1445522189.346     22 10.11.1.253 TCP_MISS/404 540 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db.sig - HIER_DIRECT/217.31.202.63 text/html
1445522693.910   2637 10.11.1.23 TCP_TUNNEL/200 19401 CONNECT sqm.telemetry.microsoft.com:443 - HIER_DIRECT/65.55.252.93 -
1445522843.955  94117 10.11.1.23 TCP_TUNNEL/200 4523 CONNECT watson.telemetry.microsoft.com:443 - HIER_DIRECT/65.52.108.29 -
1445525057.471    123 10.11.1.22 TCP_MISS/200 286 GET http://www.msftncsi.com/ncsi.txt - HIER_DIRECT/104.96.91.10 text/plain
1445525159.584   1340 10.11.1.254 TCP_MISS/200 1281636 GET http://mirrors.nic.cz/archlinux/core/os/i686/bash-4.3.042-3-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525159.587      3 10.11.1.253 TCP_MEM_HIT/200 356248 GET http://mirrors.nic.cz/archlinux/core/os/i686/iana-etc-20151016-1-any.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525160.416    833 10.11.1.254 TCP_MISS/200 335898 GET http://mirrors.nic.cz/archlinux/core/os/i686/libutil-linux-2.27-6-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525161.931   1514 10.11.1.254 TCP_MISS/200 837238 GET http://mirrors.nic.cz/archlinux/core/os/i686/e2fsprogs-1.42.13-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525162.433    501 10.11.1.254 TCP_MISS/200 306658 GET http://mirrors.nic.cz/archlinux/core/os/i686/libldap-2.4.42-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525162.890    456 10.11.1.254 TCP_MISS/200 245086 GET http://mirrors.nic.cz/archlinux/core/os/i686/xz-5.2.2-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525163.027    138 10.11.1.254 TCP_MISS/200 99665 GET http://mirrors.nic.cz/archlinux/core/os/i686/less-481-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525163.924   4336 10.11.1.253 TCP_MISS/200 2253540 GET http://mirrors.nic.cz/archlinux/core/os/i686/glib2-2.46.1-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525163.928      3 10.11.1.253 TCP_MEM_HIT/200 245092 GET http://mirrors.nic.cz/archlinux/core/os/i686/xz-5.2.2-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525164.243     69 10.11.1.23 TCP_MISS/200 586 HEAD http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/10/am_delta_ec599b8819a979185cb9840d8b0215997b821aed0.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525164.244    132 10.11.1.23 TCP_MISS/200 586 HEAD http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/09/am_engine_440ee8cb33bf2126921fd909d3f9a75165bb52ded.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525164.256    126 10.11.1.23 TCP_MISS/200 588 HEAD http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/09/am_base_696ac7fe77c26dafa68659d7d9b4727c2d5b7fdec.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525168.536   4608 10.11.1.253 TCP_MISS/200 394498 GET http://mirrors.nic.cz/archlinux/core/os/i686/libsystemd-227-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525168.568   5540 10.11.1.254 TCP_MISS/200 1151352 GET http://mirrors.nic.cz/archlinux/core/os/i686/texinfo-5.2-4-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525169.930   1361 10.11.1.254 TCP_MISS/200 111330 GET http://mirrors.nic.cz/archlinux/core/os/i686/libtasn1-4.7-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525170.996   6718 10.11.1.23 TCP_MISS/200 4022106 GET http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/09/am_engine_440ee8cb33dbf2126921fd9093f9a75165bb52ded.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525173.172   4637 10.11.1.253 TCP_MISS/200 156734 GET http://mirrors.nic.cz/archlinux/core/os/i686/libdbus-1.10.0-4-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525173.329   3400 10.11.1.254 TCP_MISS/200 281054 GET http://mirrors.nic.cz/archlinux/core/os/i686/p11-kit-0.23.1-3-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525180.683   7510 10.11.1.253 TCP_MISS/200 326994 GET http://mirrors.nic.cz/archlinux/core/os/i686/dbus-1.10.0-4-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525180.687      3 10.11.1.253 TCP_MEM_HIT/200 335905 GET http://mirrors.nic.cz/archlinux/core/os/i686/libutil-linux-2.27-6-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525182.893   2205 10.11.1.253 TCP_MISS/200 833053 GET http://mirrors.nic.cz/archlinux/core/os/i686/curl-7.45.0-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525182.893   9563 10.11.1.254 TCP_MISS/200 833054 GET http://mirrors.nic.cz/archlinux/core/os/i686/curl-7.45.0-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525182.897      2 10.11.1.254 TCP_MEM_HIT/200 394505 GET http://mirrors.nic.cz/archlinux/core/os/i686/libsystemd-227-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525182.899      1 10.11.1.254 TCP_MEM_HIT/200 156741 GET http://mirrors.nic.cz/archlinux/core/os/i686/libdbus-1.10.0-4-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525182.901      2 10.11.1.254 TCP_MEM_HIT/200 327000 GET http://mirrors.nic.cz/archlinux/core/os/i686/dbus-1.10.0-4-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525212.781  29874 10.11.1.254 TCP_MISS/200 1757700 GET http://mirrors.nic.cz/archlinux/core/os/i686/util-linux-2.27-6-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525254.370  90107 10.11.1.23 TCP_MISS/200 8190810 GET http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/10/am_delta_ec599b8819a9d79185cb98408b0215997b821aed0.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525254.570  90275 10.11.1.23 TCP_MISS/200 113081180 GET http://fg.v4.download.windowsupdate.com/d/msdownload/update/software/defu/2015/09/am_base_696ac7fe77c26ddafa686597d9b4727c2d5b7fdec.exe - HIER_DIRECT/191.234.4.50 application/octet-stream
1445525256.660  43879 10.11.1.254 TCP_MISS/200 5451683 GET http://mirrors.nic.cz/archlinux/core/os/i686/systemd-227-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525256.660  50670 10.11.1.253 TCP_MISS/200 5451684 GET http://mirrors.nic.cz/archlinux/core/os/i686/systemd-227-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525256.998    337 10.11.1.253 TCP_MISS/200 269754 GET http://mirrors.nic.cz/archlinux/core/os/i686/device-mapper-2.02.132-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525257.068    408 10.11.1.254 TCP_MISS/200 269754 GET http://mirrors.nic.cz/archlinux/core/os/i686/device-mapper-2.02.132-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525257.410    341 10.11.1.254 TCP_MISS/200 237798 GET http://mirrors.nic.cz/archlinux/core/os/i686/file-5.25-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525257.474     63 10.11.1.254 TCP_HIT/200 2253547 GET http://mirrors.nic.cz/archlinux/core/os/i686/glib2-2.46.1-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525260.099   2620 10.11.1.254 TCP_MISS/200 1992936 GET http://mirrors.nic.cz/archlinux/core/os/i686/gettext-0.19.6-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525260.181     81 10.11.1.254 TCP_MISS/200 85737 GET http://mirrors.nic.cz/archlinux/core/os/i686/libassuan-2.3.0-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525260.310    128 10.11.1.254 TCP_MISS/200 118990 GET http://mirrors.nic.cz/archlinux/core/os/i686/pinentry-0.9.5-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525262.543   5545 10.11.1.253 TCP_MISS/200 2002384 GET http://mirrors.nic.cz/archlinux/core/os/i686/gnupg-2.1.9-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525263.245   2935 10.11.1.254 TCP_MISS/200 2240780 GET http://mirrors.nic.cz/archlinux/core/os/i686/gnutls-3.4.5-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525263.285     39 10.11.1.254 TCP_HIT/200 2002390 GET http://mirrors.nic.cz/archlinux/core/os/i686/gnupg-2.1.9-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525263.334     45 10.11.1.254 TCP_MISS/200 248377 GET http://mirrors.nic.cz/archlinux/core/os/i686/gpgme-1.6.0-2-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525263.334    791 10.11.1.253 TCP_MISS/200 248378 GET http://mirrors.nic.cz/archlinux/core/os/i686/gpgme-1.6.0-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525263.650    314 10.11.1.254 TCP_MISS/200 130738 GET http://mirrors.nic.cz/archlinux/core/os/i686/gpm-1.20.7-5-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525263.651    316 10.11.1.253 TCP_MISS/200 57456 GET http://mirrors.nic.cz/archlinux/core/os/i686/libusb-1.0.20-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525270.871   7220 10.11.1.254 TCP_MISS/200 1896964 GET http://mirrors.nic.cz/archlinux/core/os/i686/groff-1.22.3-4-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525270.873      0 10.11.1.254 TCP_MEM_HIT/200 57462 GET http://mirrors.nic.cz/archlinux/core/os/i686/libusb-1.0.20-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525271.787    914 10.11.1.254 TCP_MISS/200 296478 GET http://mirrors.nic.cz/archlinux/core/os/i686/inetutils-1.9.4-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525273.630   1843 10.11.1.254 TCP_MISS/200 576230 GET http://mirrors.nic.cz/archlinux/core/os/i686/iproute2-4.1.1-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525273.935    303 10.11.1.254 TCP_MISS/200 99785 GET http://mirrors.nic.cz/archlinux/core/os/i686/libedit-20150325_3.1-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525365.652     21 10.11.1.253 TCP_MISS/304 283 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db - HIER_DIRECT/217.31.202.63 -
1445525365.690     37 10.11.1.253 TCP_MISS/304 283 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_DIRECT/217.31.202.63 -
1445525366.896     12 10.11.1.253 TCP_HIT/206 1264602 GET http://mirrors.nic.cz/archlinux/core/os/i686/linux-4.2.3-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525367.465    569 10.11.1.253 TCP_MISS/200 397730 GET http://mirrors.nic.cz/archlinux/core/os/i686/thin-provisioning-tools-0.5.3-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525369.258   1794 10.11.1.253 TCP_MISS/200 1031359 GET http://mirrors.nic.cz/archlinux/core/os/i686/lvm2-2.02.132-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525369.710    450 10.11.1.253 TCP_MISS/200 398334 GET http://mirrors.nic.cz/archlinux/core/os/i686/man-db-2.7.4-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525369.910    199 10.11.1.253 TCP_MISS/200 268090 GET http://mirrors.nic.cz/archlinux/core/os/i686/nfs-utils-1.3.3-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525369.941     30 10.11.1.253 TCP_MISS/200 4046 GET http://mirrors.nic.cz/archlinux/core/os/i686/pacman-mirrorlist-20151017-1-any.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525370.639    698 10.11.1.253 TCP_MISS/200 919358 GET http://mirrors.nic.cz/archlinux/core/os/i686/sqlite-3.9.1-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525370.660     20 10.11.1.253 TCP_MISS/200 6107 GET http://mirrors.nic.cz/archlinux/core/os/i686/systemd-sysvcompat-227-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525370.700     39 10.11.1.253 TCP_MISS_ABORTED/200 1555 GET http://mirrors.nic.cz/archlinux/extra/os/i686/avahi-0.6.32rc-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525390.502     29 10.11.1.254 TCP_SWAPFAIL_MISS/304 272 GET http://mirrors.nic.cz/archlinux/core/os/i686/core.db - HIER_DIRECT/217.31.202.63 -
1445525390.518     15 10.11.1.254 TCP_SWAPFAIL_MISS/304 273 GET http://mirrors.nic.cz/archlinux/extra/os/i686/extra.db - HIER_DIRECT/217.31.202.63 -
1445525390.535     16 10.11.1.254 TCP_SWAPFAIL_MISS/304 273 GET http://mirrors.nic.cz/archlinux/community/os/i686/community.db - HIER_DIRECT/217.31.202.63 -
1445525402.589   5352 10.11.1.254 TCP_MISS/206 3755123 GET http://mirrors.nic.cz/archlinux/core/os/i686/linux-4.2.3-1-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream
1445525402.604     13 10.11.1.254 TCP_HIT/200 397728 GET http://mirrors.nic.cz/archlinux/core/os/i686/thin-provisioning-tools-0.5.3-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525402.690     32 10.11.1.254 TCP_HIT/200 1031357 GET http://mirrors.nic.cz/archlinux/core/os/i686/lvm2-2.02.132-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525402.751      7 10.11.1.254 TCP_HIT/200 398332 GET http://mirrors.nic.cz/archlinux/core/os/i686/man-db-2.7.4-1-i686.pkg.tar.xz - HIER_NONE/- application/octet-stream
1445525403.166    415 10.11.1.254 TCP_MISS/200 408293 GET http://mirrors.nic.cz/archlinux/core/os/i686/nano-2.4.2-2-i686.pkg.tar.xz - HIER_DIRECT/217.31.202.63 application/octet-stream 

DNS záznamy

Na serverech net-01 a net-02 přidáme do místní DNS zóny záznam potřebné záznamy (příklad se vztahuje k serveru net-01, v případě přidání záznamu na server net-02 je nutné změnit název domény a serveru):

[root@net-01 ~]# nsupdate -k /etc/rndc.key
> update add wpad.praha.my-own-domain.net 86400 A 10.11.1.253
> update add wpad.tcp.praha.my-own-domain.net 86400 SRV 0 0 80 wpad.praha.my-own-domain.net
> update add proxy.praha.my-own-domain.net 86400 CNAME wpad.praha.my-own-domain.net
> update add wpad.dhcp.praha.my-own-domain.net 86400 A 10.11.1.253
> update add wpad.tcp.dhcp.praha.my-own-domain.net 86400 SRV 0 0 80 wpad.dhcp.praha.my-own-domain.net
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
wpad.praha.my-own-domain.net. 86400 IN  A       10.11.1.253
wpad.tcp.praha.my-own-domain.net. 86400 IN SRV  0 0 80 wpad.praha.my-own-domain.net.
proxy.praha.my-own-domain.net. 86400 IN CNAME   wpad.praha.my-own-domain.net.
wpad.dhcp.praha.my-own-domain.net. 86400 IN  A       10.11.1.253
wpad.tcp.dhcp.praha.my-own-domain.net. 86400 IN SRV  0 0 80 wpad.dhcp.praha.my-own-domain.net.

> send
> ^D

Zónu local.my-own-domain.net upravíme ručně, pro Prahu přidáme:

proxy           CNAME   net-srv
wpad            A       10.11.1.253
wpad.tcp        IN      SRV     0 0 80 wpad

Provedeme načtení změn v zónovém souboru:

[root@net-01 pri]# rndc reload local.my-own-domain.net
zone reload up-to-date

Test služby

Ověříme otevřené síťové porty pro službu:

[root@net-01 ~]# netstat -lutpn | grep squid
tcp6       0      0 :::3128                 :::*                    LISTEN      1325/(squid-1)
udp        0      0 0.0.0.0:48239           0.0.0.0:*                           1325/(squid-1)
udp6       0      0 :::56947                :::*                                1325/(squid-1)

Ověříme některé DNS záznamy:

[root@net-01 ~]# dig wpad.tcp.praha.my-own-domain.net SRV

; <<>> DiG 9.10.2-P2 <<>> wpad.tcp.praha.my-own-domain.net SRV
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26427
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;wpad.tcp.praha.my-own-domain.net. IN   SRV

;; ANSWER SECTION:
wpad.tcp.praha.my-own-domain.net. 86400 IN SRV  0 0 80 wpad.praha.my-own-domain.net.

;; AUTHORITY SECTION:
praha.my-own-domain.net. 86400  IN      NS      net-01.praha.my-own-domain.net.

;; ADDITIONAL SECTION:
wpad.praha.my-own-domain.net. 86400 IN  A       10.11.1.253
net-01.praha.my-own-domain.net. 86400 IN A      10.11.1.253

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jul 24 22:15:45 CEST 2015
;; MSG SIZE  rcvd: 162



[root@net-01 ~]# dig wpad.tcp.praha.my-own-domain.net

; <<>> DiG 9.10.2-P2 <<>> wpad.tcp.praha.my-own-domain.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22378
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;wpad.tcp.praha.my-own-domain.net. IN   A

;; AUTHORITY SECTION:
praha.my-own-domain.net. 86400  IN      SOA     net-01.praha.my-own-domain.net. root.my-own-domain.net. 2015022612 86400 7200 604800 86400

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jul 24 22:15:54 CEST 2015
;; MSG SIZE  rcvd: 109



[root@net-01 pri]# dig wpad.tcp.local.my-own-domain.net SRV

; <<>> DiG 9.10.2-P2 <<>> wpad.tcp.local.my-own-domain.net SRV
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38284
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;wpad.tcp.local.my-own-domain.net. IN   SRV

;; ANSWER SECTION:
wpad.tcp.local.my-own-domain.net. 86400 IN SRV  0 0 80 wpad.local.my-own-domain.net.

;; AUTHORITY SECTION:
local.my-own-domain.net. 86400  IN      NS      net-01.praha.my-own-domain.net.

;; ADDITIONAL SECTION:
wpad.local.my-own-domain.net. 86400 IN  A       10.11.1.253
net-01.praha.my-own-domain.net. 86400 IN A      10.11.1.253

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jul 24 22:20:38 CEST 2015
;; MSG SIZE  rcvd: 168

Z jiného serveru, např. gw-01, proxy vyzkoušíme:

[root@gw-01 ~]# http_proxy=http://proxy.local.my-own-domain.net:3128 pacman -Sy
:: Synchronizing package databases...
core             121.5 KiB   100K/s 00:01 [###########################################] 100%
extra            1745.9 KiB  242K/s 00:07 [###########################################] 100%
community        2.7 MiB     290K/s 00:10 [###########################################] 100%

Vše se zdá být v pořádku.

Nastavení klientů pro využití proxy serveru

SOHO - nastavení proxyNaše infrastruktura je připravena pro automatickou detekci nastavení proxy serveru klientskými zařízeními. Naše infrastruktura je připravena pro automatickou detekci nastavení proxy serveru klientskými zařízeními. Pokud máme s autokonfigurací problémy, můžeme v příslušném dialogu (nastavení proxy ve webovém prohlížeči) vyplnit název proxy serveru a port ručně (proxy.local.my-own-domain.net) nebo vložit URL adresu odkazující na skript http://proxy.local.my-own-domain.net/wpad.dat nebo http://proxy.local.my-own-domain.net/proxy.pac. Chceme-li použít proxy v linuxovém terminálu, vyexportujeme http_proxy=http://proxy.local.my-own-domain.net:3128. Některé operační systémy podporují nastavení proxy serveru pomocí DHCP.

Služba DHCP

Služba DHCP slouží k automatickému nastavení zařízení připojeného do počítačové sítě. Takovému zařízení může sdělit jeho IP adresu, směrování paketů, DNS servery, doménu, proxy server a mnoho dalšího.

Použité softwarové balíčky: dhcp

Nastavení služby DHCP

Konfigurační soubory jsou rozděleny pro IPv4 a IPv6. V našem případě se budeme zabývat opět pouze IPv4. Pro IPv4 je platným konfiguračním souborem /etc/dhcpd.conf. Původní obsah nahradíme novým:

authoritative;
server-name "net-01.praha.my-own-domain.net";
log-facility local7;
allow booting;
allow bootp;
ddns-update-style interim;
ddns-updates on;
deny duplicates;
deny client-updates;
one-lease-per-client on;
update-static-leases on;
update-conflict-detection on;
max-lease-time 604800;
default-lease-time 86400;
option subnet-mask 255.255.255.0;
option domain-name "praha.my-own-domain.net";
option domain-name-servers 10.11.1.253;
option ntp-servers 10.11.1.253;
option time-servers 10.11.1.253;
option log-servers 10.11.1.253;
ddns-domainname "dhcp.praha.my-own-domain.net";
option resolv-options code 224 = text;
option resolv-options "timeout:2 attempts:4";
option local-proxy-config code 252 = text;
option local-proxy-config "http://proxy.local.my-own-domain.net/proxy.pac";
supersede domain-search "praha.my-own-domain.net", "local.my-own-domain.net", "my-own-domain.net", "dhcp.praha.my-own-domain.net";
option resolv-domain code 15 = text;
option resolv-domain "dhcp.praha.my-own-domain.net";
option netbios-name-servers 10.11.1.253;
option netbios-node-type 8;

include "/etc/rndc.key";

# definici rozsahu pro pridelovani IP adres a technologie PXE
subnet 10.11.1.0 netmask 255.255.255.0 {
    option routers 10.11.1.254;
    option broadcast-address 10.11.1.255;
    next-server 10.11.1.253;
    filename "pxelinux.0";
    allow unknown-clients;
    pool {
        range 10.11.1.20 10.11.1.100;
    }
# DNS zony pro dynamicky update
    zone praha.my-own-domain.net. {
        primary 10.11.1.253;
        key rndc-key;
    }
    zone 1.11.10.in-addr.arpa. {
        primary 10.11.1.253;
        key rndc-key;
    }
    zone dhcp.praha.my-own-domain.net. {
        primary 10.11.1.253;
        key rndc-key;
    }
}

# pevne IP adresy pridelovany na zaklade MAC adresy sitoveho rozhrani
group intra {
    option domain-name "praha.my-own-domain.net";
    ddns-domainname "praha.my-own-domain.net";
    option resolv-domain "praha.my-own-domain.net";
    deny unknown-clients;

    # stolni PC
    host prg-p1 {
        ddns-hostname "prg-p1";
        hardware ethernet 44:eb:39:27:9a:b5;
        fixed-address 10.11.1.1;
    }
    # notebook
    host prg-n1 {
        ddns-hostname "prg-n1";
        hardware ethernet 44:eb:aa:27:9a:b0;
        fixed-address 10.11.1.2;
    }
    host iot-1 {
        ddns-hostname "iot-1";
        hardware ethernet 02:bf:97:ef:bb:03;
        fixed-address 10.11.1.3;
    }
    # domaci kino
    host sony-bd {
        ddns-hostname "sony-bd";
        hardware ethernet f2:bf:97:ef:bb:d5;
        fixed-address 10.11.1.4;
    }
    # smartphone
    host android-tel {
        ddns-hostname "android-tel";
        hardware ethernet 23:ab:26:a5:29:c9;
        fixed-address 10.11.1.5;
    }
}

Konfigurace je platná pouze pro lokalitu Praha. Pro lokalitu Bern musíme změnit IP adresy a názvy domén.
Kromě specifického nastavení proxy serveru, ntp a doménových jmen, je možné nalézt podporu zavádění operačních systémů technologií PXE (pouze pro systémy kompatibilní s i386+ a x86_64) a přípravu pro SMB (Samba).

Start a povolení služby

[root@net-01 etc]# systemctl start dhcpd4
[root@net-01 etc]# systemctl enable dhcpd4

Seznam přidělovaných IP adres obsahuje soubor /var/lib/dhcp/dhcpd.leases.

Ověření funkce:
Do sítě přidáme nové zařízení s povolenou automatickou konfigurací přes DHCP, a ověříme, zda se nám vše nastavilo správně, nebo na serveru gw-01 provedeme:

[root@gw-01 ~]# dhcpcd eno33554976:1
DUID 00:01:00:01:1d:45:89:f0:00:0c:29:0f:79:cd
eno33554976: IAID 29:0f:79:d7
eno33554976: soliciting an IPv6 router
eno33554976: soliciting a DHCP lease
eno33554976: offered 10.11.1.20 from 10.11.1.253
eno33554976: leased 10.11.1.20 for 86400 seconds
eno33554976: adding route to 10.11.1.0/24
eno33554976: adding default route via 10.11.1.254
forked to background, child pid 752

[root@gw-01 ~]# killall dhcpcd
[root@gw-01 ~]# ip addr flush dev eno33554976:1

Kontrola, zda služba naslouchá na portu 67/udp:

[root@net-01 etc]# netstat -lutpn | grep dhcpd
udp        0      0 0.0.0.0:33340           0.0.0.0:*                           1479/dhcpd
udp        0      0 0.0.0.0:67              0.0.0.0:*                           1479/dhcpd
udp6       0      0 :::2429                 :::*                                1479/dhcpd

Pokračování…

Dalšími zprovozněnými službami jsou NTP server, webový server, proxy server a DHCP server.

Příště nastavíme službu TFTP, která bude poskytovat obrazy operačních systémů pro zavádění pomocí PXE, a přidáme sdílení souborů přes NFS (pro UNIX) a SMB (pro Windows).

Související

Pokud bychom chtěli na serveru srv-01 vytvořit reverzní websockets proxy server pro MQTT, můžeme využít popisu v článku Nastavení Mosquitto MQTT brokera s reverzním proxy serverem NGINX.

 

2 komentáře u „Síťová infrastruktura pro domácí prostředí a malé firmy (SOHO) – síťové služby 2

  1. Pingback: Přístup k místním síťovým službám přes anonymní síť TOR | brichacek.net

  2. Pingback: Jak se loví letadla aneb Přijímáme ADS-B | brichacek.net

Leave a Reply