GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3]

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3]

Dieses Tutorial zeigt, wie man einen Ubuntu 11.10 (Oneiric Ocelot) Server mit nginx für die Installation von ISPConfig 3 vorbereitet und wie man ISPConfig 3 installiert. Seit Version 3.0.4 bietet ISPConfig zusätzlich zu Apache volle Unterstützung für den nginx Webserver , und dieses Tutorial behandelt die Einrichtung eines Servers, der nginx anstelle von Apache verwendet. ISPConfig 3 ist ein Webhosting-Kontrollfeld, mit dem Sie die folgenden Dienste über einen Webbrowser konfigurieren können:nginx- und Apache-Webserver, Postfix-Mailserver, MySQL-, BIND- oder MyDNS-Nameserver, PureFTPd, SpamAssassin, ClamAV und viele mehr.

Wenn Sie nginx anstelle von Apache mit ISPConfig verwenden möchten, beachten Sie bitte, dass Ihre nginx-Version mindestens 0.8.21 sein muss und Sie auch PHP-FPM installieren müssen. Für CGI/Perl-Unterstützung müssen Sie fcgiwrap verwenden. Dies alles wird in diesem Tutorial behandelt.

Bitte beachten Sie, dass Sie dieses Tutorial nicht für Debian Squeeze verwenden können, da Squeeze mit einer älteren nginx-Version (0.7.67.) geliefert wird und kein PHP-FPM-Paket enthält!

Bitte beachten Sie, dass dieses Setup nicht für ISPConfig 2 funktioniert ! Es gilt nur für ISPConfig 3!

Ich gebe keine Garantie dafür, dass dies bei Ihnen funktioniert!

ISPConfig 3 Handbuch

Um zu lernen, wie man ISPConfig 3 verwendet, empfehle ich dringend, das ISPConfig 3-Handbuch herunterzuladen.

Auf etwa 300 Seiten behandelt es das Konzept hinter ISPConfig (Admin, Reseller, Clients), erklärt, wie ISPConfig 3 installiert und aktualisiert wird, enthält eine Referenz für alle Formulare und Formularfelder in ISPConfig zusammen mit Beispielen für gültige Eingaben und bietet Tutorials für die häufigsten Aufgaben in ISPConfig 3. Es beschreibt auch, wie Sie Ihren Server sicherer machen können, und enthält am Ende einen Abschnitt zur Fehlerbehebung.

ISPConfig Monitor-App für Android

Mit der ISPConfig Monitor App können Sie Ihren Serverstatus überprüfen und herausfinden, ob alle Dienste wie erwartet laufen. Sie können TCP- und UDP-Ports überprüfen und Ihre Server anpingen. Darüber hinaus können Sie diese App verwenden, um Details von Servern anzufordern, auf denen ISPConfig installiert ist (Bitte beachten Sie, dass die installierte Mindestversion von ISPConfig 3 mit Unterstützung für die ISPConfig Monitor App 3.0.3.3 ist! ); Diese Details umfassen alles, was Sie aus dem Monitor-Modul im ISPConfig Control Panel wissen (z. B. Dienste, Mail- und Systemprotokolle, Mail-Warteschlange, CPU- und Speicherinformationen, Festplattennutzung, Quote, Betriebssystemdetails, RKHunter-Protokoll usw.) und natürlich , da ISPConfig Multiserver-fähig ist, können Sie alle Server prüfen, die von Ihrem ISPConfig-Masterserver gesteuert werden.

Anweisungen zum Herunterladen und zur Verwendung finden Sie unter http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

1 Voraussetzungen

Um ein solches System zu installieren, benötigen Sie Folgendes:

  • die Ubuntu 11.10 Server-CD, erhältlich hier:http://releases.ubuntu.com/releases/11.10/ubuntu-11.10-server-i386.iso (i386) oder http://releases.ubuntu.com/releases /11.10/ubuntu-11.10-server-amd64.iso (x86_64)
  • eine schnelle Internetverbindung.

2 Vorbemerkung

In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.0.100 und dem Gateway 192.168.0.1. Diese Einstellungen können für Sie unterschiedlich sein, daher müssen Sie sie gegebenenfalls ersetzen.

3 Das Basissystem

Legen Sie Ihre Ubuntu-Installations-CD in Ihr System ein und booten Sie davon. Wählen Sie Ihre Sprache:

Wählen Sie dann Ubuntu Server installieren:

Wählen Sie Ihre Sprache erneut (?):

Wählen Sie dann Ihren Standort aus:

Wenn Sie eine ungewöhnliche Kombination aus Sprache und Ort ausgewählt haben (z. B. Englisch als Sprache und Deutschland als Ort, wie in meinem Fall), teilt Ihnen das Installationsprogramm möglicherweise mit, dass für diese Kombination kein Gebietsschema definiert ist. in diesem Fall müssen Sie das Gebietsschema manuell auswählen. Ich wähle hier en_US.UTF-8 aus:

Wählen Sie ein Tastaturlayout (Sie werden aufgefordert, einige Tasten zu drücken, und das Installationsprogramm versucht, Ihr Tastaturlayout anhand der gedrückten Tasten zu erkennen):

Der Installer überprüft die Installations-CD, Ihre Hardware und konfiguriert das Netzwerk mit DHCP, wenn sich ein DHCP-Server im Netzwerk befindet:

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3] – Seite 2

4 Root-Rechte erhalten

Nach dem Neustart können Sie sich mit Ihrem zuvor erstellten Benutzernamen (z. B. Administrator) anmelden. Da wir alle Schritte aus diesem Tutorial mit Root-Rechten ausführen müssen, können wir entweder allen Befehlen in diesem Tutorial die Zeichenfolge sudo voranstellen oder wir werden sofort root, indem wir

eingeben
sudo su 

