Host keys /
Representation of a line in an OpenSSH-style “known hosts” file.
Parses the given line of text to find the names for the host, the type of key, and the key data. The line is expected to be in the format used by the OpenSSH known_hosts file.
Lines are expected to not have leading or trailing whitespace. We don’t bother to check for comments or empty lines. All of that should be taken care of before sending the line to us.
Parameters: line (str) – a line from an OpenSSH known_hosts file
Returns a string in OpenSSH known_hosts file format, or None if the object is not in a valid state. A trailing newline is included.
Representation of an OpenSSH-style “known hosts” file. Host keys can be read from one or more files, and then individual hosts can be looked up to verify server keys during SSH negotiation.
New in version 1.5.3.
Create a new HostKeys object, optionally loading keys from an OpenSSH style host-key file.
Parameters: filename (str) – filename to load host keys from, or
add(hostname, keytype, key)¶
Add a host key entry to the table. Any existing entry for a
(hostname, keytype)pair will be replaced.
Return True if the given key is associated with the given hostname in this dictionary.
Trueif the key is associated with the hostname; else
Remove all host keys from the dictionary.
Return a “hashed” form of the hostname, as used by OpenSSH when storing hashed hostnames in the known_hosts file.
the hashed hostname as a
Read a file of known SSH host keys, in the format used by OpenSSH. This type of file unfortunately doesn’t exist on Windows, but on posix, it will usually be stored in
Parameters: filename (str) – name of the file to read host keys from Raises: IOError – if there was an error reading the file
Find a hostkey entry for a given hostname or IP. If no entry is found,
Noneis returned. Otherwise a dictionary of keytype to key is returned. The keytype will be either
Parameters: hostname (str) – the hostname (or IP) to lookup Returns: dict of
PKeykeys associated with this host (or
Save host keys into a file, in the format used by OpenSSH. The order of keys in the file will be preserved when possible (if these keys were loaded from a file originally). The single exception is that combined lines will be split into individual key lines, which is arguably a bug.
Parameters: filename (str) – name of the file to write Raises: IOError – if there was an error writing the file
New in version 1.6.1.