Come installare SysPass Password Manager su Rocky Linux
Su questa pagina
- Prerequisiti
- Installazione di Httpd Web Server
- Installazione del server MariaDB
- Installazione di PHP
- Installazione di Composer
- Installazione di SysPass Password Manager
- Impostazione di SELinux
- Configurazione dell'host virtuale Httpd
- Configurazione del gestore password SysPass
- Conclusione
SysPass è un gestore di password open source scritto in PHP con crittografia AES-256 CTR. È progettato per la gestione delle password centralizzata e collaborativa. fornisce gestione avanzata dei profili, gestione multiutente con utenti, gruppi e profili. Supporta i metodi di autenticazione tramite MySQL/MariaDB e OpenLDAP Active Directory e progettato in modo interattivo con material design tramite HTML5 e AJAX.
SysPass fornisce un'API che consente l'integrazione con altre applicazioni. Supporta il database delle password Keepass e il file CSV per le importazioni e le esportazioni. Fornisce inoltre la cronologia dell'account e ripristina punti, multilingua e collegamenti pubblici senza accesso (collegamento anonimo).
In questo tutorial installerai SysPass Password Manager con Apache2, MariaDB e PHP sul server Rocky Linux. Proteggerai anche l'installazione di SysPass con certificati SSL e imparerai anche come installare Composer su Rocky Linux per gestire le dipendenze PHP.
Prerequisiti
Per completare questo tutorial, avrai bisogno dei seguenti requisiti:
- Un server Rocky Linux - Puoi usare Rocky Linux v8 o v9.
- Un utente non root con privilegi sudo root.
- Un nome di dominio completo viene indirizzato all'indirizzo IP del tuo server.
Installazione di Httpd Web Server
Per questa guida, eseguirai SysPass Password Manager con il server web Apache o httpd. Su Rocky Linux, il server Web httpd è disponibile per impostazione predefinita sui repository BaseOS e AppStream.
Installerai facilmente il server Web httpd tramite il repository ufficiale di Rocky Linux.
Eseguire il comando dnf di seguito per installare il server web httpd.
sudo dnf install httpd
Immettere Y per confermare l'installazione e premere INVIO per procedere.
Una volta installato httpd, eseguire il comando systemctl di seguito per avviare e abilitare il servizio httpd. Il comando systemctl enable consente di eseguire i servizi all'avvio del sistema.
sudo systemctl start httpd
sudo systemctl enable httpd
Ora, esegui il seguente comando per verificare lo stato del servizio httpd e assicurati che il servizio sia in esecuzione.
sudo systemctl status httpd
Riceverai l'output come il seguente screenshot. Il servizio httpd è attualmente in esecuzione ed è abilitato.
Ora, se hai il firewalld attivo e funzionante sul tuo server Rocky Linux, devi aggiungere entrambi i servizi HTTP e HTTPS al firewalld.
Esegui il seguente comando firwewall-cmd di seguito per aggiungere il servizio HTTP e HTTPS al file firewalld.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Successivamente, ricarica il firewalld e verifica lo stato della regola utilizzando il comando seguente.
sudo firewall-cmd --reload
sudo firewall-cmd --list-services
Dovresti vedere l'output del servizio HTTP e HTTPS aggiunto a firewalld.
Installazione del server MariaDB
SysPass Password Manager supporta MySQL o MariaDB per il database. In questo passaggio, installerai MariaDB e lo proteggerai tramite il comando mysql_secure_installation.
mysql_secure_installation è una riga di comando fornita dai pacchetti MariaDB che ti consente di impostare l'installazione di MariaDB come impostare la password di root, disabilitare l'accesso remoto per l'utente root, rimuovere l'utente anonimo e testare il database.
Per installare MariaDB, eseguire il seguente comando dnf. Quando viene richiesto di confermare l'installazione, immettere Y e premere INVIO per procedere.
sudo dnf install mariadb-server
Una volta installato MariaDB, avvia e abilita il servizio MariaDB tramite il comando systemctl di seguito.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Ora verifica il servizio MariaDB per assicurarti che sia abilitato e in esecuzione.
sudo systemctl status mariadb
Dovresti vedere che l'output del servizio MariaDB è abilitato e verrà eseguito automaticamente all'avvio del sistema. E lo stato del servizio MariaDB è in esecuzione.
Ora che il servizio MariaDB è in esecuzione, è il momento di proteggere la distribuzione di MariaDB tramite mysql_secure_installation.
Esegui il comando seguente per proteggere la distribuzione di MariaDB.
sudo mysql_secure_installation
Ora ti verranno chieste le seguenti configurazioni del server MariaDB:
- Cambiare l'autenticazione in unix_socket? inserire n per n.
- Cambiare la password root di MariaDB? inserisci y per confermare, quindi inserisci la nuova password per il tuo utente root MariaDB.
- Disabilitare l'accesso remoto per l'utente root? inserire y per sì.
- Rimuovere l'utente anonimo? inserire y.
- Rimuovere il test del database predefinito? inserire di nuovo y.
- Infine, ricaricare i privilegi delle tabelle e applicare nuove configurazioni? inserire y per confermare.
Ora hai installato e protetto MariaDB sul tuo server.
Installazione di PHP
Dopo aver installato MariaDB, ora installerai PHP sul tuo server Rocky Linux. SysPass Password Manager richiedeva l'installazione di PHP 7.4, quindi ora lo installerai tramite il repository REMI.
Per Rocky Linux 8: eseguire il seguente comando per aggiungere il repository REMI.
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Per Rocky Linux 9: eseguire il seguente comando per aggiungere il repository REMI
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Immettere y quando viene richiesto di confermare l'installazione.
Ora, esegui il comando dnf di seguito per verificare l'elenco dei pacchetti PHP disponibili. E dovresti vedere che il repository REMI fornisce più versioni PHP 7.4, 8.0, 8.1 e 8.2.
sudo dnf module list php
Per l'installazione di SysPass, installerai PHP 7.4. Quindi, esegui il seguente comando per abilitare il modulo PHP remi-7.4. Immettere Y per confermare e abilitare il modulo.
sudo dnf module enable php:remi-7.4
Ora esegui il seguente comando dnf per installare PHP 7.4 sul tuo sistema.
sudo dnf install -y php php-pear php-cgi php-cli php-common php-gd php-json php-mysql php-readline php curl php-intl php-ldap php-mcrypt php-xml php-mbstring php-zip
L'installazione dovrebbe iniziare e ti verrà chiesto di confermare l'installazione. Immettere y e premere INVIO per procedere.
Una volta installato PHP, modifica il file di configurazione predefinito /etc/php.ini utilizzando il seguente comando.
sudo nano /etc/php/7.4/apache2/php.ini
Modifica la configurazione PHP predefinita con le seguenti impostazioni. assicurati di regolare il fuso orario e il memory_limit in base al tuo ambiente di sistema.
post_max_size = 120M
upload_max_filesize = 120M
max_execution_time = 6000
memory_limit = 256M
date.timezone = Europe/Stockholm
Salva il file ed esci dall'editor quando hai finito.
Ora, esegui il seguente comando systemctl per riavviare il servizio httpd e applicare le configurazioni PHP. E ora hai terminato l'installazione di base di LAMP Stack per SysPass Password Manager.
sudo systemctl restart httpd
Installazione del compositore
Un'altra dipendenza richiesta per SysPass è Composer. Questo verrà utilizzato per installare le dipendenze PHP per l'applicazione web SysPass.
Esegui il seguente comando per installare Composer sulla tua macchina Rocky Linux.
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer
Di seguito riceverai l'output:
Ora, verifica il compositore usando il comando seguente. Dovresti vedere la versione di PHP Composer installata sul tuo sistema.
sudo -u apache composer -v
Dopo aver installato Composer, avvierai l'installazione di SysPass.
Installazione di SysPass Password Manager
Per cominciare, esegui il seguente comando dnf per installare git e decomprimere i pacchetti sul tuo sistema.
sudo dnf install git unzip -y
Ora, scarica il codice sorgente di SysPass tramite il comando git nella directory di installazione di destinazione /var/www/syspass.
git clone https://github.com/nuxsmin/sysPass.git /var/www/syspass
Eseguire il seguente comando per modificare la proprietà e l'autorizzazione della directory di installazione di SysPass. La proprietà dovrebbe essere l'utente apache, che è l'httpd in esecuzione.
sudo chown -R apache:apache /var/www/syspass
sudo chmod 750 /var/www/syspass/app/config /var/www/syspass/app/backup
Successivamente, esegui il seguente comando per creare una directory della cache per Composer. Quindi, cambia la proprietà all'utente apache. Questa directory verrà utilizzata per memorizzare le dipendenze PHP per la tua applicazione.
sudo mkdir -p /usr/share/httpd/.cache
sudo chown -R apache:apache /usr/share/httpd/.cache
Infine, spostati nella directory di installazione di SysPass /var/www/syspass e installa le dipendenze PHP per SysPass tramite il comando composer di seguito.
cd /var/www/syspass
sudo -u apache composer install --no-interaction --no-dev
Nello screenshot seguente, vedrai l'installazione delle dipendenze PHP per SysPass Password Manager.
Una volta installate le dipendenze PHP, vai al passaggio seguente.
Configurazione di SELinux
Se stai eseguendo SysPass con SELinux in modalità enforcing, devi aggiungere una nuova regola SELinux al tuo sistema.
Prima di iniziare a gestire SELinux, esegui il seguente comando per assicurarti che il seguente pacchetto sia installato.
sudo dnf install policycoreutils-python-utils -y
Successivamente, esegui il seguente comando per aggiungere la politica SELinux che verrà utilizzata da SysPass.
In questo comando, consentirai al servizio httpd di connettersi a LDAP tramite la rete (quando stai utilizzando l'autenticazione LDAP) e inoltre stai etichettando l'etichetta corretta per il codice sorgente SysPass.
sudo setsebool -P httpd_can_connect_ldap 1
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/syspass/app/(config|backup|cache|temp)(/.*)?"
sudo restorecon -R -v /var/www/syspass
Configurazione dell'host virtuale Httpd
Ora configurerai l'host virtuale httpd/apache2 per SysPass Password Manager. prima di iniziare, assicurati di disporre di certificati SSL e che il nome di dominio sia indirizzato all'indirizzo IP del tuo server.
Eseguire il seguente comando dnf di seguito per installare il pacchetto mod_ssl per il server web httpd.
sudo dnf install mod_ssl -y
Dopo l'installazione di mod_ssl, eseguire il comando seguente per generare certificati SSL per localhost. È necessario generare questo certificato, altrimenti httpd non verrà eseguito. Questo certificato è utilizzato da localhost nella configurazione /etc/httpd/conf.d/ssl.conf.
sudo openssl req -newkey rsa:4096 -x509 -sha512 -days 365 -nodes -out /etc/pki/tls/certs/localhost.crt -keyout /etc/pki/tls/private/localhost.key
Successivamente, crea una nuova configurazione dell'host virtuale /etc/httpd/conf.d/syspass.conf utilizzando il seguente comando nano editor.
sudo nano /etc/httpd/conf.d/syspass.conf
Aggiungere la seguente configurazione al file. E assicurati anche di cambiare il nome di dominio e il percorso dei certificati SSL.
#
# File: syspass.conf
#
RedirectMatch "^/$" "/index.php"
<Directory "/var/www/syspass">
DirectoryIndex index.php
Options -Indexes -FollowSymLinks -Includes -ExecCGI
<RequireAny>
Require expr "%{REQUEST_URI} =~ m#.*/index\.php(\?r=)?#"
Require expr "%{REQUEST_URI} =~ m#.*/api\.php$#"
Require expr "%{REQUEST_URI} =~ m#^/?$#"
</RequireAny>
</Directory>
<FilesMatch ".(png|jpg|js|css|ttf|otf|eot|woff|woff2|ico)$">
Require all granted
</FilesMatch>
<VirtualHost *:80>
ServerName syspass.hwdomain.io
ServerAdmin
DocumentRoot /var/www/syspass
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/syspass.hwdomain.io/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/syspass.hwdomain.io/privkey.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
# MSIE 7 and newer should be able to use keepalive
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
</IfModule>
Salva il file ed esci dall'editor quando hai finito.
Ora esegui il seguente comando per verificare la configurazione httpd e assicurati di avere le configurazioni httpd corrette.
sudo apachectl configtest
Se hai configurazioni httpd corrette e appropriate, vedrai il messaggio di output come Syntax OK.
Infine, esegui il comando systemctl di seguito per riavviare il servizio httpd e applicare le nuove modifiche. Il tuo SysPass Password Manager è ora installato e pronto per essere configurato.
sudo systemctl restart httpd
Configurazione del gestore password SysPass
Apri il tuo browser web e visita il nome di dominio della tua installazione SysPass (ad esempio: https://syspass.hwdomain.io).
Ora dovrai creare un nuovo utente amministratore e una nuova password per il tuo SysPass. Quindi, inserisci la nuova password principale. Assicurati di utilizzare una password forte e facile da ricordare sia per l'amministratore che per la password principale.
Nella pagina in basso, inserisci il nome utente del database come root e inserisci la tua password. Quindi, inserisci il nome del database che verrà creato automaticamente dal programma di installazione di SysPass.
Inoltre, puoi cambiare la lingua di installazione predefinita con la tua lingua preferita.
Quando sei pronto, fai clic su \INSTALL\ per avviare l'installazione di SysPass.
Una volta installato SysPass, otterrai la pagina di accesso di SysPass Password Manager.
Inserisci il tuo utente amministratore e la password, quindi fai clic sul pulsante di accesso.
Se stai utilizzando l'utente e la password corretti, vedrai la dashboard di SysPass Password Manager.
Da lì, ora puoi aggiungere nuovi utenti e gruppi, importare password di database da file CSV o file di database Kepass, oppure puoi anche integrare l'autenticazione tramite LDAP.
Conclusione
In questo tutorial, hai installato e configurato SysPass Password Manager su Rocky Linux. Hai anche installato LAMP Stack (Apache2/httpd, MariaDB e PHP) e Composer sul tuo server Rocky Linux.
Con SysPass installato e protetto, ora puoi usarlo come gestore di password quotidiano. oppure puoi aggiungere altri utenti per la tua organizzazione interna.