Entwicklungsumgebung/DHCP: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
(..geht gleich weiter..)
(Nacharbeiten am DNS Server)
Zeile 67: Zeile 67:
=== Konfiguration des DHCP-Servers ===
=== Konfiguration des DHCP-Servers ===


Nun kann endlich die weitere Konfiguration des DHCP-Servers erfolgen.
Nun kann endlich die weitere Konfiguration des DHCP-Servers und des von ihm verwalteten DNS-Servers erfolgen.


Zuerst wird ein Key erzeugt, damit später auch die DNS-Anfragen für dynamisch erzeugte Hosts über DHCP und somit aus dem LDAP beantwortet werden können. Die dafür notwendige dDNS-Einrichtung (dynamisches DNS) wird im folgenden Kapitel (siehe [[Entwicklungsumgebung/DNS]]) beschrieben.


Den Key erstellen Sie jetzt mit dem Befehl:
==== Nacharbeiten am DNS Server ====


  /usr/sbin/dnssec-keygen -a HMAC-MD5 -n HOST -b 512  $DOMAIN
Zuerst wird ein Key erzeugt, damit später auch die DNS-Anfragen für dynamisch erzeugte Hosts über DHCP und somit aus dem LDAP beantwortet werden können. Die dafür notwendige DNS-Einrichtung (Domain Name System) muss bereits erfolgt sein (siehe [[Entwicklungsumgebung/DNS]]).


Um zu verhindern, dass nicht autorisierte Benutzer von Ihrem System aus den delixs-DNS-Server kontrollieren, wird das Zugriffsrecht durch einen gemeinsam verwendeten Schlüssel ausdrücklich auf bestimmte Hosts beschränkt.


..geht gleich weiter..
Diesen Schlüssel (Key) erstellen Sie jetzt mit dem Befehl:


  rndc-confgen -a
Sie finden nun den neu erzeugten Key in der Datei "/etc/bind/rndc.key". Die Datei sollte etwa so aussehen:
  key "rndc-key" {
        algorithm      hmac-md5;
        secret          "MNQ60MTqexpanaxpuDvCaGsgA==";
  };
Die Datei "/etc/bind/named.conf" enthält die globalen Einstellungen des DNS Servers. Dort wird der erzeugte Key bekannt gemacht, so dass der DNS Server künftig weiß, dass es sich um einen genehmigten Key handelt. Fügen Sie in die Datei folgenden Abschnitt ein:
  controls {
        inet 127.0.0.1 allow {localhost; } keys { "rndc-key"; };
  };
Auch die lokale Konfiguration kann jetzt erweitert werden. Die Datei "/etc/bind/named.conf.local" enthält die Definition der eigenen Zone-Dateien. Öffnen Sie diese Datei im Editor und fügen folgende Zeilen ein:
<pre>
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
zone "delixs-schule.de" {
        type master;
        file "/etc/bind/db.delixs-schule.de";
        allow-update { key "rndc-key"; };
        notify yes;
};
zone "0.100.10.in-addr.arpa." {
        type master;
        file "/etc/bind/db.10.100.0";
        allow-update { key "rndc-key"; };
        notify yes;
};
include "/etc/bind/rndc.key";
//include "/etc/bind/zones.rfc1918";
</pre>
==== DHCP Server vorbereiten ====


Als nächstes öffnen Sie die Datei <code>/etc/dhcp3/dhcpd.conf</code> und ändern diese in den folgenden Abschnitten:
Als nächstes öffnen Sie die Datei <code>/etc/dhcp3/dhcpd.conf</code> und ändern diese in den folgenden Abschnitten:

Version vom 10. Mai 2009, 07:52 Uhr

Uberarbeiten Diese Seite sollte nochmals überarbeitet werden. Eine Begründung befindet sich in der Regel unter Diskussion (oben).


DHCP-Server (dynamic host configuration protocol)

Installation des DHCP-Servers

Ein DHCP-Server versorgt die an Ihm angeschlossenen Clientrechner auf Wunsch mit IP-Adressen, Netzwerkeinstellungen und vielen weiteren Informationen.

Zuerst wird das Metapaket installiert:

 aptitude install dhcp3-server

Nun lesen Sie eine wichtige Meldung, die Umstellung auf "authoritative" wird aber erst im folgenden Abschnitt passieren.


DHCP Server
Abbildung: DHCP Server nicht autoritativ


In der weiteren Installation versucht der DHCP-Server einen Start, was aber auf Grund der fehlenden Konfiguration misslingen wird. Am Bildschirm erscheint die Meldung:

 Starting DHCP server: failed!


Den Anfang der Konfiguration macht die Datei "/etc/default/dhcp3-server". Dort tragen wir folgende Zeile ein:

 INTERFACES="eth1"

Ab sofort weiß der DHCP-Server, auf welcher Netzwerkkarte er überhaupt auf Anfragen reagieren soll. Er wird ab sofort nicht auf Anfragen auf der ersten Netzwerkkarte "eth0" (das ist die Internetverbindung, siehe Entwicklungsumgebung/Netzwerkkarte) reagieren.

Das war noch nicht die ganze Konfiguration. Aber auch ohne fertige Konfiguration des DHCP-Servers installieren wir weiter. Der nächste Teil der Installation stellt die LDAP-Unterstützung für DHCP bereit:

 aptitude install dhcp3-server-ldap

Dieser Installationsschritt sollte ohne Nachfragen in wenigen Sekunden fehlerlos durchlaufen.

Jetzt kann die zu Konfiguration notwendige Schema-Datei entpackt und eingebunden werden. Führen Sie dazu folgende drei Befehle aus:


 cd /usr/share/doc/dhcp3-server-ldap
 gunzip dhcp.schema.gz
 cp dhcp.schema /etc/ldap/schema/


