sysPass Password Manager auf Ubuntu 20.04 installieren

sysPass ist ein in PHP geschriebener Open-Source- und Multiuser-Passwortmanager. Er wird im geschäftlichen und privaten Bereich zur Passwortverwaltung eingesetzt. Er speichert dein Passwort mit bidirektionaler Verschlüsselung und einem Master-Passwort in einer Datenbank. Er verfügt über eine Vielzahl von Funktionen, darunter: Sicherheit. Datenbank-Authentifizierung. LDAP-Verzeichnisauthentifizierung, verschlüsselte und unverschlüsselte benutzerdefinierte Felder für Konten, Berechtigungen und mehr.

In dieser Anleitung zeigen wir dir, wie du den sysPass Passwortmanager mit Apache und Let’s Encrypt SSL auf einem Ubuntu 20.04 Server installierst.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein gültiger Domainname, der auf die IP deines Servers zeigt.
  • Der Server ist mit einem Root-Passwort konfiguriert.

Erste Schritte

Bevor du beginnst, musst du deine Systempakete auf die neueste Version aktualisieren. Du kannst sie mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald dein Server aktualisiert ist, kannst du mit dem nächsten Schritt fortfahren.

LAMP-Server installieren

Zuerst musst du den Apache Webserver, die MariaDB Datenbank, PHP und andere PHP-Module auf deinem Server installieren. Führe den folgenden Befehl aus, um all diese Pakete zu installieren:

apt-get install apache2 mariadb-server libapache2-mod-php php-mysql php-pdo php-pear php php-cgi php-cli php-common php-gd php-json php-readline php-curl php-intl php-ldap php-xml php-mbstring git -y

Sobald alle Pakete installiert sind, bearbeitest du die Datei php.ini und nimmst einige gewünschte Änderungen vor:

nano /etc/php/7.4/apache2/php.ini

Ändere die folgenden Zeilen:

post_max_size = 1024M
upload_max_filesize = 1024M
max_execution_time = 7200
memory_limit = 512M
date.timezone = Asia/Kolkata

Speichere und schließe die Datei, wenn du fertig bist.

Eine sysPass-Datenbank erstellen

sysPass verwendet MariaDB als Datenbank-Backend. Du musst also eine Datenbank und einen Benutzer für sysPass erstellen.

Verbinde dich zunächst mit folgendem Befehl mit MySQL:

mysql

Sobald du verbunden bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> create database syspassdb;
MariaDB [(none)]> grant all privileges on syspassdb.* to syspass@localhost identified by "password";

Als Nächstes löschst du die Berechtigungen und verlässt MariaDB mit folgendem Befehl:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Sobald die Datenbank erstellt ist, kannst du mit dem nächsten Schritt fortfahren.

sysPass installieren

Zuerst musst du die neueste Version von sysPass aus dem Git-Repository in das Apache-Stammverzeichnis herunterladen. Du kannst sie mit dem folgenden Befehl herunterladen:

git clone https://github.com/nuxsmin/sysPass.git /var/www/html/syspass

Sobald der Download abgeschlossen ist, stellst du mit folgendem Befehl die richtigen Berechtigungen und Eigentümer ein:

chown -R www-data:www-data /var/www/html/syspass
chmod 750 /var/www/html/syspass/app/{config,backup}

Als Nächstes wechselst du in das Verzeichnis sysPass und erstellst ein Composer-Installationsskript:

cd /var/www/html/syspass
nano composer-install.sh

Füge die folgenden Zeilen hinzu:

#!/bin/sh
 EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)"
 php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
 ACTUAL_SIGNATURE="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"
 if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
 then
     >&2 echo 'ERROR: Invalid installer signature'
     rm composer-setup.php
     exit 1
 fi
 php composer-setup.php --quiet
 RESULT=$?
 rm composer-setup.php
 exit $RESULT

Speichere und schließe die Datei und führe das Skript mit dem folgenden Befehl aus:

bash composer-install.sh

Als Nächstes installierst du alle erforderlichen PHP-Abhängigkeiten mit dem folgenden Befehl:

php composer.phar install --no-dev

Sobald alle Abhängigkeiten installiert sind, kannst du mit dem nächsten Schritt fortfahren.

Apache für sysPass konfigurieren

Als Nächstes musst du eine Konfigurationsdatei für den virtuellen Apache-Host für sysPass erstellen. Du kannst sie mit dem folgenden Befehl erstellen:

nano /etc/apache2/sites-available/syspass.conf

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/syspass
ServerName syspass.example.com

Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/syspass-error_log
CustomLog /var/log/apache2/syspass-access_log common
</VirtualHost>

Wenn du fertig bist, speichere und schließe die Datei und aktiviere die Konfigurationsdatei für den virtuellen sysPass-Host mit dem folgenden Befehl:

a2ensite syspass

Starte anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl reload apache2
You can also verify the status of the Apache with the following command:
systemctl status apache2

Du solltest die folgende Ausgabe erhalten:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2021-02-16 09:42:27 UTC; 10min ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 19098 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 19117 (apache2)
      Tasks: 11 (limit: 2353)
     Memory: 47.5M
     CGroup: /system.slice/apache2.service
             ??19117 /usr/sbin/apache2 -k start
             ??19119 /usr/sbin/apache2 -k start
             ??19120 /usr/sbin/apache2 -k start
             ??19121 /usr/sbin/apache2 -k start
             ??19122 /usr/sbin/apache2 -k start
             ??19126 /usr/sbin/apache2 -k start
             ??19128 /usr/sbin/apache2 -k start
             ??19130 /usr/sbin/apache2 -k start
             ??19131 /usr/sbin/apache2 -k start
             ??19132 /usr/sbin/apache2 -k start
             ??19143 /usr/sbin/apache2 -k start

Feb 16 09:42:27 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Zugriff auf sysPass Web UI

Öffne nun deinen Webbrowser und rufe die sysPass-Weboberfläche über die URL http://syspass.example.com auf. Du wirst auf die folgende Seite weitergeleitet:

Gib deine Datenbankinformationen, den Admin-Benutzernamen, das Passwort und das Master-Passwort ein, wähle den Hosting-Modus aus und klicke auf die Schaltfläche INSTALLIEREN. Sobald die Installation abgeschlossen ist, wirst du auf die Anmeldeseite von sysPass weitergeleitet:

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche >. Auf der folgenden Seite solltest du das sysPass-Dashboard sehen:

SysPass mit Let’s Encrypt SSL sichern

Es ist immer eine gute Idee, deine Website mit Let’s Encrypt SSL zu sichern. Um das SSL zu installieren und zu verwalten, musst du den Certbot-Client installieren. Du kannst ihn mit dem folgenden Befehl installieren:

apt-get install python3-certbot-apache -y

Sobald Certbot installiert ist, führst du den folgenden Befehl aus, um deine Website mit Let’s Encrypt SSL zu sichern:

certbot --apache -d syspass.example.com

Du wirst aufgefordert, deine E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren (siehe unten):

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): hitjethva1981@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for syspass.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/syspass-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/syspass-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/syspass-le-ssl.conf

Als Nächstes wählst du aus, ob der HTTP-Verkehr auf HTTPS umgeleitet werden soll oder nicht (siehe unten):

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Gib 2 ein und drücke die Eingabetaste, um Let’s Encrypt SSL für deine Website zu installieren:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/syspass.conf to ssl vhost in /etc/apache2/sites-available/syspass-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://syspass.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=syspass.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/syspass.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/syspass.example.com/privkey.pem
   Your cert will expire on 2020-10-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Jetzt kannst du deine Website sicher über die URL https://syspass.example.com aufrufen .

Fazit

Herzlichen Glückwunsch! Du hast sysPass mit Apache und Let’s Encrypt SSL erfolgreich auf Ubuntu 20.04 installiert. Jetzt kannst du sysPass nutzen, um dein Passwort zentral zu speichern und zu verwalten. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …