Automatischer Weg: Ein Skript aus dem Benutzerkonto richtet den gesamten Server ein (Web-Stack Apache + PHP, Datenbank, Sicherheitswerkzeuge, cron). Danach nur noch das Dashboard bereitstellen, SSL ausstellen und die Lizenz eingeben. Läuft unter Ubuntu/Debian: Auf einem frischen VPS richtet es alles von Grund auf ein, auf einem bereits konfigurierten Server nur additiv (Profil „Konfigurierter Server“, Schritt 01). Alle Befehle unten der Reihe nach – einfach von oben nach unten durchgehen.
monitor.example.com – Ihre Domain; 203.0.113.10 – die reale IP des Servers; /var/www/monitor – das Dashboard-Verzeichnis (wo public/, assets/, config.php liegen); für die DB ein eigenes Passwort wählen.
jail.local), root-crontab, UFW-Regeln, Apache-Konfiguration. Ist der Server bereits konfiguriert (laufendes Dashboard, Websites, Mail, eigene jails) – wählen Sie das Profil „Konfigurierter Server“: Es nimmt nur additive Änderungen vor und lässt Ihre Firewall, Fail2ban, Mail, SSH und sysctl unberührt. Erkennt das Skript eine Hosting-Panel, wechselt es selbst in diesen Modus. Vor dem ersten Start kann ein Testlauf aktiviert werden (Häkchen im Benutzerkonto) – er zeigt, was getan würde, ohne etwas zu ändern. Erstellen Sie auf einem produktiven Server zur Sicherheit einen Snapshot.
my.arciveo.com → Bereich „Server-Einrichtung“ (verfügbar nach dem Erwerb von Arcivéo Monitor). Er ist an Ihr Konto gebunden und enthält ein persönliches Token.
Das Skript richtet den gesamten Server ein: Web-Stack (Apache + PHP), Datenbank, SSL-Werkzeuge, den vollständigen Satz an Schutzmitteln und Cron-Aufgaben (Lynis, SMART, debsums, Logwatch, Tagesbericht, ipsum-Aktualisierung).
1) Schutzstufe wählen (im Benutzerkonto, vor dem Kopieren des Befehls):
2) Führen Sie auf dem Server als root den Befehl aus dem Benutzerkonto aus — er sieht so aus:
Damit das Dashboard über eine Adresse wie monitor.example.com erreichbar ist und ein kostenloses SSL erhält, muss die Domain auf den Server zeigen. Erstellen Sie im DNS-Verwaltungspanel (beim Registrar oder Hoster) einen A-Eintrag:
Prüfen Sie nach einigen Minuten (manchmal bis zu einer Stunde), ob die Domain auf den Server zeigt:
/var/www/monitor angelegt und die Apache-Site eingerichtet (DocumentRoot auf das Panel-Stammverzeichnis, PHP-FPM, AllowOverride für .htaccess). Ein separates Verzeichnis oder ein vhost muss nicht angelegt werden – einfach die Dateien hochladen und die Rechte setzen.
my.arciveo.com → „Downloads“ heruntergeladen. Entpacken Sie das Archiv vor dem Upload auf den Server.
Laden Sie den Inhalt der Distribution nach /var/www/monitor hoch (sodass darin public/, assets/, config.php usw. liegen) – per SFTP/SCP (FileZilla / WinSCP) oder mit dem Befehl scp vom lokalen Rechner:
ServerName), übergibt man sie bereits in Schritt 01 an den Autokonfigurations-Befehl: … | sudo bash -s -- monitor.example.com (oder gibt die Domain im Feld „Panel-Domain“ im Benutzerkonto an). Wurde keine Domain übergeben, antwortet das Panel auf jeden Host und über die IP-Adresse, und den ServerName trägt certbot beim Ausstellen des SSL-Zertifikats ein (Schritt 06); eine Neuinstallation ist nicht nötig.
root oder per SFTP hochgeladen, gehören die Dateien root, und der Webserver (www-data) kann sie nicht lesen – das Panel öffnet sich leer oder mit Fehler 403 (im Log: .htaccess unreadable / directory not executable). Der Befehl unten behebt das:
Schalten Sie den SFTP-Upload für sich selbst frei. Nach dem Befehl oben gehören alle Dateien www-data, während FileZilla / WinSCP sich unter Ihrem eigenen Benutzer verbinden — der Upload scheitert dann mit SSH_FX_PERMISSION_DENIED (Permission denied). Wählen Sie eine der beiden Varianten.
Variante A — eine ACL nur für Ihren Benutzer (empfohlen). Schreibrechte bekommen nur Sie; der Webserver kann den Panel-Code weiterhin nicht überschreiben:
Variante B — über die Gruppe www-data. Einfacher, aber der Webserver erhält ebenfalls Schreibrechte auf die Panel-Dateien: bei einer Schwachstelle in PHP ließe sich der Code austauschen. Die Reihenfolge der Befehle ist wichtig — config.php und die Arbeitsordner werden zuletzt abgesichert:
id deploy — in der Gruppenliste muss www-data erscheinen; ls -ld /var/www/monitor — Rechte drwxrwsr-x, das s anstelle von x bedeutet, dass setgid gesetzt ist.
Erstellen Sie Datenbank und Benutzer und importieren Sie dann das Schema. Der Datenbank-Block wird vollständig ins Terminal eingefügt (sudo mysql meldet root über den Unix-Socket an — kein root-Passwort nötig). monitor_db und monitor_user sind Beispielnamen, Sie können beliebige eigene wählen; merken Sie sich Datenbankname, Benutzer und Passwort — Sie tragen sie im nächsten Schritt in config.php ein:
admin beim ersten Aufruf im Browser selbst (aus database/db.sql), sofern die Datenbank leer ist.
www-data).
config.php im Wurzelverzeichnis des Dashboards (/var/www/monitor/config.php) ist die einzige Datei, die von Hand bearbeitet werden muss. Alle Dashboard-Einstellungen sind darin als define()-Konstanten festgelegt. Öffnen Sie sie im Editor:
Tragen Sie Ihre Werte an den hervorgehobenen Stellen ein; den Rest lassen Sie unverändert:
Was zu ändern ist:
DB_NAME, DB_USER, DB_PASS — exakt derselbe Datenbankname, Benutzer und dasselbe Passwort, die Sie beim Anlegen der DB in Schritt 04 festgelegt haben (falls Sie die Beispiele behalten haben — monitor_db / monitor_user). DB_HOST und DB_CHARSET nicht anrühren.APP_URL — die vollständige Dashboard-Adresse mit https://, ohne Schrägstrich am Ende und ohne www. Sie muss mit der Domain übereinstimmen, für die Sie die Lizenz aktivieren (Schritt 07), sonst wird der Schlüssel abgelehnt.TIMEZONE — Ihre Zeitzone (Liste — timedatectl list-timezones). Betrifft nur die Anzeige der Daten im Dashboard; auf die Startzeit der cron-Aufgaben hat sie keinen Einfluss (dort gilt die Zeitzone des Systems).SESSION_LIFETIME — nach wie vielen Sekunden Inaktivität das Dashboard eine erneute Anmeldung verlangt (Standard: 8 Stunden). Z. B. 3600 = 1 Stunde, 86400 = 1 Tag.display_errors, log_errors, error_log) — auf Standard belassen.Speichern Sie die Datei (Ctrl+O, Enter, dann Ctrl+X) und starten Sie PHP-FPM neu — sonst werden die Änderungen wegen OPcache nicht übernommen:
640 (in Schritt 03 gesetzt) und eine ausdrückliche Sperre in der .htaccess des Wurzelverzeichnisses. Legen Sie sie nicht in öffentliche Repositories und geben Sie sie dem Support nicht mit echtem Passwort weiter.
http:// ist keine Anmeldung möglich.
certbot und das Apache-Plugin wurden bereits von der automatischen Einrichtung installiert. Der DNS der Domain muss bereits auf den Server zeigen (Schritt 02). Ausstellung mit einem Befehl:
Y.<VirtualHost *:443> ein, richtet die Weiterleitung http→https und die automatische Verlängerung ein. Am Ende — Successfully enabled HTTPS.
dig +short monitor.example.com die Server-IP zurückgibt und die Ports 80/443 offen sind (sudo ufw allow 80,443/tcp).
Nach der Ausstellung: https://monitor.example.com öffnet sich mit Schloss, http:// leitet auf https:// weiter.
Öffnen Sie https://monitor.example.com, melden Sie sich mit admin / useradmin an und arbeiten Sie die Checkliste ab:
ARCIVEO-… aus dem Benutzerkonto auf Ihre Domain aktivieren und den Schlüssel unter „Einstellungen“ → „Lizenz“ einfügen. Mehr dazu.public/start_db.php, falls noch vorhanden: es erlaubt, die Datenbank ohne Anmeldung neu anzulegen. Solange die Datei im Panel-Stammverzeichnis oder in public/ liegt, warnt das Panel mit einem roten Banner davor.