Ssh CONfig Buckup tool.
Installation
Install it yourself as:
$ gem install sconb
Usage
$ sconb
Commands:
sconb dump > dump.json # Dump .ssh/config to JSON
sconb help [COMMAND] # Describe available commands or one specific command
sconb keyregen < dump.json # Regenerate private keys from JSON
sconb restore < dump.json > .ssh/config # Restore .ssh/config from JSON
Backup .ssh/config to JSON
$ sconb dump > ssh_config.json
Restore .ssh/config from JSON
$ sconb restore < ssh_config.json > ~/.ssh/config
Backup .ssh/config with private keys to JSON
$ sconb dump --all > ssh_config.json
Regenerate private keys from JSON
$ sconb keyregen < ssh_config.json
Advanced Tips
in like .ssh/config
Filter host
Dump github.com config only.
$ sconb dump github.com > github.json
And append github.com config to .ssh/config
$ sconb restore < github.json >> ~/.ssh/config
Dump github.com and gist configs.
$ sconb dump gis?t > github_gist.json
Merge config with jq
$ jq -s '.[0] + .[1]' a.json b.json | sconb restore > ~/.ssh/config
Contributing
- Fork it ( https://github.com/k1LoW/sconb/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request