GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal sysPass Password Manager di Debian 11

sysPass adalah aplikasi manajemen kata sandi berbasis web yang ditulis dalam PHP. Ini aman, andal, dan berjalan di lingkungan multipengguna untuk penggunaan bisnis dan pribadi. Ini menyimpan kata sandi menggunakan enkripsi dua arah dengan kata sandi utama ke database. Ini menyediakan UI web intuitif yang membantu Anda mengatur opsi seperti LDAP auth, mail, auditing, backup, import/export, dll.

Fitur

  • Gratis dan Sumber terbuka
  • Kontrol akses Grup/Profil
  • Enkripsi sandi
  • Penyimpanan file dengan penampil gambar sebaris
  • Integrasi OpenLDAP dan Active Directory
  • Berikan pemberitahuan melalui email

Dalam tutorial ini, saya akan menunjukkan cara menginstal aplikasi pengelola kata sandi sysPass dan mengamankannya dengan sertifikat SSL Let's Encrypt gratis di Debian 11.

Prasyarat

  • Server yang menjalankan Debian 11.
  • Nama domain valid yang ditunjukkan dengan IP server Anda.
  • Kata sandi root dikonfigurasi di server.

Instal Apache, MariaDB, dan PHP

sysPass berjalan di server web, menggunakan MariaDB sebagai backend database dan ditulis dalam PHP. Jadi, Anda perlu menginstal server web Apache, server database MariaDB, PHP, dan ekstensi PHP lainnya ke server Anda. Anda dapat menginstal semuanya menggunakan perintah berikut:

apt-get install apache2 mariadb-server libapache2-mod-php php php-mysqli 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

Setelah semua paket terinstal, edit file php.ini dan buat beberapa perubahan:

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

Ubah setelan berikut:

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

Simpan dan tutup file setelah Anda selesai. Selanjutnya, restart layanan Apache untuk menerapkan perubahan konfigurasi:

systemctl restart apache2

Buat Database untuk sysPass

Secara default, instalasi MariaDB tidak diamankan. Jadi, Anda harus mengamankannya terlebih dahulu. Anda dapat mengamankannya menggunakan perintah berikut:

mysql_secure_installation

Jawab semua pertanyaan seperti yang ditunjukkan di bawah ini untuk menetapkan kata sandi root MariaDB dan mengamankan instalasi:

Enter current password for root (enter for none): 
Switch to unix_socket authentication [Y/n] Y
Change the root password? [Y/n] Y
New password: 
Re-enter new 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

Setelah selesai, masuk ke antarmuka MariaDB dengan perintah berikut:

mysql -u root -p

Anda akan diminta untuk memberikan kata sandi root MariaDB. Setelah Anda masuk, buat database dan pengguna dengan perintah berikut:

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

Selanjutnya, flush hak istimewa dan keluar dari shell MariaDB dengan perintah berikut:

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

Pada titik ini, database MariaDB Anda dan pengguna sudah siap untuk sysPass. Sekarang Anda dapat melanjutkan ke langkah berikutnya.

Instal sysPass

Pertama, Anda perlu mengunduh sysPass versi terbaru dari repositori Git. Anda dapat mengunduhnya menggunakan perintah berikut:

git clone https://github.com/nuxsmin/sysPass.git

Setelah unduhan selesai, pindahkan direktori yang diunduh ke direktori root web Apache:

mv sysPass /var/www/html/syspass

Selanjutnya, atur kepemilikan yang tepat ke direktori syspass dengan perintah berikut:

chown -R www-data:www-data /var/www/html/syspass

Selanjutnya, atur izin yang tepat ke direktori lain:

chmod 750 /var/www/html/syspass/app/{config,backup}

Selanjutnya, Anda perlu menginstal Komposer ke sistem Anda.

Pertama, buat skrip instalasi Composer dengan perintah berikut:

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

Tambahkan baris berikut:

#!/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

Simpan dan tutup file kemudian jalankan script instalasi Composer menggunakan perintah berikut:

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

Setelah Komposer diinstal, jalankan perintah berikut untuk menginstal semua dependensi PHP yang diperlukan:

php composer.phar install --no-dev

Setelah semua dependensi terinstal, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Apache Virtual Host untuk sysPass

Selanjutnya, Anda perlu membuat file konfigurasi virtual host Apache untuk meng-host sysPass di internet. Anda dapat membuatnya menggunakan perintah berikut:

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

Tambahkan baris berikut:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/syspass"
ServerName syspass.example.com
<Directory "/var/www/html/syspass/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/apache2/syspass_access.log
ErrorLog /var/log/apache2/syspass_error.log
</VirtualHost>

Simpan dan tutup file setelah Anda selesai mengaktifkan Apache virtual host dengan perintah berikut:

a2ensite syspass

Selanjutnya, restart layanan Apache untuk menerapkan perubahan:

systemctl restart apache2

Anda juga dapat memeriksa status layanan Apache menggunakan perintah berikut:

systemctl status apache2

Anda akan mendapatkan output berikut:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-10-16 13:41:36 UTC; 4s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 17819 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 17824 (apache2)
      Tasks: 6 (limit: 2341)
     Memory: 14.7M
        CPU: 76ms
     CGroup: /system.slice/apache2.service
             ??17824 /usr/sbin/apache2 -k start
             ??17825 /usr/sbin/apache2 -k start
             ??17826 /usr/sbin/apache2 -k start
             ??17827 /usr/sbin/apache2 -k start
             ??17828 /usr/sbin/apache2 -k start
             ??17829 /usr/sbin/apache2 -k start

Oct 16 13:41:36 debian11 systemd[1]: Starting The Apache HTTP Server...

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Mengakses UI Web sysPass

Pada titik ini, sysPass diinstal dan di-host di server web Apache. Sekarang, buka browser web Anda dan akses antarmuka web sysPass menggunakan URL http://syspass.example.com . Anda akan diarahkan ke halaman berikut:

Berikan nama pengguna admin Anda, kata sandi, kata sandi utama, kredensial basis data, pilih bahasa Anda, mode hosting dan klik INSTALL tombol. Setelah instalasi selesai, Anda akan diarahkan ke halaman login sysPass.

Berikan nama pengguna, kata sandi admin Anda, dan klik > tombol. Anda akan melihat dasbor sysPass di halaman berikut:

Aktifkan Dukungan Let's Encrypt SSL di sysPass

Itu selalu merupakan ide yang baik untuk mengamankan situs web Anda dengan Let's Encrypt SSL. Pertama, Anda perlu menginstal klien Certbot untuk menginstal dan mengelola SSL. Secara default, paket Certbot disertakan dalam repositori default Debian 11 sehingga Anda dapat menginstalnya dengan perintah berikut:

apt-get install python3-certbot-apache -y

Setelah Certbot terinstal, jalankan perintah berikut untuk mengamankan situs web Anda dengan Let's Encrypt SSL:

certbot --apache -d syspass.example.com

Anda akan diminta untuk memberikan email Anda dan menerima persyaratan layanan seperti yang ditunjukkan di bawah ini:

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): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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

Selanjutnya, pilih apakah akan mengarahkan lalu lintas HTTP ke HTTPS seperti yang ditunjukkan di bawah ini:

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

Ketik 2 dan tekan Enter untuk menginstal Let's Encrypt SSL untuk situs web Anda:

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 2021-07-20. 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

Kesimpulan

Selamat! Anda telah berhasil menginstal pengelola kata sandi sysPass dengan Apache di Debian 11. Sekarang Anda dapat membuat akun lain, menambahkan pengguna, mengakses hak istimewa, dan menerapkannya di lingkungan produksi Anda.


Debian
  1. Cara Menginstal MySQL di Debian 9

  2. Cara Menginstal MariaDB 10.x di Debian 11

  3. Cara Menginstal MariaDB di Debian 11

  1. Cara Menginstal MariaDB di Debian 9

  2. Cara Menginstal MariaDB di Debian 10

  3. Cara Memasang Pengelola Kata Sandi TeamPass di Debian 10

  1. Cara Memasang Pengelola Kata Sandi yang Di-hosting-sendiri Passbolt di Debian 11

  2. Cara Menginstal MariaDB di Debian 11

  3. Cara Menginstal Pengelola Kata Sandi Bitwarden di Debian 11