skd

[s]IMPLE [k]EY [d]ISTRIBUTION


Project maintained by dploeger Hosted on GitHub Pages — Theme by mattgraham

skd

[s]IMPLE [k]EY [d]ISTRIBUTION

skd is a tool for the simple distribution of SSH-keys in a growing environment.

It is based on Django and uses the Paramiko SSH-Stack and the Bootstrap3 template together with the Django-Bootstrap-bindings.

With skd you can create hosts, group them and link that group a group of users with keys to easily distribute all affected keys. skd generates a DSA- or RSA-Keypair, that is saved to its database and used as authentication source for skd itself. This keypair can (and should be) additionally be encrypted using a passphrase.

Now you can simply add a user with its key and press one button to grant (and revoke!) the user access to all needed hosts.

Requirements

Installation

skd needs a working Django-Installation first. Basically this is installing Django using pip or easy_install and then creating a project directory by issuing

django-admin startproject mysite

Please refer to the Django-Documentation and specifically the tutorial for details.

Afterwards, add "skd" and "bootstrap3" to your INSTALLED_APPS-settings variable (inside settings.py) and add this line

url(r'^skd/', include('skd.urls'))

to your URL configuration inside urls.py to start using skd.

Then use

python manage.py syncdb

to generate the needed models in your configured Django database.

skd needs a login window as all operations need logged-in users. You can use skd's own login page by adding

LOGIN_URL='login'

to your settings.py.

Deployment

For easy testing you can then use

python manage.py runserver

from the skd root-directory to run a testing server using Django's built-in development server. After that you can normally reach skd at

http://127.0.0.1:8000

This is, however, not recommended as skd highly recommends running behind a HTTPS-secured webserver. You can use Django's supplied wsgi-handler to run skd using wsgi in webservers like apache or lighttpd.

Other deployment options are documented on the django site.

Localization

If you want to use the translated user interface of skd, we recommend, that you add "django.middleware.locale.LocaleMiddleware" to the used middleware in your settings-file.

More information

For more information, visit the skd wiki