sysPass PHP ile yazılmış web tabanlı parola yönetim uygulamasıdır ve ücretsizdir. Bilgi İşlem birimlerinin parola yönetimi konusunda becerikli bir uygulamadır. Kullanıcı yetkilendirme log takibi ve ldap entegrasyonu gibi bir çok özelliği vardır. Güvenlidir ve kullanımı oldukça basittir.
Bu rehberde sysPass uygulaması Ubuntu Server 20.04 üzerine kurulmuştur.
1. Apache, MariaDB ve PHP Kurulumu
sysPass uygulaması Apache, MariaDB ve PHP kurulum paketlerine ihtiyaç duyar. Kurulumu aşağıdaki komut ile başlatabilirsiniz.
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 -yTüm paketlerin kurulumu tamamlandıktan sonra php.ini dosyası üzerinde aşağıdaki düzenlemeleri yapmamız gerekmektedir.
nano /etc/php/7.4/apache2/php.inikomutu ile php.ini dosyasını içeriğini açınız.
Ardından aşağıdaki alanları düzenleyin;
post_max_size = 100M
upload_max_filesize = 100M
max_execution_time = 7200
memory_limit = 512M
date.timezone = Europe/Istanbuldüzenleme işlemini bitirdikten sonra CTRL+X+Y+Enter ile kaydedebilirsiniz değişikliklerin uygulanabilmesi için Apache servisini yeniden başlatınız.
systemctl restart apache22. Veritabanı ve Veritabanı Kullanıcısı Oluşturma
MariaDB varsayılan olarak güvenli değildir. Güvenli kurulum için aşağıdaki komutu kullanınız,
mysql_secure_installationMariaDB root parolasını ayarlamak ve kurulumu güvenli hale getirmek için aşağıdaki tüm soruları örnekteki gibi cevaplayınız,
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] Yişlem tamamlandığında MariaDB ara yüzünde oturum açınız,
mysql -u root -pkomutunu girdiğinizde parola soracaktır yukarıda oluşturduğunuz root parolasını giriniz. Ardından kullanıcı ve veritabanını oluşturun,
MariaDB [(none)]> create database syspassdb;
MariaDB [(none)]> grant all privileges on syspassdb.* to syspassuser@localhost identified by "parola";Ardından, ayrıcalıkları temizleyin ve aşağıdaki komutla MariaDB’den çıkış yapın.
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;3. sysPass Kurulumu
GitHub deposundan sysPass’ın son versiyonun indirebilirsiniz,
git clone https://github.com/nuxsmin/sysPass.gitindirme işlemi tamamlandıktan sonra sysPass dizinini Apache kök dizini içine taşıyınız,
mv sysPass /var/www/html/syspasssysPass sahiplik ve diğer izinleri ayarlamak için aşağıdaki iki komutu kullanın,
chown -R www-data:www-data /var/www/html/syspasschmod 750 /var/www/html/syspass/app/{config,backup}sysPass çalışabilmesi için composer kurulumu gereklidir. Aşağıdaki komut ile composer kurulum dosyasını oluşturunuz.
nano /var/www/html/syspass/install-composer.shAşağıdaki satırları ekleyiniz,
#!/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 $RESULTcomposer.sh dosyasını Ctrl+X+Y+Enter ile kaydettikten sonra aşağıdaki komutlar ile kurulumu başlatınız.
cd /var/www/html/syspass/
sh install-composer.shKurulum tamamlandıktan sonra gerekli olan php bağımlılıklarını çalıştırın.
apt install unzip
php composer.phar install --no-dev4. Apache Host Dosyasını Düzenleme
sysPass web hizmetlerinin çalışabilmesi için Apache host dosyasını oluşturmanız gerekmektedir.
nano /etc/apache2/sites-available/syspass.confHost dosyasını kendi yapınıza göre düzenleyin,
<VirtualHost *:80>
ServerAdmin admin@alanadiniz.com
DocumentRoot "/var/www/html/syspass"
ServerName syspass.alanadiniz.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>a2ensite komutu ile syspass host dosyasını çalıştırın,
a2ensite syspassApache servisini yeniden başlatın,
systemctl restart apache2Apahce servisinin durumunu aşağıdaki komut ile öğrenebilirsiniz.
apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese>
Active: active (running) since Fri 2023-06-02 18:22:02 +03; 12min ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 38068 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/S>
Process: 38534 ExecReload=/usr/sbin/apachectl graceful (code=exited, status>
Main PID: 38086 (apache2)
Tasks: 6 (limit: 2271)
Memory: 14.7M
CGroup: /system.slice/apache2.service
├─38086 /usr/sbin/apache2 -k start
├─38538 /usr/sbin/apache2 -k start
├─38539 /usr/sbin/apache2 -k start
├─38540 /usr/sbin/apache2 -k start
├─38541 /usr/sbin/apache2 -k start
└─38543 /usr/sbin/apache2 -k start
Jun 02 18:22:02 syspass2 systemd[1]: Starting The Apache HTTP Server...
Jun 02 18:22:02 syspass2 apachectl[38082]: AH00558: apache2: Could not reliably>
Jun 02 18:22:02 syspass2 systemd[1]: Started The Apache HTTP Server.
Jun 02 18:33:54 syspass2 systemd[1]: Reloading The Apache HTTP Server.
Jun 02 18:33:54 syspass2 apachectl[38537]: AH00558: apache2: Could not reliably>
Jun 02 18:33:54 syspass2 systemd[1]: Reloaded The Apache HTTP Server.5. Web Arayüzünde Erişim Sağlayın
Herhangi bir tarayıcıdan http://syspass.alanadiniz.com adresinden sysPass web ara yüzüne erişim sağlayınız. İstenilen bilgileri girdikten sonra Install ile kurulumu tamamlayınız.

Kullanıcı adı ve parola bilgileri ile sisteme giriş yapınız.

Giriş yaptıktan sonra aşağıdaki kontrol paneli karşılaşacaksınız.

Daha fazlası için sysPass demo sayfasına göz atabilirsiniz.
6. SSL Kurulumu
Aşağıdaki komut ile yeni bir host dosyası oluştunuz.
nano /etc/apache2/sites-available/syspass-ssl.confAşağıdaki örnekte satın alınmış bir SSL sertifikasının konfigürasyon dosyasıdır. Yapınıza göre satırları düzenleyiniz.
<VirtualHost *:443>
ServerAdmin admin@alanadiniz.com
DocumentRoot "/var/www/html/syspass"
ServerName syspass.alanadiniz.com
<Directory "/var/www/html/syspass/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
SSLEngine on
SSLCertificateFile /etc/ssl/sertifika/ssl.pem
SSLCertificateKeyFile /etc/ssl/sertifika/priv.pem
SSLCertificateChainFile /etc/ssl/sertifika/bundle.pem
TransferLog /var/log/apache2/syspass_access.log
ErrorLog /var/log/apache2/syspass_error.log
</VirtualHost>
SSL modülünü etkinleştirin,
a2enmod sslSSL host dosyasını etkinleştirin,
a2ensite syspass-sslApache servisini yeniden yükleyin,
service apache2 reloadKurulum tamamlanmıştır. Umarım bu rehber sizlere yardımcı olmuştur. Bir sonraki bölümde görüşmek üzere…
Kaynak; Bilişim Notları