GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare Passbolt Password Manager su Rocky Linux

Passbolt è un gestore di password gratuito e open source basato su PHP, MySQL e OpenPGP. È un server di applicazioni self-hosted, puoi installarlo sul tuo server. Passbolt è progettato principalmente per i team, ma puoi anche usarlo come gestore di password personale.

Passbolt è basato su OpenPGP e ha un'API estensibile. Sul lato client, puoi utilizzare l'estensione del browser Passbolt, che si basa su OpenPGP.js per la funzionalità di crittografia. Sul lato server, Passbolt utilizza l'estensione PHP GnuPG e openpgp-php per eseguire la convalida della chiave e l'autenticazione dell'utente. Passbolt utilizza il protocollo GPGAuth per l'autenticazione dell'utente.

Prerequisiti

In questo articolo imparerai come installare il gestore di password self-hosted Passbolt sul server Rocky Linux. Installerai Passbolt con PHP 7.4, server MariaDB e server web Nginx.

Per questo esempio, utilizzeremo i seguenti dettagli del server:

  • Sistema operativo:Rocky Linux 8.4 (ossidiana verde)
  • Indirizzo IP:192.168.1.10
  • Nome di dominio, in questo esempio userò:https://pass.example.io

Ora iniziamo l'installazione di Passbolt.

Installa le dipendenze dei pacchetti

In primo luogo, aggiungerai nuovi repository e installerai alcune dipendenze dei pacchetti sul sistema Rocky Linux.

1. Eseguire il comando seguente per abilitare il repository "PowerTools" e installare il repository EPEL (Extra Packages for Enterprise Linux).

sudo dnf config-manager --set-enabled powertools
sudo dnf install epel-release -y

2. Esegui il comando seguente per abilitare il repository PHP 7.4.

sudo dnf module enable php:7.4 -y

3. Quindi, installa PHP-FPM, MariaDB, Nginx e alcuni pacchetti aggiuntivi usando il comando DNF di seguito.

sudo dnf install -y nginx mariadb-server mariadb php php-intl php-gd php-mysqlnd php-pear php-devel php-mbstring php-fpm php-json php-ldap gcc gpgme gpgme-devel git policycoreutils-python-utils unzip haveged make gcc

4. Al termine di tutta l'installazione, eseguire il comando seguente per scaricare lo script del programma di installazione del compositore PHP.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Ora esegui di nuovo il comando seguente per installare il compositore PHP nell'ambiente a livello di sistema.

php composer-setup.php
sudo mv composer.phar /usr/bin/composer

Controlla il comando del compositore PHP come di seguito.

sudo -u nginx composer --version

Otterrai un output simile a quello di seguito.

Composer version 2.1.12 2021-11-09 16:02:04

5. Quindi, installa le estensioni PHP di GnuPG dal repository PECL (php Extension Community Library).

pecl install gnupg

Dopodiché, abilita l'estensione PHP di GnuPG usando il seguente comando.

echo "extension=gnupg.so" > /etc/php.d/gnupg.ini

6. Ora avvia e abilita alcuni servizi usando il comando systemctl di seguito.

sudo systemctl enable --now nginx
sudo systemctl enable --now mariadb
sudo systemctl enable --now php-fpm
sudo systemctl enable --now haveged

Ora hai completato l'installazione delle dipendenze dei pacchetti per Passbolt.

Configurazione di MariaDB e PHP-FPM

In questo passaggio, configurerai la password di root MariaDB e il servizio PHP-FPM.

1. Eseguire il comando seguente per impostare la password root di MariaDB.

mysql_secure_installation

Digita una nuova password complessa per l'utente root MariaDB e ripeti, quindi digita 'Y' per accettare tutte le configurazioni di MariaDB.

2. Quindi, modifica '/etc/php.ini ' file di configurazione utilizzando nano editor.

nano /etc/php.ini

Decommenta l'opzione 'date.timezone' e modifica il valore con il fuso orario del tuo server.

