ssh client config manager
SSH client config file manager
What is ssh_config?
I don't remember all the servers I am managing. Also all servers requires all different configuration to connec to it. I know ~.ssh/config can handle this kind of issue. I want it to handle this file easier.
Yes, I am not sure this is eaiser way to handle it. but I am trying.
Python 2.7, 3.6, 3.7
$ pip install ssh-config
ssh-config. Usage: ssh-config [options] [COMMAND] [ARGS...] Options: -h --help Show this screen. -v --version Show version. -f --config FILE Specify an ssh client file [default: ~/.ssh/config] Commands: ls Show list of Hosts in client file add Add new Host configuration update UPdate Host configuration rm Remove exist Host configuration import Import Hosts from csv file to SSH Client config init Create ~/.ssh/config file host Get Host information version Show version information
$ ssh-config ls # It shows name and HostName attribute server1: 203.0.113.76 *: None server_cmd_1: 203.0.113.76 server_cmd_2: 203.0.113.76 server_cmd_3: 203.0.113.76
$ ssh-config add "server_cmd_4" HostName=203.0.113.77 IdentityFile="~/.ssh/cmd_id_rsa"
$ ssh-config add --update -p "server_cmd_3" IdentityFile="~/.ssh/cmd_id_rsa"
$ ssh-config rm "server_3"
Using pattern to get list or update exist hosts
List hosts with pattern
$ ssh-config ls "server_*" # It shows name and HostName attribute server_cmd_1: 203.0.113.76 server_cmd_2: 203.0.113.76 server_cmd_3: 203.0.113.76
Update hosts with pattern
$ ssh-config add --update -p "server_*" IdentityFile="~/.ssh/cmd_id_rsa"
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for ssh_config-0.0.10-py3-none-any.whl