(Sie können die Root-Anmeldung auch aktivieren, indem Sie

ausführen
sudo passwd root

und root ein Passwort geben. Sie können sich dann direkt als root anmelden, was jedoch von den Ubuntu-Entwicklern und der Community aus verschiedenen Gründen verpönt ist. Siehe http://ubuntuforums.org/showthread.php?t=765414.)

5 Installieren Sie den SSH-Server (optional)

Wenn Sie den OpenSSH-Server nicht während der Systeminstallation installiert haben, können Sie dies jetzt tun:

apt-get install ssh openssh-server

Von nun an können Sie einen SSH-Client wie PuTTY verwenden und sich von Ihrer Workstation mit Ihrem Ubuntu 11.10-Server verbinden und den verbleibenden Schritten aus diesem Tutorial folgen.

6 vim-nox installieren (optional)

In diesem Tutorial verwende ich vi als Texteditor. Das standardmäßige vi-Programm zeigt unter Ubuntu und Debian ein seltsames Verhalten; Um dies zu beheben, installieren wir vim-nox:

apt-get install vim-nox

(Sie müssen dies nicht tun, wenn Sie einen anderen Texteditor wie Joe oder Nano verwenden.)

7 Konfigurieren Sie das Netzwerk

Da der Ubuntu-Installer unser System so konfiguriert hat, dass es seine Netzwerkeinstellungen über DHCP bezieht, müssen wir das jetzt ändern, da ein Server eine statische IP-Adresse haben sollte. Bearbeiten Sie /etc/network/interfaces und passen Sie es an Ihre Bedürfnisse an (in diesem Beispiel-Setup verwende ich die IP-Adresse 192.168.0.100 ):

vi /etc/network/interfaces
# Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen# und wie sie aktiviert werden. Weitere Informationen finden Sie unter Schnittstellen (5). vor> 

Starten Sie dann Ihr Netzwerk neu:

/etc/init.d/networking restart

Bearbeiten Sie dann /etc/hosts. Lass es so aussehen:

vi /etc/hosts
127.0.0.1 localhost.localdomain localhost192.168.0.100 server1.example.com server1# Die folgenden Zeilen sind wünschenswert für IPv6-fähige Hosts::1 ip6 -localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters

Jetzt ausführen

echo server1.example.com> /etc/hostname
/etc/init.d/hostname restart

Führen Sie anschließend

aus

Hostname
Hostname -f

Beide sollten jetzt server1.example.com anzeigen.

8 Bearbeiten Sie /etc/apt/sources.list und aktualisieren Sie Ihre Linux-Installation

Bearbeiten Sie /etc/apt/sources.list. Kommentieren Sie die Installations-CD aus oder entfernen Sie sie aus der Datei und stellen Sie sicher, dass die Universe- und Multiverse-Repositories aktiviert sind. Es sollte so aussehen:

vi /etc/apt/sources.list
## deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/dists/oneiric/main/binary-i386/# deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ dists/oneiric/restricted/binary-i386/# deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ oneiric main limited #deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ dists/oneiric/main/binary-i386/#deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ dists/ oneiric/restricted/binary-i386/#deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ oneiric main limited# Siehe http://help.ubuntu.com/community/UpgradeNotes für das Upgrade auf # neuere Versionen der Distribution.deb http://de.archive.ubuntu.com/ubuntu/ oneiric main limiteddeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric main limited## Wichtige Bugfix-Updates produziert nach der endgültigen Veröffentlichung des ## d istribution.deb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates main limiteddeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates main limited## N.B. Software aus diesem Repository wird vom Ubuntu##-Team VÖLLIG NICHT UNTERSTÜTZT. Bitte beachten Sie auch, dass die Software im Universum KEINE## Überprüfungen oder Aktualisierungen vom Ubuntu-Sicherheitsteam.deb http://de.archive.ubuntu.com/ubuntu/ oneiric universedeb-src http://de.archive erhält. ubuntu.com/ubuntu/ oneiric universedeb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates universedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates universe## N.B. Software aus diesem Repository wird vom Ubuntu##-Team VOLLSTÄNDIG NICHT UNTERSTÜTZT und steht möglicherweise nicht unter einer freien Lizenz. Bitte vergewissern Sie sich über # Ihre Rechte zur Nutzung der Software. Bitte beachten Sie auch, dass Software in## multiverse KEINE Überprüfung oder Updates vom Ubuntu## Sicherheitsteam.deb http://de.archive.ubuntu.com/ubuntu/oneiric multiversedeb-src http://de erhält. archive.ubuntu.com/ubuntu/ oneiric multiversedeb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates multiversedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse## Hinweis:Software aus diesem Repository wurde möglicherweise nicht so## ausführlich getestet wie die in der Hauptversion enthaltene, obwohl sie## neuere Versionen einiger Anwendungen enthält, die möglicherweise nützliche Funktionen bieten.## Bitte beachten Sie auch, dass Software in Backports NICHT empfangen wird alle Überprüfungen## oder Updates vom Ubuntu-Sicherheitsteam.deb http://de.archive.ubuntu.com/ubuntu/ oneiric-backports Main Restricted Universe multiversedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-backports beschränktes Hauptuniversum multiversedeb http://security.ubuntu.com/ubuntu oneiric-sicherheit beschränktes Hauptuniversum http://security.ubuntu.com/ubuntu oneiric-sicherheit beschränktes Hauptuniversum http://security.ubuntu.com /ubuntu oneiric-security universedeb-src http://security.ubuntu.com/ubuntu oneiric-security universedeb http://security.ubuntu.com/ubuntu oneiric-security multiversedeb-src http://security.ubuntu.com/ ubuntu oneiric-security multiverse## Entkommentieren Sie die folgenden zwei Zeilen, um Software aus Canonicals ## 'Teil hinzuzufügen ner'-Repository.## Diese Software ist nicht Teil von Ubuntu, sondern wird Ubuntu-Benutzern von Canonical und den## jeweiligen Anbietern als Service angeboten.# deb http://archive.canonical.com/ubuntu oneiric partner# deb- src http://archive.canonical.com/ubuntu oneiric partner## Entkommentieren Sie die folgenden zwei Zeilen, um Software aus Ubuntus## „Extras“-Repository hinzuzufügen.## Diese Software ist nicht Teil von Ubuntu, sondern wird von Drittanbietern angeboten ## Entwickler, die ihre neueste Software ausliefern möchten. # deb http://extras.ubuntu.com/ubuntu oneiric main# deb-src http://extras.ubuntu.com/ubuntu oneiric main

Dann ausführen

apt-get-Update

um die apt-Paketdatenbank zu aktualisieren und

apt-get-Upgrade

um die neuesten Updates zu installieren (falls vorhanden). Wenn Sie sehen, dass im Rahmen der Updates ein neuer Kernel installiert wird, sollten Sie das System danach neu starten:

Neustart 

9 Standard-Shell ändern

/bin/sh ist ein symbolischer Link zu /bin/dash, wir brauchen jedoch /bin/bash, nicht /bin/dash. Deshalb machen wir das:

dpkg-reconfigure dash

Dash als Standardsystem-Shell verwenden (/bin/sh)? <-- Nein

Andernfalls schlägt die Installation von ISPConfig fehl.

10 AppArmor deaktivieren

AppArmor ist eine Sicherheitserweiterung (ähnlich wie SELinux), die erweiterte Sicherheit bieten soll. Meiner Meinung nach brauchen Sie es nicht, um ein sicheres System zu konfigurieren, und es verursacht normalerweise mehr Probleme als Vorteile (denken Sie daran, nachdem Sie eine Woche lang Fehler behoben haben, weil ein Dienst nicht wie erwartet funktioniert hat, und dann Sie feststellen, dass alles in Ordnung war, nur AppArmor verursachte das Problem). Daher deaktiviere ich es (dies ist ein Muss, wenn Sie später ISPConfig installieren möchten).

Wir können es wie folgt deaktivieren:

/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

11 Synchronisieren Sie die Systemuhr

Es ist eine gute Idee, die Systemuhr mit einem NTP (n Netzwerk t ich bin p rotocol)-Server über das Internet. Führen Sie einfach

aus
apt-get install ntp ntpdate

und Ihre Systemzeit wird immer synchron sein.

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3] – Seite 4

12 Installieren Sie Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Wir können Postfix, Courier, Saslauthd, MySQL, rkhunter und binutils mit einem einzigen Befehl installieren:

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server kurier-authdaemon kurier-authlib-mysql kurier-pop kurier-pop-ssl kurier-imap kurier-imap-ssl libsasl2-2 libsasl2-module libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

