Willkommen auf BAUMBART

ein experimenteller Debian-Server mit dynamischer DNS

Rettbergs Linuxseite

total! :-)´

hier ;-)

letzte Änderung: 03.02.2005

Valid XHTML 1.0!

Valid CSS!

  • 1
  • 2
  • 3

Installation eines Linux-Servers mit Debian-Sarge

Inhalt
  1. Netinstall
  2. base-config
  3. Update
  4. IP und Host
  5. NFS
  6. DHCP3
  7. BIND9
  8. Samba
  9. Apache2 und MySql
  10. FTP
  11. Webmin
  12. X
  13. CYGWIN
  14. XDMCP
  15. Anhang
  1. Netinstall
    Netinstalldistribution bei Debian.org besorgen, auf CD brennen und los gehts. Grundkonfiguration ist problemlos. Rechnernamen auswählen. Domäne wird vorgeschlagen, wenn es eine gibt. Mailkonfiguration auswählen nach Bedarf.
  2. base-config
    der Installer base-config installiert alle angekreuzten Systeme. Er deinstalliert auch alle nicht angekreuzten Systeme wieder..
    Hier ein Bild, dass die empfohlene Konfiguration zeigt.

    Desktop sollte nicht angewählt werden, da möglicherweise die Grafikkarte noch nicht bekannt ist (s. 11). SQL-Datenbank wählen wir nicht an, weil wir später MySql installieren. Hier würde postgesql installiert...
  3. Update
    Zunächst einmal alle Pakete auf den neuesten Stand bringen: -apt-get update -apt-get upgrade. Dann ggf. netatalk entfernen: -apt-get remove netatalk.
  4. IP und Host
    IP-Adresse ändern in /etc/interfaces:
    # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
    		# The loopback interface
    		auto lo
    		iface lo inet loopback
    		# The first network card - this entry was created during the Debian installation
    		auto eth0 
    		# alt
    		#iface eth0 inet dhcp
    		#neu
    		iface eth0 inet static
    			address 192.168.106.4
    			network 192.168.106.0
    			netmask 255.255.255.0
    			broadcast 192.168.106.255
    			gateway 192.168.106.1
    		#
    				  
    Anschließend -ifdown eth0 -ifup eth0 um die neuen Einstellungen wirksam werden zu lassen. In der Datei /etc/hosts den Eintrag
    127.0.0.1	localhost.localdomain	localhost	
    		192.168.106.4	galadriel.mittelerde	galadriel
    				  
    vornehmen.
  5. NFS
    Einen Mount-Punkt anlegen und NFS-Laufwerk mounten:
    # /etc/fstab: static file system information.
    		               
    		proc            /proc           proc    defaults        0       0
    		/dev/hda1       /               ext3    defaults,errors=remount-ro 0       1
    		/dev/hda9       /home           ext3    defaults        0       2
    		/dev/hda8       /tmp            ext3    defaults        0       2
    		/dev/hda5       /usr            ext3    defaults        0       2
    		/dev/hda6       /var            ext3    defaults        0       2
    		/dev/hda7       none            swap    sw              0       0
    		/dev/hdc        /media/cdrom0   iso9660 ro,user,noauto  0       0
    		/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
    		# NFS
    		192.168.106.2:/	/mnt/gondor	nfs	defaults	0	0
    		192.168.106.3:/	/mnt/elrond	nfs	defaults	0	0
    				  
    Das ist der Auszug aus meiner /etc/fstab. Mounten mit -mount -a .

    Eigene Verzeichnisse exportieren. Dazu die datei /etc/exports ändern:
    # /etc/exports: the access control list for filesystems which may be exported
    		#		to NFS clients.  See exports(5).
    		/ 192.168.106.2(rw,no_root_squash)
    		/ 192.168.106.3(rw,no_root_squash)
    				  
    Anschließend den NFS-Server neu starten mit -/etc/init.d/nfs-kernel-server restart .
  6. BIND9
    DNS-Server aufsetzen. Die Anleitung findet sich in ct 19/2003. /etc/bind/named.conf anpassen:
    //include "/etc/bind/named.conf.options"
    		options {
    				directory "/var/cache/bind";
    				forwarders {
    				212.6.64.161; 212.6.64.162;
    				};
    			forward only;
    			listen-on {192.168.106.4;};
    			heartbeat-interval 2880;
    		};
    		{
    			category lame-servers { null; };
    			category cname { null; };
    		};
    		
    		zone "." {
    				type hint;
    				file "/etc/bind/db.root";
    		};
    		
    		zone "localhost" {
    				type master;
    				file "/etc/bind/db.local";
    		};
    		zone "127.in-addr.arpa" {
    				type master;
    				file "/etc/bind/db.127";
    		};
    		zone "0.in-addr.arpa" {
    				type master;
    				file "/etc/bind/db.0";
    		};
    		zone "255.in-addr.arpa" {
    				type master;
    				file "/etc/bind/db.255";
    		};
    		// hier kommen die eigenen EInträge
    		acl "dhcp-clients" {
    			192.168.106/24;
    		};
    		zone "mittelerde" {
    			type master;
    			file "/etc/bind/db.mittelerde";
    			allow-update{"dhcp-clients";};
    		};
    		zone "106.168.192.in-addr.arpa" IN {
    			type master ;
    			file "/etc/bind/db.192.168.106";
    			allow-update{"dhcp-clients";};
    		};
    		include "/etc/bind/named.conf.local";
    					  
    Den DNS-Server neu starten: -/etc.init.d/bind9 restart . Ggf. die Datei resolv.conf noch ändern:
    #/etc/resolv.conf
    		search mittelerde
    		nameserver 192.168.106.4
    					  
  7. DHCP3
    DHCP-Server gemäß der Vorschläge aus ct 19/2003 konfigurieren in /etc/dhcp3/ dhcp.conf:
    option domain-name "mittelerde";
    		option domain-name-servers 192.168.106.4;
    		ddns-update-style interim;
    		ignore-client-updates;
    		default-lease-time 600000;
    		max-lease-time 7200000;
    		authoritative;
    		subnet 192.168.106.0 netmask 255.255.255.0 {
    		  range 192.168.106.100 192.168.106.199;
    		  option subnet-mask 255.255.255.0;
    		  option netbios-name-servers 192.168.106.3;
    		  option broadcast-address 192.168.106.255;
    		  option routers 192.168.106.1;
    		}
    					
    Danach den DHCP-Server neu starten mit -/etc/init.d/dhcp3-server restart. Achtung: es sollte nur ein DHCP-Server im Subnetz laufen..
  8. Samba
    Für Samba werden zunächst die Freigabeordner erzeugt und mit entsprechenden Attributen versehen. dann kann die Datei /etc/samba/smb.conf bearbeitet werden:
    # Samba config file created using SWAT
    		# from 192.168.106.173 (192.168.106.173)
    		# Date: 2004/11/21 15:08:05
    		# Global parameters
    		[global]
    			workgroup = MITTELERDE
    			wins support = yes
    			server string = %h server (Samba %v)
    			obey pam restrictions = Yes
    			passdb backend = tdbsam, guest
    			passwd program = /usr/bin/passwd %u
    			passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n .
    			syslog = 0
    			log file = /var/log/samba/log.%m
    			max log size = 1000
    			dns proxy = No
    			panic action = /usr/share/samba/panic-action %d
    			unix password sync = yes
    			invalid users = root
    			admin users = rettberg
    		
    		[homes]
    			comment = Home Directories
    			create mask = 0700
    			directory mask = 0700
    			browseable = No
    			writable = yes
    		
    		[printers]
    			comment = All Printers
    			path = /tmp
    			create mask = 0700
    			printable = Yes
    			browseable = No
    		
    		[print$]
    			comment = Printer Drivers
    			path = /var/lib/samba/printers
    		
    		[public]
    			path = /home/freigaben/public
    			read only = No
    			guest ok = Yes
    		
    		[www]
    			path = /var/www
    			read only = No
    			guest ok = Yes
    		
    		[informatik]
    			path = /home/freigaben/informatik
    			read only = No
    			guest ok = Yes
    		
    				
    Es wird ein einfacher Server aufgebaut. Die Benutzer müssen sich anmelden. Die Freigaben sind öffentlich. Zur Verwaltung der /etc/samba/samba/smb.conf eignet sich swat. Das ist das Web-Frontend für Samba. Damit kann man auch den smbd neu starten um die Konfiguration einzulesen. Der Aufruf erfolgt mit http://<mein server>:901 denn swat lauscht auf Port 901. Vorher muss noch in der /etc/inetd.conf das Kommentar zeichen vor der Zeile mit dem swat-Aufruf entfernt werden. Dann den inetd mit -/etc/init.d/inetd restart neu starten und swat sollte laufen. Unter status kann man dann die Server neu starten, um die Konfiguration zu aktualisieren.
    Vorsicht: wenn man mit swat die Konfiguration ändert, wird die alte überschrieben..
    Bevor man auf die Freigaben zugreifen kann, müssen noch Benutzer angelegt werden und deren Passwörter auch in die samba-Datenbank eingetragen werden. Das kann man aber auch bequem mit swat erledigen.
  9. Apache2 und MySql
    Zunächst sollten noch einige Dinge nachinstalliert werden: -apt-get install phpsysinfo mysql-server mysql-admin phpmyadmin .
    Nachdem alles ausgepackt wurde, geht man daran, zunächst die Apache2-Konfiguration zu bearbeiten. Unter /etc/apache2/sites-available/default stehen die Angaben für den Server. Dort sollte man die Zeile
    RedirectMatch ^/$ /apache2-default/
    aus kommentieren, denn diese leitet den Server auf das Unterverzeichnis apache2-default in /var/www um. Ich ändere dann auch /etc/apache2/sites-available/php4.conf:
    
    		  AddType application/x-httpd-php .php .phtml .php3 .html .htm
    		  AddType application/x-httpd-php-source .phps
    		
    				
    Fett unterlegt sind die Änderungen. Anschließend kann man eine index.html in /var/www ablegen und testen. Dazu muss der Apache-Server mit /etc/init.d/apache2 restart neu gestartet werden. Mit http://<servername/phpsysadmin im Browser kann man testen, ob php4 läuft und auch, wie das System so aussieht. Mit http://<servername>/phpmyadmin können wir gleich testen, ob auch der MySql-Server läuft. Dazu als root ohne Passwort anmelden. Ist alles ok, können wir auch gleich das Passwort ändern.
  10. FTP
    Mit -apt-get install proftpd den FTP-Server installieren. Die Konfigurationsdatei ist /etc/proftpd.conf. Änderungen sind nicht notwendig
  11. Webmin
    Mit webmin kann man den Server bequem über ein Web-Frontend warten. Webmin ist sehr mächtig.
    Zunächst webmin mit -apt-get install webmin installieren. Die Version 1.17x ist aktuell. In der Datei /etc/webmin/miniserv.conf muss dann der Eintrag allow=127.0.0.0 in allow=192.168.106. geändert werden.
    Sollte webmin keine Servermodule anzeigen (webmin 1.16x), dann muss das Paket von Hand installiert werden: Bei webmin.com herunterladen, in /usr/src/webmin1.17x entpacken. in das Verzeichnis wechseln und -./setup.sh aufrufen. Sollte es Probleme mit dem ssh-Zertifikat geben, dann hilft das Umbenennen von /etc/webmin/miniserv.pem in /etc/webmin/miniserv.pem.alt und Aufruf von -dpkg-reconfigure webmin . Webmin wird dann mit -/etc/init.d/webmin restart neu gestartet.
    Im Browser können wir jetzt webmin mit https://<servername>:10000 starten.
  12. X
    Die Installation sollte erst begonnen werden, wenn die Hardware der Grafikkarte bekannt ist. Daher wurde base-config (vgl. 2) zunächst ohne die Option desktop gestartet. Jetzt müssen wir herausfinden, welche Grafikkarte installiert ist und sollten auch den endgültigen Monitor anschließen.Zunächst sollte mit -lspci die genaue Grafikkarte ermittelt werden. Danach -base-config starten und das Feld desktop ankreuzen. Damit wird das komplette X-Sytem samt aller Window-Manager installiert.
  13. CYGWIN - L inux unter Windows einschließlich XFREE86!
    Cygwin ist eine Linux-Umgebung mit grafischem Desktop auf einem Windows-Rechner. Die Installation ist unproblematisch.
    Um eine Verbindung zu einem externen Rechner herzustellen, gibt es zwei interessante Möglichkeiten:
    Mit ssh eine Anwendung starten
    Arbeitsschritte: Cygwin starten (startxwin.bat in C:\cygwin\usr\X11R6\bin)
    xhost + <Remotehost> (entweder als URL oder als IP)
    ssh -X -l <Benutzername auf dem remote-host> <Remotehost> (entweder als URL oder als IP)
    export DISPLAY=<URL oder IP des lokalen Rechners>:0.0
    Start der X-Anwendung, z.B. xeyes & (das & sollte nicht vergessen werden :)
    x-ssh
    Das Bild zeigt die Schritte und das Ergebnis.
  14. XDMCP
    Mit XDMCP-Verbindung direkt auf den Remote-Desktop zugreifen
    Dazu sollte zunächst in /etc/kde3/kdm/kdmrc oder /etc/X11/gdm/gdm.conf der Eintrag
    [Xdmcp]
    Enable=false
    auf:
    [Xdmcp]
    Enable=true
    geändert werden. Anschließend den Fenstermanager z.B mit top beenden. Er startet sich selbst neu und liest dabei die geänderte Einstellung ein.
    Danach kann die Sitzung gestartet werden. Dazu ist folgende batch-Datei sinnvoll:
    SET CYGWIN_ROOT=\cygwin
    SET PATH=.;%CYGWIN_ROOT%\bin;%CYGWIN_ROOT%\usr\X11R6\bin;%PATH%
    C:\cygwin\usr\X11R6\bin\XWin.exe -screen 0 1200x800 -from Aragorn -query elrond
    dabei ist Aragorn der lokale Rechner und Elrond der Remotehost. Diese Namen müssen alse entsprechend angepasst werden.
    Das Ergebnis sieht dann so aus:
  15. xdmcp

  16. Anhang
 
/-)'