Bearbeiten Sie die Datei /etc/ldap/slapd.conf im Abschnitt "Schema and objectClass" und fügen dort am Ende eine weitere Zeile "..dhcp.schema" ein:


 # Schema and objectClass definitions
 include   /etc/ldap/schema/corba.schema
 include   /etc/ldap/schema/core.schema
 include   /etc/ldap/schema/cosine.schema
 include   /etc/ldap/schema/nis.schema
 include   /etc/ldap/schema/inetorgperson.schema
 include   /etc/ldap/schema/openldap.schema
 include   /etc/ldap/schema/dhcp.schema


Abschließend starten Sie noch den LDAP-Server neu:

 /etc/init.d/slapd restart


Konfiguration des DHCP-Servers

Nun kann endlich die weitere Konfiguration des DHCP-Servers und des von ihm verwalteten DNS-Servers erfolgen.


Nacharbeiten am DNS Server

Zuerst wird ein Key erzeugt, damit später auch die DNS-Anfragen für dynamisch erzeugte Hosts über DHCP und somit aus dem LDAP beantwortet werden können. Die dafür notwendige DNS-Einrichtung (Domain Name System) muss bereits erfolgt sein (siehe Entwicklungsumgebung/DNS).

Um zu verhindern, dass nicht autorisierte Benutzer von Ihrem System aus den delixs-DNS-Server kontrollieren, wird das Zugriffsrecht durch einen gemeinsam verwendeten Schlüssel ausdrücklich auf bestimmte Hosts beschränkt.

Diesen Schlüssel (Key) erstellen Sie jetzt mit dem Befehl:

 rndc-confgen -a

Sie finden nun den neu erzeugten Key in der Datei "/etc/bind/rndc.key". Die Datei sollte etwa so aussehen:

 key "rndc-key" {
       algorithm       hmac-md5;
       secret          "MNQ60MTqexpanaxpuDvCaGsgA==";
 };

Die Datei "/etc/bind/named.conf" enthält die globalen Einstellungen des DNS Servers. Dort wird der erzeugte Key bekannt gemacht, so dass der DNS Server künftig weiß, dass es sich um einen genehmigten Key handelt. Fügen Sie in die Datei folgenden Abschnitt ein:

 controls {
       inet 127.0.0.1 allow {localhost; } keys { "rndc-key"; };
 };


Auch die lokale Konfiguration kann jetzt erweitert werden. Die Datei "/etc/bind/named.conf.local" enthält die Definition der eigenen Zone-Dateien. Öffnen Sie diese Datei im Editor und fügen folgende Zeilen ein:

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization

zone "delixs-schule.de" {
        type master;
        file "/etc/bind/db.delixs-schule.de";
        allow-update { key "rndc-key"; };
        notify yes;
};

zone "0.100.10.in-addr.arpa." {
        type master;
        file "/etc/bind/db.10.100.0";
        allow-update { key "rndc-key"; };
        notify yes;
};

include "/etc/bind/rndc.key";
//include "/etc/bind/zones.rfc1918";


DHCP Server vorbereiten

Als nächstes öffnen Sie die Datei /etc/dhcp3/dhcpd.conf und ändern diese in den folgenden Abschnitten:

  # The ddns-updates-style parameter
  # Der DHCPd soll ddns machen
  ddns-update-style   interim;

  # Die Clients sollen kein ddns selber machen
  deny client-updates;

  # option definitions common..
  option-domain-name "delixs-schule.de";
  option-domain-servers alix.delixs-schule.de;

  default-lease-time 3600;  # 1 Stunde
  max-lease-time 7200;      # 1 Tag
  get-lease-hostnames on;

  # If this DHCP server...
  authoritative;

  option broadcast-address  10.100.0.255;
  option domain-name    "delixs-schule.de";
  option domain-name-servers  10.100.0.1;
  option netbios-dd-server  10.100.0.1;
  option netbios-name-servers 10.100.0.1; # SAMBA
  option netbios-node-type  8;  # First use WINS, then broadcast
  option netbios-scope    "";
  option routers      10.100.0.1;
  option subnet-mask    255.255.255.0;
  option time-servers   10.100.0.1;
  option interface-mtu    1492;
  option ip-forwarding    off;
  
  # PXE
  allow booting;
  allow bootp;
  
  # WPAD - Web Proxy Autodiscovery Protocol
  option wpad     code 252 = text;
  option wpad     "http://wpad.delixs-schule.de/wpad.pac ";
  
  subnet 10.100.0.0 netmask 255.255.255.0 {
    range 10.100.0.40 10.100.0.250;
    filename "/pxelinux.0";
    next-server 10.100.0.1;
  
  }

Alle anderen Einstellungen bleiben so, wie sie sind. Jetzt wird diese Grundkonfiguration in den LDAP eingebaut. Dafür wird das Konvertierungsprogramm zuerst benötigt:

 cd /usr/share/doc/dhcp3-server-ldap
 gunzip dhcpd-conf-to-ldap.pl.gz


Dieses Programm wird nun ins Homeverzeichnis von "root" kopiert und ausführbar gemacht. Danach erfolgt die Konvertierung der bisherigen "dhcpd.conf" in eine ldif-Datei.

 cp dhcpd-conf-to-ldap.pl /root
 chmod +x /root/dhcpd-conf-to-ldap.pl
 /root/dhcpd-conf-to-ldap.pl --basedn "dc=delixs-schule,dc=de" < /etc/dhcp3/dhcpd.conf > /root/dhcpd.ldif


Weblinks



zurück | Hauptseite