Ihnen werden die folgenden Fragen gestellt:

Neues Passwort für den MySQL-Benutzer „root“:<-- yourrootsqlpassword
Passwort für den MySQL-Benutzer „root“ wiederholen:<-- yourrootsqlpassword
Verzeichnisse für webbasierte Verwaltung erstellen? <-- Nein
Allgemeine Art der E-Mail-Konfiguration:<-- Internet-Site
System-E-Mail-Name:<-- server1.example.com
SSL-Zertifikat erforderlich <-- Ok

Wenn Sie (später nachdem Sie Ihr erstes E-Mail-Konto in ISPConfig konfiguriert haben) feststellen, dass Sie keine E-Mails senden können und die folgende Fehlermeldung in /var/log/mail.log...

erhalten
 SASL-LOGIN-Authentifizierung fehlgeschlagen:kein Mechanismus verfügbar 

... gehen Sie bitte zu Ubuntu 11.10 + saslauthd:SASL PLAIN-Authentifizierung fehlgeschlagen:kein Mechanismus verfügbar, um zu erfahren, wie das Problem behoben werden kann.

Wir möchten, dass MySQL auf allen Schnittstellen lauscht, nicht nur auf localhost, deshalb bearbeiten wir /etc/mysql/my.cnf und kommentieren die Zeile bind-address =127.0.0.1:

aus
vi /etc/mysql/my.cnf
[...]# Anstatt das Netzwerk zu überspringen, wird jetzt standardmäßig nur auf# localhost gelauscht, was kompatibler und nicht weniger sicher ist. #Bind-Adresse =127.0.0.1[...]

Dann starten wir MySQL neu:

/etc/init.d/mysql Neustart

Überprüfen Sie nun, ob das Netzwerk aktiviert ist. Führen Sie

aus
netstat -tap | grep mysql

Die Ausgabe sollte wie folgt aussehen:

[email protected]:~# netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                    LISTEN      22355/mysqld
[email protected]:~#

Während der Installation werden die SSL-Zertifikate für IMAP-SSL und POP3-SSL mit dem Hostnamen localhost erstellt. Um dies in den richtigen Hostnamen (server1.example.com in diesem Tutorial) zu ändern, löschen Sie die Zertifikate...

cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem

... und ändern Sie die folgenden zwei Dateien; Ersetzen Sie CN=localhost durch CN=server1.example.com (Sie können bei Bedarf auch die anderen Werte ändern):

vi /etc/courier/imapd.cnf
[...]CN=server1.example.com[...]
vi /etc/courier/pop3d.cnf
[...]CN=server1.example.com[...]

Erstellen Sie dann die Zertifikate neu...

mkimapdcert
mkpop3dcert

... und starten Sie Courier-IMAP-SSL und Courier-POP3-SSL neu:

/etc/init.d/courier-imap-ssl-Neustart
/etc/init.d/courier-pop-ssl-Neustart

13 Installieren Sie Amavisd-new, SpamAssassin und Clamav

Um amavisd-new, SpamAssassin und ClamAV zu installieren, führen wir

aus
apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl- perl libnet-ident-perl zip libnet-dns-perl

Das ISPConfig 3-Setup verwendet amavisd, das die SpamAssassin-Filterbibliothek intern lädt, sodass wir SpamAssassin stoppen können, um etwas RAM freizugeben:

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove

14 Nginx, PHP5 (PHP-FPM) und Fcgiwrap installieren

Nginx ist als Paket für Ubuntu verfügbar, das wir wie folgt installieren können:

apt-get install nginx

Wenn Apache2 bereits auf dem System installiert ist, stoppen Sie es jetzt...

/etc/init.d/apache2 stop

... und Apaches Systemstart-Links entfernen:

insserv -r apache2

Danach nginx starten:

/etc/init.d/nginx start

(Wenn sowohl Apache2 als auch nginx installiert sind, fragt Sie das ISPConfig 3-Installationsprogramm, welches Sie verwenden möchten - antworten Sie in diesem Fall mit nginx. Wenn nur eines von beiden installiert ist, nimmt ISPConfig die notwendige Konfiguration automatisch vor.)

Wir können PHP5 in nginx durch PHP-FPM zum Laufen bringen (PHP-FPM (FastCGI Process Manager) ist eine alternative PHP-FastCGI-Implementierung mit einigen zusätzlichen Funktionen, die für Websites jeder Größe nützlich sind, insbesondere für stark frequentierte Websites), die wir wie folgt installieren:

apt-get install php5-fpm 

PHP-FPM ist ein Daemon-Prozess (mit dem Init-Skript /etc/init.d/php5-fpm), der einen FastCGI-Server auf Port 9000 ausführt.

Um MySQL-Unterstützung in PHP zu erhalten, können wir das Paket php5-mysql installieren. Es ist eine gute Idee, einige andere PHP5-Module zu installieren, die Sie möglicherweise für Ihre Anwendungen benötigen. Sie können wie folgt nach verfügbaren PHP5-Modulen suchen:

apt-cache-Suche php5

Wählen Sie die benötigten aus und installieren Sie sie wie folgt:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5 -sqlite php5-tidy php5-xmlrpc php5-xsl

APC ist ein kostenloser und offener PHP-Opcode-Cacher zum Caching und Optimieren von PHP-Zwischencode. Es ähnelt anderen PHP-Opcode-Cachern wie eAccelerator und XCache. Es wird dringend empfohlen, eines davon zu installieren, um Ihre PHP-Seite zu beschleunigen.

APC kann wie folgt installiert werden:

apt-get install php-apc

Starten Sie nun PHP-FPM neu:

/etc/init.d/php5-fpm Neustart

Um CGI-Unterstützung in nginx zu erhalten, installieren wir Fcgiwrap.

Fcgiwrap ist ein CGI-Wrapper, der auch für komplexe CGI-Skripte funktionieren sollte und für gemeinsam genutzte Hosting-Umgebungen verwendet werden kann, da er jedem vhost erlaubt, sein eigenes cgi-bin-Verzeichnis zu verwenden.

Installieren Sie das fcgiwrap-Paket:

apt-get install fcgiwrap 

Nach der Installation sollte der fcgiwrap-Daemon bereits gestartet sein; sein Socket ist /var/run/fcgiwrap.socket. Wenn es nicht läuft, können Sie es mit dem Skript /etc/init.d/fcgiwrap starten.

Das ist es! Wenn Sie jetzt einen Nginx-Vhost erstellen, kümmert sich ISPConfig um die korrekte Vhost-Konfiguration.

14.1 Installieren Sie phpMyAdmin

Installieren Sie phpMyAdmin wie folgt:

apt-get install phpmyadmin

Sie sehen die folgenden Fragen:

Webserver zur automatischen Neukonfiguration:<-- wählen Sie none (da nur Apache2 und lighttpd als Optionen verfügbar sind)
Datenbank für phpmyadmin mit dbconfig-common konfigurieren? <-- Nein

