Αυτόματος τρόπος: ένα script από τον λογαριασμό προετοιμάζει ολόκληρο τον διακομιστή (στοίβα web Apache + PHP, βάση δεδομένων, εργαλεία ασφαλείας, cron). Στη συνέχεια — ανάπτυξη του dashboard, έκδοση SSL και εισαγωγή της άδειας. Λειτουργεί σε Ubuntu/Debian: σε νέο VPS ρυθμίζει τα πάντα από την αρχή, σε ήδη ρυθμισμένο διακομιστή — μόνο προσθετικά (προφίλ «Ρυθμισμένος διακομιστής», βήμα 01). Όλες οι εντολές παρακάτω είναι με τη σειρά, απλώς κυλήστε από πάνω προς τα κάτω.
monitor.example.com — ο τομέας σας· 203.0.113.10 — η πραγματική IP του διακομιστή· /var/www/monitor — η ρίζα του dashboard (όπου βρίσκονται τα public/, assets/, config.php)· τον κωδικό της ΒΔ ορίστε τον δικό σας.
jail.local), root-crontab, κανόνες UFW, ρυθμίσεις Apache. Αν ο διακομιστής είναι ήδη ρυθμισμένος (λειτουργικό dashboard, ιστότοποι, email, δικά σας jail) — επιλέξτε το προφίλ «Ρυθμισμένος διακομιστής»: κάνει μόνο προσθετικές αλλαγές και δεν αγγίζει το firewall, το Fail2ban, το email, το SSH και το sysctl σας. Όταν εντοπίσει hosting panel, το script μεταβαίνει μόνο του σε αυτή τη λειτουργία. Πριν την πρώτη εκτέλεση μπορείτε να ενεργοποιήσετε το dry run (επιλογή στον λογαριασμό) — δείχνει τι θα γίνει, χωρίς να αλλάζει τίποτα. Σε λειτουργικό διακομιστή, για κάθε ενδεχόμενο, δημιουργήστε ένα snapshot.
my.arciveo.com → ενότητα «Ρύθμιση διακομιστή» (διαθέσιμη μετά την απόκτηση του Arcivéo Monitor). Είναι συνδεδεμένη με τον λογαριασμό σας και περιέχει προσωπικό token.
Το script προετοιμάζει ολόκληρο τον διακομιστή: web-stack (Apache + PHP), βάση δεδομένων, εργαλεία για SSL, πλήρες σύνολο μέσων προστασίας και cron-εργασίες (Lynis, SMART, debsums, Logwatch, ημερήσια αναφορά, ενημέρωση ipsum).
1) Επιλέξτε το επίπεδο προστασίας (στον λογαριασμό, πριν αντιγράψετε την εντολή):
2) Εκτελέστε στον διακομιστή ως root την εντολή από τον λογαριασμό — έχει την εξής μορφή:
Για να ανοίγει ο πίνακας σε διεύθυνση όπως monitor.example.com και να λάβετε δωρεάν SSL, το domain πρέπει να δείχνει στον διακομιστή. Στον πίνακα διαχείρισης DNS (στον καταχωρητή ή στον πάροχο φιλοξενίας) δημιουργήστε μια εγγραφή A:
Μετά από λίγα λεπτά (μερικές φορές έως και μία ώρα) ελέγξτε ότι το domain δείχνει στον διακομιστή:
/var/www/monitor και ρύθμισε τον ιστότοπο Apache (DocumentRoot στη ρίζα του πίνακα, PHP-FPM, AllowOverride για .htaccess). Δεν χρειάζεται να δημιουργήσετε ξεχωριστά κατάλογο και vhost — απλώς ανεβάστε τα αρχεία και ορίστε τα δικαιώματα.
my.arciveo.com → «Λήψεις». Αποσυμπιέστε το αρχείο πριν το ανεβάσετε στον διακομιστή.
Ανεβάστε το περιεχόμενο της διανομής στο /var/www/monitor (ώστε μέσα να βρίσκονται τα public/, assets/, config.php κ.λπ.) — μέσω SFTP/SCP (FileZilla / WinSCP) ή με την εντολή scp από τον τοπικό υπολογιστή:
ServerName), τον περνάτε στην εντολή αυτόματης ρύθμισης ήδη στο βήμα 01: … | sudo bash -s -- monitor.example.com (ή δηλώνετε τον τομέα στο πεδίο «Τομέας πίνακα» στον λογαριασμό). Αν δεν περάσατε τομέα — ο πίνακας απαντά σε οποιονδήποτε host και μέσω IP, ενώ το ServerName θα το καταχωρήσει το certbot κατά την έκδοση SSL (βήμα 06)· δεν χρειάζεται καμία επανεγκατάσταση.
root ή μέσω SFTP, τα αρχεία ανήκουν στον root και ο διακομιστής web (www-data) δεν θα μπορεί να τα διαβάσει — ο πίνακας θα ανοίξει κενός ή με σφάλμα 403 (στο log: .htaccess unreadable / directory not executable). Η παρακάτω εντολή το διορθώνει:
Ανοίξτε για τον εαυτό σας το ανέβασμα αρχείων μέσω SFTP. Μετά την παραπάνω εντολή όλα τα αρχεία ανήκουν στον www-data, ενώ το FileZilla / WinSCP συνδέονται με τον δικό σας χρήστη — το ανέβασμα τότε αποτυγχάνει με SSH_FX_PERMISSION_DENIED (Permission denied). Επιλέξτε μία από τις δύο παραλλαγές.
Παραλλαγή A — μια ACL μόνο για τον χρήστη σας (συνιστάται). Δικαίωμα εγγραφής παίρνετε μόνο εσείς· ο διακομιστής web εξακολουθεί να μην μπορεί να αντικαταστήσει τον κώδικα του πίνακα:
Παραλλαγή B — μέσω της ομάδας www-data. Πιο απλή, αλλά δικαίωμα εγγραφής στα αρχεία του πίνακα αποκτά και ο διακομιστής web: με μια ευπάθεια στην PHP ο κώδικας θα μπορούσε να αντικατασταθεί. Η σειρά των εντολών έχει σημασία — το config.php και οι φάκελοι εργασίας κλείνουν τελευταίοι:
id deploy — στη λίστα ομάδων πρέπει να εμφανιστεί το www-data· ls -ld /var/www/monitor — δικαιώματα drwxrwsr-x, το γράμμα s στη θέση του x σημαίνει ότι το setgid είναι ενεργό.
Δημιουργήστε τη βάση και τον χρήστη, μετά εισαγάγετε το σχήμα. Το μπλοκ με τη ΒΔ επικολλάται στο τερματικό ολόκληρο (το sudo mysql συνδέεται ως root μέσω unix-socket — δεν χρειάζεται κωδικός root). Τα monitor_db και monitor_user είναι ενδεικτικά ονόματα, μπορείτε να ορίσετε τα δικά σας· θυμηθείτε το όνομα της βάσης, τον χρήστη και τον κωδικό — θα τα καταχωρίσετε στο config.php στο επόμενο βήμα:
admin στην πρώτη είσοδο από τον browser (από το database/db.sql), αν η ΒΔ είναι κενή.
www-data).
Το config.php στη ρίζα του πίνακα (/var/www/monitor/config.php) είναι το μοναδικό αρχείο που πρέπει να επεξεργαστείτε χειροκίνητα. Όλες οι ρυθμίσεις του πίνακα ορίζονται εκεί ως σταθερές define(). Ανοίξτε το σε έναν επεξεργαστή:
Βάλτε τις δικές σας τιμές στα επισημασμένα σημεία· τα υπόλοιπα αφήστε τα ως έχουν:
Τι να αλλάξετε:
DB_NAME, DB_USER, DB_PASS — ακριβώς το ίδιο όνομα βάσης, χρήστη και κωδικό που ορίσατε κατά τη δημιουργία της βάσης στο βήμα 04 (αν αφήσατε τα παραδείγματα — monitor_db / monitor_user). Τα DB_HOST και DB_CHARSET μην τα πειράξετε.APP_URL — η πλήρης διεύθυνση του πίνακα με https://, χωρίς κάθετο στο τέλος και χωρίς www. Πρέπει να συμπίπτει με τον τομέα στον οποίο ενεργοποιείτε την άδεια (βήμα 07), αλλιώς το κλειδί θα απορριφθεί.TIMEZONE — η ζώνη ώρας σας (λίστα — timedatectl list-timezones). Επηρεάζει μόνο πώς ο πίνακας εμφανίζει τις ημερομηνίες· στην ώρα εκτέλεσης των εργασιών cron δεν επηρεάζει (εκεί ισχύει η ζώνη του συστήματος).SESSION_LIFETIME — μετά από πόσα δευτερόλεπτα αδράνειας ο πίνακας θα ζητήσει νέα σύνδεση (προεπιλογή 8 ώρες). Π.χ. 3600 = 1 ώρα, 86400 = μία ημέρα.display_errors, log_errors, error_log) — αφήστε το στην προεπιλογή.Αποθηκεύστε το αρχείο (Ctrl+O, Enter, μετά Ctrl+X) και επανεκκινήστε το PHP-FPM — αλλιώς λόγω του OPcache οι αλλαγές δεν θα εφαρμοστούν:
640 (ορίστηκαν στο βήμα 03) και ρητή απαγόρευση στο κεντρικό .htaccess. Μην το ανεβάζετε σε δημόσια αποθετήρια και μην το στέλνετε στην υποστήριξη με τον πραγματικό κωδικό.
http:// δεν θα μπορέσετε να συνδεθείτε.
Το certbot και το πρόσθετο για τον Apache έχουν ήδη εγκατασταθεί από την αυτόματη ρύθμιση. Το DNS του τομέα πρέπει ήδη να δείχνει στον διακομιστή (βήμα 02). Έκδοση με μία εντολή:
Y.<VirtualHost *:443>, θα ρυθμίσει την ανακατεύθυνση http→https και την αυτόματη ανανέωση. Στο τέλος — Successfully enabled HTTPS.
dig +short monitor.example.com επιστρέφει την IP του διακομιστή και ότι είναι ανοιχτές οι θύρες 80/443 (sudo ufw allow 80,443/tcp).
Μετά την έκδοση: το https://monitor.example.com ανοίγει με λουκέτο, και το http:// ανακατευθύνει στο https://.
Ανοίξτε https://monitor.example.com, συνδεθείτε με admin / useradmin και ακολουθήστε τη λίστα ελέγχου:
ARCIVEO-… από τον λογαριασμό ενεργοποιήστε τον στον δικό σας domain και εισαγάγετε το κλειδί στις «Ρυθμίσεις» → «Άδεια». Περισσότερα.public/start_db.php, αν έχει απομείνει: επιτρέπει την αναδημιουργία της βάσης χωρίς αυθεντικοποίηση. Όσο το αρχείο βρίσκεται στη ρίζα του πίνακα ή στο public/, ο πίνακας προειδοποιεί γι' αυτό με κόκκινο μπάνερ.