This question, in different forms, has been asked hundreds of times, and the answers are always similar - I agree with them in general case, but still would like to ask it again as my case is a bit different.
My workflow involves interaction over SSH with various devices manufactured by company I work in and I would like my SSH client to:
- Remember the password for a host once I successfully login
- Do not require me to manually delete entries from known-hosts file in case host identification changed.
The devices are always in an isolated, local network without internet access. I cannot use key-based authentication since these devices have no persistent storage (keys will not survive a reboot). I'd also like to use the same PC to access hardware in different setups - IPs and passwords are the same, but hosts IDs are different.
Regular, OpenSSH client is painful in this scenario - while I understand that's because of the security I'd like to voluntarily opt out of it.
Is this somehow possible without forking OpenSSH and making these changes by myself?
expect
could be part of one of the solutions. – Rui F Ribeiro Mar 22 '18 at 12:58StrictHostKeyChecking
option in either/etc/ssh/ssh_config
or your~.ssh/config
file. Also, some desktop environments will save password after first login during session - if your devices all end up with teh same username and password for access, this alone may work. if you are on Windows, not sure what can be done viaputty.exe
for theStrictHostKeyChecking
equivalent, but I think that you can save a username and password in a "saved host config" option. – ivanivan Mar 22 '18 at 13:28