debug3: sign_and_send_pubkey: RSA SHA256:wfA3yC7+sEIeTSQp6NUmP14XlgEX5WuJyVoL9m3WrX4 debug1: Authentication succeeded (publickey). Authenticated to
([ ]:443). говорит, что вы используете аутентификацию с открытым ключом, которая прошла успешно. У ключа нет пути, скорее всего потому, что он предлагается
ssh-agent
.Update: Update ssh debug to level 3 and a comparison picture with normal private key login.
На изображении вы сравниваете соединение с использованием одного закрытого ключа с соединением с использованием другого закрытого ключа. Разница в том, что первый сначала отправляет тест открытого ключа, чтобы проверить, может ли он быть успешным, второй отправляет подпись напрямую, без этого теста. В чем отличие описано в RFC 4252, Section 7
То, что вы делаете с ${...}
, называется Расширение параметра . Это расширит параметры -в вашем случае, параметр с именем shasum -a 256 "my file here.txt" | awk -F' ' '{print $1}'
, но это недопустимое имя параметра, как описано в Параметры :
A name may be any sequence of alphanumeric characters and underscores, or the single characters ‘*’, ‘@’, ‘#’, ‘?’, ‘-’, ‘$’, or ‘!’
На самом деле вы хотите запустить все в ${...}
, и для этого вам нужна Подстановка команд , которая использует круглые скобки вместо фигурных скобок:
↪ touch "my file here.txt"
↪ _test="$(shasum -a 256 "my file here.txt" | awk -F' ' '{print $1}')"
↪ echo $_test
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855