Diese Beschreibung entstand als Dokumentation der Installation eines Dienste-Servers. Als Grundlage wurde Linux Debian 6.0 Squeeze amd64 verwendet. !! Alle Ausführungen könnten Fehler enthalten -- also immer mitdenken !! !! Diese Beschreibung ist kein Kochbuch !! Inhalt 1. Server-Betriebssystem Linux Squeeze installieren 2. Fernzugriff mit SSH 3.1. Webserver Apache2 3.2. SSL-Unterstützung für WebDav 3.3. WebDAV 4 . Datenbank Mysql 5. Fax-Server Hylafax 6. Mail-Server Exim4, Fetchmail, mailx, mutt 7. FTP-Server ProFTP+TLS 8. Groupware Horde-Webmail 9. Time-Server 10. Backup mit Rsnapshot 11. Fileserver Samba 12. Groupware Tine 20
1. Server-Betriebssystem Linux Squeeze installieren >> nach oben >>
Die Installation des Betriebssystems mit der bewährten Textmethode -- also -“Install“ <Enter> und losgehts. -“Language“ "German" <Enter> "Deutschland" <Enter> "Deutsch" <Enter> Es erfolgt die Hardwareerkennung, die mittlerweile sehr zuverlässig erfolgt.
Danach wird die Netzwerkeinrichtung per DHCP angeboten, die sollte bei vorhandenem DHCP-Server (häufig der Internetrouter) erfolgreich sein. Hier wähle ich -“zurück“ <Enter> -“Netzwerk manuell einrichten“ <Enter> -"IP-Adresse:" 192.168.3.10 <Enter> -"Netzmaske:" 255.255.255.0 <Enter> -"Gateway:" 192.168.3.1<Enter> !! Achtung !! da sich der Dienste-Server im orangen Netz (DMZ) befindet, kann der Router (IPCOP) nicht als DNS-Server verwendet werden. Dieser Dienst steht in der DMZ nicht zur Verfügung. Es muss ein Server aus dem Internet angegeben werden. Seid vielen Jahren benutze ich hier einen Server von Arcor (Vodafone). Es sind damit die Dienste aus dem Internet (Mail,FTP usw.) und auch der Updateservice für das Debian-Betriebssystem erreichbar. -"Adresse des DNS-Servers" 145.253.2.11 <Enter> -"Rechnername:" dienste <Enter> -"Domain-Name:" netz <Enter> -"Root-Passwort:" *********** <Enter> - das Passwort noch mal <Enter> -" ..neuer Benutzer" benutzer <Enter> -"Benutzername für Konto:" <Enter> -".. Passwort.." *********** <Enter> - das Passwort noch mal <Enter>
-"Partitionierungsmethode" "Manuell" <Enter> - die zu partitionierende Festplatte auswählen und <Enter> -"Neue, leere Part.tabelle .. erstellen?" "ja" <Enter> - den neu angezeigten "FREIER SPEICHER" auswählen <Enter>
Nun wird die Partitionirung der Festplatten angeboten (320 GByte) Hier Wähle ich “Manuell” Die Root-Partition erstellen - mindestens 4GByte - hier 10GByte 1. Partition -"Eine neue Partition erstellen" <Enter> -"Neue Größe der Partition:" 10,0 GB <Enter> -"Primär" <Enter> -"Anfang" <Enter> -"Boot-Flag ...." ein <Enter> -"Anlegen der Partition beenden" <Enter>
Die Home-Part. erstellen - den Rest der Festplatte minus 2 Gbyte für SWAP-Part -"FREIER SPEICHER" auswählen <Enter> -"Eine neue Partition erstellen" <Enter> -"Neue Größe der Partition:" 308,0 GB <Enter> -"Primär" <Enter> -"Anfang" <Enter> Da der "Einbindungspunkt:" /home schon ausgewählt ist -"Anlegen der Partition beenden" <Enter>
Die SWAP-Partition erstellen - mit dem Rest der Platte -"FREIER SPEICHER" auswählen <Enter> -"Eine neue Partition erstellen" <Enter> -"Neue Größe der Partition:" 3,0 GB <Enter> -"Primär" <Enter> zur Formatierung als Swap-Partition auswählen -"Benutzen als:" <Enter> -"Auslagerungsspeicher (Swap)" auswählen <Enter> -"Anlegen der Partition beenden" <Enter>
Jetzt alles noch mal betrachten und mit -"Partitionierung beenden und Änderungen übernehmen" <Enter> alles ausführen.-- danach sind alle alten Daten weg -"Änderungen auf die Festplatte schreiben?" JA <Enter>
Es erfolgt die Formatierung der Festplatte und die Installation des Grundsystems -"Weitere Installations-CD...." Nein <Enter> -"Einen Netzwerkspiegel verwenden?" JA <Enter> -"Spiegelserver:" Deutschland <Enter> -"ftp.de.debian.org" <Enter> -"HTTP-Proxy-Daten" leer <Enter> oder Proxy-Server:Port angeben -"An der Paketverw.erfassung Teilnehmen?" JA <Enter> hilft der Weiterentwicklung -"Welche Software soll installiert werden?" [ ] Grafische Desktop-Umgebung [ x ] Web-Server [ ] Druck-Server [ ] DNS-Servers [ x ] Datei-Server [ x ] Mail-Server [ ] SQL-Datenbank [ x ] SSH-Server [ ] Laptop [ x ] Standard-Sysemwekzeuge <Enter> Die Installation diverser Software erfolgt
-"Arbeitsgruppenname..:" netz <Enter> für Samba -" Den GRUB-Bootloader in den Master Boot Record installieren?" JA <Enter> -"Ist die Systemzeit auf UTC gesetzt?" JA <Enter>
Die Installation wird mit einem Neustart beendet.
Jetzt mit Benutzer: root und Password: ************** anmelden -- und ab geht es. ______________________________________________________________>> nach oben >> Mit dem Befehl ifconfig kann jetzt die Netzwerkadresse angezeigt werden. Es sollte etwa das Folgende angezeigt werden. eth0 Link encap:Ethernet Hardware Adresse 38:60:77:d4:f5:30 inet Adresse:192.168.3.10 Bcast:192.168.3.255 Maske:255.255.255.0
Mit dem Befehl ping www.heise.de kann der Internetzugang getestet werden es sollte die IP-Adresse (193.99.144.85) von www.heise.de gezeigt werden.
Da der WebDav-Zugang über SSl (https) erfolgen soll macht es Sinn, eine virtuelle IP-Adresse auf der Netzkarte (eth0) einzurichten. Die Einrichtung erfolgt in der Datei /etc/network/interfaces. Es wird am Ende der Datei auto eth0:1 iface eth0:1 inet static address 192.168.3.11 netmask 255.255.255.0 network 192.168.3.0 angehangen und das System neu gestartet. Mit dem Befehl ifconfig kann der Erfolg angezeigt werden -- es wird eth0:1 .... wie oben angezeigt. Um die beiden Adressen auch namensmäßig zu unterscheiden, noch die datei /etc/hosts anpassen: 127.0.0.1 localhost 192.168.3.10 dienste.netz dienste 192.168.3.11 webdav.netz webdav .........
------------------------------------------------------------------------------------------------------------------------->> nach oben >>
Nun die /etc/apt/sources.list editiren und das CD-Rom als Quelle mit "#" auskommentieren nano /etc/apt/sources.list mit Strg-x > j > Enter beenden
Mit apt-get update wird die Paketliste aktualisiert
Da ich mich an das Paketverwaltungsprogramm "dselect" gewöhnt habe installiere ich mit apt-get install dselect dieses Programm.
Mit "dselect" kann man, wie auch mit "aptitude" usw., Pakete installieren. Es erscheint mir aber einfacher das mit “dselect” zu tun, weil dort auch alle nicht zwingenden (Optionen) Abhängigkeiten zur Auswahl angeboten werden und man sieht gerade als Einsteiger die große Anzahl an Paketen die installiert werden könnten. Das mag verwirren, mir hat es jedoch in der Rückschau beim Einstieg in Linux sehr geholfen. Als 1. Paket installiere ich mit “dselect”. den Midnight Commander (mc) und kann bei der Anzeige der Optionen (Abhängigkeiten) die zusätzlich gewünschten Pakete dazu wählen.
Jetzt ist die Grundinstallation abgeschlossen und das System arbeitsfähig.
______________________________________________________________>> nach oben >> 2. Fernzugriff mit SSH
Für den Fernzugriff auf den Server ist “ssh” die Lösung, die durch Verschlüsselung relativ sicher ist. Man kann hier den einfachen Zugang mit Benutzername und Passwort verwenden, der die Grundeinstellung ist.
Falls nicht in der Grundinstallation schon erfolgt, muss mit apt-get install openssh-server apt-get install openssh-client nachinstalliert werden.
In einer nicht so sicheren Umgebung sollte man zumindest den root-Zugang abschalten. Man muss sich dann mit einem Benutzer anmelden und in der Folge über "su -" und dem root-Passwort sich als "root" anmelden. In einer unsicheren Umgebung, z.B. in einer DMZ (demilitarisierten Zone) die für das Internet Dienste bereitstellt, ist es immer sinnvoll mit PublicKeyAutentication zu arbeiten. Alle Einstellungen erfolgen in der Datei "/etc/ssh/sshd_config". Die wichtigsten Einstellungen sind:
- Anmelden mit Benutzername/Passwort die Anmeldung ist auskommentiert "yes" ist default zum Abschalten Kommentar entfernen und auf "no" stellen #PasswordAuthentication yes
- "root"-Anmeldung erlauben PermitRootLogin yes default zum Verbieten des "root"-Login PermitRootLogin no
Deutlich sicherer als die Benutzung von Benutzername / Passwort ist die Anmeldung mit öffentlichem / privatem Schlüssel (Public-Key-Verfahren). Dazu wird ein Schlüsselpaar (z.B. 2048 Bit lang) erstellt und der öffentliche (public) Schlüssel auf dem Server abgelegt. Der private (private) Key wird zum Client verschoben und dort mit einer Passphrase für den Zugang verwendet.
- Anmeldung mit Schlüsseln erlauben (Kommentierung entfernen) PubkeyAuthentication yes
- Ort des öffentlichen Schüssels in der Datei "authorized_keys" (Kommentierung entfernen) AuthorizedKeysFile %h/.ssh/authorized_keys
Für die Anmeldung mit öffentlichem (public) und privatem (private) Key muss das Schlüsselpaar erzeugt und im Userverzeichnis "%h/.ssh/ abgelegt werden. Man meldet sich als entsprechender Benutzer an und sollte in seinem Homeverzeichnis landen. Dort wird mit mkdir ./.ssh !! <Punkt>/<Punkt>ssh ein verstecktes (Punkt) Verzeichnis für die Schlüssel erstellt. Danach wird das RSA Schlüsselpaar mit ssh-keygen -t rsa -b 2048 erstellt und wie im Dialog angeboten im Verzeichnis "/.ssh" abgelegt. Mit cd ./.ssh in das Verzeichnis ./.ssh wechseln und den öffenlichen Schlüssel “id_rsa.pub” mit cat ./id_rsa.pub >> ./authorized_keys auf dem Schlüsselbund “authorized_keys” abgelegt. Die einzugebende Passphrase sollte den Sicherheitsanforderungen entsprechend ( >20 Zeichen mit Buchstaben, Zahlen und Sonderzeichen) gewählt werden. Es wird ein Fingerprint erzeugt z.B. 0b:2c:58:4f:9c:eb:73:0e:0a:31:3c:e7:4f:60:98:d4 den man sich notieren kann und der beim 1. Anmelden auf dem Client zur Sicherheit als Warnung angezeigt wird.
Zur Beschreibung des Zugriffs von Windows, dem Link folgen >>> Win SSH Cl. >>>> ______________________________________________________________>> nach oben >> 3.1. Webserver Apache2
Mit dem Befehl apt-get install apache2 wird der Webserver mit seinen Grundkomponenten installiert. Es kann nun mit dem Aufruf http://192.168.3.10 über einem Browser der Webserver getestet werden. es müßte der Text “It works! ....” erscheinen.
Um später auf den WebDav-Diesnt zugreifen zu können, ist notwendig auch einen SSL-Zugang (https) einzurichten. Dieser Zugang wird auf die eth0:1 (192.168.3.11) gelegt. Der normale Zugang (http) erfolgt über die eth0 (192.168.3.10). Um WebDav und SSL zu aktivieren müssen die Module aktiviert werden. Es werden damit Links in dem Verzeichnis /etc/apache2/mods-enabled auf die mod’s im Verzeichnis /etc/apache2/mods-available angelegt. a2enmod ssl a2enmod dav a2enmod dav_fs a2enmod dav_lock Jetzt die Datei /etc/apache2/ports.conf anpassen, mit dem Inhalt: ------------------------------------------------- NameVirtualHost 192.168.3.10:80 Listen 80
NameVirtualHost 192.168.3.11:443
<IfModule mod_ssl.c> Listen 443 </IfModule>
<IfModule mod_gnutls.c> Listen 443 </IfModule> ---------------------------------------------------- Nun mit touch /etc/apache2/sites-available/ssl eine neue Datei erstellen und mit folgendem Inhalt füllen ----------------------------------------------------- <VirtualHost 192.168.3.11:443> SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem DocumentRoot /home/webdav
Alias /webdav "/home/webdav" <Directory "/home/webdav"> DAV on Options +Indexes AuthType Basic AuthName DAV AuthUserFile /etc/apache2/davpasswords Require valid-user </Directory>
</VirtualHost> -------------------------------------------------------- jetzt aktivieren der SSL-Konfiguration mit a2ensite ssl
3.2. SSL-Unterstützung für WebDav
Da über die WebDav-Funktion Daten gelesen und abgelegt werden, die einer gewissen Vertraulichkeit unterliegen, ist eine Verschlüsselung und eine Paßwortabsicherung notwendig. Zunächst braucht man ein Zertifikat. Das kann man für mehr Sicherhei für viel Geld bei diversen Zertifizierungsstellen erhalten. Im vorliegenden Fall erstellenwir es selbst. Das führt beim ersten Einsatz zwar zu einer Warnung, genügt aber dem voliegenden Zweck. Zunächst wird das Verzeichnis für das Zertifikat erstellt: mkdir /etc/apache2/ssl In diesem Verzeichnis wird mit (alles eine Zeile) openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem das Zertifikat erstellt. Die Angabe von -days ergibt die Gültigkeit ab Erstellungsdatum an. Dabei sollten die gestellten Fragen mit sinnvollen Antworten belegt werden. Jetzt müssen Links in verschiedene Verzeichnisse gelegt werden (alles eine Zeile) ln -sf /etc/apache2/ssl/apache.pem /etc/apache2/ssl/`/usr/bin/openssl x509 -noout -hash < /etc/apache2/ssl/apache.pem`.0 und dann die Rechte auf das Zertifikat eingeschränkt werden: chmod 600 /etc/apache2/ssl/apache.pem
3.3. WebDAV
Mit WebDav kann man ein Verzeichnis einrichten auf dem man Dateien ablegen oder lesen kann. Der Zugriff kann mit Benutzername und Passwort abgesichert werden, allerdings ist die Verbindung nicht verschlüsselt.
Anlegen des WebDAV-Verzeichnissen und festlegen der Rechte mkdir /home/webdav chown www-data:www-data /home/webdav
Anlegen der Passwortdatei und des ersten Benutzers mit htpasswd -c /etc/apache2/davpasswords BENUTZER es wird die Eingabe des Passworts angefordert - weitere Benutzer werden mit gleichem Befehl ohne "-c" erstellt.
Zum Schluss noch den Apache neu starten /etc/init.d/apache2 restart oder service apache2 reload
Zur Beschreibung des Zugriffs von Windows, dem Link folgen >>> DAV Cl. >>> Der WebServer ist nun über http://192.168.3.10/ oder http://dienste.netz/ zu erreichen. Der WebDav-Ordner ist unter https://192.168.3.11/ und https://webdav.netz/ mit sicherer Verbindung erreichbar. ______________________________________________________________>> nach oben >> 4. Datenbank Mysql
Dieser Punkt ist noch nicht bearbeitet ______________________________________________________________>> nach oben >> 5. Fax-Server Hylafax Ein sehr lästiger Vorgang in einem Büro sind die ständig auflaufenden Werbefaxe, die man nur sehr schwer abstellen kann und die zudem auch noch unnütze Kosten verursachen. Es wird hier eine Lösung mit dem Programm “Hylafax” umgesetzt, mit dem Faxe netzwerkweit erstellt und über das ISDN-Netz versendet werden können. Der Faxempfang ist ebenfalls realisiert, wobei die Faxe nicht erst ausgedruckt, sondern per Mail im Netzwerk als .pdf-Datei zugestellt werden. Die Faxdokumente können so einfach gesichtet und archiviert bzw. bei Werbemüll gelöscht werden. Meist steht in einem Büro noch ein altes Faxgerät für den Fall, dass ein Stück Papier schnell versendet werden soll. Dieses Gerät sollte man belassen und die Rufannahme auf ca.4-5 Rufe erhöhen. Damit werden alle eingehenden Rufe vom Hylafax angenommen und auch im Falle einer Störung am Hylafax keine Faxe verloren. Das Hylafax-Paket wird mit apt-get install hylafax-client hylafax-server capi4hylafax capiutils installiert.
Für die Fritz-PCI-Karte muss ein Treiber erstellt werden. Es müssen dazu die Kernelquellen und die Headerfiles installiert werden (!!passend zum Kernel). apt-get install linux-source-2.6.32 apt-get install linux-headers-2.6-amd64
Die quellen für den Treiber findet man unter https://belug.de/~lutz/pub/fcpci/ . Dort kann man die passende Quelle auswählen. Die Quellen für den passenden Treiber (2.6.32-amd64) kann man mit dem Befehl. wget --no-check-certificate https://belug.de/~lutz/pub/fcpci/fritz-fcpci-2.6.31.tar.bz2 herunterladen und nach “/usr/src/” entpacken ( am einfachsten mit dem mc - Midnight Commander ) Eine Anleitung zum erstellen findet sich dort im Paket in der "liesmich.txt".
Fritz-pci einrichten Zunächst geht man in das folgende Verzeichnis cd /usr/src/fritz-fcpci-2.6.31/lib/ und setzt den Link auf die richtige Version -- hier auf die 64Bit-Version Dazu den vorandenen Link auf die 32Bit-Version löschen rm fcpci-lib.o und den Link auf die 64Bit-Version einrichten ln -s 64_fcpci-lib.o fcpci-lib.o danach mit cd ../fcpci_src/ in das Verzeichnis mit den Quellen und mit make clean make all das Modul bauen. Danach das Modul in das richtige Verzeichnis kopieren mkdir /lib/modules/2.6.32-5-amd64/kernel/extras cp fcpci.ko /lib/modules/2.6.32-5-amd64/kernel/extras/ depmod -a modprobe -r fcpci Es müssen danach noch in der "/etc/modprobe.d/blacklist.conf" die Einträge für die automatisch installierten Treiber "avmfritz" und "mISDNipac" hinzugefügt und damit deaktiviert werden. Nach einem Neustart sollte "fcpci" in "/proc/modules" zu finden sein.
Nun wird eine ganze Anzahl von Dateien editiert, die sich auf einer gesonderten Seite befinden zur Seite mit den zu ändernden Dateien >>> Kofiguration der Scripte >>>
FaxUser hinzufügen
faxadduser -a faxadmin faxadmin ( -a admin-Passwort adminuser ) faxadduser -p faxuser faxuser ( -p user-passwort user )
und in /var/spool/hylafax/bin/faxrcvd "FILETYPE=pdf" und "SENDTO=faxadmin@dienste.netz" abändern. Die eingehenden Faxe werden nun in .pdf-Dateien gewandelt und per Mail an faxadmin@dienste.netz o.ä. geschickt - hier können beliebige Empfänger im lokalen netz ausgewählt werden. Es müßten nun verschiedene Dienste neu gestartet werden - ein Neustart des Computers erledigt das am besten. Man kann dabei auch die Meldungen (auch Fehlermeldungen) beobachten die den Start der Dienste begleiten. Nun sollte man mit dem Befehl sendfax -v -d 03355002488 /etc/testdatei.txt ein Testfax versenden. Die Client-Programme zu Nutzung der Mail-Funktionen ist sind auf der Seite “Windows Fax Clients” dargestellt.
______________________________________________________________>> nach oben >>
6. Mail-Server Exim4, Fetchmail, bsd-mailx, mutt
Das Mailsystem sollte mit der Installation unter 1. fast vollständig erfolgt sein. Man kann aber vorsichtshalber mit apt-get install fetchmail mailutils mutt exim4 die Installation überprüfen und gleich noch das fehlende “fetchmail” nachinstallieren.
Zunächst konfiguriert man Exim4 mit dpkg-reconfigure exim4-config
Es wird das folgende ausgewählt "Versand über Sendezentrale (Smarthost); empfang mit SMTP oder Fetchmail" "E-Mail-Name des Systems:" >> dienste.netz "Ip-Adressen, an denen...." >> 127.0.0.1 ; 192.168.3.10 "Weitere Ziele, für die ...." >> dienste.netz "Rechner, für die E-Mails ..." >> 192.168.3.0/24 "IP-Adresse oder Rechnerna..." >> dienste.netz "Lokalen E-Mail-Namen in ausgehenden E-Mails verbergen?" >> "Ja" "sichtbarer Domänname für..." >> dienste.netz "DNS-Anfragen minimieren..." >> "Nein "Versandart bei lokaler ..." >> Mbox-Format in /var/mail "Einstellungen auf kleine Dat." >> "Nein" Exim startet jetzt neu oder man löst mit dem Befehl /etc/init.d/exim4 restart einen Neustart aus. Da alle später zu sichernden Daten auf der Home-Partition liegen sollten (Backup), wird mit mv /var/mail /home das Mailverzeichnis mit Inhalt nach home verschoben, dann wird ein symbolischer Link in /var mit cd / ln -s /home/mail /var/mail erstellt.
Jetzt wird die Konfiguration für FetchMail erstellt. Dazu wird zunächst die Datei erzeugt touch /etc/fetchmailrc es wird der Eigentümer festgelegt chown fetchmail /etc/fetchmailrc und die Rechte auf den Eigentümer eingeschränkt chmod 0600 /etc/fetchmailrc und die folgenden Zeilen in dieser Datei eingetragen set postmaster "postmaster@dienste.netz" set no bouncemail set syslog set daemon 900 # Mailabruf alle 15 Minuten #Strato-Konto test@erwin-krause.de poll pop3.strato.de with proto POP3 user test@erwin-krause.de pass testfach is test@dienste.netz. here options ssl.. user test1@erwin-krause.de pass test1xfach is benutzer@dienste.netz here options ssl
Zuletzt noch in "/etc/default/fetchmail" die folgende Zeile ändern START_DAEMON=yes Nun mit /etc/init.d/exim4 restart und /etc/init.d/fetchmail restart die Dienste neu starten. Jetzt kann man den ersten Test des Maildienstes machen echo "eine Testmail .." | mailx -a "auch ein Test" -s "test von root" benutzer@dienste.netz Im Verzeichnis “/var/mail” sollte eine Datei “benutzer” erscheinen, die die Mail enthält.
Nun kann man je eine Mail von einem anderen Rechner in das Postfach “test@erwin-krause.de” und das Postfach “test1@erwin-krause.de” beim Internetprovider schicken. Diese Mails sollten, wie in der “fetchmailrc” eingestellt, nach spätesten 15 Minuten (900 Sekunden) im lokalen Postfach unter “/var/mail/benutzer” angekommen sein.
Der lokale Maildienst und die Abholung von Mails aus dem Internet klappt jetzt -- nun wird auch das Versenden in das Internet konfiguriert. Dazu in der Datei “/etc/exim4/update-conf.conf” die folgenden Zeilen anpassen dc_relay_nets=’192.168.3.0/24 ; 192.168.1.0/24’ ...... dc_smarthost=’smtp.strato.de’ damit werden Mails aus den Netzen 192.168.3.0/24 und 192.168.1.0/24 an den Mailserver vom Strato (smtp.strato.de) weitergeleitet. Um dem Exim4 das Einloggen bei smtp.strato.de beim Provider im Internet zu ermöglichen, muss in der Datei “/etc/exim4/passwd.client/” die folgende Zeile hinzugefügt werden smtp.strato.de:test@erwin-krause.de:testfach <mailserver> : <benutzername> : <passwort> smtp.strato.de:test1@erwin-krause.de:test1xfach
Nun den Maildienst mit /etc/init.d/exim4 restart neu starten.
Das ganze läuft jetz ohne jede Sicherheit. Im lokalen Netz mag das OK sein. Das unverschlüsselte Versenden über das Internet ist nicht angeraten, deshalb sollte man wenigstens TLS verwenden. Zum Einschalten von TLS für die Verbindung des Exim4 in das Internet legt man mit “nano” die Datei nano /etc/exim4/exim4.conf.localmacros mit dem Inhalt MAIN_TLS_ENABLE = 1 an. Danach wieder /etc/init.d/exim4 restart Jetzt sollte die Verbindung von exim4 ins Internet verschlüsselt erfolgen. Das kann überprüft werden in dem man eine Mail in das Internet versendet und anschließend die log-Datei unter “/var/log/exim4/mainlog” öffnet und den letzten Eintrag kontrolliert. Dort sollte ein Eintrag mit “X=TLS1.o.... <Zertifikatsinhalt>” gezeigt werden. Da das Verhalten verschiedener Mailserver im Internet recht unterschiedlich ist, sollte man auch die ssl-Übertragung von “fetchmail” kontrollieren. Man kann nach dem stoppen von “fetchmail mit /etc/init.d/fetchmail stop das programm im Debug-Modus neustarten, dazu /etc/init.d/fetchmail debug-run ausführen. Es wird das vollständige Dialogprotokoll der Verbindung gezeigt. Hier sollte man die Anzeige des Zertifikates des Mailservers und danach eine Zeile mit “POP3< +OK POP3 server ready...> sehen. Abrechen kann man dann den vorgang mit “Ctrl-c”. Nun “fetchmail” wieder neu starten und freuen.
Die Einstellungen für den Mailclient Thunderbird >>> Win Mail Cl. >>> ______________________________________________________________>> nach oben >>
7. FTP-Server ProFTP +TLS Der FTP-Server soll dem Datenaustausch über das Internet dienen. Es werden dazu virtuelle Benutzer eingerichtet, die keine Shell zugeordnet bekommen und sich somit nicht im System einloggen können, aber benutzereigene Verzeichnisse besitzen. Somit können die Daten verschiedener Benutzer von einander abgegrenzt werden. Um die Daten bei der Übertragung über das Internet abzusichern, wird die Verschlüsselung mit TLS eingesetzt. Die Benutzer bekommen einen Benutzername mit Passwort und einem Zertifikat mit dem sie sich einloggen können. Zur Installation von proftp sollte openssl auch installiert werden apt-get install proftpd openssl bei Abfrage "Servermodus" auswählen
danach muss die "/etc/proftpd/proftpd.conf" überprüft werden. Wichtige Einstellungen: Port 990 # es wird den Usern nur ihr Home-Verzeichnis erlaubt DefaultRoot ~ UseReverseDNS off IdentLookups off ServerName "dienste" ServerType standalone DenyFilter \*.*/ # der Verweis auf die Passwortdatei der virtuellen User AuthUserFile /etc/proftpd/ftpd.passwd RequireValidShell off # Einschalten der Verschlüsselung mit TLS Include /etc/proftpd/tls.conf # einschränken der passiven Ports auf 10, da nur sehr wenige Benutzer PassivePorts 62220 62230
Die FTP-Benutzer haben mit den Systembenutzern nichts zu tun und können sich mit ihren Benutzernamen und Passwort nicht am System anmelden. Es sind eben nur virtuelle FTP-Benutzer. Jetzt FTP-Benutzer hinzufügen: (uid und gid sind die Werte der www-data in /etc/group und passwd) ftpasswd --passwd --name ftpuser --uid 33 --gid 33 --home /home/ftp/ftpuser --shell /bin/false und die Passwortabfrage beantworten. Die User werden im File /etc/proftp/proftp.passwd gespeichert. Mit dem Befehl ftpasswd --passwd --delete-user --name gast kann ein Benutzer gelöscht werden Zur sicheren Übertragung der Daten über das Internet sollte die Verschlüsselung mit TLS benutzt werden. Dazu wird zuerst ein Verzeichnis angelegt mkdir /etc/proftp/ssl und dann ein Zertifikat im Verzeichnis erzeugt !! alles auf einer Zeile !! openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.crt -keyout /etc/proftpd/ssl/proftpd.key
Es werden diverse Angaben, wie folgt, gefordert Country Name (2 letter code) [AU]: DE State or Province Name (full name) [Some-State]: Hessen Locality Name (eg, city) []: Frankfurt am Main Organization Name (eg, company) [Internet Widgits Pty Ltd]: XYZ GmbH Organizational Unit Name (eg, section) []: IT-Abteilung Common Name (eg, YOUR name) []: server.host.com Email Address []: root@host.com
der so erzeugter private Key "proftp.key" wird im FTP-Client FileZilla verwendet.
Jetzt noch die "/etc/proftpd/tls.conf" wie folgt anpassen: <IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSOptions NoCertRequest TLSRSACertificateFile /etc/proftpd/ssl/proftpd.crt TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key TLSVerifyClient off TLSRequired on </IfModule>
und den ProFTP-Server neu starten mit /etc/init.d/proftpd restart Um den Zugriff aus dem Internet zu erlauben, müssen einige Einstellungen im Router (IPCOP) gemacht werden. Die Einstellungen für den FTPclient TotalCommander und FileZilla >>> Win FTP Cl. >>> ______________________________________________________________>> nach oben >>
--------------------------- Ab hier noch nicht bearbeitet ------------------------------
8. Groupware Horde-Webmail
______________________________________________________________>> nach oben >>
9. Time-Server
______________________________________________________________>> nach oben >>
10. Backup mit Rsnapshot
authorized_keys
command="rsync --server --sender -vlogDtpRr --numeric-ids . /boot/ . /etc/ . /home/ . /lib/modules/ . /opt/ . /usr/src/ . /var/lib/ . /var/spool/ " ssh-rsa AAAAB3NzaC1yc ... coH root@dienste
______________________________________________________________>> nach oben >>
11. Fileserver Samba
Die Installation erfolgt mit apt-get install samba swat
Konfiguriert wird Samba mit SWAT über http://server:901 im Browser eines Computers
Unter der Karte "PASSWORD" "Benutzername" und "Neues Passwort" eintragen und mit "Füge neuen Benutzer hinzu"
Unter der Karte "GLOBALS" unter "workgroup" die Arbeitsgruppe eintragen und dann "Änderungen speichern"
Unter der Karte "SHARES" die freigaben einrichten. Dazu neben "Erstelle Fraigabe" den Freigabenamen eintragen und "Erstelle Freigabe" betätigen. Unter "comment" den Freigabenamen "path" den vollständigen Pfad "admin users" den Benutzer zum Daten bereitstellen bzw. abholen "read only" "No” "available" "Yes" eintragen und "Änderungen speichern" und Samba neu starten /etc/init.d/samba restart ______________________________________________________________>> nach oben >> 12. Groupware Tine 20
Installation von phpmyadmin mysql-server mit allen Abhängigkeiten über "dselect"
Die Beschreibung der Installation für Debian SQUEEZE http://www.tine20.org/wiki/index.php/Admins/Install_Howto#Install_Debian.2FUbuntu_packages
1. Add the repository to sources.list / sources.list.d Debian Squeeze: deb http://packages.tine20.org/debian squeeze stable
2. Import the key (as root or with sudo) apt-key adv --recv-keys --keyserver keys.gnupg.net 7F6F6895
3. Update sources (as root or with sudo) apt-get update
4. Install Tine 2.0 (as root or with sudo) apt-get install tine20 ______________________________________________________________>> nach oben >>
|