-
Notifications
You must be signed in to change notification settings - Fork 459
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SSH transport regression in 0.6.11 #886
Comments
In my case specifying The Go documentation states:
So that would explain why it isn't working when both options are specified (only the public keys from the first is used). @oranenj FYI |
@klausenbusk if |
I only have some of my keys in the agent, in that case if |
Not working for me too
TF PLAN
ssh-agent not used ssh config(same connection url from plan virsh works)
server side error
if I do not make a copy of my ssh key with the default name the error is different(ssh config file gets ignored i think)
some more ssh infos sudo /usr/sbin/sshd -T | grep "(ciphers|macs|kexalgorithms)"
|
I came across the same issue and was searching for an answer.
After checking the documentation on https://libvirt.org/uri.html
I hope this could help. |
Nop, to me this is not working. Also in |
for me on macos(darwin_arm_64) terraform plan returned:
|
@ratelbee can you provide a full debug log? |
Can you all please test with v0.6.13, just released and give me feedback? (see #916 |
On macOS Monterey 12.1 does not work:
On Linux (Ubuntu 20.04) works. |
Please check: |
Weird, I am seeing this now in the strangest way. One machine is failing and one machine is fine. Same exact hardware, same exact code, same ssh config, same key.... same remote endpoint. Working Machine URI Failing machine Looks like the failing machine has had something introduced in one of the more recent golang patches Failing = go version go1.16.5 linux/amd64 Working machine = go version go1.16 linux/amd64 |
@MikePadge I'd be skeptical about that. Please check which key is being tried in each case by looking at the logs of the ssh server in both cases. As we tracked down the issue, it is because servers don't accept RSA keys with SHA1 signatures. Golang client does not support RSA+SHA256 sigs nor the extension to negotiate the algorithm to use. I have posted a branch with a fix I reproduced locally in #916 (comment) If you know how to build the provider locally, check that comment for instructions and check if that fix works for you. Feedback is crucial to make a release with the fix. |
The fork adds the following patches: - ssh: add support for extension negotiation (rfc 8308) golang/crypto#197 - ssh: use extension negotiation (rfc 8308) in ssh clients rmohr/crypto@e4ed966 Closes: #916 Closes: #886
https://github.com/dmacvicar/terraform-provider-libvirt/releases/tag/v0.6.14 should be available in the registry soon. |
I can propose this workaround. Make remote unix socket forwarding to local port with root access on remote host: And use connection string to local port: It's working for me. |
According to #864 comments, some users are experiencing regressions when using the ssh transport.
Please comment (in a single comment):
TF_LOG=debug terraform plan
outputThe text was updated successfully, but these errors were encountered: