So installieren Sie das Cachet Status Page System auf Fedora 29

Cachet ist ein schönes und leistungsstarkes Open-Source-Statusseiten-System in PHP, das es Ihnen ermöglicht, Ausfallzeiten und Systemausfälle besser an Ihre Kunden, Teams und Aktionäre zu kommunizieren. Die Anwendung bietet viele Funktionen, von denen die wichtigsten sind: eine leistungsstarke JSON-API, Ereignisberichte, Metriken, Transkriptionsunterstützung für Ereignisnachrichten, Teilnehmerbenachrichtigungen per E-Mail, Zwei-Faktor-Authentifizierung. In diesem Tutorial werden wir das Cachet-Statusseiten-System mit PHP, Nginx, MySQL und Composer auf dem Fedora 29-System installieren.

Anforderungen

Um Cachet auf Ihrem Fedora 29-System auszuführen, benötigen Sie ein paar Dinge:

  • PHP Version 7.1 oder höher
  • HTTP-Server mit PHP-Unterstützung (z.B.: Nginx, Apache, Caddy)
  • Komponist
  • Eine unterstützte Datenbank: MySQL, PostgreSQL oder SQLite
  • Git

Voraussetzungen

  • Ein Fedora 29 Betriebssystem.
  • Ein Nicht-Root-Benutzer mit sudo-Rechten.

Erste Schritte

Überprüfen Sie Ihre Fedora-Version:

cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)

Richten Sie die Zeitzone ein:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, denn es stellt sicher, dass Sie die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems erhalten:

sudo dnf check-upgrade || sudo dnf upgrade -y

Installieren Sie einige wichtige Pakete, die für die grundlegende Verwaltung des Fedora-Betriebssystems erforderlich sind:

sudo dnf install -y curl wget vim git unzip socat bash-completion

Schritt 1 – PHP installieren

Installieren Sie PHP sowie die notwendigen PHP-Erweiterungen:

sudo dnf install -y php-cli php-fpm php-common php-xml php-gd php-zip php-mbstring php-mysqlnd php-pgsql php-sqlite3 php-opcache php-apcu php-json

Um PHP, das in Modulen kompiliert ist, anzuzeigen, können Sie ausführen:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Überprüfen Sie die PHP-Version:

php --version

Starten und aktivieren Sie den PHP-FPM-Dienst:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Wir können zum nächsten Schritt übergehen, nämlich der Installation und Einrichtung der Datenbank.

Schritt 2 – MariaDB installieren und eine Datenbank für Cachet erstellen

Cachet unterstützt MySQL, MariaDB, PostgreSQL und SQLite Datenbanken. In diesem Tutorial verwenden wir MariaDB als Datenbankserver.

Installieren Sie den MariaDB-Datenbankserver:

sudo dnf install -y mysql-server

Überprüfen Sie die MariaDB-Version:

mysql --version

Starten und aktivieren Sie den MariaDB-Dienst:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Laufenmysql_secure installationSkript zur Verbesserung der MariaDB-Sicherheit und zur Festlegung des Passworts fürMariaDBrootBenutzer:

sudo mysql_secure_installation

Beantworten Sie jede der Fragen:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Verbinden Sie sich mit der MariaDB-Shell als Root-Benutzer:

sudo mysql -u root -p
# Enter password

Erstellen Sie eine leere MariaDB-Datenbank und einen leeren Benutzer für Cachet und merken Sie sich die Zugangsdaten:

MariaDB> CREATE DATABASE dbname;
MariaDB> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
MariaDB> FLUSH PRIVILEGES;

Verlassen Sie MariaDB:

MariaDB> exit

Ersetzen Sie,dbnameundusernamedurch Ihre eigenenpasswordNamen.

Schritt 3 – Installieren Sie den Acme.sh-Client und erhalten Sie Let’s Encrypt Zertifikat (optional).

Die Sicherung Ihrer Website mit HTTPS ist nicht notwendig, aber es ist eine gute Vorgehensweise, um den Traffic Ihrer Website zu sichern. Um das TLS-Zertifikat von Let’s Encrypt zu erhalten, verwenden wir den acme.sh-Client. Acme.sh ist eine reine UNIX-Shell-Software zum Erhalten von TLS-Zertifikaten von Let’s Encrypt ohne Abhängigkeiten.

Laden Sie acme.sh herunter und installieren Sie es:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail your_email@example.com
source ~/.bashrc
cd ~

Überprüfen Sie die Version von acme.sh:

acme.sh --version
# v2.8.0

Besorgen Sie sich RSA- und ECC/ECDSA-Zertifikate für Ihre Domain/Hostname:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Wenn Sie gefälschte Zertifikate zum Testen benötigen, können Sie die Option--stagingFlagge zu den obigen Befehlen.

Nachdem Sie die obigen Befehle ausgeführt haben, sind Ihre Zertifikate und Schlüssel in:

  • Für RSA:/home/username/example.comVerzeichnis.
  • Für ECC/ECDSA:/home/username/example.com_eccVerzeichnis.

Um Ihre ausgestellten Zertifikate aufzulisten, können Sie diese ausführen:

acme.sh --list

Erstellen Sie ein Verzeichnis, um Ihre Zertifikate zu speichern. Wir werden das/etc/letsencryptVerzeichnis verwenden.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Zertifikate installieren/kopieren nachVerzeichnis.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Alle Zertifikate werden automatisch alle 60 Tage erneuert.

Nach Erhalt der Zertifikate verlassen Sie das Formular root user und kehren Sie zum normalen sudo user zurück:

exit

Schritt 4 – Installation und Konfiguration von NGINX

Cachet kann mit vielen Webservern gut funktionieren. Wenn Sie den Apache-Webserver gegenüber Nginx bevorzugen, besuchen Sie https://docs.cachethq.io/docs/installing-cachet#section-running-cachet-on-apache, um mehr zu erfahren.

Installieren Sie Nginx:

sudo dnf install -y nginx

Überprüfen Sie die Nginx-Version:

sudo nginx -v

Starten und aktivieren Sie den Nginx-Dienst:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Konfigurieren Sie Nginx für Cachet, indem Sie es ausführen:

sudo vim /etc/nginx/conf.d/cachet.conf

Und füllen Sie die Datei mit der folgenden Konfiguration:

server {

listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;

server_name status.example.com;

root /var/www/cachet/public;

index index.php;

ssl_certificate /etc/letsencrypt/status.example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/status.example.com/status.example.com.key;
ssl_certificate /etc/letsencrypt/status.example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/status.example.com_ecc/status.example.com.key;

location / {
try_files $uri /index.php$is_args$args;
}

location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
fastcgi_keep_conn on;
}

}

Testen Sie die NGINX-Konfiguration:

sudo nginx -t

Nginx neu laden:

sudo systemctl reload nginx.service

Schritt 5 – Composer installieren

Installieren Sie Composer, den PHP-Abhängigkeitsmanager global:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r „if (hash_file(’sha384′, ‚composer-setup.php‘) === ’48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5′) { echo ‚Installer verified‘; } else { echo ‚Installer corrupt‘; unlink(‚composer-setup.php‘); } echo PHP_EOL;“

php composer-setup.php

php -r „unlink(‚composer-setup.php‘);“

sudo mv composer.phar /usr/local/bin/composer

Überprüfen Sie die Composer-Version:

composer --version
# Composer version 1.8.4 2019-02-11 10:52:10

Schritt 6 – Cachet installieren

Erstellen Sie ein Dokumenten-Stammverzeichnis, in dem sich das Gütesiegel befinden soll:

sudo mkdir -p /var/www/cachet

Ändern Sie den Besitzer des/var/www/cachetVerzeichnisses auf {.jour_user}:

sudo chown -R {your_user}:{your_user} /var/www/cachet

HINWEIS: Ersetzen Sie { durchjour_user}Ihren ursprünglich erstellten Nicht-Root-Benutzernamen.

Navigieren Sie zum Stammverzeichnis des Dokuments:

cd /var/www/cachet

Laden Sie den Cachet-Quellcode mit Git herunter:

git clone -b 2.4 --single-branch https://github.com/cachethq/Cachet.git .

Kopieren.env.examplezu.envDatei und Konfiguration der Datenbank undAPP_URLEinstellungen in.envDatei:

cp .env.example .env
vim .env

Cachet-Abhängigkeiten mit dem Composer installieren:

composer install --no-dev -o

Richten Sie den Anwendungsschlüssel durch Ausführen ein:

php artisan key:generate

Installieren Sie Cachet:

php artisan cachet:install

Stellen Sie das entsprechende Eigentum zur Verfügung:

sudo chown -R nginx:nginx /var/www/cachet

Führen Sie aus undsudo vim /etc/php-fpm.d/www.confsetzen Sie den Benutzer und die Gruppe auf . Zunächst werden sie auf die folgenden Werte gesetztapache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Öffnen Sie Ihre Website in einem Webbrowser und folgen Sie den Anweisungen auf dem Bildschirm, um die Installation von Cachet abzuschließen.

Schritt 7 – Vervollständigen Sie das Cachet-Setup.

Wählen Sie Cache- und Sitzungs-Treiber aus und konfigurieren Sie die Mail-Optionen:

Beenden Sie das Cachet-Setup.

Konfigurieren Sie allgemeine Site-Einstellungen wie Site-Name, Site-Domain, Zeitzone und Sprache:

Allgemeine Einstellungen des Gütesiegels

Erstellen Sie ein administratives Benutzerkonto:

Ein Admin-Konto hinzufügen

Danach sollten Sie eine Meldung erhalten, dass Cachet erfolgreich konfiguriert wurde. Sie können das Cachet Dashboard öffnen, indem Sie auf die Schaltfläche „Gehe zum Dashboard“ klicken:

Das Gütesiegel wurde erfolgreich installiert.

Um auf das Cachet Dashboard zuzugreifen, geben Sie

die URL Ihrer/dashboardWebsite an.

Cachet Dashboard

Das könnte Dich auch interessieren …