Passbolt adalah pengelola kata sandi sumber terbuka yang memungkinkan Anda menyimpan dan membagikan kata sandi Anda dengan aman. Ini dirancang untuk organisasi kecil dan menengah untuk menyimpan dan berbagi kredensial masuk di antara anggota tim. Ini dihosting sendiri dan tersedia dalam edisi berbasis komunitas dan langganan.
Dalam tutorial ini, kami akan menunjukkan cara menginstal pengelola kata sandi Passbolt dengan Nginx dan Let's Encrypt SSL di CentOS 8.
Prasyarat
- Server yang menjalankan CentOS 8.
- Nama domain valid yang ditunjukkan dengan IP server Anda.
- Kata sandi root dikonfigurasi di server Anda.
Instal Server LEMP
Pertama, instal server database Nginx dan MariaDB menggunakan perintah berikut:
dnf install nginx mariadb-server -y
Selanjutnya, Anda perlu menginstal versi terbaru PHP dan ekstensi PHP lain yang diperlukan di server Anda. Secara default, versi terbaru PHP tidak tersedia di repo default CentOS. Jadi, Anda perlu menambahkan repo EPEL dan REMI ke sistem Anda.
Anda dapat menambahkan kedua repo dengan perintah berikut:
dnf install epel-release -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
Selanjutnya, nonaktifkan repo PHP default dan aktifkan repo REMI dengan perintah berikut:
modul dnf reset php
modul dnf aktifkan php:remi-7.4
Selanjutnya, instal PHP dengan dependensi lain yang diperlukan dengan menjalankan perintah berikut:
dnf install php php-fpm php-intl php-gd php-mysqli php-json php-pear php-devel php-mbstring php-fpm git make unzip -y
Setelah menginstal semua paket, Anda perlu mengedit file konfigurasi PHP-FPM dan mengubah pengguna dan grup menjadi Nginx.
nano /etc/php-fpm.d/www.conf
Ubah baris berikut:
pengguna =nginxgroup =nginx
Simpan dan tutup file kemudian ubah kepemilikan direktori sesi:
chgrp nginx /var/lib/php/session
Selanjutnya, mulai layanan Nginx, MariaDB dan PHP-FPM dan aktifkan mereka untuk memulai pada sistem reboot dengan perintah berikut:
systemctl start mariadb nginx php-fpm
systemctl aktifkan mariadb nginx php-fpm
Selanjutnya, Anda perlu menginstal ekstensi GNUPG ke sistem Anda. Anda dapat menginstalnya dengan menjalankan perintah berikut:
dnf config-manager --set-enabled powertools
dnf install gpgme-devel
pecl install gnupg
echo "extension=gnupg.so"> /etc/php.d/gnupg .ini
Selanjutnya, restart layanan PHP-FPM untuk menerapkan perubahan:
systemctl restart php-fpm
Instal Komposer
Komposer adalah manajer ketergantungan untuk PHP. Anda harus menginstalnya di sistem Anda.
Pertama, unduh file setup Composer dengan perintah berikut:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Selanjutnya, instal Composer dengan perintah berikut:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Anda akan mendapatkan output berikut:
Semua pengaturan benar untuk menggunakan ComposerDownloading...Composer (versi 2.0.11) berhasil diinstal ke:/usr/local/bin/composerGunakan:php /usr/local/bin/composer
Selanjutnya, verifikasi versi Composer dengan perintah berikut:
komposer -V
Anda akan mendapatkan output berikut:
Versi komposer 2.0.11 2021-02-24 14:57:23
Buat Basis Data
Selanjutnya, Anda perlu membuat database dan pengguna untuk Passbolt.
Pertama, sambungkan ke MariaDB dengan perintah berikut:
mysql
Setelah terhubung, buat database dan pengguna dengan perintah berikut:
MariaDB [(none)]> BUAT DATABASE passbolt SET KARAKTER DEFAULT utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB [(none)]> GRANT ALL ON passbolt.* UNTUK 'passbolt'@'localhost' DENGAN IDENTIFIKASI;
Selanjutnya, flush hak istimewa dan keluar dari MariaDB dengan perintah berikut:
MariaDB [(none)]> HAK ISTIMEWA;
MariaDB [(none)]> EXIT;
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal dan Konfigurasikan Passbolt
Pertama, ubah direktori ke direktori root web Nginx dan unduh Passbolt versi terbaru dengan perintah berikut:
cd /var/www
git clone https://github.com/passbolt/passbolt_api.git passbolt
Setelah unduhan selesai, ubah direktori menjadi passbolt dan instal semua dependensi yang diperlukan dengan perintah berikut:
cd passbolt
instal komposer --no-dev
Selanjutnya, Anda perlu menginstal hasged untuk menghasilkan kunci GPG. Pertama, instal hasged dengan perintah berikut:
instal dnf gagal
Selanjutnya, mulai layanan hasged dengan perintah berikut:
systemctl start hasged
Selanjutnya, buat kunci GPG dengan perintah berikut:
gpg --full-generate-key
Jawab semua pertanyaan dengan cermat. Biarkan bidang kata sandi kosong ketika diminta untuk mengatur kata sandi:
gpg (GnuPG) 2.2.9; Hak Cipta (C) 2018 Free Software Foundation, Inc.Ini adalah perangkat lunak gratis:Anda bebas mengubah dan mendistribusikannya kembali. TIDAK ADA JAMINAN, sejauh diizinkan oleh undang-undang.gpg:direktori '/root/.gnupg' creategpg:keybox '/root/.gnupg/pubring.kbx' dibuatPilih jenis kunci yang Anda inginkan:(1) RSA dan RSA (default) (2) DSA dan Elgamal (3) DSA (hanya tanda) (4) RSA (hanya tanda ) Pilihan Anda? Kunci RSA mungkin memiliki panjang antara 1024 dan 4096 bit. Ukuran kunci apa yang Anda inginkan? (2048) Ukuran kunci yang diminta adalah 2048 bit Harap tentukan berapa lama kunci harus valid. 0 =kunci tidak kedaluwarsa=kunci kedaluwarsa dalam n hari w =kunci kedaluwarsa dalam n minggu m =kunci kedaluwarsa dalam n bulan y =kunci kedaluwarsa dalam n tahunKunci berlaku untuk? (0) Kunci tidak kedaluwarsa sama sekaliApakah ini benar? (y/T) yGnuPG perlu membuat ID pengguna untuk mengidentifikasi kunci Anda.Nama asli:HiteshAlamat email:[dilindungi email]Komentar:Selamat DatangAnda memilih ID PENGGUNA ini:"Hitesh (Selamat Datang) <[dilindungi email]>"Ubah ( N)ame, (C)comment, (E)mail atau (O)kay/(Q)uit? OKita perlu menghasilkan banyak byte acak. Ini adalah ide yang baik untuk melakukan beberapa tindakan lain (ketik pada keyboard, gerakkan mouse, gunakan disk) selama generasi utama; ini memberikan peluang yang lebih baik kepada generator angka acak untuk mendapatkan entropi yang cukup. Kita perlu menghasilkan banyak byte acak. Ini adalah ide yang baik untuk melakukan beberapa tindakan lain (ketik pada keyboard, gerakkan mouse, gunakan disk) selama generasi utama; ini memberikan peluang yang lebih baik kepada pembuat angka acak untuk mendapatkan entropy.gpg:/root/.gnupg/trustdb.gpg:trustdb Createdgpg:key 1A0448FECA43E1F9 yang ditandai sebagai akhirnya dipercayagpg:direktori '/root/.gnupg/openpgp-revocs.d' creategpg :sertifikat pencabutan disimpan sebagai '/root/.gnupg/openpgp-revocs.d/40733A5076D11E86EF2FE5B51A0448FECA43E1F9.rev'kunci publik dan rahasia dibuat dan ditandatangani.pub rsa2048 2021-03-12 [SC] 40733A5076D11E86EF2FE5C4351A04489>sub rsa2048 2021-03-12 [E]
Catatan :Ingat kunci rahasia yang dibuat di atas.
Selanjutnya, ekspor kunci rahasia ke file serverkey_private.asc dan serverkey.asc dengan perintah berikut:
gpg --armor --export-secret-keys [dilindungi email]> /var/www/passbolt/config/gpg/serverkey_private.asc
gpg --armor --export [dilindungi email]> / var/www/passbolt/config/gpg/serverkey.asc
Selanjutnya, atur kepemilikan yang tepat ke direktori passbolt:
chown -R nginx:nginx /var/www/passbolt
Selanjutnya, inisialisasi keyring Nginx dengan perintah berikut:
sudo su -s /bin/bash -c "gpg --list-keys" nginx
Keluaran:
gpg:direktori '/var/lib/nginx/.gnupg' Createdgpg:keybox '/var/lib/nginx/.gnupg/pubring.kbx' Createdgpg:/var/lib/nginx/.gnupg/trustdb.gpg :trustdb dibuat
Selanjutnya, ganti nama file konfigurasi default Passbolt:
cp config/passbolt.default.php config/passbolt.php
Selanjutnya, edit file passbolt.php dan tentukan pengaturan database dan URL dasar Anda:
nano config/passbolt.php
Ubah baris berikut:
'fullBaseUrl' => 'https://passbolt.linuxbuz.com', // Konfigurasi database. 'Sumber data' => [ 'default' => [ 'host' => 'localhost', //'port' => 'non_standard_port_number', 'username' => 'passbolt', 'password' => 'password', 'database' => 'passbolt', 'serverKey' => [ // Sidik jari kunci pribadi server. 'sidik jari' => '40733A5076D11E86EF2FE5B51A0448FECA43E1F9', 'publik' => CONFIG . 'gpg' . DS. 'serverkey.asc', 'pribadi' => CONFIG . 'gpg' . DS. 'serverkey_private.asc',
Simpan dan tutup file kemudian instal Passbolt dengan perintah berikut:
cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt install --no-admin" nginx
Anda akan mendapatkan output berikut:
Semua Selesai. Mengambil 0.9595sImpor kunci pribadi server di keyring---------------------------------------- ----------------------- Mengimpor /var/www/passbolt/config/gpg/serverkey_private.ascKeyring init sukses instalasi OKPassbolt! Menikmati! ?
Konfigurasi Nginx untuk Passbolt
Selanjutnya, Anda perlu membuat file konfigurasi Nginx untuk Passbolt. Anda dapat membuatnya dengan perintah berikut:
nano /etc/nginx/conf.d/passbolt.conf
Tambahkan baris berikut:
server { dengarkan 80; nama_server passbolt.linuxbuz.com; root /var/www/passbolt; lokasi / { try_files $uri $uri/ /index.php?$args; indeks indeks.php; } lokasi ~ \.php$ { fastcgi_index index.php; fastcgi_pass unix:/var/run/php-fpm/www.sock; fastcgi_split_path_info ^(.+\.php)(.+)$; termasuk fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SERVER_NAME $http_host; } lokasi ~* \.(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_ditemukan mati; try_files $uri /webroot/$uri /index.php?$args; }}
Simpan dan tutup file kemudian verifikasi Nginx untuk kesalahan sintaks:
nginx -t
Keluaran:
nginx:file konfigurasi /etc/nginx/nginx.conf sintaksnya oknginx:file konfigurasi /etc/nginx/nginx.conf tes berhasil
Selanjutnya, restart Nginx untuk menerapkan perubahan:
systemctl restart nginx
Amankan Passbolt dengan Let's Encrypt SSL
Selanjutnya, Anda perlu menginstal klien Certbot untuk menginstal Let's Encrypt SSL for Passbolt. Anda dapat menginstalnya dengan perintah berikut:
dnf install letsencrypt python3-certbot-nginx
Selanjutnya, dapatkan dan instal sertifikat SSL untuk domain let Anda dengan perintah berikut:
certbot --nginx -d passbolt.linuxbuz.com
Anda akan diminta untuk memberikan alamat email Anda dan menerima persyaratan layanan:
Menyimpan log debug ke /var/log/letsencrypt/letsencrypt.logPlugins dipilih:Authenticator nginx, Installer nginxMasukkan alamat email (digunakan untuk pembaruan mendesak dan pemberitahuan keamanan) (Masukkan 'c' untuk membatalkan):[dilindungi email]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Harap baca Persyaratan Layanan dihttps://letsencrypt. org/documents/LE-SA-v1.2-November-15-2017.pdf. Anda harus setuju untuk mendaftar ke server ACME. Setuju?- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/( N)o:Y- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Apakah Anda bersedia, setelah sertifikat pertama Anda berhasil diterbitkan, untuk membagikan alamat email Anda dengan Electronic Frontier Foundation, mitra pendiri proyek Let's Encrypt dan organisasi nirlaba yang mengembangkan Certbot? Kami ingin mengirimkan email tentang pekerjaan kami mengenkripsi web, berita EFF, kampanye, dan cara mendukung kebebasan digital.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(N)o:YAkun terdaftar.Meminta sertifikat untuk passbolt.linuxbuz.comMelakukan tantangan berikut:http-01 tantangan untuk passbolt. linuxbuz.comMenunggu verifikasi...Membersihkan tantanganMenyebarkan Sertifikat ke VirtualHost /etc/nginx/conf.d/passbolt.confMengalihkan semua lalu lintas pada port 80 ke ssl di /etc/nginx/conf.d/passbolt.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Selamat! Anda telah berhasil mengaktifkan https://passbolt.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Berlangganan milis EFF (email:[email protected]). CATATAN PENTING:- Selamat! Sertifikat dan rantai Anda telah disimpan di:/etc/letsencrypt/live/passbolt.linuxbuz.com/fullchain.pem File kunci Anda telah disimpan di:/etc/letsencrypt/live/passbolt.linuxbuz.com/privkey.pem Anda sertifikat akan kedaluwarsa pada 2021-06-09. Untuk mendapatkan versi baru atau tweak dari sertifikat ini di masa mendatang, cukup jalankan certbot lagi dengan opsi "certonly". Untuk memperbarui *semua* sertifikat Anda secara non-interaktif, jalankan "perbarui certbot" - Jika Anda menyukai Certbot, pertimbangkan untuk mendukung pekerjaan kami dengan:Menyumbang ke ISRG / Let's Encrypt:https://letsencrypt.org/donate Menyumbang ke EFF:https://eff.org/donate-le
Daftarkan Pengguna untuk Passbolt
Selanjutnya, Anda harus mendaftarkan pengguna untuk Passbolt. Anda dapat melakukannya dengan perintah berikut:
cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt register_user -u [dilindungi email] -f howtoforge -l Demo -r admin" nginxAnda akan mendapatkan output berikut:
____ __ ____ / __ \____ _____ ____/ /_ ____ / / /_ / /_/ / __ `/ ___/ ___/ __ \/ __ \/ / __/ / ____/ /_/ (__ | __ ) /_/ / /_/ / / / /_/ \__,_/____/____/_.___/\__/_/\__/ Manajer kata sandi sumber terbuka untuk tim-------- -------------------------------------------------- -----Pengguna berhasil disimpan. Untuk memulai pendaftaran, ikuti tautan yang disediakan di kotak surat Anda atau di sini:https://passbolt.linuxbuz.com/setup/install/f81227bc-b0b6-44b5-99a7-6b490a4ba262/5a112de0-6ca4- 4e1b-97c8-26453ef3828bAnda dapat menggunakan tautan di atas untuk mengakses Paabolt.
Konfigurasi Firewall
Selanjutnya, Anda harus mengizinkan port 80 dan 443 melalui firewall. Anda dapat melakukannya dengan perintah berikut:
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcpSekarang, muat ulang firewalld untuk menerapkan perubahan:
firewall-cmd --reloadMengakses UI Web Passbolt
Sekarang, buka browser web Anda dan ketik URL https://passbolt.linuxbuz.com/setup/install/f81227bc-b0b6-44b5-99a7-6b490a4ba262/5a112de0-6ca4-4e1b-97c8-26453ef3828b . Anda akan diarahkan ke halaman berikut:
Di sini, Anda perlu mengunduh ekstensi browser Passbolt dan menyegarkan halaman setelah diinstal. Anda akan melihat halaman berikut:
Tentukan sandi aman dan klik Berikutnya tombol. Anda akan melihat halaman berikut:
Pilih warna, masukkan token keamanan dan klik Berikutnya tombol. Anda akan diarahkan ke dasbor Passbolt di halaman berikut:
Kesimpulan
Selamat! Anda telah berhasil menginstal pengelola kata sandi Passbolt dengan Nginx dan Let's Encrypt SSL di CentOS 8. Sekarang Anda dapat menerapkan Passbolt di organisasi Anda dan mulai menyimpan serta membagikan kredensial login ke seluruh anggota tim dengan aman.
Bagaimana Menginstal dan Mengonfigurasi Docker Swarm Cluster di CentOS 8 Instal Varnish Cache 6 untuk Apache/Nginx di CentOS 8Cent OS