ISPConfig/Installation: Unterschied zwischen den Versionen

Aus Foxwiki
Subpages:
Die Seite wurde neu angelegt: „ = TMP = = Automated ISPConfig 3 Installation = This tutorial will take you through installing your own ISPConfig 3 single server setup using the ISPConfig auto-installer. This installer follows the old Perfect Server guides but is more modular and easy to follow. If you want to set up a multiserver setup with dedicated servers for each service instead, see [https://www.howtoforge.com/tutorial/ispconfig-multiserver-setup-debian-ubuntu/ the Perfect Multis…“
 
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(146 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Automatisierte ISPConfig 3-Installation'''


= TMP =
== Beschreibung ==
= Automated ISPConfig 3 Installation =
; Installation eines ISPConfig 3 Einzelservers
* Nach den Richtlinien des "Perfect Server Setup" Howtos auf www.howtoforge.com


This tutorial will take you through installing your own ISPConfig 3 single server setup using the ISPConfig auto-installer. This installer follows the old Perfect Server guides but is more modular and easy to follow. If you want to set up a multiserver setup with dedicated servers for each service instead, see [https://www.howtoforge.com/tutorial/ispconfig-multiserver-setup-debian-ubuntu/ the Perfect Multiserver guide].
; ISPConfig Auto-Installer
Installiert alle benötigten Pakete für ein ISPConfig 3-Setup
* einfach
* modular


This guide works for both Debian 10, Debian 11, Ubuntu 20.04, and Ubuntu 22.04, it currently supports only the x86_64 (also known as AMD64) CPU architecture while ARM is not supported. We will use the hostname server1.example.com. Replace it where necessary. The guide requires a freshly installed and empty base OS, do not try to use it on a system where you configured other services already.
== Vorbereitungen ==
; Voraussetzung
Beginnen Sie mit einer sauberen und leeren Basisinstallation des Betriebssystems
* Versuchen Sie nicht, sie auf einem System anzuwenden, auf dem Sie bereits andere Dienste konfiguriert haben
Betriebssystem: Debian 10, Debian 11, Ubuntu 20.04, oder Ubuntu 22.04.
* Intel oder AMD 64-Bit CPU Architektur (x86_64, auch bekannt als AMD64)
* ARM-CPUs werden zur Zeit nicht unterstützt
Das System muss einen Internetzugang haben, um Software mit apt herunterladen und installieren zu können


== Prerequisites ==
; ''server1.example.com'' durch realen Hostnamen ersetzen


* Operating System: Debian 10, Debian 11, Ubuntu 20.04, or Ubuntu 22.04.
=== Einloggen auf dem Server ===
* Intel or AMD 64-Bit CPU Architecture (x86_64, also known as AMD64). ARM CPUs are not supported at the moment.
; Melden Sie sich als root an oder führen Sie
* The System must have internet access to download and install software with apt.
su -
* Start from a clean- and empty base OS installation.  
unter Debian aus, um root-Benutzer auf Ihrem Server zu werden, bevor Sie fortfahren.  


; WICHTIG
: Sie müssen 'su -' und nicht nur 'su' verwenden, sonst wird Ihre PATH-Variable von Debian falsch gesetzt.


; Unter Ubuntu verwenden Sie den Befehl
sudo -s


== 1. Log in to the server ==
um root-Benutzer zu werden.


Log in as root or run
=== Hostnamen und Hosts ===
; Konfigurieren des Hostnamen und der Hosts
* Hostname des Servers sollte eine Subdomain wie "server1.example.com" sein


su -
; Verwenden Sie keinen Domänennamen ohne einen Subdomänen-Teil wie "example.com" als Hostnamen
* Kann später zu Problemen führen
* Als Erstes sollten Sie den Hostnamen in /etc/hosts überprüfen und ihn gegebenenfalls ändern.
* Die Zeile sollte lauten: "IP-Adresse - Leerzeichen - vollständiger Hostname inkl. Domain - Leerzeichen - Subdomain-Teil".
* Für unseren Hostnamen server1.example.com sollte die Datei wie folgt aussehen (einige Zeilen können unterschiedlich sein, da sie von Hosting-Anbieter zu Hosting-Anbieter unterschiedlich sein können):


on Debian to become the root user on your server before you proceed. '''IMPORTANT''': You must use 'su -' and not just 'su', otherwise your PATH variable is set wrong by Debian.
;/etc/hosts
127.0.0.1 localhost.localdomain localhost
# Diese Zeile sollte auf den richtigen Servernamen geändert werden:
127.0.1.1 server1.example.com server1
# Die folgenden Zeilen sind für IPv6-fähige Hosts wünschenswert
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


On Ubuntu, use the command:  
; /etc/hostname
Sie soll nur den Teil mit der Subdomain enthalten, in unserem Fall:
server1


sudo -s
;Server neu starten, um die Änderung zu übernehmen:
systemctl reboot


to become root user.
Melden Sie sich erneut an und überprüfen Sie mit diesen Befehlen, ob der Hostname jetzt korrekt ist:
hostname
hostname -f


== 2. Configure the hostname and hosts ==
Die Ausgabe sollte wie folgt aussehen:
root@server1:~$ hostname
Server1
root@server1:~$ hostname -f
server1.beispiel.com


The hostname of your server should be a subdomain like "server1.example.com". Do not use a domain name without a subdomain part like "example.com" as hostname as this will cause problems later with your setup. First, you should check the hostname in /etc/hosts and change it when necessary. The line should be: "IP Address - space - full hostname incl. domain - space - subdomain part". For our hostname server1.example.com, the file shall look like this (some lines may be different, it can differ per hosting provider):
Sie müssen auch einen DNS-Eintrag bei Ihrem DNS-Anbieter einrichten, der auf Ihren Server verweist.  
* Es sollte einen A- (und/oder AAAA-) Eintrag für die Subdomain geben, der auf Ihre öffentliche IP verweist.


nano /etc/hosts
=== Aktualisierung des Systems ===
127.0.0.1 localhost.localdomain  localhost
Um die Systempakete zu aktualisieren, führen Sie den Befehl
<nowiki># This line should be changed to the correct servername:</nowiki>
apt update && apt upgrade
127.0.1.1&nbsp;server1.example.com server1


<nowiki># The following lines are desirable for IPv6 capable hosts</nowiki>
== Auto-Installer ==
::1    localhost ip6-localhost ip6-loopback
=== Ausführen des Auto-Installers ===
ff02::1 ip6-allnodes
#  
ff02::2 ip6-allrouters
WARNUNG! Dieses Skript wird Ihren kompletten Server neu konfigurieren!
Es sollte auf einem frisch installierten Server ausgeführt werden und alle aktuellen Konfigurationen, die Sie vorgenommen haben, werden höchstwahrscheinlich verloren gehen!
Geben Sie 'yes' ein, wenn Sie wirklich fortfahren wollen:


Then edit the /etc/hostname file:
Antworten Sie mit "Ja" und drücken Sie die Eingabetaste.
* Das Installationsprogramm wird nun gestartet.


nano /etc/hostname
; Anmeldedaten
Wenn das Installationsprogramm fertig ist, zeigt es Ihnen das ISPConfig-Admin- und MySQL-Root-Passwort wie folgt an:
[INFO] Ihr ISPConfig-Admin-Passwort lautet: 5GvfSSSYsdfdYC
[INFO] Ihr MySQL-Root-Passwort lautet: kkAkft82d!kafMwqxdtYs


It shall contain only the subdomain part, in our case:
; Notieren Sie sich diese Informationen!!


server1
=== Aufruf ===
; Funktionen abschalten oder zusätzliche Dienste installieren
* Argumente an das Installationsprogramm übergeben
; Auto-Installer verfügt über verschiedene Kommandozeilen-Optionen zur Feinabstimmung des Setups
* Sie können z.&nbsp;B.&nbsp;zwischen Apache und Nginx Webserver wählen und welche Dienste auf dem System installiert werden sollen.


Finally,&nbsp;reboot the server to apply the change:  
==== Optionen ====
; Alle Optionen anzeigen
# <nowiki>wget -O - https://get.ispconfig.org | sh -s -- --help</nowiki>


systemctl reboot
; Mögliche Argumente sind
{| class="wikitable sortable options"
|-
! Option !! Beschreibung
|-
| --help || Zeigt diese Hilfeseite an
|-
| --debug || Aktiviert die ausführliche Protokollierung (protokolliert jeden Befehl mit dem Exit-Code)
|-
| --channel || Wähle den Kanal, der für ISPConfig verwendet werden soll. --channel=<stable|dev> "stable" ist die neueste ISPConfig-Version, die auf www.ispconfig.org verfügbar ist. "dev" ist der neueste Stable-Zweig aus dem ISPConfig-Git-Repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/stable-3.1 -> Der dev-Kanal kann Bugs und weniger getestete Funktionen enthalten und sollte nur von sehr erfahrenen Benutzern in der Produktion verwendet werden.
|-
| --lang || Sprache für die ISPConfig-Installation verwenden. Spezifizieren Sie mit --lang=en|de (derzeit werden nur en (Englisch) und de (Deutsch) unterstützt).
|-
| --interactive || Installieren Sie ISPConfig nicht im nicht-interaktiven Modus. Dies ist notwendig, wenn Sie den Expertenmodus verwenden wollen, z.&nbsp;B.&nbsp;um einen Slave-Server zu installieren, der in ein bestehendes Multiserver-Setup integriert werden soll. Multiserver-Setup integriert werden soll.
|-
| --use-nginx || Nginx-Webserver anstelle von apache2 verwenden
|-
| --use-amavis || Verwendung von amavis anstelle von rspamd für die E-Mail-Filterung
|-
| --use-unbound || Verwenden Sie unbound anstelle von bind9 für die lokale Auflösung. Nur erlaubt, wenn --no-dns gesetzt ist.
|-
| --use-php || Bestimmte PHP-Versionen verwenden, durch Komma getrennt, anstatt mehrere PHP zu installieren, z.&nbsp;B.&nbsp;--use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4 und 8.0 verfügbar).
|-
| --use-php=system || deaktiviert das Sury-Repository und installiert nur die Standard-PHP-Version des Systems. Weglassen des Arguments (alle Versionen verwenden)
|-
| --use-ftp-ports || Diese Option legt den passiven Portbereich für pure-ftpd fest. Sie müssen den Portbereich durch einen Bindestrich getrennt angeben, z.&nbsp;B.&nbsp;--use-ftp-ports=40110-40210. Wenn Sie nichts angeben, wird der passive Portbereich nicht konfiguriert.
|-
| --use-certbot || Verwenden Sie Certbot anstelle von acme.sh zum Ausstellen von Let's Encrypt-Zertifikaten. Dies wird nicht empfohlen, es sei denn, Sie migrieren von einem alten Server, der Certbot verwendet.
|-
| --no-web || Verwenden Sie ISPConfig auf diesem Server nicht zur Verwaltung der Webserver-Einstellungen und installieren Sie weder nginx/apache noch pureftpd. Dies verhindert auch die Installation einer ISPConfig-Benutzeroberfläche und impliziert
|-
| --no-roundcube || sowie --no-pma
|-
| --no-mail || Verwenden Sie ISPConfig auf diesem Server nicht zur Verwaltung der Mailserver-Einstellungen. Dadurch wird Postfix für den Versand von Systemmails installiert, aber nicht Dovecot und es werden keine Einstellungen für ISPConfig-Mail. Es impliziert --no-mailman.
|-
| --no-dns || ISPConfig auf diesem Server nicht zur Verwaltung von DNS-Einträgen verwenden. Bind wird nur für die lokale DNS-Zwischenspeicherung/Auflösung installiert.
|-
| --no-local-dns || Installiert keine lokale DNS-Zwischenspeicherung/Auflösung über bind.
|-
| --no-firewall || Installiert kein ufw und weist ISPConfig an, keine Firewall-Einstellungen auf diesem Server zu verwalten.
|-
| --no-roundcube || Roundcube Webmail nicht installieren.
|-
| --roundcube || Roundcube installieren, auch wenn --no-mail verwendet wird. Manuelle Konfiguration der Roundcube-Konfiguration ist erforderlich.
|-
| --no-pma || PHPMyAdmin nicht auf diesem Server installieren.
|-
| --no-mailman || Den Mailinglisten-Manager Mailman nicht installieren.
|-
| --no-quota || Dateisystem-Quota deaktivieren
|-
| --no-ntp || NTP-Einrichtung deaktivieren
|-
| --unattended-upgrades || Installiert UnattendedUpgrades.
|}


Log in again and check if the hostname is correct now with these commands:
Sie können zusätzliche Argumente für die automatische Bereinigung und den automatischen Neustart hinzufügen
{| class="wikitable sortable options"
|-
! Option !! Beschreibung
|-
| --unattended-upgrades=autoclean,reboot || oder nur eines von beiden.
|-
| --i-know-what-i-am-doing || Verhindert, dass der Autoinstaller nach einer Bestätigung fragt, bevor er mit der Neukonfiguration des Servers fortfährt.
|}


hostname
==== Siehe auch ====
hostname -f
* Kapitel 6 des Handbuches für verfügbare Kommandozeilenoptionen


The output shall be like this:
=== Firewall ===
Melden Sie sich in der ISPConfig-Benutzeroberfläche an und gehen Sie zu System -> Firewall.
* Klicken Sie dann auf "Add new firewall record".


root@server1:~$ hostname
; Bei einer normalen Einrichtung würde das so aussehen
server1
{| class="wikitable options"
root@server1:~$ hostname -f
|-
server1.example.com
! Bereich !! Ports
|-
| TCP || 20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
|-
| UDP || 53
|}


You will also have to set up a DNS record with your DNS provider that points to your server. There should be a A (and/or AAAA) record for the subdomain that points to your public IP.
; Die notwendigen Ports für jeden Dienst sind:
{| class="wikitable options"
|-
! Bereich !! Ports
|-
|| Web || 20, 21, 22, 80, 443 und 40110:40210 (alle TCP, kein UDP)
|-
|| Mail || 25, 110, 143, 465, 587, 993, und 995 (alle TCP, kein UDP)
|-
|| DNS || 53 (TCP und UDP)
|-
|| IPSconfig || 8080 und 8081 (alle TCP, kein UDP)
|}


== 3. Update the system ==


To update the system packages, run the command:
Server ist eingerichtet und einsatzbereit


apt update && apt upgrade
=== Komponenten der Basisinstallation ===
{| class="wikitable options"
|-
! Komponente !! Beschreibung
|-
| [[Apache2]] ||
|-
| [[PHP]] ||
|-
| [[MariaDB]] ||
|-
| [[Postfix]] ||
|-
| [[Dovecot]] ||
|-
| [[Rspamd]] ||
|-
| [[BIND]] ||
|-
| [[Jailkit]] ||
|-
| [[Roundcube]] ||
|-
| [[PHPMyAdmin]] ||
|-
| [[Mailman]] ||
|-
| [[Webalizer]] ||
|-
| [[AWStats]] ||
|-
| [[GoAccess]] ||
|}


== 4. Run the autoinstaller ==
=== Webinterface ===
; Login
<nowiki>https://server1.example.com:8080</nowiki>


We can now run the auto-installer. The basic setup contains the following software packages (plus their dependencies of course): Apache2, PHP (versions 5.6 - 8.0), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats and GoAccess. You can easily choose not to use certain functions or install extra services by passing arguments to the installer. See chapter 6 for available command-line options.
== Anwendung ==
; 'Perfect Server'-ähnliches Setup mit Nginx anstelle von Apache
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades


=== Install ISPConfig with Apache web server ===
; Nginx-Webserver ohne E-Mail- und DNS-Dienste
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades


You can now run the script with arguments. For example, if you want a normal install with Apache web server and a port range for Passive FTP + unattended-upgrades, run:
; Mit Apache-Webserver
Normale Installation mit Apache-Webserver und einem Portbereich für passives FTP + unbeaufsichtigte Upgrades
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades


wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades
; Mit Nginx Webserver
Normale Installation mit Nginx Webserver und einem Portbereich für Passive FTP + unattended-upgrades
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades


The next steps are described in the chapter "Running the auto installer".
<noinclude>


=== Install ISPConfig with Nginx web server ===
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
==== Sicherheit ====
==== Dokumentation ====
===== RFC =====
===== Man-Page =====
===== Info-Pages =====
==== Links ====
===== Projekt =====
===== Weblinks =====
# https://www.ispconfig.org/documentation/


You can now run the script with arguments. For example, if you want a normal install with Nginx web server and a port range for Passive FTP + unattended-upgrades, run:  
; Die folgenden Links sind einige nützliche Anleitungen/Hinweise für die weitere Einrichtung
* Einrichten von Mail (rDNS, SPF, DKIM): [https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/ https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/]
* Roundcube optimieren: [https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/ https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/]
* Einrichten von autoconfig (automatische Konfiguration für Ihre E-Mail-Clients): [https://schaal-it.com/ispconfig-automail/ https://schaal-it.com/ispconfig-automail/]
* Verbessern der Sicherheit von PHPMyAdmin und der rspamd-Schnittstelle: [https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/ https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/]
* Code-Repository und Issue-Tracker für den ISPConfig Autoinstaller: [https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller]


wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
; Weitere Fragen
* [https://www.howtoforge.com/community/forums/installation-configuration.27/ forum]


=== Running the auto-installer ===
; Multiserver-Setup
Multiserver-Setup mit dedizierten Servern für jeden Dienst
* siehe [https://www.howtoforge.com/tutorial/ispconfig-multiserver-setup-debian-ubuntu Perfect Multiserver guide]


After some time, you will see:
===== Demo-Installation =====
====== Setup als virtuelle Maschine ======
Für howtoforge-Abonnenten
* kompatibel mit VMWare und Virtualbox (ova/ovf-Format)
* Die virtuelle Maschine basiert auf Debian 11 und verwendet Apache als Webserver


WARNING! This script will reconfigure your complete server!
====== Anmeldedaten für die VM ======
It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!
* Die IP-Adresse der VM lautet 192.168.0.100
Type 'yes' if you really want to continue:
* Das Root-Passwort lautet: howtoforge
* Das Passwort des ISPConfig-Benutzers "admin" lautet:&nbsp;howtoforge
* Es gibt einen weiteren Shell-Benutzer mit dem Namen "administrator" und dem Passwort: howtoforge
* Das MySQL-Root-Passwort lautet: 4VLc2vw5mZzqHNd4xURT


Answer "yes" and hit enter. The installer will now start.
Ändern Sie ''alle Passwörter'' bei der ersten Anmeldung


When the installer is finished, it will show you the ISPConfig admin and MySQL root password like this:  
[[Kategorie:ISPConfig]]
[[Kategorie:Linux/Installation]]


[INFO] Your ISPConfig admin password is: 5GvfSSSYsdfdYC
</noinclude>
[INFO] Your MySQL root password is: kkAkft82d!kafMwqxdtYs
 
Make sure you write this information down, as you will need them later.
 
== 5. Setting up the firewall ==
 
The last thing to do is to set up our firewall.
 
Log in to the ISPConfig UI, and go to System -> Firewall. Then click "Add new firewall record".
 
For a normal setup, it would look like this:
 
TCP:
 
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
 
UDP:
 
53
 
The necessary ports for every service are:
 
Web: 20, 21, 22, 80, 443 and 40110:40210 (All TCP, no UDP)
 
Mail: 25, 110, 143, 465, 587, 993, and 995 (All TCP, no UDP)
 
DNS: 53 (TCP and UDP)
 
Panel: 8080 and 8081 (All TCP, no UDP)
 
Your server is now set up and ready for use. You can log in at '''''https://server1.example.com:8080'''''
 
== 6. Advanced Options ==
 
The auto-installer has various command-line options to fine-tune the setup.
 
You can view all arguments with:
 
wget -O - https://get.ispconfig.org | sh -s -- --help
 
You can e.g. choose between Apache and Nginx webserver and which services shall be installed on the system. The command-line arguments are:
 
Usage: ispc3-ai.sh [] [...]
 
This script automatically installs all needed packages for an ISPConfig 3 setup using the guidelines from the "Perfect Server Setup" howtos on www.howtoforge.com.
 
Possible arguments are:
    --help          Show this help page
    --debug        Enable verbose logging (logs each command with the exit code)
    --channel      Choose the channel to use for ISPConfig. --channel=<stable|dev>
                    "stable" is the latest ISPConfig release available on www.ispconfig.org
                    "dev" is the latest stable-branch from the ISPConfig git repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/stable-3.1
                    -> The dev channel might contain bugs and less-tested features and should only be used in production by very experienced users.
    --lang          Use language for ISPConfig installation. Specify with --lang=en|de (only en (English) and de (German) supported currently).
    --interactive  Don't install ISPConfig in non-interactive mode. This is needed if you want to use expert mode, e. g. to install a slave server that shall be integrated into an existing
                    multiserver setup.
    --use-nginx    Use nginx webserver instead of apache2
    --use-amavis    Use amavis instead of rspamd for mail filtering
    --use-unbound  Use unbound instead of bind9 for local resolving. Only allowed if --no-dns is set.
    --use-php      Use specific PHP versions, comma separated, instead of installing multiple PHP, e.g. --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4 and 8.0 available).
                    --use-php=system disables the sury repository and just installs the system's default PHP version.
                    ommiting the argument (use all versions)
    --use-ftp-ports This option sets the passive port range for pure-ftpd. You have to specify the port range separated by hyphen, e. g. --use-ftp-ports=40110-40210.
                    If not provided the passive port range will not be configured.
    --use-certbot  Use Certbot instead of acme.sh for issuing Let's Encrypt certificates. Not adviced unless you are migrating from a old server that uses Certbot.
    --no-web        Do not use ISPConfig on this server to manage webserver setting and don't install nginx/apache or pureftpd. This will also prevent installing an ISPConfig UI and implies
                    --no-roundcube as well as --no-pma
    --no-mail      Do not use ISPConfig on this server to manage mailserver settings. This will install postfix for sending system mails, but not dovecot and not configure any settings for
                    ISPConfig mail. It implies --no-mailman.
    --no-dns        Do not use ISPConfig on this server to manage DNS entries. Bind will be installed for local DNS caching / resolving only.
    --no-local-dns  Do not install local DNS caching / resolving via bind.
    --no-firewall  Do not install ufw and tell ISPConfig to not manage firewall settings on this server.
    --no-roundcube  Do not install roundcube webmail.
    --roundcube    Install Roundcube even when --no-mail is used. Manual configuration of Roundcube config is needed.
    --no-pma        Do not install PHPMyAdmin on this server.
    --no-mailman    Do not install Mailman mailing list manager.
    --no-quota      Disable file system quota
    --no-ntp        Disable NTP setup
    --unattended-upgrades
                    Install UnattendedUpgrades. You can add extra arguments for automatic cleanup and automatic reboots when necessary with --unattended-upgrades=autoclean,reboot (or only
                    one of them).
    --i-know-what-i-am-doing
                    Prevent the autoinstaller to ask for confirmation before continuing to reconfigure the server.
 
For example, to install a 'Perfect Server' like setup with Nginx instead of Apache, use this command:
 
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
 
Or to install an Nginx web server without Email and DNS services:
 
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades
 
== 7. Finalizing ==
 
Your setup is now done!
 
You can support ISPConfig by purchasing our manual: [https://www.ispconfig.org/documentation/ https://www.ispconfig.org/documentation/]
 
The followings links are some useful tutorials/pointers for further setup: * Setting up mail (rDNS, SPF, DKIM): [https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/ https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/]
* Tweaking Roundcube: [https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/ https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/]
* Setting up autoconfig (automatic configuration for your email clients): [https://schaal-it.com/ispconfig-automail/ https://schaal-it.com/ispconfig-automail/]
* Improve the security of PHPMyAdmin and the rspamd interface: [https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/ https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/]
* Code repository and issue tracker of the ISPConfig Autoinstaller: [https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller]
 
 
 
If you have any questions, ask them on the [https://www.howtoforge.com/community/forums/installation-configuration.27/ forum].
 
== 8 Download as a virtual machine ==
 
This setup is available as a virtual machine download in ova/ovf format (compatible with VMWare and Virtualbox) for howtoforge subscribers.&nbsp;The Virtual machine is based on Debian 11 and uses Apache as web server.
 
'''Login details for the VM''' * The root password is: howtoforge
* The password of the ISPConfig "admin" user is:&nbsp;howtoforge
* There is another shell user with the name "administrator" and password: howtoforge
* The MySQL root password is: 4VLc2vw5mZzqHNd4xURT
 
 
 
Please change all passwords on the first login. * The IP address of the VM is 192.168.0.100

Aktuelle Version vom 12. November 2024, 18:38 Uhr

Automatisierte ISPConfig 3-Installation

Beschreibung

Installation eines ISPConfig 3 Einzelservers
  • Nach den Richtlinien des "Perfect Server Setup" Howtos auf www.howtoforge.com
ISPConfig Auto-Installer

Installiert alle benötigten Pakete für ein ISPConfig 3-Setup

  • einfach
  • modular

Vorbereitungen

Voraussetzung

Beginnen Sie mit einer sauberen und leeren Basisinstallation des Betriebssystems

  • Versuchen Sie nicht, sie auf einem System anzuwenden, auf dem Sie bereits andere Dienste konfiguriert haben

Betriebssystem: Debian 10, Debian 11, Ubuntu 20.04, oder Ubuntu 22.04.

  • Intel oder AMD 64-Bit CPU Architektur (x86_64, auch bekannt als AMD64)
  • ARM-CPUs werden zur Zeit nicht unterstützt

Das System muss einen Internetzugang haben, um Software mit apt herunterladen und installieren zu können

server1.example.com durch realen Hostnamen ersetzen

Einloggen auf dem Server

Melden Sie sich als root an oder führen Sie
su -

unter Debian aus, um root-Benutzer auf Ihrem Server zu werden, bevor Sie fortfahren.

WICHTIG
Sie müssen 'su -' und nicht nur 'su' verwenden, sonst wird Ihre PATH-Variable von Debian falsch gesetzt.
Unter Ubuntu verwenden Sie den Befehl
sudo -s

um root-Benutzer zu werden.

Hostnamen und Hosts

Konfigurieren des Hostnamen und der Hosts
  • Hostname des Servers sollte eine Subdomain wie "server1.example.com" sein
Verwenden Sie keinen Domänennamen ohne einen Subdomänen-Teil wie "example.com" als Hostnamen
  • Kann später zu Problemen führen
  • Als Erstes sollten Sie den Hostnamen in /etc/hosts überprüfen und ihn gegebenenfalls ändern.
  • Die Zeile sollte lauten: "IP-Adresse - Leerzeichen - vollständiger Hostname inkl. Domain - Leerzeichen - Subdomain-Teil".
  • Für unseren Hostnamen server1.example.com sollte die Datei wie folgt aussehen (einige Zeilen können unterschiedlich sein, da sie von Hosting-Anbieter zu Hosting-Anbieter unterschiedlich sein können):
/etc/hosts
127.0.0.1 localhost.localdomain localhost
# Diese Zeile sollte auf den richtigen Servernamen geändert werden:
127.0.1.1 server1.example.com server1

# Die folgenden Zeilen sind für IPv6-fähige Hosts wünschenswert
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
/etc/hostname

Sie soll nur den Teil mit der Subdomain enthalten, in unserem Fall:

server1
Server neu starten, um die Änderung zu übernehmen
systemctl reboot

Melden Sie sich erneut an und überprüfen Sie mit diesen Befehlen, ob der Hostname jetzt korrekt ist:

hostname
hostname -f

Die Ausgabe sollte wie folgt aussehen:

root@server1:~$ hostname
Server1
root@server1:~$ hostname -f
server1.beispiel.com

Sie müssen auch einen DNS-Eintrag bei Ihrem DNS-Anbieter einrichten, der auf Ihren Server verweist.

  • Es sollte einen A- (und/oder AAAA-) Eintrag für die Subdomain geben, der auf Ihre öffentliche IP verweist.

Aktualisierung des Systems

Um die Systempakete zu aktualisieren, führen Sie den Befehl

apt update && apt upgrade

Auto-Installer

Ausführen des Auto-Installers

# 

WARNUNG! Dieses Skript wird Ihren kompletten Server neu konfigurieren!
Es sollte auf einem frisch installierten Server ausgeführt werden und alle aktuellen Konfigurationen, die Sie vorgenommen haben, werden höchstwahrscheinlich verloren gehen!
Geben Sie 'yes' ein, wenn Sie wirklich fortfahren wollen:

Antworten Sie mit "Ja" und drücken Sie die Eingabetaste.

  • Das Installationsprogramm wird nun gestartet.
Anmeldedaten

Wenn das Installationsprogramm fertig ist, zeigt es Ihnen das ISPConfig-Admin- und MySQL-Root-Passwort wie folgt an:

[INFO] Ihr ISPConfig-Admin-Passwort lautet: 5GvfSSSYsdfdYC
[INFO] Ihr MySQL-Root-Passwort lautet: kkAkft82d!kafMwqxdtYs
Notieren Sie sich diese Informationen!!

Aufruf

Funktionen abschalten oder zusätzliche Dienste installieren
  • Argumente an das Installationsprogramm übergeben
Auto-Installer verfügt über verschiedene Kommandozeilen-Optionen zur Feinabstimmung des Setups
  • Sie können z. B. zwischen Apache und Nginx Webserver wählen und welche Dienste auf dem System installiert werden sollen.

Optionen

Alle Optionen anzeigen
# wget -O - https://get.ispconfig.org | sh -s -- --help
Mögliche Argumente sind
Option Beschreibung
--help Zeigt diese Hilfeseite an
--debug Aktiviert die ausführliche Protokollierung (protokolliert jeden Befehl mit dem Exit-Code)
--channel dev> "stable" ist die neueste ISPConfig-Version, die auf www.ispconfig.org verfügbar ist. "dev" ist der neueste Stable-Zweig aus dem ISPConfig-Git-Repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/stable-3.1 -> Der dev-Kanal kann Bugs und weniger getestete Funktionen enthalten und sollte nur von sehr erfahrenen Benutzern in der Produktion verwendet werden.
--lang de (derzeit werden nur en (Englisch) und de (Deutsch) unterstützt).
--interactive Installieren Sie ISPConfig nicht im nicht-interaktiven Modus. Dies ist notwendig, wenn Sie den Expertenmodus verwenden wollen, z. B. um einen Slave-Server zu installieren, der in ein bestehendes Multiserver-Setup integriert werden soll. Multiserver-Setup integriert werden soll.
--use-nginx Nginx-Webserver anstelle von apache2 verwenden
--use-amavis Verwendung von amavis anstelle von rspamd für die E-Mail-Filterung
--use-unbound Verwenden Sie unbound anstelle von bind9 für die lokale Auflösung. Nur erlaubt, wenn --no-dns gesetzt ist.
--use-php Bestimmte PHP-Versionen verwenden, durch Komma getrennt, anstatt mehrere PHP zu installieren, z. B. --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4 und 8.0 verfügbar).
--use-php=system deaktiviert das Sury-Repository und installiert nur die Standard-PHP-Version des Systems. Weglassen des Arguments (alle Versionen verwenden)
--use-ftp-ports Diese Option legt den passiven Portbereich für pure-ftpd fest. Sie müssen den Portbereich durch einen Bindestrich getrennt angeben, z. B. --use-ftp-ports=40110-40210. Wenn Sie nichts angeben, wird der passive Portbereich nicht konfiguriert.
--use-certbot Verwenden Sie Certbot anstelle von acme.sh zum Ausstellen von Let's Encrypt-Zertifikaten. Dies wird nicht empfohlen, es sei denn, Sie migrieren von einem alten Server, der Certbot verwendet.
--no-web Verwenden Sie ISPConfig auf diesem Server nicht zur Verwaltung der Webserver-Einstellungen und installieren Sie weder nginx/apache noch pureftpd. Dies verhindert auch die Installation einer ISPConfig-Benutzeroberfläche und impliziert
--no-roundcube sowie --no-pma
--no-mail Verwenden Sie ISPConfig auf diesem Server nicht zur Verwaltung der Mailserver-Einstellungen. Dadurch wird Postfix für den Versand von Systemmails installiert, aber nicht Dovecot und es werden keine Einstellungen für ISPConfig-Mail. Es impliziert --no-mailman.
--no-dns ISPConfig auf diesem Server nicht zur Verwaltung von DNS-Einträgen verwenden. Bind wird nur für die lokale DNS-Zwischenspeicherung/Auflösung installiert.
--no-local-dns Installiert keine lokale DNS-Zwischenspeicherung/Auflösung über bind.
--no-firewall Installiert kein ufw und weist ISPConfig an, keine Firewall-Einstellungen auf diesem Server zu verwalten.
--no-roundcube Roundcube Webmail nicht installieren.
--roundcube Roundcube installieren, auch wenn --no-mail verwendet wird. Manuelle Konfiguration der Roundcube-Konfiguration ist erforderlich.
--no-pma PHPMyAdmin nicht auf diesem Server installieren.
--no-mailman Den Mailinglisten-Manager Mailman nicht installieren.
--no-quota Dateisystem-Quota deaktivieren
--no-ntp NTP-Einrichtung deaktivieren
--unattended-upgrades Installiert UnattendedUpgrades.

Sie können zusätzliche Argumente für die automatische Bereinigung und den automatischen Neustart hinzufügen

Option Beschreibung
--unattended-upgrades=autoclean,reboot oder nur eines von beiden.
--i-know-what-i-am-doing Verhindert, dass der Autoinstaller nach einer Bestätigung fragt, bevor er mit der Neukonfiguration des Servers fortfährt.

Siehe auch

  • Kapitel 6 des Handbuches für verfügbare Kommandozeilenoptionen

Firewall

Melden Sie sich in der ISPConfig-Benutzeroberfläche an und gehen Sie zu System -> Firewall.

  • Klicken Sie dann auf "Add new firewall record".
Bei einer normalen Einrichtung würde das so aussehen
Bereich Ports
TCP 20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
UDP 53
Die notwendigen Ports für jeden Dienst sind
Bereich Ports
Web 20, 21, 22, 80, 443 und 40110:40210 (alle TCP, kein UDP)
Mail 25, 110, 143, 465, 587, 993, und 995 (alle TCP, kein UDP)
DNS 53 (TCP und UDP)
IPSconfig 8080 und 8081 (alle TCP, kein UDP)


Server ist eingerichtet und einsatzbereit

Komponenten der Basisinstallation

Komponente Beschreibung
Apache2
PHP
MariaDB
Postfix
Dovecot
Rspamd
BIND
Jailkit
Roundcube
PHPMyAdmin
Mailman
Webalizer
AWStats
GoAccess

Webinterface

Login
https://server1.example.com:8080

Anwendung

'Perfect Server'-ähnliches Setup mit Nginx anstelle von Apache
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
Nginx-Webserver ohne E-Mail- und DNS-Dienste
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades
Mit Apache-Webserver

Normale Installation mit Apache-Webserver und einem Portbereich für passives FTP + unbeaufsichtigte Upgrades

wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades
Mit Nginx Webserver

Normale Installation mit Nginx Webserver und einem Portbereich für Passive FTP + unattended-upgrades

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades


Anhang

Siehe auch

Sicherheit

Dokumentation

RFC
Man-Page
Info-Pages

Links

Projekt
Weblinks
  1. https://www.ispconfig.org/documentation/
Die folgenden Links sind einige nützliche Anleitungen/Hinweise für die weitere Einrichtung
Weitere Fragen
Multiserver-Setup

Multiserver-Setup mit dedizierten Servern für jeden Dienst

Demo-Installation
Setup als virtuelle Maschine

Für howtoforge-Abonnenten

  • kompatibel mit VMWare und Virtualbox (ova/ovf-Format)
  • Die virtuelle Maschine basiert auf Debian 11 und verwendet Apache als Webserver
Anmeldedaten für die VM
  • Die IP-Adresse der VM lautet 192.168.0.100
  • Das Root-Passwort lautet: howtoforge
  • Das Passwort des ISPConfig-Benutzers "admin" lautet: howtoforge
  • Es gibt einen weiteren Shell-Benutzer mit dem Namen "administrator" und dem Passwort: howtoforge
  • Das MySQL-Root-Passwort lautet: 4VLc2vw5mZzqHNd4xURT

Ändern Sie alle Passwörter bei der ersten Anmeldung