Add Authentication
First of all you’ll need to setup a .htpasswd file. To do so type in the following:
sudo htpasswd -c /etc/apache2/.htpasswd username
To use the authentication you can add the following to your VHost configuration:
<Location "/"> AuthType "Basic" AuthName "KeeWeb" AuthBasicProvider file AuthUserFile "/etc/apache2/.htpasswd" Require valid-user </Location>
Setup WebDAV
WebDAV is needed to store your password database.
To enable WebDAV on Apache2 you need to type in the following command:
sudo a2enmod dav_fs
Now create a new directory for WebDAV and make it only accessable for the apache user:
mkdir /var/www/webdav chown www-data:www-data /var/www/webdav chmod 700 /var/www/webdav
Now we are going to create a new config for WebDAV in apache2:
Type in:
sudo vi /etc/apache2/sites-available/webdav.conf Add the following: Alias /webdav "/var/www/webdav" <Directory "/var/www/webdav"> DAV On Options Indexes </Directory> Save it and type in: sudo a2ensite webdav.conf && sudo service apache2 reload
Now test your settings by accessing yoururl.com/webdav.
You should see the Index of WebDAV.
Install KeeWeb
First you need to install git:
sudo apt install git
After this you can clone the keeweb repository by typing in the following:
cd /var/www/ git clone -b gh-pages https://github.com/keeweb/keeweb.git
This will create a keeweb folder in your /var/www/ directory.
Now we need to create a keeweb config for our apache:
vi /etc/apache2/sites-available/keeweb.conf Type in the following: <VirtualHost *:443> ServerName pass.yourdomain.com ServerAlias www.pass.yourdomain.de DocumentRoot /var/www/keeweb </VirtualHost> Save it and type in: sudo a2ensite keeweb.conf && sudo service apache2 reload
Now we add the authentication to our keeweb site.
To do so you can either create a .htaccess or add the authentication to your VHost like we setup above.
.htaccess:
vi /var/www/keeweb/.htaccess Add the following: AuthType Basic AuthName "KeeWeb" AuthUserFile /etc/apache2/.htpasswd Require valid-user Save it and quit.
Test your KeeWeb installation:
If you enter the url pass.yourdomain.com you should see a login prompt and after this the keeweb index page.
YOU MADE IT!
Create a default database:
Go to your keeweb index page and click on new. Now you created a temporary database. We want to save the database to our WebDAV to access it from everywhere. To do so, click on new in the bottom left corner.
Now you can change a few settings. I highly recommend to set a master password and a username! If you changed all your settings click on „Save as…“ and choose WebDAV.
Type in the path to your webdav and your username + password.
Example: