Skip to main content

Public Key Manager is designed to generate authorized_keys file and to distribute those to specified servers.

Project description

Description

This program can be used to manage the public keys on multiple servers. Specify in a configuration file which users with their public keys have permission to login to which server with a specific username.

Publickeymanager is usefull if you have multiple users logging in to shared accounts on multiple servers.

Config File

The config file has the following options:

[keys]
  Specify one public key per user.

[group:`user`]
  Use this if you want to bundle multiple users to one group. Say for example
  a sysadmin group.

[group:`name`]
  Specify a group of servers. `name` is the name of the group.
  A config file can hold multiple [group:`name`]
  directives.

Options for [group:name]

The options for the group:

user_groups
  A reference to groups defined in [group:`user`].
  All users in the group have
  access to the servers in this group.

access
  Which individual users have access to servers in this group.

servers
  A list of servers which belong to this group.

[server:`name`]
  Specify a server. A config file can hold multiple [server:`name`]
  directives.
  The name is the name of the server. A name can be referenced in a server
  group.

Options for [server:name]

The options for the server:

hostname
  The hostname of the server.

user
  The username that is used to login to the server.

groups
  Define which groups have access to this server. Groups need to exist in
  [group:`name`]

access
  Define which users have access to this server.
  Users need have a key file mentioned in [keys].

Example Config File

An example config file which shows all options:

[keys]
roland=rvanlaar.pub
example_user=example.pub
example_user2=example2.pub

[group:user]
sysadmin =
  roland

[group:remote]
user_groups =
  sysadmin
access =
  example_user1
servers =
  example_server1
  example_server2

[server:localhost]
hostname = 127.0.0.1
user = roland
groups = sysadmin
access = example

[server:example_server1]
hostname = example.com
user = example

[server:example_server2]
hostname = example.org
user = example

Changes

0.2

  • Fixed broken function parse_config.

  • Added Changes and Readme to long description.

0.1.2

  • The directory for the public keys can be chosen with -d.

  • Added more explanatory error messages.

0.1.1

  • Fixed egg install.

0.1

  • Released the first version to pypi.

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

publickeymanager-0.2.tar.gz (6.2 kB view details)

Uploaded Source

File details

Details for the file publickeymanager-0.2.tar.gz.

File metadata

File hashes

Hashes for publickeymanager-0.2.tar.gz
Algorithm Hash digest
SHA256 982053b84b7b120d6df7e8d6f9cc3cc368842b6107c07b4ac2c64d64321bdcdf
MD5 5a438ce3b5a6650437937c172213a748
BLAKE2b-256 e1400573c46d7598666f4a047d37002d0dfbb3e4041e5359ba21ecc0b34f9be0

See more details on using hashes here.

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