Sebagian besar pengguna memiliki banyak media sosial, email, dan akun lainnya di internet. Sangat sulit bagi siapa pun untuk mengelola semua akun dan kata sandi mereka. Di sinilah pengelola kata sandi masuk ke dalam gambar. Pass tim adalah pengelola kata sandi sumber terbuka yang membantu Anda menyimpan dan mengelola semua kata sandi Anda dari lokasi pusat. Ini adalah pengelola kata sandi kolaboratif yang memungkinkan Anda berbagi semua kata sandi yang tersimpan dengan anggota tim. Anda juga dapat mengatur hak akses bagi setiap pengguna untuk mengontrol mereka agar hanya mengakses kumpulan data tertentu.
Dalam tutorial ini, saya akan menunjukkan cara menginstal pengelola kata sandi Teampass dengan Apache dan Let's Encrypt SSL 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
Pertama, Anda perlu menginstal server web Apache, server database MariaDB, PHP, dan ekstensi lain yang diperlukan ke server Anda. Anda dapat menginstal semuanya dengan menjalankan perintah berikut:
apt-get install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline php7.4-bcmath php7.4-curl php7.4-fpm php7.4-gd php7.4-xml php7.4-mbstring -y
Setelah semua paket terinstal, edit file php.ini dan ubah beberapa pengaturan default:
nano /etc/php/7.4/apache2/php.ini
Ubah pengaturan berikut:
max_execution_time = 60 date.timezone = Asia/Kolkata
Simpan dan tutup file kemudian restart layanan Apache untuk menerapkan perubahan:
systemctl restart apache2
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Buat Database untuk Teampass
Teampass menggunakan MariaDB sebagai backend database sehingga Anda perlu membuat database dan pengguna untuk Teampass.
Pertama, amankan instalasi MariaDB dan setel kata sandi root MariaDB menggunakan perintah berikut:
mysql_secure_installation
Jawab semua pertanyaan seperti yang ditunjukkan di bawah ini:
Enter current password for root (enter for none): Switch to unix_socket authentication [Y/n] n 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, sambungkan ke MariaDB dengan perintah berikut:
mysql -u root -p
Selanjutnya buat database dan user dengan perintah berikut:
MariaDB [(none)]> create database teampass;
MariaDB [(none)]> grant all privileges on teampass.* to [email protected] identified by "password";
Selanjutnya, flush hak istimewa dan keluar dari MariaDB dengan perintah berikut:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal Teampass
Selanjutnya, Anda perlu mengunduh Teampass versi terbaru dari repositori Git.
Pertama, instal paket git menggunakan perintah berikut:
apt-get install git -y
Selanjutnya, unduh versi terbaru Teampass ke direktori root web Apache:
cd /var/www/html/
git clone https://github.com/nilsteampassnet/TeamPass.git
Selanjutnya, ubah kepemilikan dan izin dengan perintah berikut:
chown -R www-data:www-data TeamPass
chmod -R 775 /var/www/html/TeamPass
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Buat Host Virtual Apache untuk Teampass
Selanjutnya, Anda perlu membuat file konfigurasi virtual host Apache untuk meng-host Teampass di internet.
nano /etc/apache2/sites-available/teampass.conf
Tambahkan baris berikut:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/TeamPass ServerName teampass.example.com <Directory /var/www/html/TeamPass> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/teampass_error.log CustomLog ${APACHE_LOG_DIR}/teampass_access.log combined </VirtualHost>
Simpan dan tutup file lalu aktifkan Apache virtual host dan mulai ulang layanan Apache untuk menerapkan perubahan:
a2ensite teampass
systemctl restart apache2
Anda juga dapat memverifikasi status Apache dengan 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 Mon 2021-11-01 03:39:47 UTC; 5s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 20013 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 20017 (apache2) Tasks: 6 (limit: 2341) Memory: 14.1M CPU: 95ms CGroup: /system.slice/apache2.service ??20017 /usr/sbin/apache2 -k start ??20018 /usr/sbin/apache2 -k start ??20019 /usr/sbin/apache2 -k start ??20020 /usr/sbin/apache2 -k start ??20021 /usr/sbin/apache2 -k start ??20022 /usr/sbin/apache2 -k start Nov 01 03:39:47 debian11 systemd[1]: Starting The Apache HTTP Server..
Akses Antarmuka Web Teampass
Sekarang, buka browser web Anda dan akses antarmuka web Teampass menggunakan URL http://teampass.example.com . Anda akan melihat halaman berikut:
Klik LUNCURKAN dan BERIKUTNYA tombol. Anda akan melihat layar pemeriksaan Server:
Berikan jalur Teampass Anda, URL situs web, dan klik LUNCURKAN dan BERIKUTNYA tombol. Anda akan melihat layar koneksi Database:
Berikan detail Database Anda dan klik LUNCURKAN dan BERIKUTNYA tombol. Anda akan melihat layar persiapan:
Berikan sandi admin Anda dan klik LUNCURKAN dan BERIKUTNYA tombol. Anda akan melihat layar pembuatan Tabel:
Klik LUNCURKAN dan BERIKUTNYA tombol. Anda akan melihat layar Finalisasi:
Klik LUNCURKAN dan BERIKUTNYA tombol. Setelah instalasi selesai dengan sukses, Anda akan melihat layar berikut:
Sekarang, klik Pindah ke beranda tombol. Anda akan diarahkan ke layar login TeamPass seperti yang ditunjukkan di bawah ini:
Berikan nama pengguna Anda sebagai admin dan kata sandi yang telah Anda tulis selama proses instalasi, dan klik tombol Masuk tombol. Anda akan melihat dasbor TeamPass di layar berikut:
Amankan Teampass dengan Let's Encrypt SSL
Pertama, Anda perlu menginstal klien Certbot Let's Encrypt di server Anda. Ini digunakan untuk menginstal dan mengelola sertifikat Let's Encrypt SSL untuk domain Anda. Jalankan perintah berikut untuk menginstal Certbot.
apt-get install python3-certbot-apache -y
Setelah Certbot terinstal, jalankan perintah berikut untuk mengunduh dan menginstal Let's Encrypt SSL untuk situs web Anda:
certbot --apache -d teampass.example.com
Anda harus memberikan alamat email yang valid dan menerima persyaratan layanan seperti yang ditunjukkan di bawah ini:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache 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 Obtaining a new certificate Performing the following challenges: http-01 challenge for teampass.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/teampass-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/teampass-le-ssl.conf Enabling available site: /etc/apache2/sites-available/teampass-le-ssl.conf
Selanjutnya, Anda harus memilih apakah akan mengarahkan ulang 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 untuk membuat semua permintaan dialihkan untuk mengamankan akses HTTPS dan tekan Enter untuk menginstal Let's Encrypt SSL. Setelah instalasi selesai dengan sukses, Anda akan melihat output berikut:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/teampass.conf to ssl vhost in /etc/apache2/sites-available/teampass-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://teampass.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=teampass.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/teampass.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/teampass.example.com/privkey.pem Your cert will expire on 2022-01-30. 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" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - 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
Pada titik ini, situs web Anda diamankan dengan Let's Encrypt SSL. Sekarang Anda dapat mengaksesnya dengan aman dengan protokol HTTPS.
Kesimpulan
Selamat! Anda telah berhasil menginstal pengelola kata sandi Teampass dengan Apache dan Let's Encrypt SSL di Debian 11. Sekarang Anda dapat mengelola semua kredensial Anda dan membagikannya dengan tim Anda dari antarmuka berbasis web.