Die Installation von mercaware ERP erfordert eine virtuelle Maschine mit der Linux-Distribution Rocky Linux in Version 9 (Nachfolger von CentOS) auf einem x64-kompatiblen Hypervisor. 32-Bit-Systeme werden nicht unterstützt.
Unterstützte Hypervisoren bzw. Virtualisierungslösungen sind:
Nicht unterstützt werden Container-Virtualisierungen wie Docker, LXC, LXD, OpenVZ, Podman, systemd-nspawn, User Mode Linux oder Virtuozzo.
Eine Installation auf physischer Hardware („Bare Metal“) ist zwar technisch möglich, sofern Rocky Linux die Hardware unterstützt, aber im Normalfall nicht empfohlen. Die Sicherstellung von Hardware-Kompatibilität und -Redundanzen (z.B. RAID, redundante Netzteile, USV, Backup) obliegt dem Kunden.
Mindestanforderungen für mercaware ERP:
Für eine durchschnittliche Inhouse-Installation mit Entwicklungsmandant ist eine Verdoppelung der Mindestanforderungen empfohlen. Da Inhouse-Installationen auch sehr abweichende Anforderungen haben können, kontaktieren Sie All for Accounting bitte vorab. Bei Migrationen oder Updates sollten die Ressourcen der bereits bestehenden virtuellen Maschine als Richtwert herangezogen werden.
Sofern die Anmeldesite per HTTPS, d.h. HTTP mit SSL/TLS-Verschlüsselung, aufrufbar sein soll, muss die virtuelle Maschine entweder über einen öffentlichen DNS-Namen (z.B. mercaware.example.net
) auf Port 80/TCP und 443/TCP für Let's Encrypt erreichbar sein oder ein entsprechendes SSL-Zertifikat muss vom Kunden selbst bereitgestellt und regelmäßig ausgetauscht werden.
Nachfolgend für eine vorgelagerte Firewall empfohlene Konfiguration aus Sicht der virtuellen Maschine mit mercaware ERP. Daten-Ingress („eingehend“) bezeichnet den Zugriff auf die von der virtuellen Maschine bereitgestellten Dienste und sollte, sofern möglich, die Quell-IP-Adressen betreffend eingeschränkt werden (z.B. nur private Firmen-Netzwerke), Daten-Egress („ausgehend“) bezeichnet den Zugriff auf externe Dienste (Intranet und/oder Internet) von der virtuellen Maschine aus.
Richtung | Port | Verwendung |
---|---|---|
Ingress | 22/TCP | SSH für Administration, muss für All for Accounting erreichbar sein, Beschränkung auf bestimmte Quell-IP-Adressen möglich |
Ingress | 80/TCP | HTTP-Zugriff auf Anmeldesite (unverschlüsselt) bzw. Umleitung auf HTTPS (wenn konfiguriert) |
Ingress | 443/TCP | HTTPS-Zugriff auf Anmeldesite (HTTP mit SSL/TLS-Verschlüsselung) |
Ingress | 50001/TCP | Zugriff auf ersten mercaware-Mandanten (SSL/TLS-verschlüsselt) |
Ingress | 50002/TCP | Zugriff auf zweiten mercaware-Mandanten (SSL/TLS-verschlüsselt), weitere Mandanten nach gleichem Schema |
Ingress | 51001/TCP | Optional: Zugriff auf PostgreSQL-Datenbank des ersten mercaware-Mandanten (SSL/TLS-verschlüsselt) |
Ingress | 51002/TCP | Optional: Zugriff auf PostgreSQL-Datenbank des zweiten mercaware-Mandanten (SSL/TLS-verschlüsselt), weitere Mandanten nach gleichem Schema |
Egress | 25/TCP | Optional: SMTP-Versand durch mercaware ERP bzw. von Systemmeldungen, Port 587/TCP sollte jedoch präferiert verwendet werden (siehe unten) |
Egress | 53/UDP | DNS-Anfragen mindestens zu den im Linux-Betriebssystem konfigurierten DNS-Resolvern |
Egress | 53/TCP | DNS-Anfragen mindestens zu den im Linux-Betriebssystem konfigurierten DNS-Resolvern |
Egress | 80/TCP | Empfohlen: Betriebssystem-Updates (siehe unten) |
Egress | 123/UDP | NTP-Anfragen mindestens zu den im Linux-Betriebssystem konfigurierten NTP-Servern |
Egress | 443/TCP | Betriebssystem-Updates, Zugriff auf externe Schnittstellen |
Egress | 587/TCP | Optional: SMTP-Versand durch mercaware ERP bzw. von Systemmeldungen, Verwendung eines Relayhosts/Smarthosts möglich (siehe unten) |
Sofern eine Beschränkung des SSH-Ports in der Firewall konfiguriert werden soll, teilt All for Accounting Ihnen die freizuschaltenden Quell-IP-Adressen gerne auf Anfrage mit. Die als optional gekennzeichneten Ports werden standardmäßig nicht benötigt und sollten aus Sicherheitsgründen erst freigeschaltet werden, wenn der Bedarf tatsächlich gegeben ist. Je nach genutzten Schnittstellen sind für Egress-Daten („ausgehend“) eventuell weitere Portfreischaltungen erforderlich.
Wenn über mercaware ERP z.B. Angebote, Auftragsbestätigungen, Rechnungen, Bestellanfragen o.ä. und/oder Systemmeldungen per E-Mail versenden werden sollen, ist für Egress-Daten („ausgehend“) entweder die Portfreischaltung für Port 25/TCP oder (präferiert) 587/TCP erforderlich. Bei Port 587/TCP müssen darüber hinaus All for Accounting noch der zu verwendende Relayhost bzw. Smarthost sowie eventuelle Zugangsdaten für SMTP-Auth mitgeteilt werden. Eine mögliche Begrenzung auf bestimmte Empfänger, z.B. nur firmeninterne E-Mail-Adressen, ist bei Verwendung eines Relayhosts bzw. Smarthosts auf eben diesem durch den entsprechenden Administrator generell technisch möglich. Im Falle der Nutzung von Port 25/TCP ist eine Begrenzung über die gezielte Freischaltung bestimmter Ziel-IP-Adressen ebenfalls generell möglich. Kann auf einen Versand von E-Mails völlig verzichtet werden, ist die Portfreischaltung nicht erforderlich.
Die Portfreischaltung für Egress-Daten („ausgehend“) für Port 80/TCP wird empfohlen, ist aber nicht zwingend erforderlich. Hintergrund ist, dass nicht alle aktiven öffentlichen Mirror-Server für Rocky Linux HTTPS unterstützen. Da die Software-Pakete, wie bei Linux-Distributionen allgemein üblich, jedoch kryptografisch signiert sind und die Authentizität und Integrität der Software-Pakete nach dem Herunterladen, aber vor der Installation, mit einem kryptografischen (öffentlichen) Schlüssel verifiziert wird, welcher mit dem ISO-Installationsabbild installiert wurde, kann die fehlende reine Transportverschlüsselung vernachlässigt werden. Erfolgt die Portfreischaltung nicht und es wird bei der Auswahl des Mirror-Servers ein Server ohne HTTPS-Unterstützung ausgewählt, kann es zu temporären oder permanenten Fehlern bei der Installation oder Aktualisierung von Software-Paketen, und dadurch zu einem erhöhten administrativen Aufwand, kommen.
Installationssprache „English“ und „English (United States)“ auswählen, damit Betriebssystem-Meldungen und -Protokolle später in englischer Sprache sind:
Auf der Maske „Installation Summary“ bitte nachfolgende Punkte wie beschrieben konfigurieren bzw. unverändert lassen:
Punkt „Keyboard“ anklicken und persönlich präferiertes Tastaturlayout, z.B. „German“ auswählen, abschließend links oben auf „Done“ klicken.
Punkt „Language Support“ unverändert auf „English (United States)“ lassen.
Punkt „Time & Date“ unverändert auf „Europe/Berlin timezone“ lassen.
Punkt „Installation Source“ unverändert auf „Local media“ lassen.
Punkt „Software Selection“ anklicken und Auswahlpunkt „Minimal Install“ (in Spalte „Base Environment“ anklicken, danach links oben auf „Done“ klicken:
Hinweis: Eine andere Auswahl als „Minimal Install“ wird nicht unterstützt und eventuelle zusätzlich installierte Pakete werden möglicherweise nachträglich deinstalliert. Die virtuelle Maschine ist nicht für die Benutzung in Verbindung mit einer grafischen Oberfläche gedacht bzw. vorgesehen.
Punkt „Installation Destination“ anklicken, prüfen, dass gewünschte „Local Standard Disks“ abgehakt sind, bei „Storage Configuration“ den Auswahlpunkt „Custom“ anklicken und danach links oben auf „Done“ klicken:
Auf danach erscheinender der Maske „Manual Partitioning“ nachfolgendes Partitionierungsschema (über „Click here to create them automatically“ gefolgt von manuellen Anpassungen) konfigurieren:
Partition Name | Mount Point | Desired Capacity | File System | Anmerkung |
---|---|---|---|---|
Standard Partition 1, z.B. vda1 | /boot/efi | mindestens 100 MiB | EFI System Partition | Nur bei UEFI, nicht bei BIOS |
Standard Partition 2, z.B. vda2 | /boot | mindestens 800 MiB | ext4 | |
LVM (Logical Volume), z.B. mercaware-root | / | mindestens 20 GiB | ext4 | |
LVM (Logical Volume), z.B. mercaware-swap | (keiner) | mindestens 4 GiB | swap |
Hinweise:
xfs
wird nicht empfohlen, da Vorteile nur bei typischen Fileservern gegeben/home
-Partition kann für mercaware ERP nicht verwendet werden/opt/mercaware
mit dem Dateisystem ext4
/root
, /usr
, /var
etc. wird nicht unterstütztPunkt „KDUMP“ anklicken und Haken vor „Enable kdump“ entfernen, abschließend links oben auf „Done“ klicken:
Punkt „Network & Host Name“ anklicken und im Eingabefeld „Host Name“ den Servernamen (FQDN) eingeben, z.B. „mercaware.example.net“, danach auf „Apply“ klicken:
Anschließend auf „Configure…“ klicken und im Reiter „IPv4 Settings“ eine statische IPv4-Adresskonfiguration („Method“ auf „Manual“ stellen, danach IPv4-Adresse, Netzmaske, Standard-Gateway, DNS-Server, Domänensuffix eintragen) vornehmen, Haken vor „Require IPv4 addressing for this connection to complete“ setzen und rechts unten auf „Save“ klicken:
Nur wenn Ihr Netzwerk bereits IPv6 unterstützt: Erneut auf „Configure…“ klicken und im Reiter „IPv6 Settings“ eine statische IPv6-Adresskonfiguration („Method“ auf „Manual“ stellen, danach IPv6-Adresse, Präfix, Standard-Gateway, DNS-Server, Domänensuffix eintragen) vornehmen, Haken vor „Require IPv6 addressing for this connection to complete“ setzen und rechts unten auf „Save“ klicken:
Hinweis: Dynamische Netzwerkkonfigurationsmethoden, z.B. „DHCP“, „Automatic (DHCP), addresses only“ oder „Link-Local Only“, werden nicht empfohlen.
Punkt „Security Profile“ unverändert auf „No profile selected“ lassen.
Punkt „Root Password“ anklicken, sicheres Passwort eingeben und wiederholen, Haken vor „Allow root SSH login with password“ setzen, abschließend links oben auf „Done“ klicken.
Hinweise:
Punkt „User Creation“ unverändert auf „No user will be created“ lassen.
Hinweis: Sofern bei „Root Password“ abweichende Einstellungen vorgenommen wurden, kann die Anlage eines weiteren Benutzers zwingend erforderlich sein.
Sieht die Maske „Installation Summary“ wie nachfolgend aus, abschließend rechts unten auf „Begin Installation“ klicken:
Sobald die Installation abgeschlossen ist, rechts unten auf „Reboot System“ klicken:
Bei Bedarf das ISO-Installationsabbild aus dem CD/DVD-Laufwerk der virtuellen Maschine auswerfen.
Bitte stellen Sie sicher, dass der SSH-Zugang auf Ihrer Firewall freigeschaltet ist (siehe oben) und teilen Sie All for Accounting anschließend folgendes mit:
Last but not least:
dnf -y update
dnf needs-restarting