Server Setup · 5 min read · Dec 04, 2025
Der perfekte Server - Mandriva 2009.0 Free (i386) - Seite 5
10 MySQL (5.0)
Um MySQL 5.0 zu installieren, führen wir einfach aus:
urpmi MySQL MySQL-client libmysql15-develStandardmäßig ist das Netzwerk in Mandriva 2009.0s MySQL-Paket nicht aktiviert, aber das Netzwerk wird von ISPConfig benötigt. Wir können dies ändern, indem wir die Zeile skip-networking in /etc/my.cnf auskommentieren.
vi /etc/my.cnf| [...] # Hören Sie überhaupt nicht auf einem TCP/IP-Port. Dies kann eine Sicherheitsverbesserung sein, # wenn alle Prozesse, die sich mit mysqld verbinden müssen, auf demselben Host ausgeführt werden. # Alle Interaktionen mit mysqld müssen über Unix-Sockets oder benannte Pipes erfolgen. # Beachten Sie, dass die Verwendung dieser Option ohne Aktivierung benannter Pipes unter Windows # (über die Option "enable-named-pipe") mysqld unbrauchbar macht! # #skip-networking [...] |
Danach erstellen wir die Systemstartlinks für MySQL…
chkconfig mysqld on… und starten es:
/etc/init.d/mysqld startÜberprüfen Sie nun, ob das Netzwerk aktiviert ist. Führen Sie aus:
netstat -tap | grep mysqlDie Ausgabe sollte wie folgt aussehen:
[root@server1 var]# netstat -tap | grep mysql
tcp 0 0 *:mysql-im *:* LISTEN 3181/mysqlmanager
tcp 0 0 *:mysql *:* LISTEN 3190/mysqld
[root@server1 var]#Als nächstes führen Sie aus:
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpasswordum ein Passwort für den Benutzer root festzulegen (ansonsten kann jeder auf Ihre MySQL-Datenbank zugreifen!).
11 Postfix mit SMTP-AUTH und TLS; Dovecot
Installieren Sie die erforderlichen Pakete (Postfix, cyrus-sasl, Dovecot usw.) wie folgt:
urpmi cyrus-sasl libsasl2 libsasl2-devel libsasl2-plug-plain libsasl2-plug-anonymous libsasl2-plug-crammd5 libsasl2-plug-digestmd5 libsasl2-plug-gssapi libsasl2-plug-login postfix dovecotFühren Sie dann aus:
postconf -e 'mydestination = /etc/postfix/local-host-names, localhost.$mydomain'
postconf -e 'smtpd_sasl_local_domain ='
postconf -e 'smtpd_sasl_auth_enable = yes'
postconf -e 'smtpd_sasl_security_options = noanonymous'
postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_sasl_authenticated_header = yes'
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'
postconf -e 'inet_interfaces = all'
postconf -e 'mynetworks = 127.0.0.0/8'
touch /etc/postfix/local-host-namesDann setzen wir den Hostnamen in unserer Postfix-Installation (stellen Sie sicher, dass Sie server1 und example.com durch Ihre eigenen Einstellungen ersetzen):
postconf -e 'mydomain = example.com'
postconf -e 'myhostname = server1.$mydomain'Bearbeiten Sie /etc/sasl2/smtpd.conf. Es sollte wie folgt aussehen:
vi /etc/sasl2/smtpd.conf| # SASL-Bibliothekskonfigurationsdatei für postfix # Alle Parameter sind dokumentiert in: # /usr/share/doc/cyrus-sasl/options.html # Die mech_list-Parameter listen die zu verwendenden sasl-Mechanismen auf, # standardmäßig sind alle gefundenen Mechs. mech_list: plain login # Um sich mit dem separaten saslauthd-Daemon zu authentifizieren, (z.B. für # System- oder ldap-Benutzer). Siehe auch /etc/sysconfig/saslauthd. pwcheck_method: saslauthd saslauthd_path: /var/lib/sasl2/mux # Um sich gegen Benutzer zu authentifizieren, die in sasldb gespeichert sind. #pwcheck_method: auxprop #auxprop_plugin: sasldb #sasldb_path: /var/lib/sasl2/sasl.db |
Der Standard-Authentifizierungsmechanismus für saslauthd ist pam, jedoch scheint es in Mandriva 2009.0 einen Fehler zu geben. Wenn Sie eine E-Mail senden, geht die erste durch, und sobald Sie versuchen, eine zweite E-Mail zu senden, stirbt saslauthd. Sie finden Nachrichten wie diese in /var/log/messages:
Oct 9 17:53:42 server1 saslauthd[4460]: server_exit : master exited: 4460Ich habe den folgenden Workaround gefunden: Öffnen Sie /etc/sysconfig/saslauthd…
vi /etc/sysconfig/saslauthd… und ändern Sie SASL_AUTHMECH von pam auf shadow:
| # $Id: saslauthd.sysconfig,v 1.1 2001/05/02 10:55:48 wiget Exp $ # Authentifizierungsmechanismus (siehe Liste siehe saslauthd -v) SASL_AUTHMECH=shadow # Hostname für den entfernten IMAP-Server (wenn das rimap-auth-Mech verwendet wird) # Ldap-Konfigurationsdatei (wenn das ldap-auth-Mech verwendet wird) SASL_MECH_OPTIONS= # Zusätzliche Optionen (siehe Liste siehe saslauthd -h) SASLAUTHD_OPTS= |
Erstellen Sie das SSL-Zertifikat, das für TLS benötigt wird:
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csropenssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crtopenssl rsa -in smtpd.key -out smtpd.key.unencryptedmv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650… und konfigurieren Sie Postfix für TLS:
postconf -e 'smtpd_tls_auth_only = no'
postconf -e 'smtp_use_tls = yes'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtp_tls_note_starttls_offer = yes'
postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'
postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'
postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_tls_received_header = yes'
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
postconf -e 'tls_random_source = dev:/dev/urandom'Als nächstes müssen wir Dovecot so konfigurieren, dass es die Protokolle imap, imaps, pop3 und pop3s bereitstellt. Öffnen Sie /etc/dovecot.conf und passen Sie die folgenden Werte an:
vi /etc/dovecot.conf| [...] # Protokolle, die wir bereitstellen möchten: imap imaps pop3 pop3s # Wenn Sie nur dovecot-auth verwenden möchten, können Sie dies auf "none" setzen. protocols = imap imaps pop3 pop3s [...] disable_plaintext_auth = no [...] pop3_uidl_format = %08Xu%08Xv [...] |
Jetzt müssen wir dem System sagen, dass Dovecot erst gestartet werden soll, nachdem ntpd gestartet wurde, da Dovecot nicht sehr nachsichtig ist, wenn die Zeit Ihres Systems während des Betriebs von Dovecot zurückspringt (siehe http://wiki.dovecot.org/TimeMovedBackwards). Dies könnte zu Fehlern wie den folgenden in Ihrem Syslog führen:
Apr 9 19:29:18 server1 dovecot: Zeit wurde gerade um 17 Sekunden zurückgesetzt. Dies könnte viele Probleme verursachen, also werde ich mich jetzt einfach umbringen. http://wiki.dovecot.org/TimeMovedBackwardsLeider wird Dovecot in Mandriva vor ntpd gestartet, also ändern wir es wie folgt:
cd /etc/rc3.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecot
cd /etc/rc4.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecot
cd /etc/rc5.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecotDann erstellen wir die Systemstartlinks für Postfix…
chkconfig postfix on… und (re)starten Postfix, saslauthd und Dovecot:
/etc/init.d/postfix restart
/etc/init.d/saslauthd restart
/etc/init.d/dovecot restartUm zu sehen, ob SMTP-AUTH und TLS jetzt richtig funktionieren, führen Sie den folgenden Befehl aus:
telnet localhost 25Nachdem Sie die Verbindung zu Ihrem Postfix-Mailserver hergestellt haben, geben Sie ein:
ehlo localhostWenn Sie die Zeilen sehen:
250-STARTTLSund
250-AUTH PLAIN LOGINist alles in Ordnung:
[root@server1 rc5.d]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 server1.example.com ESMTP Postfix (2.5.5) (Mandriva Linux)
ehlo localhost
250-server1.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
[root@server1 rc5.d]#Geben Sie ein:
quitum zur Shell des Systems zurückzukehren.
11.1 Maildir
Dovecot verwendet das Maildir-Format (nicht mbox), also wenn Sie ISPConfig auf dem Server installieren, stellen Sie bitte sicher, dass Sie Maildir unter Management -> Server -> Einstellungen -> E-Mail aktivieren. ISPConfig wird dann die erforderliche Konfiguration vornehmen.
Wenn Sie ISPConfig nicht installieren möchten, müssen Sie Postfix so konfigurieren, dass E-Mails an das Maildir eines Benutzers zugestellt werden (Sie können dies auch tun, wenn Sie ISPConfig verwenden - es schadet nicht ;-)):
postconf -e 'home_mailbox = Maildir/'
postconf -e 'mailbox_command ='
/etc/init.d/postfix restartErhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.