| |||
|
agena.go-itservice.comzuerst installiert auf Pentium 3 Standardrechner (armageddon II) mit Kingston KNE100, 120GB IDE mit Debian 3.1 Sarge, anschließend auf einen Compaq Pro Reliant DS 320 zum Einsatz beim Provider portiert. Hardware:Beginn Installation: armageddon II Standard mit Kingston KNE100, 80GB IDEUmbau auf: Compaq Pro Reliant DS 320 mit 2x120GB IDE Linux installieren:Bootreihenfolge im BIOS: CDROM - HD0Netzwerk erstmal ausstecken (wegen DHCP) Mit Debian Sarge DVD 1 booten Language: German<enter> Land: Deutschland Tastatur: deutschdann startet Hardwareerkennung und die DVD wird durchsucht... (dauert ca 1 Minute) Debian installer wird geladen, Hardwareerkennung (Netzwerk) primäres Netz: eth0 (KNE100) Konfiguration: manuell (Auswahl) IP Adresse: 192.168.80.19 Netmask: 255.255.255.0 Gateway: 192.168.80.1 DNS: 192.168.80.10 Rechnername agena Domäne: ulm.go-itservice.deResthardwareerkennung Festplatte: manuell 10,0 GB hda1 ext2 / 71,5 GB hda2 ext3 /home 0,9 GB swap 40,0 GB hda4 ext3Bootloader MBR <ja> Die installation wird beendet, DVD ausgeworfen und um Neustart gebeten: Neustart <weiter>Neustart Konfiguration <ok> Uhrzeit: GMT Zeitzone: Berlin rootpasswort: **** (und Bestätigung) User: Guenther Obermaier Account: go passwort: **** (und Bestätigung) apt Zugriff: cdrom (vorher DVD 1 einlegen)die Durchsuchung dauert ... 2. CD <ja>(vorher DVD 2 einlegen) weitere CD: <nein>Anschliessend wird versucht, Updates von security.debian.org zu holen (was ohne Netz fehlschlägt).
DVD 1 wieder einlegen.Installieren von Software: manuelle PaketauswahlPakete installieren ("g") Mailserver: nur lokal (alt: Internetserver) Mails root: rootNach der Grundinstallation aptitude starten:
# aptitudenicht installierte Pakete auswählen, am besten über "Suche": + amavisd-new + apache2-mpm-prefork + awstats + bind9 + catdoc (wegen xls2csv) + clamav-daemon + courier-authdaemon + courier-authmysql + courier-base + courier-imap + courier-imap-ssl + courier-pop-ssl + courier-pop + courier-ssl + cryptsetup + debconf-utils + fetchmail + hdparm + laptop-mode-tools + imagemagix + joe + ldap-utils + libapache2-mod-perl + libapache2-mod-php4 + libapache2-mod-proxy-html + libauthen-sasl-cyrus-perl + libauthen-sasl-perl + libgsasl7 + libnet-ip-perl + libsasl2 + libsasl2-modules + libsasl2-modules-sql + lynx + mcrypt + mdadm + mysql client 4.1 + mysql server 4.1 + ntpdate + ntp-server + openssl + openvpn + perlmodule (siehe Allgemein zu "Sarge") + pop-before-smtp (inzwischen obsolet) + php4 (incl diverser Module, siehe Allgemein zu "Sarge") + phpldapadmin + phpmyadmin + postfix + postfix-tls + postfix-mysql + postgrey + restartd + rsh-redone-client + rsync + slapd + smssend + spamassassin + spamc + squid + squidguard + squirrelmail + squirrelmail-locales + ssh + sysutils (wegen dos2unix) + usermin (+ Module) + webmin (+ Module) Konfigurieren des Systemsin/etc/apt/sources.list
deb http://security.debian.org/ sarge/updates main deb http://debian.uni-essen.de/debian/ sarge main contribstatt der DVDs eintragen. In aptitude erscheint als erstes eine Fehlermeldung, aber mit
"u" für Update geht das anschliessend jedenfalls.In der /etc/apt/sources.list war vorher statt sarge uebrigens stable eingetragen, was bis April 2007
oder so funktionierte. Dann wurde aber ETCH stable und ich bekam einen Versionsmischmasch auf dem Server, wodurch z.B.
php4-gd ec nicht mehr richtig funktionierte! Das besonders tückische ist, dass bei den fehlerhaften
Updates Einträge aus der /etc/php4/apache2/php.ini gelöscht wurden, welche nach der
richtigen Umstellung fehlten und eine Verwendung der betroffenen PHP4 Module weiterhin verhinderten.(siehe goweb)Datei /root/daily5h anlegen, dort ntpdate ec eintragen, alles was als cronjob nachts um 5h laufen soll.
chmod 700 /root/daily5h vor crontab -e nicht vergessen!in /etc/fstab als Bootparameter noatime für die Systemplatte angeben.Für die User root und go , Verzeichniss .ssh anlegen,
keys von antares und wega dort in die authorized_keys einfügen.ntp : ist automatisch konfiguriert und wird unter Sarge direkt (für localhost) benutzt.
Sollen andere Rechner den Server beutzen: /etc/ntp.conf anpassen.Programm crypt von agena-alt (/root/crypt ) holen und nach /root kopieren.Gruppen obi und gball (clamav) anlegen.Script newuser von agena-alt holen und laufen lassen.Benutzerdaten ( /home/USER ) via tar oder scp holen und auspacken.
sshddamit Zugang auf agena auch von Netzen aus möglich ist, bei denen eine (Firmen)Firewall den Internetzugang via ssh auf Port 22 verhindert, lauscht der sshd auf Agena auch auf Port 563, das ist der Port für "secure News". Dazu muß in der/etc/ssh/sshd_config nur eine weitere Port Zeile
eingetragen werden. Port 443 (https) wäre noch besser, der ist fast überall frei, allerdings
läuft der Apache auf agena auch auf Port 443, so daß diese Option nicht möglich ist:
Port 22 Port 563 Apache 2sites (nur einzelne virtual Host Abschitte) in/etc/apache2/sites-available anlegen und dann einen
link aus /etc/apache2/sites-enabled auf das Konfigfile anlegen. Wenn der Apache mit der
Endung "php" nichts anfangen kann, fehlen wahrscheinlich im /etc/apache2/mods-enabled
die beiden PHP -Links (php4.load -> /etc/apache2/mods-available/php4.load, php4.conf -> /etc/apache2/mods-available/php4.conf ), dann ist das PHP4 Unterstützung nicht eingeschaltet. Diese dann via
aptitude installierengoweb Dateien nach /home/go/httpd spielen (sollte von altem Rechner her noch tun)
im data/tools Ordner bei jeder installierten Seite das Skript
./bootstrap -U go -P PASSWD SITE aufrufen,
dann die vorher mit table2csv exportierten Daten wieder mit ./csv2table all SITE
einspielen. Das Bootstrap Skript erzeugt die DB und sorgt für den grant auf die Tabellen.
Falls PHP4 nicht auf mysql verbinden kann, die /etc/php4/apache2/php.ini kontrollieren,
dort muß ganz unten stehen:
extension=ldap.so extension=imagick.so extension=imap.so extension=mcrypt.so extension=mysql.so extension=gd.so Apache 2 mit httpsZertifikat erzeugen, der Servername muß mit dem CommonName im Zertifikat übereinstimmen! Soll die Domänewww.dummy.de via https erreichbar sein, muß der Eintrag in der
/home/go/httpd/httpd.include so aussehen:
<VirtualHost *:443> SSLEngine On SSLCipherSuite HIGH:MEDIUM SSLCertificateFile /etc/apache2/ssl/www.dummy.de.cert SSLCertificateKeyFile /etc/apache2/ssl/www.dummy.de.key SSLProtocol all ServerName www.dummy.de DocumentRoot /home/go/httpd/dummyssl DirectoryIndex index.php index.html index.htm </VirtualHost> für Erreichbarkeit der Domain mit http ist ein weiterer Eintrag nötig: <VirtualHost *:80> SetEnv XXURL /www.dummy.de ServerName www.dummy.de DocumentRoot /home/go/httpd/dummy DirectoryIndex index.php index.html index.htm </VirtualHost>Am oberen Ende der httpd.include steht: Listen 443 NameVirtualHost *:80 NameVirtualHost *:443Dann SSL Modul laden, Zertifikat erzeugen (genaueres siehe bei Postfix) und Apache neu starten: # a2enmod ssl # openssl req -new -outform PEM -out www.dummy.de.cert -newkey rsa:2048 -nodes -keyout www.dummy.de.key -keyform PEM -days 999 -x509 # /etc/init.d/apache2 force-reloaddas openssl Kommando erzeugt ein für 999 Tage gültiges Zertifikat.Apache für neue Webseite konfigurieren: Neuen User anlegen: z.B. User nuser , Eintrag in Datei newuser
analog zu bisherigen (oder mit useradd ) anlegen, newuser starten.
neue Gruppe mit UID = GID und selben Namen in /etc/group eintragen,
den neuen User in die Gruppe aufnehmen und ebenso den User www-data .
Unter diesem läuft der Apache, sonst kann dieser die Webseiten des Users nicht
anzeigen. Die Zeile in der /etc/group sieht also so aus:
nuser:x:GID:nuser,www-dataRechte setzen: # chmod 750 /home/nuser # chown nuser:nuser /home/nuser # mkdir /home/nuser/httpdDefault index.html oder index.php anlegenEintrag in der httpd.include hinzufügen. (siehe weiter oben, ab
<VirtualHost *:80> ...)
Apache neu startenmysqlZum Anmelden:# mysqladmin -u root -p PASSWD # mysql -u root -p PASSWDZu Beginn ist das Mysql-Passwort des root-Accounts leer, dies sofort ändern! Tabellen für Postfix anlegen: # mysql --user=root mysql> create database maildb; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON maildb.* TO 'mail'@'localhost' IDENTIFIED by 'PASSWD'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON maildb.* TO 'mail'@'%' IDENTIFIED by 'PASSWD'; mysql> exit; # Postfix konfigurierenFragen bei Installation Postfix:mail name: agena.go-itservice.com akzeptierte Domains: agena.go-itservice.com, localhost (wird eh gelöscht)Konfiguration ist in der /etc/postfix/main.cf ,
dort werden die virtuellen Email Adressen in mysql-Tabellen eingetragen ec.
# cp /etc/aliases /etc/postfix/aliasesKontrollieren wegen Roots Mails, dann # postalias /etc/postfix/aliasesUser virtual für Mails an die virtuellen User anlegen:
# mkdir /var/spool/mail/virtual # groupadd virtual -g 5000 # useradd virtual -u 5000 -g 5000 # chown -R virtual:virtual /var/spool/mail/virtualKonfig Files für Mysql anlegen: /etc/postfix/mysql_mailbox.cf /etc/postfix/mysql_uid.cf /etc/postfix/mysql_gid.cf /etc/postfix/mysql_alias.cf /etc/postfix/mysql_domains.cfTabellen für Postfix in mysql anlegen: # mysql -u mail -p PASSWD mysql> CREATE TABLE `aliases` ( `pkid` smallint(3) NOT NULL auto_increment, `mail` varchar(120) NOT NULL default '', `destination` varchar(120) NOT NULL default '', `enabled` tinyint(1) NOT NULL default '1', PRIMARY KEY (`pkid`), UNIQUE KEY `mail` (`mail`) ) ; mysql> CREATE TABLE `domains` ( `pkid` smallint(6) NOT NULL auto_increment, `domain` varchar(120) NOT NULL default '', `transport` varchar(120) NOT NULL default 'virtual:', `enabled` tinyint(1) NOT NULL default '1', PRIMARY KEY (`pkid`) ) ; mysql> CREATE TABLE `users` ( `id` varchar(128) NOT NULL default '', `name` varchar(128) NOT NULL default '', `uid` smallint(5) unsigned NOT NULL default '5000', `gid` smallint(5) unsigned NOT NULL default '5000', `home` varchar(255) NOT NULL default '/var/spool/mail/virtual/', `maildir` varchar(255) NOT NULL default 'blah/', `enabled` tinyint(3) unsigned NOT NULL default '1', `change_password` tinyint(3) unsigned NOT NULL default '1', `clear` varchar(128) NOT NULL default 'ChangeMe', `crypt` varchar(128) NOT NULL default 'sdtrusfX0Jj66', `quota` varchar(255) NOT NULL default '', `procmailrc` varchar(128) NOT NULL default '', `spamassassinrc` varchar(128) NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`) ); Courier IMAP/POPDatei/etc/courier/authdaemonrc ändern:
authmodulelist="authmysql"Datei /etc/courier/authmysqlrc ändern, es dürfen keine Leerzeichen am Zeilenende sein!
Felder anpassen:
MYSQL_SERVER localhost MYSQL_USERNAME mail MYSQL_PASSWORD arkon3 MYSQL_PORT 0 MYSQL_OPT 0 MYSQL_DATABASE maildb MYSQL_USER_TABLE users # comment out this field, # as I now longer use the encrypted pw options #MYSQL_CRYPT_PWFIELD crypt MYSQL_CLEAR_PWFIELD clear MYSQL_UID_FIELD uid MYSQL_GID_FIELD gid MYSQL_LOGIN_FIELD id MYSQL_HOME_FIELD home MYSQL_NAME_FIELD name MYSQL_MAILDIR_FIELD concat(home,'/',maildir) MYSQL_WHERE_CLAUSE enabled=1in den Dateien: /etc/courier/imapd /etc/courier/imapd-ssl /etc/courier/pop3d /etc/courier/pop3d-sslkontrollieren, ob der Daemon auch gestartet wird, der Eintrag sieht z.B. so aus: IMAPDSTART=YES Amavisd-newKonfiguration in:/etc/amavis/amavisd.conf
dort im array @av_scanner und @av_scanner_backup alle Zeilen bis
auf die 5 von clamav herauslöschen. Vorsicht, daß Endklammern
geschlossen werden.
andere Änderungen: Host/Domain setzen und Run-User, default ist amavis , der
muß auf virtual geändert werden! Dann Verzeichnisse an diesen übergeben (bzw das tmp erst anlegen):
# cd /var/lib/amavis # mkdir tmp # chown virtual:virtual tmp # chown virtual:virtual virusmails # chown -R virtual:virtual /var/run/amavisWichtig, auch /etc/init.d/amavis muß angepasst werden (Zeile 31):
chown -c -h "virtual:virtual" "$4"Dann die /etc/postfix/master.cf ändern, genauer 2 Zeilen ändern
und 3 Dienste dazufügen:
smtp inet n - - - - smtpd -o cleanup_service_name=pre-cleanup cleanup unix n - - - 0 cleanup -o mime_header_checks= -o nested_header_checks= -o body_checks= -o header_checks= amavis unix - - - - 2 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes 127.0.0.1:10025 inet n - - - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o strict_rfc821_envelopes=yes -o mynetworks=127.0.0.0/8 -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1001 pre-cleanup unix n - - - 0 cleanup -o virtual_alias_maps= -o canonical_maps= -o sender_canonical_maps= -o recipient_canonical_maps= -o masquerade_domains=in die /etc/postfix/main.cf 2 Zeilen einfügen:
content_filter = amavis:[127.0.0.1]:10024 #receieve_override_options = no_address_mappings Clamavbei Nachfrage: als demon Server: db.de.clamav.net Proxy: - Notify clamd: jaStartuser, in /etc/clamav/clamd.conf :
User: virtualRechte und Gruppe anpassen: # chown virtual:virtual /var/run/clamav # adduser virtual amavisUm alle 6 Stunden nach neuen Virenpattern zu suchen: in der /etc/clamav/freshclam.conf folgendes eintragen:
Checks 4 Cyrus SASLfolgendes in die/etc/postfix/main.cf einfügen:
# modify the existing smtpd_recipient_restrictions smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unauth_destination, check_policy_service inet:127.0.0.1:60000, permit # modify the existing smtpd_sender_restrictions smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining, permit # then add these smtpd_sasl_auth_enable = yes broken_sasl_auth_clients = yes smtpd_sasl_path = /etc/postfix/sasl:/usr/lib/sasl2 smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain =Datei /etc/postfix/sasl/smtpd.conf anlegen:
pwcheck_method: auxprop auxprop_plugin: sql mech_list: plain login cram-md5 digest-md5 sql_engine: mysql sql_hostnames: 127.0.0.1 sql_user: mail sql_passwd: arkon3 sql_database: maildb sql_select: select clear from users where id='%u@%r' and enabled = 1 courier und TLSin pop3d steht normalerweise auskommentiert folgende Zeile, in imapd ist sie bei instaliertem SASL anscheinend aktiv:POP3AUTH="LOGIN CRAM-MD5 CRAM-SHA1" IMAP_CAPABILITY="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE" Verschlüsselungzuerst Keyfiles generieren:# cd /etc/postfix # openssl req -new -outform PEM -out postfix.cert -newkey rsa:2048 -nodes -keyout postfix.key -keyform PEM -days 999 -x509das Kommando ergibt folgenden Dialog: Country Name (2 letter code) [AU]: DE State or Province Name (full name) [Some-State]: Baden-Wuerttemberg Locality Name (eg, city) []: Ulm Organization Name (eg, company) [Internet Widgits Pty Ltd]: go-itservice Organizational Unit Name (eg, section) []: admin Common Name (eg, YOUR name) []: agena.go-itservice.com Email Address []: 04@go-itservice.comDer fett markierte Eintrag muß exakt der Name des Servers im DNS sein! diese Keyfiles in der /etc/postfix/main.cf einfügen: smtpd_use_tls = yes smtpd_tls_cert_file = /etc/postfix/postfix.cert smtpd_tls_key_file = /etc/postfix/postfix.key smtpd_data_restrictions = reject_unauth_pipeliningin der master.cf sind 3 Zeilen einzufügen (oder einzukommentieren)
tlsmgr unix - - n 300 1 tlsmgr smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes 587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yesZertifikat für courier erzeugen:
# openssl req -x509 -newkey rsa:1024 -keyout imapd.pem -out imapd.pem -nodes -days 999
Country Name (2 letter code) [AU]: DE
State or Province Name (full name) [Some-State]: Baden-Wuerttemberg
Locality Name (eg, city) []: Ulm
Organization Name (eg, company) [Internet Widgits Pty Ltd]: go-itservice
Organizational Unit Name (eg, section) []: admin
Common Name (eg, YOUR name) []: agena.go-itservice.com
Email Address []: 04@go-itservice.com
wie bei Postfix wird das Zertifikat nicht akzeptiert wenn nicht genau der DNS Name des Servers bei dem "Common Name" eingetragen wird.sowohl in der imapd-ssl als auch in der pop3d-ssl wird auf
das selbe Zertifikat verwiesen:
TLS_CERTFILE=/etc/courier/imapd.pemdefaultmässig ist das nur bei imapd-ssl eingestellt.
Daten in maildb einfügenZuerst werden die lokalen Domänen angelegr, dann einige default Aliases, möglicherweise kann man hier einige weglassen, anschliessend der root Usermysql> INSERT INTO domains (domain) VALUES ('localhost'), ('localhost.localdomain'); mysql> INSERT INTO aliases (mail,destination) VALUES ('postmaster@localhost','root@localhost'), ('sysadmin@localhost','root@localhost'), ('webmaster@localhost','root@localhost'), ('abuse@localhost','root@localhost'), ('root@localhost','root@localhost'), ('@localhost','root@localhost'), ('@localhost.localdomain','@localhost'); mysql> INSERT INTO users (id,name,maildir,clear) VALUES ('root@localhost','root','root/','*****');Daten für echte Domains einfügen, z.B. für uligotchi.de , der
local User ist lokal, während uli eine Weiterleitung ist.
mysql> INSERT INTO domains (domain) VALUES ('uligotchi.de'); mysql> INSERT INTO aliases (mail,destination) VALUES ('local@uligotchi.de','local@uligotchi.de'); mysql> INSERT INTO aliases (mail,destination) VALUES ('uli@uligotchi.de','uli@ulrike-winker.de'); mysql> INSERT INTO users (id,name,maildir,clear) VALUES ('local@uligotchi.de','local','local/','local*');Maschinenname auf agena.go-itservice.com einstellen.
Test der MailinstallationTest smtpalle Dienste stoppen: # /etc/init.d/courier-imap stop # /etc/init.d/courier-imap-ssl stop # /etc/init.d/courier-pop stop # /etc/init.d/courier-pop-ssl stop # /etc/init.d/postfix stop # /etc/init.d/amavis stop # /etc/init.d/spamassassin stop # /etc/init.d/clamav stop # /etc/init.d/mysql stopTesten: # netstat -tnpContent checks disablen: /etc/postfix/master.cf wieder aktivieren,
Zeilen mit -o auskommentieren:
smtp inet n - n - - smtpd cleanup unix n - - - 0 cleanupZeilen mit content_filter auskommentieren in /etc/postfix/main.cf # content_filter = amavis:[127.0.0.1]:10024Mysql und postfix Log mit tail in zwei Terminals verfolgen: # tail -f /var/log/mysql.log # tail -f /var/log/maillog.infoDann MySQL und Postfix starten: # /etc/init.d/mysql start # /etc/init.d/postfix startwenn beide Laufen, telnet auf Port 25 zum Test des Postfix: > telnet localhost 25 EHLO wega.ulm.go-itservice.de ... MAIL FROM: go@wega.ulm.go-itservice.de OKimap RCPT TO: local@uligotchi.de OK data ... . quitFalls kein Eintrag im mysql.log kommt, kanns auch an den Logeinstellungen
liegen: in /etc/mysql/my.cnf folgende Zeile einkommentieren. Vorsicht,
wieder entfernen, bremst ohne Ende!
log = /var/log/mysql.logKontrollieren, ob unter /var/spool/mail/virtual/local/new die neue Mail
angekommen ist. Wenn ja, Test mit falschem Recipient, diese wird abgelehnt!
Test imap Analog zu smtp redet man nun mit dem IMAP server: > telnet localhost 143worauf sich der IMAP Server meldet, und mit dem Pop Server: > telnet localhost 110 USER local@uligotchi.de PASS local* STAT LIST (Mails auflisten) RETR 1 (Mail ansehen) RSET (sonst ist die Mail gelöscht!) QUIT Logout Konfiguration Mozilla als ClientEmail account anlegen:Name: Testname Mailadresse: test@uligotchi.de Servertyp: PoP oder IMAP (beide möglich) Server Eingang: agena.go-itservice.com Server Ausgang: agena.go-itservice.com Benutzername: test@uligotchi.de Account Name: test@uligotchi.deMail und News Account Einstellungen: Server-Einstellungen: Sichere Verbindung: Ja (Haken setzen)Der Rest paßt, der Port ändert sich auf 995, dieser muß an der lokalen Firewall freigeschaltet sein! Server für ausgehende Nachrichten: Server Name: agena.go-itservice.com Name und Passw. verw.: Ja (Haken setzen) Benutzername: test@uligotchi.de Sichere Verb. verw.: TLSBeim ersten Aufruf und Versenden muß das Zertifikat von agena akzeptiert werden! IP Adresse ändernManuelles Einstellen der IP Adresse: in/etc/networks/interfaces
auto eth0 iface eth0 inet static address 192.168.80.11 netmask 255.255.255.0 network 192.168.80.0 broadcast 192.168.80.255 gateway 192.168.80.1 dns-nameservers 192.168.80.10 dns-search ulm.go-itservice.de slapd, phpldapadmin, ldaptools konfigurierenIn den Dateien/etc/ldap/slapd.conf
suffix "o=go-itservice, c=de" rootdn "cn=admin, o=go-itservice, c=de" rootpw PASSWD in der /etc/ldap/ldap.conf: BASE o=go-itservice,c=de HOST agena.ulm.go-itservice.de PORT 389 SIZELIMIT 4096Sizelimit muß wegen dem automatischen Import durch adressen2ldap
(von goweb) auf einen Wert > Zeilenzahl der adressen.xls Datei
gesetzt werden!
in der /etc/phpldapadmin/config.php :
$servers[$i]['name'] = 'agena'; $servers[$i]['host'] = '127.0.0.1'; $servers[$i]['base'] = 'o=go-itservice, c=de'; $servers[$i]['port'] = 389; $servers[$i]['auth_type'] = 'config'; $servers[$i]['login_dn'] = 'cn=admin, o=go-itservice, c=de'; $servers[$i]['login_pass'] = 'PASSWD';slapd und apache2 neu starten, voila! ntp-server konfigurierenin der/etc/ntp.conf folgende Zeile eintragen oder anpassen:
broadcast 192.168.80.255
phpmyadmin konfigurierenWenn im Apache2 das sites-enabled/default gelöscht wurde (so wie es in der obigen Installation ist) ist zwar der phpldapadmin noch verfügbar, nicht aber der phpmyadmin. In dem Verzeichnis/etc/apache2/conf.d können weitere Teile zur httpd.conf gefügt werden,
das dort vorhandene phpldapadmin (ist ein Link auf /etc/phpldapadmin/apache.conf ) sorgt
nämlich dafür, daß der LDAPAdmin noch läuft. Also diese Datei kopieren, nach phpmyadmin.conf
umbenennen und in der Datei den Text phpldapadmin durch phpmyadmin ersetzen. apache2 neu Starten, geht.OpenVPNauf Client installieren (in dem Fall: wega:192.168.80.10), bei Nachfrage: TUN/TAP Device anlegen lassen!# cd /etc/openvpn/ # openvpn --genkey --secret 192.168.80.vpn.keydie Datei vpn.conf anlegen:
remote agena.go-itservice.com dev tun ifconfig 10.0.0.1 10.0.0.2 secret /etc/openvpn/192.168.80.vpn.key tun-mtu 1500 fragment 1500 mssfixStart mit: # openvpn --config /etc/openvpn/vpn.confKeyfile mit scp auf Server agena, kopieren, OpenVPN analog auf agena
installieren. Da dort mehrere Clients existieren können, heißt die
Konfigurationsdatei: 192.168.80.conf
Start auf agena:
# openvpn --config /etc/openvpn/192.168.80.confJetzt müssen sich die Demons sehen ... Da zwischen wega und agena Firewall(s) sind, müssen dort "Löcher gebohrt" werden. usermin/webmin einrichtenUsermin und Webmin werden über je eine Datei gesteuert,/etc/webmin/miniserver.conf :
Listen 8081 Port 8081 allow: 192.168.80.0 (zum Installieren)/etc/usermin/miniserver.conf Listen 8082 Port 8082allow: <Zeile löschen> # /etc/init.d/webmin restart # /etc/init.d/usermin restartWebmin aufrufen, als root anmelden und Usermin Module freischalten: available-Modules, Dort Mail Forwarding, Read Mail, Change Password, GnuPG Encryption freischalten. User können damit administrieren. restartdnachzustartende Prozesse in/etc/restartd.conf eintragen
UMBAU Server: hdc => hde wegen Compaq DS 320Bei dem Compaq Rechner hat die erste IDE Master Platte nichthdc sondern hde
RAID1 einrichtenPartitionstabelle von hde nach hdg kopieren und Partitionstyp
auf Linux raid autodetect (=FD) ändern, anschliessend Datenarray anlegen,
wobei die Partition hde2 noch in Ruhe gelassen wird, da noch Daten drauf sind, ist ja die hdc2 von vorher!:
# sfdisk -d /dev/hde | sed -e 's/=8[23]/=fd/g' | sfdisk /dev/hdg # mdadm --create /dev/md2 --level=1 --raid-devices=2 missing /dev/hdg2in /etc/mdadm/mdadm.conf eintragen, damit es nach dem booten wieder zur Verfügung steht:
DEVICE /dev/hde2 /dev/hdg2ID des md-Devices an Datei hängen, Filesystem Formatieren und Mounten und Daten kopieren: # mdadm --brief --detail --verbose /dev/md2 >> /etc/mdadm/mdadm.conf # mkfs.ext3 /dev/md2 # mount /dev/md2 /mnt # cd /home; find -depth -print | cpio -pdauV /mntDen Raidarray in /etc/fstab statt /dev/hde2 eintragen und neu booten.Falls alles glatt gegangen ist, jetzt hde2 mit in den Array nehmen:
# mdadm --add /dev/md2 /dev/hde2Die Synchronisation kann man unter /proc/mdstat beobachten z.b. mit cat /proc/mdstat .
Abschliessend noch die /dev/hde2 in /etc/mdadm/mdadm.conf eintragen,
statt der missing Partition. mdadm.conf
ARRAY /dev/md2 ... devices=/dev/hdg2,/dev/hde2 Array Swap# mdadm --create /dev/md3 --level=1 --raid-devices=2 missing /dev/hdg3in /etc/mdadm/mdadm.conf eintragen, damit es nach dem booten wieder zur Verfügung steht:
DEVICE /dev/hde3 /dev/hdg3ID des md-Devices an Datei hängen: # mdadm --brief --detail --verbose /dev/md3 >> /etc/mdadm/mdadm.confFilesystem Formatieren und Mounten, aidarray in /etc/fstab statt /dev/hde3 eintragen und neu booten.
# mkswap /dev/md3 # mdadm --add /dev/md2 /dev/hde2Falls alles glatt gegangen ist, hde3 mit in den Array nehmen:
ARRAY /dev/md3 ... devices=/dev/hdg3,/dev/hde3 Array SystemDa man davon Booten muß, braucht es das md und raid1 Kernelmodul schon beim Booten. md und raid1 in/etc/modules und /etc/mkinitrd/modules eintragen.
Jetzt wird ein neues initrd gebaut:
# mkinitrd -o /boot/initrd.img-2.6.8-raid /lib/modules/2.6.8-3-686In /boot/grub/menu.lst muß noch das sda1 durch md1 ersetzt werden und die alte durch die neue initrd ersetzt werden.
Dann den Array der Systemplatte anlegen und dabei hde1 noch in Ruhe lassen:
# mdadm --create /dev/md1 --level=1 --raid-devices=2 missing /dev/hdg1in /etc/mdadm/mdadm.conf eintragen, damit es nach dem booten wieder zur Verfügung steht:
DEVICE /dev/hde1 /dev/hdg1ID des md-Devices an Datei hängen, Filesystem Formatieren und Mounten und Daten kopieren: # mdadm --brief --detail --verbose /dev/md1 >> /etc/mdadm/mdadm.conf # mkfs.ext3 /dev/md1 # mount /dev/md1 /mnt # cd /; find -depth -print | cpio -pdauV /mntstatt der letzten Zeile geht auch cd /; find . -xdev -print | cpio -dvpm /mnt oder mit rsync
Raidarray in /etc/fstab statt /dev/hde1 eintragen und neu booten.
Grub auf der zweiten Platte installierenWenn die erste Platte ausfällt, fällt auch der MBR aus und es kann nicht mehr gebootet werden. Auch zum Booten des Rechners falls die hde1 noch nicht im Verband ist, wird der Grub gebraucht.(???). Deshalb wird der Grub-Bootsektor auf die zweite Platte installiert werden. Beim Plattenaustausch muß das wiederholt werden.grub > device (hd0) /dev/hdg > root (hd0,0) > setup (hd0)Neu booten. Falls alles glatt gegangen ist, hde1 mit in den Array nehmen: # mdadm --add /dev/md1 /dev/hde1und die /etc/mdadm/mdadm.conf anpassen (2.Device in der Array Zeile bei hdg1).
ARRAY /dev/md1 ... devices=/dev/hdg1,/dev/hde1Wenn der Rechner dann von der md1 bootet nochmal ein frisches initrd bauen und /boot/grub/menu.lst kontrollieren
und gegebenenfalls anpassen:
# mkinitrd -o /boot/initrd.img-2.6.8-raid /lib/modules/2.6.8-3-686Neu booten, jetz sollten alle Arrays korrekt laufen... Paketfilter mit iptablesDamit der Rechner etwas besser geützt ist, verhindert ein Paketfilter Verbindungsaufnahmen auf den Server agena und lässt nur einige Ports, wie POP, SMTP, HTTP und HTTPS offen.Damit man sich bei Änderungen an der Datei fwstart nicht versehentlich dauerhaft
selber aussperrt, wird die Firewallregel alle 24h für 5 Minuten durch einen
Defaultfiltersatz ersetzt.Server kommt zum Providerumstellen der IP Adresse auf den Provider Hetznerin /etc/network/interfaces |