Ubuntu ruuter: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Kjogi (talk | contribs)
Kjogi (talk | contribs)
 
(37 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Sissejuhatus=
=Sissejuhatus=


Vahel võib tekkida vajadus jagada võrguühendust mitme masina vahel. Teenusepakkujad võimaldavad vahel võrguühenduse saamise ühele arvutile ühe ostetud ühenduse kohta. Selleks, et jagada antud ühendust mitme arvuti vahel on meil vaja ruuterit. Ruuterit võib osta poest valmis karbina või siis ise teha mõnest arvutist, millele saab lisada ka mõningaid muid teenuseid.
Vahel võib tekkida vajadus jagada võrguühendust mitme masina vahel. Teenusepakkujad võimaldavad vahel võrguühenduse saamise ühele arvutile ühe ostetud ühenduse kohta. Selleks, et jagada antud ühendust mitme arvuti vahel on meil vaja ruuterit. Ruuterit võib osta poest valmis karbina või siis ise teha mõnest arvutist, millele saab lisada ka mõningaid muid teenuseid. Ruuter on mõeldud väikefirmale, mis vajab oma DHCP ja DNS d
teenust ning DNS kirjete uuendamist.


=Eeldused=
=Eeldused=
Line 24: Line 25:


=Seadistamine=
=Seadistamine=
Muutuvad osad on <> märgendite vahel. Need osad tuleks asendada enda süsteemile vastavate väärtustega.


==Üldine seadistamine==
==Üldine seadistamine==
Line 33: Line 36:
Serveri nimeks paneme "ruuter". Muudetud faili sisu peaks nüüd olema
Serveri nimeks paneme "ruuter". Muudetud faili sisu peaks nüüd olema


<pre>ruuter</pre>
<pre><ruuter></pre>


Seadistame serverile ka domeeni ja täieliku domeeninime (FQDN - Fully Qualified Domain Name). Selleks muudame /etc/hosts faili
Seadistame serverile ka domeeni ja täieliku domeeninime (FQDN - Fully Qualified Domain Name). Selleks muudame /etc/hosts faili
Line 41: Line 44:
Domeeniks paneme "domeen.local" ja täielikuks domeeninimeks "ruuter.domeen.local". Failis peab muutma 127.0.1.1 aadressiga algavat rida järgmiseks
Domeeniks paneme "domeen.local" ja täielikuks domeeninimeks "ruuter.domeen.local". Failis peab muutma 127.0.1.1 aadressiga algavat rida järgmiseks


<pre>127.0.1.1    ruuter.domeen.local    ruuter</pre>
<pre>127.0.1.1    <ruuter.domeen.local>     <ruuter></pre>


Ja lisame uue rea
Ja lisame uue rea


<pre>192.168.0.1    ruuter.domeen.local    ruuter</pre>
<pre><192.168.0.1>     <ruuter.domeen.local>     <ruuter></pre>


==Võrgukaartide seadistamine==
==Võrgukaartide seadistamine==
Line 66: Line 69:
auto eth1
auto eth1
iface eth1 inet static
iface eth1 inet static
address 192.168.0.1
address <192.168.0.1>
netmask 255.255.255.0
netmask <255.255.255.0>
network 192.168.0.0
network <192.168.0.0>
broadcast 192.168.0.255
broadcast <192.168.0.255>
bridge-ports eth1</pre>
bridge-ports eth1</pre>


Line 76: Line 79:
<pre>/etc/init.d/networking restart</pre>
<pre>/etc/init.d/networking restart</pre>


Muudame serveri kuulama iseenda DNS serveri vastuseid. Selleks avame /etc/resolv.conf faili
==IP edastus ja maskeraad==
 
Loome IP edastuse ja maskeraadi jaoks skriptifaili
 
<pre>nano nat.sh</pre>
 
Skripti sisu peaks välja nägema selline
 
<source lang="bash">#!/bin/sh
echo -e "\n\nLoading simple rc.firewall-iptables version $FWVER..\n"
IPTABLES=/sbin/iptables
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe
 
EXTIF="eth0"
INTIF="eth1"
#INTIF2="eth0"
echo "  External Interface:  $EXTIF"
echo "  Internal Interface:  $INTIF"
 
#======================================================================
#== No editing beyond this line is required for initial MASQ testing ==
echo -en "  loading modules: "
echo "  - Verifying that all kernel modules are ok"
$DEPMOD -a
echo "----------------------------------------------------------------------"
echo -en "ip_tables, "
$MODPROBE ip_tables
echo -en "ip_conntrack, "
$MODPROBE ip_conntrack
echo -en "ip_conntrack_ftp, "
$MODPROBE ip_conntrack_ftp
echo -en "ip_conntrack_irc, "
$MODPROBE ip_conntrack_irc
echo -en "iptable_nat, "
$MODPROBE iptable_nat
echo -en "ip_nat_ftp, "
$MODPROBE ip_nat_ftp
echo "----------------------------------------------------------------------"
echo -e "  Done loading modules.\n"
echo "  Enabling forwarding.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "  Enabling DynamicAddr.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
echo "  Clearing any existing rules and setting default policy.."
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
echo "  FWD: Allow all connections OUT and only existing and related ones IN"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
$IPTABLES -A FORWARD -j LOG
echo "  Enabling SNAT (MASQUERADE) functionality on $EXTIF"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
echo -e "\nrc.firewall-iptables v$FWVER done.\n"</source>


<pre>nano /etc/resolv.conf</pre>
Muudame skriptifaili käivitatavaks


Faili sisu peaks olema selline
<pre>chmod a+x nat.sh</pre>


<pre>nameserver 127.0.0.1</pre>
Seadistame skripti masina alglaadimisel käivituma


NB! Kuna DNS server veel ei tööta, siis hetkel nimelahendus ka ei tööta.
<pre>cp nat.sh /etc/init.d/
ln -s /etc/init.d/nat.sh /etc/rc2.d/S95masquradescript</pre>


==Turvavõtme genereerimine==
==Turvavõtme genereerimine==
Line 92: Line 154:
Genereerime võtme
Genereerime võtme


<pre>dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 128 -n USER DHCP_UPDATER</pre>
<pre>dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 128 -n USER <DHCP_UPDATER></pre>


Salvestame võtme ajutisse faili, kust saame seda pärast kopeerida konfiguratsioonifailidesse
Salvestame võtme ajutisse faili, kust saame seda pärast kopeerida konfiguratsioonifailidesse
Line 123: Line 185:


         forwarders {  
         forwarders {  
                 194.126.97.30;
                 <194.126.97.30>;
                 194.204.0.1;
                 <194.204.0.1>;
         };
         };


Line 135: Line 197:
<pre>nano /etc/bind/named.conf.local</pre>
<pre>nano /etc/bind/named.conf.local</pre>


Lisame konfiguratsioonifaili salajase võtme ja selle seaded, tsoonid ning logimise. Muudetud konfiguratsioonifail peaks välja nägema järgmine
Lisame konfiguratsioonifaili salajase võtme ja selle seaded ning tsoonid. Muudetud konfiguratsioonifail peaks välja nägema järgmine


<pre>#The secret key used for DHCP updates.
<pre>key <DHCP_UPDATER> {
key DHCP_UPDATER {
         algorithm HMAC-MD5.SIG-ALG.REG.INT;
         algorithm HMAC-MD5.SIG-ALG.REG.INT;
         secret "aaaaaaaaaaaaa";
         secret "<aaaaaaaaa>";
};
};
 
zone "<domeen.local>" IN {
zone "domeen.local" IN {
         type master;
         type master;
         file "/etc/bind/zones/db.domeen.local";
         file "</var/lib/bind/db.domeen.local>";
         allow-update { key DHCP_UPDATER; };
         allow-update { key <DHCP_UPDATER>; };
};
};
 
zone "<0.168.192.in-addr.arpa>" IN {
zone "0.168.192.in-addr.arpa" IN {
         type master;
         type master;
         file "/etc/bind/db.0.168.192.in-addr.arpa";
         file "</var/lib/bind/db.0.168.192.in-addr.arpa>";
         allow-update { key DHCP_UPDATER; };
         allow-update { key <DHCP_UPDATER>; };
};
 
logging {
        channel query.log {
                file "/var/log/query.log";
                serverity debug 3;
        };
        category queries { query.log; };
};</pre>
};</pre>


Line 167: Line 218:
Loome tsoonifailidele kataloogi
Loome tsoonifailidele kataloogi


<pre>mkdir /etc/bind/zones</pre>
<pre>mkdir /var/lib/bind/</pre>


Eelnevalt loodud tsoonid viitavad failidele, mis neid tsoone kirjeldavad. Loome tsoonifaili domeenile "domeen.local"
Eelnevalt loodud tsoonid viitavad failidele, mis neid tsoone kirjeldavad. Loome tsoonifaili domeenile "domeen.local"


<pre>nano /etc/bind/zones/db.domeen.local</pre>
<pre>nano /var/lib/bind/<db.domeen.local></pre>


Tsoonifaili sisu peaks välja nägema järgmiselt
Tsoonifaili sisu peaks välja nägema järgmiselt


<pre>; Host-to-IP Address DNS Pointers for domeen.local
<pre>$ORIGIN .
; The following parameters set when DNS records will expire, etc.
$TTL  86400  ; 1 day
; Importantly, the serial number must always be iterated upward to prevent
<domeen.local. IN SOA ruuter.domeen.local. hostmaster.domeen.local.> (
; undesirable consequences. A good format to use is YYYYMMDDII where
                    <2010110901 ; serial>
; the II index is in case you make more that one change in the same day.
                    28800      ; refresh (8 hours)
domeen.local. IN SOA ruuter.domeen.local. (
                    14400      ; retry   (4 hours)
    2010110901 ; serial
                    2419200    ; expire (4 weeks)
    8H ; refresh
                    86400      ; minimum (1 day)
    4H ; retry
    4W ; expire
    1D ; minimum
)
)
; NS indicates that ruuter is the name server on domeen.local
              NS     <ruuter.domeen.local.>
domeen.local. IN NS ruuter.domeen.local.
              MX    10 <ruuter.domeen.local.>
; Set an alias (canonical name) for ruuter
$ORIGIN domeen.local.
bzr IN CNAME ruuter.domeen.local.
bzr          CNAME  <ruuter>
; Set the address for localhost.domeen.local
localhost     A     127.0.0.1
localhost   IN A 127.0.0.1
<ruuter       A     192.168.0.1></pre>
; Set the hostnames in alphabetical order
ruuter       IN A 192.168.0.1</pre>


Loome tsoonifaili pöördteisenduse tsoonile
Loome tsoonifaili pöördteisenduse tsoonile


<pre>nano /etc/bind/zones/db.0.168.192.in-addr.arpa</pre>
<pre>nano /var/lib/bind/<db.0.168.192.in-addr.arpa></pre>


Tsoonifaili sisu peaks välja nägema järgmiselt
Tsoonifaili sisu peaks välja nägema järgmiselt


<pre>; IP Address-to-Host DNS Pointers for the 192.168.0.0 subnet
<pre>$ORIGIN .
@ IN SOA ruuter.domeen.local. (
$TTL  86400  ; 1 day
    2010110902 ; serial
<0.168.192.in-addr.arpa IN SOA ruuter.domeen.local. hostmaster.domeen.local.> (
    8H ; refresh
                              <2010110901 ; serial>
    4H ; retry
                              28800      ; refresh (8 hours)
    4W ; expire
                              14400      ; retry   (4 hours)
    1D ; minimum
                              2419200    ; expire (4 weeks)
                              86400      ; minimum (1 day)
)
)
; define the authoritative name server
                      NS     <ruuter.domeen.local.>
          IN NS ruuter.domeen.local.
$ORIGIN <0.168.192.in-addr.arpa.>
; our hosts, in numeric order
1                     PTR   <ruuter.domeen.local.></pre>
1         IN PTR ruuter.domeen.local.</pre>
 
Muudame omanikku ja gruppi, et bind-il oleks õigused tsoonide konfiguratsioonifailidele
 
<pre>chown bind:bind /var/lib/bind/*</pre>
 
Muudame omanikku ja gruppi, et bind-il oleks õigused konfiguratsioonifailile
 
<pre>chown bind:bind /etc/bind/named.conf.local</pre>
 
Taaskäivitame DNS serveri, et muudatused rakenduksid
 
<pre>/etc/init.d/bind9 restart</pre>


==DHCP3-Server seadistamine==
==DHCP3-Server seadistamine==
Seadistame DHCP serveri. Selleks avame konfiguratsioonifaili
<pre>nano /etc/dhcp3/dhcpd.conf</pre>
DHCP konfiguratsioonifaili sisu peaks välja nägema järgmiselt
<pre>ddns-update-style interim;
ignore client-updates;
ddns-domainname "<domeen.local.>";
ddns-rev-domainname "<in-addr.arpa.>";
option domain-name "<domeen.local>";
option domain-name-servers <ruuter.domeen.local>;
default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;
key <DHCP_UPDATER> {
        algorithm HMAC-MD5.SIG-ALG.REG.INT;
        secret "<aaaaaaaaa>";
};
zone <domeen.local.> {
        primary <192.168.0.1>;
        key <DHCP_UPDATER>;
}
zone <0.168.192.in-addr.arpa.> {
        primary <192.168.0.1>;
        key <DHCP_UPDATER>;
}
subnet <192.168.0.0> netmask <255.255.255.0> {
  range <192.168.0.10 192.168.0.200>;
  option routers <ruuter.domeen.local>;
}</pre>
Muudame omanikku ja gruppi, et DHCP3-serveril oleks õigused konfiguratsioonifailile
<pre>chown dhcpd:dhcpd /etc/dhcp3/dhcpd.conf</pre>
Taaskäivitame DHCP serveri, et muudatused rakenduksid
<pre>/etc/init.d/dhcp3-server start</pre>
=Testimine=
Kui on olemas mõni Ubuntu kliendimasin, mis kasutab DHCP-d aadressi saamiseks tehtud ruuterilt sisevõrgus, siis võib uuesti küsida DHCP serverilt võrguseaded
<pre>/etc/init.d/networking restart</pre>
Nüüd peaks olema võimalik näha kliendiarvuti andmeid DNS serveris
<pre>host <ubuntu-klient></pre>
Samuti peaks nägema ka aadressi teisendust nimeks
<pre>host <192.168.0.10></pre>
=Varundamine=
Tekitame kataloogi varundatavate failide hoidmiseks
<pre>mkdir <backup></pre>
Varundame võrgukaartide seadistuse faili
<pre>cp /etc/network/interfaces <backup/interfaces></pre>
Varundame IP edastuse ja maskeraadi skriptifaili
<pre>cp /etc/init.d/nat.sh <backup/nat.sh></pre>
Varundame Bind9 konfiguratsioonifailid ja tsoonifailid
<pre>cp /etc/bind/named.conf.options <backup/named.conf.options>
cp /etc/bind/named.conf.local <backup/named.conf.local>
cp /var/lib/bind/* <backup/></pre>
Varundame DHCP3-serveri konfiguratsioonifaili
<pre>cp /etc/dhcp3/dhcpd.conf <backup/dhcpd.conf></pre>
=Taastamine=
Ruuteri taastamiseks tuleb installeerida teenused ja kopeerida varunduskataloogist failid nende algsetesse asukohtadesse.
NB! Konfiguratsioonifailide õigused tuleb ka seadistada!


=Kasutatud kirjandus=
=Kasutatud kirjandus=

Latest revision as of 22:58, 15 December 2010

Sissejuhatus

Vahel võib tekkida vajadus jagada võrguühendust mitme masina vahel. Teenusepakkujad võimaldavad vahel võrguühenduse saamise ühele arvutile ühe ostetud ühenduse kohta. Selleks, et jagada antud ühendust mitme arvuti vahel on meil vaja ruuterit. Ruuterit võib osta poest valmis karbina või siis ise teha mõnest arvutist, millele saab lisada ka mõningaid muid teenuseid. Ruuter on mõeldud väikefirmale, mis vajab oma DHCP ja DNS d teenust ning DNS kirjete uuendamist.

Eeldused

Antud lahendus on testitud Ubuntu 10.04 LTS koodnimega "Lucid Lynx" serveril.

Eeldab kasutaja varasemat kokkupuudet Unix/Linux/BSD käsustikuga ja arusaamist Unix-i laadsete operatsioonisüsteemide toimimisest. Samuti elementaarset arusaama arvutivõrkudest ja nende toimimise põhimõtetest.

Arvutil, millest hakatakse tegema ruuterit peaks olema 2 võrgukaarti (üks välise ühenduse jaoks ja teine sisese ühenduse jaoks) ja eelinstalleeritud operatsioonisüsteem.

Välise internetiühenduse puhul saadakse IP aadress teenusepakkujalt DHCP abil. Arvutil peaks olema olemas internetiühendus.

Installeerimine

Esmalt uuendame tarkvara nimekirjad

apt-get update

Installeerime nimeserveri, DHCP serveri, võrgusilla tööriistad, nimeserveri tööriistad

apt-get install bind9 dhcp3-server bridge-utils dnsutils

Seadistamine

Muutuvad osad on <> märgendite vahel. Need osad tuleks asendada enda süsteemile vastavate väärtustega.

Üldine seadistamine

Seadistame serverile nime. Selleks muudame esiteks /etc/hostname faili

nano /etc/hostname

Serveri nimeks paneme "ruuter". Muudetud faili sisu peaks nüüd olema

<ruuter>

Seadistame serverile ka domeeni ja täieliku domeeninime (FQDN - Fully Qualified Domain Name). Selleks muudame /etc/hosts faili

nano /etc/hosts

Domeeniks paneme "domeen.local" ja täielikuks domeeninimeks "ruuter.domeen.local". Failis peab muutma 127.0.1.1 aadressiga algavat rida järgmiseks

127.0.1.1     <ruuter.domeen.local>     <ruuter>

Ja lisame uue rea

<192.168.0.1>     <ruuter.domeen.local>     <ruuter>

Võrgukaartide seadistamine

Kuna ruuteril on 2 võrgukaarti, üks välisühenduse ja teine sisese ühenduse jaoks, siis on vaja seadistada ka võrguühendused. Selleks avame /etc/network/interfaces faili

nano /etc/network/interfaces

DHCP ja DNS serveri teenuste jaoks on vaja sisevõrku kuuluvale võrgukaardile staatilisi aadresse. Samuti seadistame silla. Muudetava faili sisu peaks nägema vastavalt ülesande püstitusele välja järgmine

# The loopback network interface
auto lo
interface lo inet loopback

# WAN network interface
auto eth0
iface eth0 inet dhcp

# LAN network interface
auto eth1
iface eth1 inet static
address <192.168.0.1>
netmask <255.255.255.0>
network <192.168.0.0>
broadcast <192.168.0.255>
bridge-ports eth1

Taaskäivitame võrguteenuse

/etc/init.d/networking restart

IP edastus ja maskeraad

Loome IP edastuse ja maskeraadi jaoks skriptifaili

nano nat.sh

Skripti sisu peaks välja nägema selline

#!/bin/sh
echo -e "\n\nLoading simple rc.firewall-iptables version $FWVER..\n"
IPTABLES=/sbin/iptables
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe

EXTIF="eth0"
INTIF="eth1"
#INTIF2="eth0"
echo "   External Interface:  $EXTIF"
echo "   Internal Interface:  $INTIF"

#======================================================================
#== No editing beyond this line is required for initial MASQ testing == 
echo -en "   loading modules: "
echo "  - Verifying that all kernel modules are ok"
$DEPMOD -a
echo "----------------------------------------------------------------------"
echo -en "ip_tables, "
$MODPROBE ip_tables
echo -en "ip_conntrack, " 
$MODPROBE ip_conntrack
echo -en "ip_conntrack_ftp, " 
$MODPROBE ip_conntrack_ftp
echo -en "ip_conntrack_irc, " 
$MODPROBE ip_conntrack_irc
echo -en "iptable_nat, "
$MODPROBE iptable_nat
echo -en "ip_nat_ftp, "
$MODPROBE ip_nat_ftp
echo "----------------------------------------------------------------------"
echo -e "   Done loading modules.\n"
echo "   Enabling forwarding.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "   Enabling DynamicAddr.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr 
echo "   Clearing any existing rules and setting default policy.."
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
echo "   FWD: Allow all connections OUT and only existing and related ones IN"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT 
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
$IPTABLES -A FORWARD -j LOG
echo "   Enabling SNAT (MASQUERADE) functionality on $EXTIF"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
echo -e "\nrc.firewall-iptables v$FWVER done.\n"

Muudame skriptifaili käivitatavaks

chmod a+x nat.sh

Seadistame skripti masina alglaadimisel käivituma

cp nat.sh /etc/init.d/
ln -s /etc/init.d/nat.sh /etc/rc2.d/S95masquradescript

Turvavõtme genereerimine

Kindlustamaks, et keegi peale DHCP serveri ei saaks DNS kirjeid uuendada peame looma salajase võtme, mida teavad nii DHCP server kui DNS server, mille abil tuvastatakse soovitud muudatuse lubatavus.

Genereerime võtme

dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 128 -n USER <DHCP_UPDATER>

Salvestame võtme ajutisse faili, kust saame seda pärast kopeerida konfiguratsioonifailidesse

cat Kdhcp_updater.*.private | grep Key > voti.txt

Eemaldame süsteemist genereeritud võtme

rm Kdhcp_updater.*

Bind9 seadistamine

Seadistame DNS serveri vahendama päringuid. Selleks avame /etc/bind/named.conf.options faili

nano /etc/bind/named.conf.options

Kommenteerime sisse forwarders sektsiooni ja kirjutame sinna ISP DNS serverite IP aadresid. Muudetud fail peaks välja nägema järgmine

options {
        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.

         forwarders { 
                <194.126.97.30>;
                <194.204.0.1>;
         };

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Muudame faili /etc/bind/named.conf.local

nano /etc/bind/named.conf.local

Lisame konfiguratsioonifaili salajase võtme ja selle seaded ning tsoonid. Muudetud konfiguratsioonifail peaks välja nägema järgmine

key <DHCP_UPDATER> {
        algorithm HMAC-MD5.SIG-ALG.REG.INT;
        secret "<aaaaaaaaa>";
};
zone "<domeen.local>" IN {
        type master;
        file "</var/lib/bind/db.domeen.local>";
        allow-update { key <DHCP_UPDATER>; };
};
zone "<0.168.192.in-addr.arpa>" IN {
        type master;
        file "</var/lib/bind/db.0.168.192.in-addr.arpa>";
        allow-update { key <DHCP_UPDATER>; };
};

Serveris peaks pöördteisenduse tsooni(0.168.192.in-addr.arpa) puhul nimi vastama valitud sisevõrgu aadressiruumi.

Loome tsoonifailidele kataloogi

mkdir /var/lib/bind/

Eelnevalt loodud tsoonid viitavad failidele, mis neid tsoone kirjeldavad. Loome tsoonifaili domeenile "domeen.local"

nano /var/lib/bind/<db.domeen.local>

Tsoonifaili sisu peaks välja nägema järgmiselt

$ORIGIN .
$TTL   86400   ; 1 day
<domeen.local. IN SOA ruuter.domeen.local. hostmaster.domeen.local.> (
                     <2010110901 ; serial>
                     28800      ; refresh (8 hours)
                     14400      ; retry   (4 hours)
                     2419200    ; expire  (4 weeks)
                     86400      ; minimum (1 day)
)
              NS     <ruuter.domeen.local.>
              MX     10 <ruuter.domeen.local.>
$ORIGIN domeen.local.
bzr           CNAME  <ruuter>
localhost     A      127.0.0.1
<ruuter        A      192.168.0.1>

Loome tsoonifaili pöördteisenduse tsoonile

nano /var/lib/bind/<db.0.168.192.in-addr.arpa>

Tsoonifaili sisu peaks välja nägema järgmiselt

$ORIGIN .
$TTL   86400   ; 1 day
<0.168.192.in-addr.arpa IN SOA ruuter.domeen.local. hostmaster.domeen.local.> (
                              <2010110901 ; serial>
                              28800      ; refresh (8 hours)
                              14400      ; retry   (4 hours)
                              2419200    ; expire  (4 weeks)
                              86400      ; minimum (1 day)
)
                       NS     <ruuter.domeen.local.>
$ORIGIN <0.168.192.in-addr.arpa.>
1                      PTR    <ruuter.domeen.local.>

Muudame omanikku ja gruppi, et bind-il oleks õigused tsoonide konfiguratsioonifailidele

chown bind:bind /var/lib/bind/*

Muudame omanikku ja gruppi, et bind-il oleks õigused konfiguratsioonifailile

chown bind:bind /etc/bind/named.conf.local

Taaskäivitame DNS serveri, et muudatused rakenduksid

/etc/init.d/bind9 restart

DHCP3-Server seadistamine

Seadistame DHCP serveri. Selleks avame konfiguratsioonifaili

nano /etc/dhcp3/dhcpd.conf

DHCP konfiguratsioonifaili sisu peaks välja nägema järgmiselt

ddns-update-style interim;
ignore client-updates;
ddns-domainname "<domeen.local.>";
ddns-rev-domainname "<in-addr.arpa.>";

option domain-name "<domeen.local>";
option domain-name-servers <ruuter.domeen.local>;

default-lease-time 600;
max-lease-time 7200;

authoritative;

log-facility local7;

key <DHCP_UPDATER> {
        algorithm HMAC-MD5.SIG-ALG.REG.INT;
        secret "<aaaaaaaaa>";
};

zone <domeen.local.> {
        primary <192.168.0.1>;
        key <DHCP_UPDATER>;
}

zone <0.168.192.in-addr.arpa.> {
        primary <192.168.0.1>;
        key <DHCP_UPDATER>;
}

subnet <192.168.0.0> netmask <255.255.255.0> {
  range <192.168.0.10 192.168.0.200>;
  option routers <ruuter.domeen.local>;
}

Muudame omanikku ja gruppi, et DHCP3-serveril oleks õigused konfiguratsioonifailile

chown dhcpd:dhcpd /etc/dhcp3/dhcpd.conf

Taaskäivitame DHCP serveri, et muudatused rakenduksid

/etc/init.d/dhcp3-server start

Testimine

Kui on olemas mõni Ubuntu kliendimasin, mis kasutab DHCP-d aadressi saamiseks tehtud ruuterilt sisevõrgus, siis võib uuesti küsida DHCP serverilt võrguseaded

/etc/init.d/networking restart

Nüüd peaks olema võimalik näha kliendiarvuti andmeid DNS serveris

host <ubuntu-klient>

Samuti peaks nägema ka aadressi teisendust nimeks

host <192.168.0.10>

Varundamine

Tekitame kataloogi varundatavate failide hoidmiseks

mkdir <backup>

Varundame võrgukaartide seadistuse faili

cp /etc/network/interfaces <backup/interfaces>

Varundame IP edastuse ja maskeraadi skriptifaili

cp /etc/init.d/nat.sh <backup/nat.sh>

Varundame Bind9 konfiguratsioonifailid ja tsoonifailid

cp /etc/bind/named.conf.options <backup/named.conf.options>
cp /etc/bind/named.conf.local <backup/named.conf.local>
cp /var/lib/bind/* <backup/>

Varundame DHCP3-serveri konfiguratsioonifaili

cp /etc/dhcp3/dhcpd.conf <backup/dhcpd.conf>

Taastamine

Ruuteri taastamiseks tuleb installeerida teenused ja kopeerida varunduskataloogist failid nende algsetesse asukohtadesse.

NB! Konfiguratsioonifailide õigused tuleb ka seadistada!

Kasutatud kirjandus

http://lani78.wordpress.com/2008/08/09/setting-up-a-dns-for-the-local-network/

http://lani78.wordpress.com/2008/08/10/setting-up-a-dhcp-server-on-ubuntu-hardy-heron/

http://lani78.wordpress.com/2008/08/12/dhcp-server-update-dns-records/

https://help.ubuntu.com/community/Router

https://wiki.itcollege.ee/index.php/Nimeserveri_seadistamine_BIND9_n%C3%A4itel

https://wiki.itcollege.ee/index.php/DHCP_teenus_Ubuntu_Server_s%C3%BCsteemis

Autor

Kalev Jõgi