date.timezone = Europe/Paris

Salva la configurazione ed esci.

3. Modifica la configurazione PHP-FPM '/etc/php-fpm.d/www.conf ' usando l'editor nano.

nano /etc/php-fpm.d/www.conf

Modifica l'utente e il gruppo predefiniti per PHP-FPM in 'nginx '.

user = nginx
group = nginx

Decommenta 'listen.owner ' e 'listen.group ' e cambia il valore in user 'nginx '.

listen.owner = nginx
listen.group = nginx

Salva la configurazione ed esci.

Ora applica la nuova configurazione PHP-FPM riavviando il servizio PHP-FPM utilizzando il comando systemctl di seguito.

sudo systemctl restart php-fpm

E hai completato la configurazione di base di PHP-FPM e creato una nuova password per l'utente root di MariaDB.

Crea nuovo database per Passbolt

Per creare un nuovo database per l'installazione di Passbolt, accedi alla shell MariaDB usando 'mysql ' comando qui sotto.

mysql -u root -p

1. Crea un nuovo database 'passdb' utilizzando la seguente query.

CREATE DATABASE passdb;

2. Concedi tutti i privilegi sul database 'passdb ' al nuovo utente. La seguente query creerà automaticamente un nuovo utente MariaDB 'passbolt '.

GRANT ALL ON passdb.* to [email protected] IDENTIFIED BY 'PassboltdbPass';

3. Ricarica tutti i privilegi delle tabelle.

FLUSH PRIVILEGES;

Ora digita 'ESCI ' e premere 'Invio ' per disconnettersi dalla shell di MariaDB.

Passa al passaggio successivo per avviare l'installazione di Passbolt.

Scarica Passbolt e installa le dipendenze PHP

Per questo passaggio, scaricherai il codice sorgente di Passbolt sul tuo server e installerai le dipendenze PHP utilizzando il compositore PHP.

1. Modificare la directory di lavoro corrente in '/var/www' e clonare l'origine Passbolt utilizzando il comando come di seguito.

cd /var/www/
git clone https://github.com/passbolt/passbolt_api.git passbolt

L'installazione di passbolt è '/var/www/passbolt'

2. Modificare la proprietà della directory di installazione di Passbolt nell'utente 'nginx '.

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

3. Passare alla directory di installazione di Passbolt e installare le dipendenze PHP utilizzando il comando di composizione PHP. E assicurati di eseguire il comando PHP composer come utente 'nginx '.

cd /var/www/passbolt
sudo -u nginx composer install --no-dev

Se l'installazione di tutte le dipendenze PHP viene completata, vai al passaggio successivo per generare la chiave GPG.

Genera chiave GPG per server

In questo passaggio, genererai una nuova chiave GPG per il server Passbolt.

L'attuale estensione PHP openpgp-php e GnuPG PHP non supportano ancora le passphrase, quindi creerai una nuova chiave GPG senza passphrase.

1. Per generare la chiave GPG, eseguire il comando gpg di seguito.

gpg --gen-key

Digita il tuo nome e indirizzo email e non utilizzare una passphrase.

gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Note: Use "gpg --full-generate-key" for a full featured key generation dialog.

GnuPG needs to construct a user ID to identify your key.

Real name: johndoe
Email address: [email protected]
You selected this USER-ID:
    "johndoe <[email protected]>"

Change (N)ame, (E)mail, or (O)kay/(Q)uit? O
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: key 14F31ED1FBEBAD9A marked as ultimately trusted
gpg: revocation certificate stored as '/root/.gnupg/openpgp-revocs.d/BCD52DF829FF8F9408A2F1B214F31ED1FBEBAD9A.rev'
public and secret key created and signed.

pub   rsa2048 2021-11-16 [SC] [expires: 2023-11-16]
      BCD52DF829FF8F9408A2F1B214F31ED1FBEBAD9A
uid                      johndoe <[email protected]>
sub   rsa2048 2021-11-16 [E] [expires: 2023-11-16]

