Client app for Sakeyra

pip install akeyra==0.1.2


akeyra 🌸

Agent for Sakeyra

Python version PyPI version Build Status


What is it?

Akeyra is the client-side of Sakeyra.
It serves the purpose of creating/updating ~/.ssh/authorized_keys
It also create users that don't exist on your server but that are in the key-bundle.

How to install ?

Use Pip pip install akeyra

How to use it?

You have to fill the configuration file (see below) to connect to your SAKman Server.
Then you just have to run akeyra as root.
Make sure you have a Cron somewhere to update as frequently as possible.


usage: akeyra [-h] [-H HOST] [-E ENV] [-K KEY] [-P PROXY] [-F FILE] [-D]

You can provide all informations in CLI, use the basic configfile (/etc/akeyra.cfg), or an alternative one. If nothing is passed by CLI, then the basic configfile will be used.

CLI > CLI-File > base file

optional arguments:

  • -h, --help show this help message and exit
  • -H HOST, --host HOST Key Server
  • -E ENV, --env ENV Environment
  • -K KEY, --key KEY Secret key
  • -P PROXY, --proxy PROXY Proxy
  • -F FILE, --cnf FILE Alt Conffile
  • -D, --dry Dry run

If you need to use a proxy, you either set environment variable like http_proxy or use proxy in the configfile.

Configuration file /etc/akeyra.cfg

host =
key =
environment =
proxy =

Format between Akeyra and Sakeyra (decode)

  "environment": "rec",
  "users": [
    "user1": [
        {"email": "userkey1@test.com", "name": "userkey1", "pubkey": "laclepubliquedeuserkey1"},
        {"email": "userkey2@test.com", "name": "userkey2", "pubkey": "laclepubliquedeuserkey2"}
      "user2": [
        {"email": "userkey1@test.com", "name": "userkey1", "pubkey": "laclepubliquedeuserkey1"},
        {"email": "userkey2@test.com", "name": "userkey2", "pubkey": "laclepubliquedeuserkey2"}
  "pub_date": "2017-10-18T17:15:46.799689"