Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ierror/ssh-permit-a38
Central management and deployment for SSH keys
https://github.com/ierror/ssh-permit-a38
rust ssh ssh-key ssh-key-manager
Last synced: 3 days ago
JSON representation
Central management and deployment for SSH keys
- Host: GitHub
- URL: https://github.com/ierror/ssh-permit-a38
- Owner: ierror
- License: mit
- Created: 2018-03-15T20:58:01.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-09-26T08:36:43.000Z (over 6 years ago)
- Last Synced: 2024-12-30T16:49:27.858Z (10 days ago)
- Topics: rust, ssh, ssh-key, ssh-key-manager
- Language: Rust
- Homepage:
- Size: 80.1 KB
- Stars: 468
- Watchers: 14
- Forks: 20
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# SSH Permit A38
Central management and deployment for SSH keys
[![Build Status](https://travis-ci.org/ierror/ssh-permit-a38.svg?branch=master)](https://travis-ci.org/ierror/ssh-permit-a38)
[![asciicast](https://asciinema.org/a/GyIB6XZj7Sotp9ZCekaQcLdDa.png)](https://asciinema.org/a/GyIB6XZj7Sotp9ZCekaQcLdDa)
### Features
* Central management of public SSH keys and servers in a simple and readable JSON database
* Sync authorized users to the servers authorized_keys
* SSH config support for the sync command connection paramaters (Hostname, User, Port)
* User Groups
* Host aliases
* Diff of authorized_keys to sync and the existing one## Latest release v0.2.0 - 2018-08-18
### Download prebuilt binaries
* [Linux x86_64](https://github.com/ierror/ssh-permit-a38/releases/download/v0.2.0/ssh-permit-a38-v0.2.0-x86_64-unknown-linux-gnu.zip)
* [Linux i686](https://github.com/ierror/ssh-permit-a38/releases/download/v0.2.0/ssh-permit-a38-v0.2.0-i686-unknown-linux-gnu.zip)* [macOS](https://github.com/ierror/ssh-permit-a38/releases/download/v0.2.0/ssh-permit-a38-v0.2.0-x86_64-apple-darwin.zip)
or you can install [this Homebrew package](http://formulae.brew.sh/formula/ssh-permit-a38):
```
brew install ssh-permit-a38
```[Previous Releases](https://github.com/ierror/ssh-permit-a38/releases)
### Changelog
## v0.2.0 - 2018-08-18
- Support for SSH config files [#5](https://github.com/ierror/ssh-permit-a38/issues/5)
If a ssh-permit-a38 hostname or alias matches the ssh configs Host (or Hostname), User, Port and Host information are used for authorized_keys sync connection
- sync command switch -y, --yes-authorized-keys-prompt: Automatic yes to authorized_keys location prompts
[Previous Changes](https://github.com/ierror/ssh-permit-a38/blob/master/CHANGELOG.md)
## Build from source
### Prerequisites
* [Rust](https://www.rust-lang.org/)
* [Cargo](https://doc.rust-lang.org/cargo/)
* [OpenSSL](https://www.openssl.org/)### Build
```
make build
```## Quickstart
```
ssh-permit-a38 host urlsmash.403.io add
ssh-permit-a38 user obelix add
ssh-permit-a38 user obelix grant urlsmash.403.io
ssh-permit-a38 sync
```## Documentation
Run
```
ssh-permit-a38 howto
```[or online](https://github.com/ierror/ssh-permit-a38/blob/master/examples/commands.md)
## Running the tests
```
make test
```### Coding style
We use rustfmt to format the source.
```
make fmt
```## Contributing
Pull requests welcome! ;)
## Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/ierror/ssh-permit-a38/tags).
## Authors
* **Bernhard Janetzki** [@i_error](https://twitter.com/i_error)
See also the list of [contributors](https://github.com/ierror/ssh-permit-a38/contributors) who participated in this project.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
## FAQ
* [Permit A38 ?](https://www.youtube.com/watch?v=GI5kwSap9Ug)