Inoltre, prendi nota dell'impronta digitale della tua nuova chiave. Per questo esempio, l'impronta digitale della chiave è 'BCD52DF829FF8F9408A2F1B214F31ED1FBEBAD9A '.

2. Quindi, esporta la chiave GPG nella directory di installazione di passbolt '/var/www/passbolt/config/gpg/ '.

gpg --armor --export-secret-keys [email protected] > /var/www/passbolt/config/gpg/serverkey_private.asc
gpg --armor --export [email protected] > /var/www/passbolt/config/gpg/serverkey.asc

A questo punto, devi prendere nota delle tue informazioni chiave GPG come di seguito.

  • Impronta digitale:BCD52DF829FF8F9408A2F1B214F31ED1FBEBAD9A
  • Email:[email protetta]
  • Chiave pubblica: serverkey.asc
  • Chiave privata: serverkey_private.asc

3. Successivamente, devi generare la directory GNUPG per l'utente nginx usando il seguente comando.

sudo su -s /bin/bash -c "gpg --list-keys" nginx

Vedrai un output simile come di seguito.

gpg: directory '/var/lib/nginx/.gnupg' created
gpg: keybox '/var/lib/nginx/.gnupg/pubring.kbx' created
gpg: /var/lib/nginx/.gnupg/trustdb.gpg: trustdb created

Ora hai completato la configurazione della chiave GPG per Passbolt. Vai al passaggio successivo per la configurazione di Passbolt.

Configurazione dei blocchi Passbolt e Nginx Server

In questo passaggio, configurerai il nome di dominio di installazione di Passbolt, il database e la chiave GPG.

Prima di iniziare, cambia la directory di lavoro in '/var/www/passbolt' directory.

export PASSBOLT=/var/www/passbolt/
cd $PASSBOLT

1. Copia la configurazione predefinita in 'passbolt.php', quindi modificala utilizzando nano editor.

cp config/passbolt.default.php config/passbolt.php
nano config/passbolt.php

Modifica 'fullBaseUrl ' opzione con l'installazione del nome di dominio Passbolt. Per questo esempio è 'https://pass.example.io'

    'App' => [
        // comment

        'fullBaseUrl' => 'https://pass.example.io',
        
        // comment..
    ],

Modifica la configurazione del database con il tuo utente e password MariaDB di seguito.

    // Database configuration.
    'Datasources' => [
        'default' => [
            'host' => 'localhost',
            //'port' => 'non_standard_port_number',
            'username' => 'passbolt',
            'password' => 'PassboltdbPass',
            'database' => 'passdb',
        ],
    ],

Copia e incolla la tua impronta digitale GPG e decommenta le opzioni "pubblica" e "privata".

        'gpg' => [
            //
            // COMMENT REMOVED
            //
            'serverKey' => [
                // Server private key fingerprint.
                'fingerprint' => '38E3736DD02860F8CBA57BB99C8B82A2C3A6959F',
                'public' => CONFIG . 'gpg' . DS . 'serverkey.asc',
                'private' => CONFIG . 'gpg' . DS . 'serverkey_private.asc',
            ],

Salva la configurazione ed esci.

2. Quindi, crea una nuova configurazione dei blocchi del server Nginx '/etc/nginx/conf.d/passbolt.conf ' usando l'editor nano.

nano /etc/nginx/conf.d/passbolt.conf

Copia e incolla la seguente configurazione e assicurati di modificare il nome di dominio e il percorso dei certificati SSL.

server {
    listen 80;

    server_name pass.example.io;

    return 302 https://$server_name$request_uri;
}

server {
  listen 443 ssl http2;

  server_name pass.example.io;
  root /var/www/passbolt;

  ssl_certificate /etc/letsencrypt/live/pass.example.io/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/pass.example.io/privkey.pem;

  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
  ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0
  ssl_session_timeout  10m;
  ssl_session_cache shared:SSL:10m;
  ssl_session_tickets off; # Requires nginx >= 1.5.9
  # ssl_stapling on; # Requires nginx >= 1.3.7
  # ssl_stapling_verify on; # Requires nginx => 1.3.7
  resolver 8.8.8.8 8.8.4.4 valid=300s;
  resolver_timeout 5s;
  add_header X-Frame-Options DENY;
  add_header X-Content-Type-Options nosniff;
  add_header X-XSS-Protection "1; mode=block";
 
  location / {
    try_files $uri $uri/ /index.php?$args;
    index index.php;
  }
 
  location ~ \.php$ {
    fastcgi_index           index.php;
    fastcgi_pass            unix:/var/run/php-fpm/www.sock;
    fastcgi_split_path_info ^(.+\.php)(.+)$;
    include                 fastcgi_params;
    fastcgi_param           SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param           SERVER_NAME $http_host;
  }
       
  location ~* \.(jpe?g|woff|woff2|ttf|gif|png|bmp|ico|css|js|json|pdf|zip|htm|html|docx?|xlsx?|pptx?|txt|wav|swf|svg|avi|mp\d)$ {
    access_log off;
    log_not_found off;
    try_files $uri /webroot/$uri /index.php?$args;
  }
}

Salva la configurazione ed esci.

Ora verifica la configurazione di Nginx e assicurati di non ricevere alcun errore, quindi riavvia il servizio Nginx.

nginx -t
sudo systemctl restart nginx

3. Quindi, cambia la directory di lavoro in '/var/www/passbolt ' e avvia l'installazione di Passbolt utilizzando il comando come di seguito.

cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt install" nginx

Al termine del processo di installazione di Passbolt, creerai un nuovo utente amministratore per Passbolt.

Digita il tuo indirizzo email, nome e cognome. Quindi copia il link di installazione di Passbolt.

Accesso a Passbolt dal browser Web

Apri il tuo browser web e incolla il link di installazione di Passbolt generato dal programma di installazione di Passbolt nella barra degli indirizzi.

https://pass.example.io/setup/install/8383584c-2eca-496a-a0ca-4fe35a157d24/fc5ad911-9409-416a-8175-a18cd19dcb20

1. Passbolt rileverà automaticamente il tuo browser web e mostrerà il link di installazione dell'estensione del browser Passbolt.

Fai clic sul pulsante 'Scarica estensione ' e installa l'estensione del browser Passbolt.

2. Digita una nuova passphrase sicura e fai clic su 'Avanti pulsante '.

3. Scarica il kit di ripristino sul tuo computer locale e fai clic su 'Avanti pulsante '. Puoi utilizzare il kit di ripristino per reimpostare la passphrase Passbolt.

4. Scegli il colore per il tuo token di sicurezza Passbolt e assicurati di ricordare quelle tre lettere. Fai clic su 'Avanti ' di nuovo.

5. Ora verrai reindirizzato alla dashboard utente di Passbolt come di seguito.

6. Utenti dell'elenco Passbolt.

E hai completato l'installazione del gestore password Passbolt.

Conclusione

Congratulazioni! Hai installato correttamente il gestore password Passbolt con PHP-FPM, server MariaDB e server web Nginx su Rocky Linux.

Per il passaggio successivo, puoi creare nuovi utenti passbolt per il tuo team.


Rocky Linux
  1. Come installare Padloc Password Manager su Rocky Linux 8

  2. Come installare Nextcloud su Rocky Linux

  3. Come installare l'ultimo PHP 8 su Rocky Linux

  4. Come installare phpMyAdmin su Rocky Linux

  5. Come installare PHP 8 su Alma Linux e Rocky Linux

Come installare PHP 7.4 su Rocky Linux 8

Come installare Passbolt Password Manager su Ubuntu 18.04

Come installare Memcached su Rocky Linux 8

Come installare PHP 8 su Rocky Linux 8

Come installare Laravel su Rocky Linux 8

Come installare Snap Package Manager su Rocky Linux 8