Sie finden phpMyAdmin jetzt im Verzeichnis /usr/share/phpmyadmin/.

Nachdem Sie ISPConfig 3 installiert haben, können Sie wie folgt auf phpMyAdmin zugreifen:

Der ISPConfig-Apps-vhost auf Port 8081 für nginx wird mit einer phpMyAdmin-Konfiguration geliefert, sodass Sie http://server1.example.com:8081/phpmyadmin oder http://server1.example.com:8081/phpMyAdmin verwenden können, um auf phpMyAdmin zuzugreifen.

Wenn Sie einen /phpmyadmin- oder /phpMyAdmin-Alias ​​verwenden möchten, den Sie von Ihren Websites verwenden können, ist dies etwas komplizierter als für Apache, da nginx keine globalen Aliase hat (d. h. Aliase, die für alle vhosts definiert werden können). Daher müssen Sie diese Aliase für jeden definieren vhost, von dem aus Sie auf phpMyAdmin zugreifen möchten.

Fügen Sie dazu Folgendes in das Feld nginx-Anweisungen auf der Registerkarte Optionen der Website in ISPConfig ein:

 location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }

Wenn Sie https verwenden Anstelle von http für Ihren vhost sollten Sie die Zeile fastcgi_param HTTPS on hinzufügen; wie folgt in Ihre phpMyAdmin-Konfiguration:

 location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS an; # <-- diese Zeile hinzufügen fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }

Wenn Sie sowohl http als auch https für Ihren vhost verwenden, müssen Sie den folgenden Abschnitt zum http {}-Abschnitt in /etc/nginx/nginx.conf (vor allen include-Zeilen) hinzufügen, der festlegt, ob der Besucher http oder https verwendet und setzt die Variable $fastcgi_https (die wir in unserer phpMyAdmin-Konfiguration verwenden werden) entsprechend:

vi /etc/nginx/nginx.conf
[...]http {[...] ## Erkennen, wenn HTTPS verwendet wird map $scheme $fastcgi_https { default off; https an; }[...]}[...]

Vergessen Sie nicht, nginx danach neu zu laden:

/etc/init.d/nginx neu laden 

Gehen Sie dann erneut zum Feld nginx-Anweisungen und statt fastcgi_param HTTPS on; Sie fügen die Zeile fastcgi_param HTTPS $fastcgi_https hinzu; damit Sie phpMyAdmin sowohl für http- als auch für https-Anfragen verwenden können:

 location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https; # <-- diese Zeile hinzufügen fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }

15 Mailman installieren

Seit Version 3.0.4 ermöglicht Ihnen ISPConfig auch das Verwalten (Erstellen/Ändern/Löschen) von Mailman-Mailinglisten. Wenn Sie diese Funktion nutzen möchten, installieren Sie Mailman wie folgt:

apt-get install mailman

Bevor wir Mailman starten können, muss eine erste Mailingliste namens mailman erstellt werden:

Newlist-Mailman

[email protected]:~# newlist mailman
Geben Sie die E-Mail-Adresse der Person ein, die die Liste führt: <-- Admin-E-Mail-Adresse, z. B. [email protected]
Anfängliches Mailman-Passwort: <-- Admin-Passwort für die Mailman-Liste
Um die Erstellung Ihrer Mailingliste abzuschließen, müssen Sie Ihre /etc/aliases (oder
äquivalente) Datei bearbeiten durch Hinzufügen der folgenden Zeilen und möglicherweise Ausführen des
`newaliases"-Programms:

## mailman mailing list
mailman:              "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin:        "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces:      "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm:      "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join:         "|/var/lib/mailman/mail/mailman join mailman"
mailman -leave:        "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner:        "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request:      " |/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe:    "|/var/lib/mailman/mail/mailman subscribe mailman"
mailma n-unsubscribe:  "|/var/lib/mailman/mail/mailman unsubscribe mailman"

Drücken Sie die Eingabetaste, um den Mailman-Eigentümer zu benachrichtigen... <-- ENTER

Beispiel@ unixlinux.online:~#

Danach /etc/aliases öffnen...

vi /etc/aliases

... und fügen Sie die folgenden Zeilen hinzu:

[...]mailman:"|/var/lib/mailman/mail/mailman post mailman"mailman-admin:"|/var/ lib/mailman/mail/mailman admin mailman"mailman-bounces:"|/var/lib/mailman/mail/mailman prallt mailman ab"mailman-confirm:"|/var/lib/mailman/mail/mailman bestätigen mailman"mailman- join:"|/var/lib/mailman/mail/mailman join mailman"mailman-leave:"|/var/lib/mailman/mail/mailman verlässt mailman"mailman-owner:"|/var/lib/mailman/mail /mailman Besitzer mailman"mailman-request:"|/var/lib/mailman/mail/mailman mailman anfordern"mailman-subscribe:"|/var/lib/mailman/mail/mailman mailman abonnieren"mailman-unsubscribe:"|/ var/lib/mailman/mail/mailman unsubscribe mailman"

Ausführen

newaliases

anschließend Postfix neu starten:

/etc/init.d/postfix Neustart

Starten Sie dann den Mailman-Daemon:

/etc/init.d/mailman start

Nachdem Sie ISPConfig 3 installiert haben, können Sie wie folgt auf Mailman zugreifen:

Der vhost der ISPConfig-Apps auf Port 8081 für nginx wird mit einer Mailman-Konfiguration geliefert, sodass Sie http://server1.example.com:8081/cgi-bin/mailman/admin/ oder http://server1.example verwenden können .com:8081/cgi-bin/mailman/listinfo/, um auf Mailman zuzugreifen.

Wenn Sie Mailman von Ihren Websites aus verwenden möchten, ist dies etwas komplizierter als bei Apache, da nginx keine globalen Aliase hat (d. h. Aliase, die für alle vhosts definiert werden können). Daher müssen Sie diese Aliase für jeden definieren vhost, von dem aus Sie auf Mailman zugreifen möchten.

Fügen Sie dazu Folgendes in das Feld nginx-Anweisungen auf der Registerkarte Optionen der Website in ISPConfig ein:

 Speicherort /cgi-bin/mailman { root /usr/lib/; fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_intercept_errors on; fastcgi_pass unix:/var/run/fcgiwrap.socket; } location /images/mailman { alias /usr/share/images/mailman; } Ort /pipermail { alias /var/lib/mailman/archives/public; Autoindex an; }

Dies definiert den Alias ​​/cgi-bin/mailman/ für Ihren vhost, was bedeutet, dass Sie auf die Mailman-Admin-Oberfläche für eine Liste unter http:///cgi-bin/mailman/admin/ zugreifen können, und die Webseite für Benutzer einer Mailingliste finden Sie unter http:///cgi-bin/mailman/listinfo/.

Unter http:///pipermail finden Sie das Archiv der Mailingliste.

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3] – Seite 5

16 Installieren Sie PureFTPd und Quota

PureFTPd und Quota können mit dem folgenden Befehl installiert werden:

apt-get install pure-ftpd-common pure-ftpd-mysql Kontingent Kontingenttool

Bearbeiten Sie die Datei /etc/default/pure-ftpd-common...

vi /etc/default/pure-ftpd-common

... und stellen Sie sicher, dass der Startmodus auf Standalone steht und setzen Sie VIRTUALCHROOT=true:

[...]STANDALONE_OR_INETD=eigenständig[...]VIRTUALCHROOT=true[...]

Jetzt konfigurieren wir PureFTPd so, dass FTP- und TLS-Sitzungen zugelassen werden. FTP ist ein sehr unsicheres Protokoll, da alle Passwörter und alle Daten im Klartext übertragen werden. Durch die Verwendung von TLS kann die gesamte Kommunikation verschlüsselt werden, wodurch FTP viel sicherer wird.

Wenn Sie FTP- und TLS-Sitzungen zulassen möchten, führen Sie

aus
echo 1> /etc/pure-ftpd/conf/TLS

Um TLS verwenden zu können, müssen wir ein SSL-Zertifikat erstellen. Ich erstelle es in /etc/ssl/private/, also erstelle ich zuerst dieses Verzeichnis:

mkdir -p /etc/ssl/private/

Anschließend können wir das SSL-Zertifikat wie folgt generieren:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Ländername (2-Buchstaben-Code) [AU]:<-- Geben Sie Ihren Ländernamen ein (z. B. "DE").
Staats- oder Provinzname (vollständiger Name) [Some-State]:<-- Geben Sie Ihren Staat ein oder Provinzname.
Ortsname (zB Stadt) []:<-- Geben Sie Ihre Stadt ein.
Organisationsname (zB Firma) [Internet Widgits Pty Ltd]:<-- Geben Sie Ihren Organisationsnamen ein (z. B. der Name Ihres Unternehmens).
Name der Organisationseinheit (z. B. Abteilung) []:<-- Geben Sie den Namen Ihrer Organisationseinheit ein (z. B. "IT-Abteilung").
Allgemeiner Name (z. B. IHR Name) []:<-- Geben Sie den vollständig qualifizierten Domänennamen des Systems ein (z. B. "server1.example.com").
E-Mail-Adresse []:<-- Geben Sie Ihre E-Mail-Adresse ein.

Ändern Sie die Berechtigungen des SSL-Zertifikats:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Starten Sie dann PureFTPd neu:

/etc/init.d/pure-ftpd-mysql Neustart

Bearbeiten Sie /etc/fstab. Meine sieht so aus (ich habe ,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 zur Partition mit dem Einhängepunkt / hinzugefügt):

vi /etc/fstab
# /etc/fstab:Statische Dateisysteminformationen.## Verwenden Sie 'blkid', um die universell eindeutige Kennung für ein# Gerät auszugeben; Dies kann mit UUID=als robusterer Weg zum Benennen von Geräten# verwendet werden, der auch dann funktioniert, wenn Festplatten hinzugefügt und entfernt werden. Siehe fstab(5).##     
 proc /proc proc nodev,noexec,nosuid 0 0/dev/mapper/server1-root / ext4 Fehler =remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1# /boot war während der Installation auf /dev/sda1UUID=6fbce377-c3d6-4eb3-8299-88797d4ad18d /boot ext2 defaults 0 2/ dev/mapper/server1-swap_1 none swap sw 0 0/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0

Führen Sie die folgenden Befehle aus, um Kontingente zu aktivieren:

mount -o remount /

quotecheck -avugm
quotaon -avug

17 Installieren Sie den BIND-DNS-Server

BIND kann wie folgt installiert werden:

apt-get install bind9 dnsutils

18 Installieren Sie Vlogger, Webalizer und AWstats

Vlogger, Webalizer und AWstats können wie folgt installiert werden:

apt-get install vlogger webalizer awstats geoip-database

Danach /etc/cron.d/awstats öffnen...

vi /etc/cron.d/awstats

... und kommentieren Sie beide Cron-Jobs in dieser Datei aus:

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] &&/usr/ share/awstats/tools/update.sh# Statische Berichte generieren:#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] &&/usr/share/awstats/tools/buildstatic .sh

19 Jailkit installieren

Jailkit wird nur benötigt, wenn Sie SSH-Benutzer chrooten möchten. Es kann wie folgt installiert werden (Wichtig:Jailkit muss vor ISPConfig installiert werden - es kann nicht nachträglich installiert werden!):

apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper binutils-gold

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binär

Sie können nun das Jailkit .deb-Paket wie folgt installieren:

cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*

20 Installieren Sie fail2ban

Dies ist optional, wird aber empfohlen, da der ISPConfig-Monitor versucht, das fail2ban-Protokoll anzuzeigen:

apt-get install fail2ban

Damit fail2ban PureFTPd, SASL und Courier überwacht, erstellen Sie die Datei /etc/fail2ban/jail.local:

vi /etc/fail2ban/jail.local
[pureftpd]enabled =trueport =ftpfilter =pureftpdlogpath =/var/log/syslogmaxretry =3[sasl]enabled =trueport =smtpfilter =sasllogpath =/ var/log/mail.logmaxretry =5[courierpop3]enabled =trueport =pop3filter =courierpop3logpath =/var/log/mail.logmaxretry =5[courierpop3s]enabled =trueport =pop3sfilter =courierpop3slogpath =/var/log/mail.logmaxretry =5[courierimap]enabled =trueport =imap2filter =courierimaplogpath =/var/log/mail.logmaxretry =5[courierimaps]enabled =trueport =imapsfilter =courierimapslogpath =/var/log/mail.logmaxretry =5

Erstellen Sie dann die folgenden fünf Filterdateien:

vi /etc/fail2ban/filter.d/pureftpd.conf
[Definition]failregex =.*pure-ftpd:\(.*@\) \[WARNUNG\] Authentifizierung für Benutzer fehlgeschlagen. *ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3.conf
# Fail2Ban-Konfigurationsdatei## $Revision:100 $#[Definition]# Option:failregex# Hinweise.:Regex zum Abgleich der Passwortfehlermeldungen in die Logdatei. Der # Host muss mit einer Gruppe namens "host" übereinstimmen. Das Tag "" kann # für den Standard-IP/Hostnamen-Abgleich verwendet werden und ist nur ein Alias ​​für # (?:::f{4,6}:)?(?P\S+)# Werte:TEXT#failregex =pop3d:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:Zu ignorierender Regex. Wenn dieser Regex passt, wird die Zeile ignoriert.# Werte:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3s.conf
# Fail2Ban-Konfigurationsdatei## $Revision:100 $#[Definition]# Option:failregex# Hinweise.:Regex zum Abgleich der Passwortfehlermeldungen in die Logdatei. Der # Host muss mit einer Gruppe namens "host" übereinstimmen. Das Tag "" kann # für den Standard-IP/Hostnamen-Abgleich verwendet werden und ist nur ein Alias ​​für # (?:::f{4,6}:)?(?P\S+)# Werte:TEXT#failregex =pop3d-ssl:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:Zu ignorierender Regex. Wenn dieser Regex passt, wird die Zeile ignoriert.# Werte:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierimap.conf
# Fail2Ban-Konfigurationsdatei## $Revision:100 $#[Definition]# Option:failregex# Hinweise.:Regex zum Abgleich der Passwortfehlermeldungen in die Logdatei. Der # Host muss mit einer Gruppe namens "host" übereinstimmen. Das Tag "" kann # für den Standard-IP/Hostnamen-Abgleich verwendet werden und ist nur ein Alias ​​für # (?:::f{4,6}:)?(?P\S+)# Werte:TEXT#failregex =imapd:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:Zu ignorierender Regex. Wenn dieser Regex passt, wird die Zeile ignoriert.# Werte:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierimaps.conf
# Fail2Ban-Konfigurationsdatei## $Revision:100 $#[Definition]# Option:failregex# Hinweise.:Regex zum Abgleich der Passwortfehlermeldungen in die Logdatei. Der # Host muss mit einer Gruppe namens "host" übereinstimmen. Das Tag "" kann # für den Standard-IP/Hostnamen-Abgleich verwendet werden und ist nur ein Alias ​​für # (?:::f{4,6}:)?(?P\S+)# Werte:TEXT#failregex =imapd-ssl:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:Zu ignorierender Regex. Wenn dieser Regex passt, wird die Zeile ignoriert.# Werte:TEXT#ignoreregex =

Danach fail2ban neu starten:

/etc/init.d/fail2ban Neustart 

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3] – Seite 6

21 Installieren Sie SquirrelMail

Um den SquirrelMail-Webmail-Client zu installieren, führen Sie

aus
apt-get install squirrelmail

Konfigurieren Sie dann SquirrelMail:

squirrelmail-configure

Wir müssen SquirrelMail mitteilen, dass wir Courier-IMAP/-POP3 verwenden:

SquirrelMail Konfiguration : Lesen Sie: config.php (1.4.0)
---------------------------------------------- ------------------------
Hauptmenü --
1. Organisationseinstellungen
2. Servereinstellungen
3. Ordner-Standardeinstellungen
4. Allgemeine Optionen
5. Themen
6. Adressbücher
7. Nachricht des Tages (MOTD)
8. Plugins
9. Datenbank
10. Sprachen

D. Festlegen vordefinierter Einstellungen für bestimmte IMAP-Server

C   Farbe einschalten
S   Daten speichern
Q   Beenden

Befehl >> <-- D


SquirrelMail-Konfiguration : Lesen Sie: config.php
---------------------- ------------------------------
Während wir SquirrelMail entwickelt haben, haben wir einige
Einstellungen entdeckt die mit einigen Servern besser funktionieren, die mit anderen nicht
gut funktionieren. Wenn Sie Ihren IMAP-Server auswählen, legt diese Option 
einige vordefinierte Einstellungen für diesen Server fest.

Bitte beachten Sie müssen noch durchgehen und sicherstellen, dass
alles so ist ist richtig. Das ändert nicht alles. Es sind
nur einige Einstellungen, die dadurch geändert werden.

Bitte wählen Sie Ihren IMAP-Server aus:
    bincimap    = Binc-IMAP-Server
    courier     = Courier-IMAP-Server
    cyrus       = Cyrus IMAP Server
    dovecot     = Dovecot Secure IMAP Server
    exchange    = Microsoft Exchange IMAP Server
    hmailserver = hMail Server
    macosx      = Mac OS X > Mailserver 
    macosx      = Mac OS X > Mailserver /32
    uw          = IMAP Server der University of Washington
    gmail       = IMAP-Zugriff auf Google Mail (Gmail) Konten

    beenden        = Nichts ändern
Befehl >> <-- Kurier


SquirrelMail-Konfiguration : Lesen Sie: config.php
----------------------- ----------------------------------
Während wir SquirrelMail entwickelt haben, haben wir einige entdeckt
Einstellungen, die mit einigen Servern besser funktionieren, die mit anderen
nicht so gut funktionieren. Wenn Sie Ihren IMAP-Server auswählen, legt diese Option 
einige vordefinierte Einstellungen für diesen Server fest.

Bitte beachten Sie müssen noch durchgehen und sicherstellen, dass
alles so ist ist richtig. Das ändert nicht alles. Es sind
nur einige Einstellungen, die dadurch geändert werden.

Bitte wählen Sie Ihren IMAP-Server aus:
    bincimap    = Binc-IMAP-Server
    courier     = Courier-IMAP-Server
    cyrus       = Cyrus IMAP Server
    dovecot     = Dovecot Secure IMAP Server
    exchange    = Microsoft Exchange IMAP Server
    hmailserver = hMail Server
    macosx      = Mac OS X > Mailserver 
    macosx      = Mac OS X > Mailserver /32
    uw         = IMAP-Server der University of Washington

    beenden        = Nichts ändern
Befehl >> courier

              imap_server_type = courier
Default_folder_prefix =Postbox. optional_delimiter = .
               delete_folder = true

Drücken Sie die Eingabetaste, um fortzufahren... <-- ENTER


SquirrelMail-Konfiguration : Lesen Sie: config.php (1.4.0)
------------------------------------------------------------- --------
Hauptmenü --
1. Organisationseinstellungen
2. Servereinstellungen
3. Ordner-Standardeinstellungen
4. Allgemeine Optionen
5. Themen
6. Adressbücher
7. Nachricht des Tages (MOTD)
8. Plugins
9. Datenbank
10. Sprachen

D. Festlegen vordefinierter Einstellungen für bestimmte IMAP-Server

C   Farbe einschalten
S   Daten speichern
Q   Beenden

Befehl >> <-- S


SquirrelMail-Konfiguration : Lesen Sie: config.php (1.4.0)
---------------------- -----------------------------------
Hauptmenü --
1. Organisationseinstellungen
2. Servereinstellungen
3. Ordner-Standardeinstellungen
4. Allgemeine Optionen
5. Themen
6. Adressbücher
7. Nachricht des Tages (MOTD)
8. Plugins
9. Datenbank
10. Sprachen

D. Festlegen vordefinierter Einstellungen für bestimmte IMAP-Server

C   Farbe einschalten
S   Daten speichern
Q   Beenden

Befehl >> S

Daten gespeichert in config.php
Drücken Sie die Eingabetaste, um weiterzumachen... <-- ENTER


SquirrelMail-Konfiguration : Lesen Sie: config.php (1.4.0)
---------------------------------------------- -----------
Hauptmenü --
1. Organisationseinstellungen
2. Servereinstellungen
3. Ordner-Standardeinstellungen
4. Allgemeine Optionen
5. Themen
6. Adressbücher
7. Nachricht des Tages (MOTD)
8. Plugins
9. Datenbank
10. Sprachen

D. Festlegen vordefinierter Einstellungen für bestimmte IMAP-Server

C   Farbe einschalten
S   Daten speichern
Q   Beenden

Befehl >> <-- Q

Sie finden SquirrelMail jetzt im Verzeichnis /usr/share/squirrelmail/.

Nachdem Sie ISPConfig 3 installiert haben, können Sie wie folgt auf SquirrelMail zugreifen:

Der vhost der ISPConfig-Apps auf Port 8081 für nginx wird mit einer SquirrelMail-Konfiguration geliefert, sodass Sie http://server1.example.com:8081/squirrelmail oder http://server1.example.com:8081/webmail verwenden können, um auf SquirrelMail zuzugreifen.

Wenn Sie einen /webmail- oder /squirrelmail-Alias ​​verwenden möchten, den Sie von Ihren Websites verwenden können, ist dies etwas komplizierter als für Apache, da nginx keine globalen Aliase hat (d. h. Aliase, die für alle vhosts definiert werden können). Daher müssen Sie diese Aliase für jeden definieren vhost, von dem aus Sie auf SquirrelMail zugreifen möchten.

Fügen Sie dazu Folgendes in das Feld nginx-Anweisungen auf der Registerkarte Optionen der Website in ISPConfig ein:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail {rewrite ^/* /squirrelmail last; }

Wenn Sie https verwenden Anstelle von http für Ihren vhost sollten Sie die Zeile fastcgi_param HTTPS on hinzufügen; zu Ihrer SquirrelMail-Konfiguration hinzufügen:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS an; # <-- diese Zeile hinzufügen fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail {rewrite ^/* /squirrelmail last; }

Wenn Sie sowohl http als auch https für Ihren vhost verwenden, müssen Sie den folgenden Abschnitt zum http {}-Abschnitt in /etc/nginx/nginx.conf (vor allen include-Zeilen) hinzufügen, der festlegt, ob der Besucher http oder https verwendet und setzt die Variable $fastcgi_https (die wir in unserer SquirrelMail-Konfiguration verwenden werden) entsprechend:

vi /etc/nginx/nginx.conf
[...]http {[...] ## Erkennen, wenn HTTPS verwendet wird map $scheme $fastcgi_https { default off; https an; }[...]}[...]

Vergessen Sie nicht, nginx danach neu zu laden:

/etc/init.d/nginx neu laden 

Gehen Sie dann erneut zum Feld nginx-Anweisungen und statt fastcgi_param HTTPS on; Sie fügen die Zeile fastcgi_param HTTPS $fastcgi_https hinzu; damit Sie SquirrelMail sowohl für http- als auch für https-Anfragen verwenden können:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; Speicherort ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https; # <-- diese Zeile hinzufügen fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie /etc/nginx/fastcgi_params ein; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail {rewrite ^/* /squirrelmail last; }

Der perfekte Server – Ubuntu 11.10 mit Nginx [ISPConfig 3] – Seite 7

22 Installieren Sie ISPConfig 3

Bevor Sie die ISPConfig-Installation starten, vergewissern Sie sich, dass Apache gestoppt ist (falls es installiert ist – es ist möglich, dass einige Ihrer installierten Pakete Apache als Abhängigkeit installiert haben, ohne dass Sie es wissen). Wenn Apache2 bereits auf dem System installiert ist, stoppen Sie es jetzt...

/etc/init.d/apache2 stop

... und Apaches Systemstart-Links entfernen:

insserv -r apache2

Stellen Sie sicher, dass nginx ausgeführt wird:

/etc/init.d/nginx Neustart

(Wenn Sie sowohl Apache als auch nginx installiert haben, fragt Sie das Installationsprogramm, welches Sie verwenden möchten:Apache und nginx erkannt. Wählen Sie den für ISPConfig zu verwendenden Server aus:(apache,nginx) [apache]:

Geben Sie nginx ein. Wenn nur Apache oder Nginx installiert sind, wird dies vom Installer automatisch erkannt und es wird keine Frage gestellt.)

Um ISPConfig 3 von der neuesten veröffentlichten Version zu installieren, gehen Sie wie folgt vor:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install /installieren/

Der nächste Schritt ist die Ausführung

php -q install.php

Dadurch wird das ISPConfig 3-Installationsprogramm gestartet. Der Installer konfiguriert alle Dienste wie Postfix, SASL, Courier usw. für Sie. Eine manuelle Einrichtung wie bei ISPConfig 2 (perfekte Einrichtungsanleitungen) ist nicht erforderlich.

[email protected]:/tmp/ispconfig3_install/install# php -q install.php


------------------- -------------------------------------------------- -----------
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
  | | `--. \  __/  | | / _ \| '_ \| _| |/ _` | |_ |
 _| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
                                              __/ |
                                            |___/
-------------------------------------- -------------------------------------------


>> Anfangskonfiguration

Betriebssystem: Debian oder kompatible, unbekannte Version.

    Im Folgenden sind einige Fragen für die Primärkonfiguration , also sei vorsichtig.
    Standardwerte sind in [Klammern] und können mit  akzeptiert werden.
    Tippe in "Beenden" (ohne Anführungszeichen), um das Installationsprogramm zu stoppen.


Sprache auswählen (en,de) [en]: <-- ENTER

Installationsmodus (Standard,Experte) [Standard]: <-- ENTER

Vollqualifizierter Hostname (FQDN) des Servers, z. B. server1.domain.tld  [server1.example.com]: <-- ENTER

Hostname des MySQL-Servers [localhost]: <-- ENTER

MySQL Root-Benutzername [root]: <-- ENTER

MySQL-Root-Passwort []: <- - yourrootsqlpassword

MySQL-Datenbank zum Erstellen [dbispconfig]: <-- ENTER

MySQL-Zeichensatz [utf8]: <-- ENTER

Apache und nginx erkannt. Wählen Sie den für ISPConfig zu verwendenden Server aus: (Apache, nginx) [Apache]: <-- nginx

Generieren eines privaten 2048-Bit-RSA-Schlüssels
........+++
.......+++
Schreiben eines neuen privaten Schlüssels in „smtpd.key“
-----
Sie werden gleich aufgefordert, Informationen einzugeben das wird 
in Ihren Zertifikatsantrag eingebaut.
Was Sie gleich eingeben werden ist einen einen eindeutigen Namen oder eine DN.
Es gibt einige Felder , aber Sie können einige leer lassen
Für einige Felder gibt es einen Standardwert,
Wenn Sie '.' eingeben, wird das Feld leer gelassen.
-----
Landesname (2 Buchstaben Code) [AU]: <-- ENTER
Name des Bundesstaates oder der Provinz (vollständiger Name) [Some-State]: <-- ENTER
Name des Ortes (z. B. Stadt) []: <-- ENTER
Name der Organisation (z. B. Firma) [Internet Widgits Pty Ltd]: <-- ENTER
Name der Organisationseinheit (z. B. Bereich) []: <-- ENTER
Allgemeiner Name (z. B. IHR Name) []: <-- ENTER
E-Mail-Adresse []: <-- ENTER
Jailkit wird konfiguriert
SASL wird konfiguriert
PAM konfigurieren
Courier konfigurieren
Spamassassin konfigurieren
Amavisd konfigurieren
Getmail konfigurieren
Pureftpd konfigurieren
BIND konfigurieren
nginx konfigurieren
Vlogger konfigurieren
Apps vhost konfigurieren
Bastille-Firewall konfigurieren
Fail2ban konfigurieren
ISPConfig installieren
ISPConfig-Port [8080]: <-- ENTER

Möchten Sie eine sichere (SSL) Verbindung zur ISPConfig-Webschnittstelle (y,n) [y]: <-- ENTER

Generieren des privaten RSA-Schlüssels, 4096 Bit langes Modul
. .................................................... ..........................++
.................. .................................................... .................................................... ..++
e ist 65537 (0x10001)
Sie werden gleich aufgefordert, Informationen einzugeben, die 
in Ihre Zertifikatsanforderung eingebaut werden.
Was Sie eingeben werden ist ein sogenannter Distinguished Name oder DN.
Es gibt ziemlich viele fi Felder aber Sie können einige leer lassen
Für einige Felder gibt es einen Standardwert,
Wenn Sie '.' eingeben, wird das Feld leer gelassen.
-----
Country Name (2 letter code) [AU]: <-- ENTER
State or Province Name (full name) [Some-State]: <-- ENTER
Locality Name (eg, city) []: <-- ENTER
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTER
Organizational Unit Name (eg, section) []: <-- ENTER
Common Name (eg, YOUR name) []: <-- ENTER
Email Address []: <-- ENTER

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- ENTER
An optional company name []: <-- ENTER
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Restarting services ...
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2463
 * Stopping Postfix Mail Transport Agent postfix
   ...done.
 * Starting Postfix Mail Transport Agent postfix
   ...done.
 * Stopping SASL Authentication Daemon saslauthd
   ...done.
 * Starting SASL Authentication Daemon saslauthd
   ...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
 * Stopping ClamAV daemon clamd
   ...done.
 * Starting ClamAV daemon clamd
Bytecode: Security mode set to "TrustSigned".
   ...done.
 * Stopping Courier authentication services authdaemond
   ...done.
 * Starting Courier authentication services authdaemond
   ...done.
 * Stopping Courier IMAP server imapd
   ...done.
 * Starting Courier IMAP server imapd
   ...done.
 * Stopping Courier IMAP-SSL server imapd-ssl
   ...done.
 * Starting Courier IMAP-SSL se rver imapd-ssl
   ...done.
 * Stopping Courier POP3 server...
   ...done.
 * Starting Courier POP3 server...
   ...done.
 * Stopping Courier POP3-SSL server...
   ...done.
 * Starting Courier POP3-SSL server...
   ...done.
 * Restarting Mailman master qrunner mailmanctl
 * Waiting...
   ...fail!
The master qrunner lock could not be acquired because it appears as if another
master qrunner is already running.

   ...done.
 * Reloading PHP5 FastCGI Process Manager php5-fpm
   ...done.
Reloading nginx configuration: nginx.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -D -H -b -A -E -u 1000 -Y 1 -B
Installation completed.
You have mail in /var/mail/root
[email protected]:/tmp/ispconfig3_install/install#

Das Installationsprogramm konfiguriert automatisch alle zugrunde liegenden Dienste, sodass keine manuelle Konfiguration erforderlich ist.

You now also have the possibility to let the installer create an SSL vhost for the ISPConfig control panel, so that ISPConfig can be accessed using https:// instead of http://. To achieve this, just press ENTER when you see this question:Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]:.

Afterwards you can access ISPConfig 3 under http(s)://server1.example.com:8080/ or http(s)://192.168.0.100:8080/ ( http or https depends on what you chose during installation). Log in with the username admin and the password admin (you should change the default password after your first login):

(If you get a 502 Bad Gateway error, just restart PHP-FPM and try again:

/etc/init.d/php5-fpm restart

)

The system is now ready to be used.

22.1 ISPConfig 3 Manual

Um zu lernen, wie man ISPConfig 3 verwendet, empfehle ich dringend, das ISPConfig 3-Handbuch herunterzuladen.

Auf etwa 300 Seiten behandelt es das Konzept hinter ISPConfig (Admin, Reseller, Clients), erklärt, wie ISPConfig 3 installiert und aktualisiert wird, enthält eine Referenz für alle Formulare und Formularfelder in ISPConfig zusammen mit Beispielen für gültige Eingaben und bietet Tutorials für die häufigsten Aufgaben in ISPConfig 3. Es beschreibt auch, wie Sie Ihren Server sicherer machen können, und enthält am Ende einen Abschnitt zur Fehlerbehebung.

22.2 ISPConfig Monitor App For Android

Mit der ISPConfig Monitor App können Sie Ihren Serverstatus überprüfen und herausfinden, ob alle Dienste wie erwartet laufen. Sie können TCP- und UDP-Ports überprüfen und Ihre Server anpingen. Darüber hinaus können Sie diese App verwenden, um Details von Servern anzufordern, auf denen ISPConfig installiert ist (Bitte beachten Sie, dass die installierte Mindestversion von ISPConfig 3 mit Unterstützung für die ISPConfig Monitor App 3.0.3.3 ist! ); Diese Details umfassen alles, was Sie aus dem Monitor-Modul im ISPConfig Control Panel wissen (z. B. Dienste, Mail- und Systemprotokolle, Mail-Warteschlange, CPU- und Speicherinformationen, Festplattennutzung, Quote, Betriebssystemdetails, RKHunter-Protokoll usw.) und natürlich , da ISPConfig Multiserver-fähig ist, können Sie alle Server prüfen, die von Ihrem ISPConfig-Masterserver gesteuert werden.

Anweisungen zum Herunterladen und zur Verwendung finden Sie unter http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

23 Additional Notes

23.1 OpenVZ

If the Ubuntu server that you've just set up in this tutorial is an OpenVZ container (virtual machine), you should do this on the host system (I'm assuming that the ID of the OpenVZ container is 101 - replace it with the correct VPSID on your system):

VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE
do
  vzctl set $VPSID --capability ${CAP}:on --save
done

  • Ubuntu:http://www.ubuntu.com/
  • ISPConfig:http://www.ispconfig.org/

About The Author

Falko Timme is the owner of Timme Hosting (ultra-fast nginx web hosting). He is the lead maintainer of HowtoForge (since 2005) and one of the core developers of ISPConfig (since 2000). He has also contributed to the O'Reilly book "Linux System Administration".


Panels
  1. Der perfekte Server – Ubuntu 14.10 (nginx, BIND, Dovecot, ISPConfig 3)

  2. Der perfekte Server – Fedora 15 x86_64 [ISPConfig 3]

  3. Der perfekte Server - Ubuntu Natty Narwhal (Ubuntu 11.04) [ISPConfig 2]

  4. Der perfekte Server - Ubuntu 11.04 [ISPConfig 3]

  5. Der perfekte Server – CentOS 6.1 x86_64 mit Apache2 [ISPConfig 3]

Der perfekte Server – CentOS 6.2 x86_64 mit Apache2 [ISPConfig 3]

Der perfekte Server – CentOS 6.1 x86_64 mit nginx [ISPConfig 3]

Der perfekte Server – Ubuntu 12.10 (Apache2, BIND, Dovecot, ISPConfig 3)

Der perfekte Server – OpenSUSE 12.2 x86_64 (nginx, Dovecot, ISPConfig 3)

Der perfekte Server – CentOS 6.3 x86_64 (nginx, Dovecot, ISPConfig 3)

Der perfekte Server – CentOS 6.3 x86_64 (nginx, Courier, ISPConfig 3)