Skip to main content

A simple script to manage the deployment of your ssh keys on your servers

Project description

synckeys is a simple project to manage the deployment of ssh keys of multiple people on multiple servers.

The usage is quite simple:
  • list all the ssh keys you want to manage in keys.yml

  • list all the projects in acl.yml and link them to the corresponding authorized keys

  • just run synckeys: all servers you are allowed to access will be synced with the correct keys

The principles behind synckeys

What you see is what you get is more secure

The list of projects is a straightforward yaml list:
  • much more readable than a shell script or a fancy provisioning

  • accessed much more often

  • by more people (devs and sysadmins) you trust

Therefore you get the magic of self-management and avoid the common pitfalls:
  • keys of ex-employees staying forever on the servers

  • non-personal keys that get shared too widely

And many more of the things you can expect when smart people you trust ca take action quickly when they see something wrong.

Every dev or sysadmin in the organisation can use it

The syncing rule is simple: if you have a certain access on a server, you can give the same access to somebody else.

This might seem straightforward but this is not what you get when you use a solution like puppet, chef or ansible. These provisioning solutions are mostly run as root on the destination server, therefore disallowing a non-root user to contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

synckeys-1.0.1.tar.gz (5.7 kB view hashes)

Uploaded Source

Built Distribution

synckeys-1.0.1-py2.py3-none-any.whl (5.4 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page