Muszę zautomatyzować niektóre wdrożenia tożsamości, najlepiej przy użyciu ssh-copy-id
.
Próbuję podać hasło przez stdin, co jest możliwe przy ssh
użyciu -S
flagi. Wiem, że mogę wysłać dodatkowe opcje ssh
używania -o
flagi w ssh-copy-id
poleceniu, jednak nie ma przykładów użycia tej flagi na stronie man.
Więc próbowałem przekazać hasło SSH ssh-copy-id
przez stdin przy użyciu:
$# echo $TMP_PASS | ssh-copy-id -p2222 -i key.pub user@host -o "-S"
Ale wszystko co dostaję to:
/bin/ssh-copy-id: ERROR: command-line: line 0: Bad configuration option: -s
EDYTOWAĆ:
Próbuję podać hasło przez stdin, co jest możliwe przy
ssh
użyciu-S
flagi.
To stwierdzenie jest błędne. Właściwie przeczytałem tę flagę od sudo
człowieka;
ssh
pipe
key-authentication
2grit
źródło
źródło
brew install
jest podejmowana próba, pojawia się komunikat „Błąd: brak dostępnej formuły o nazwie„ sshpass ”. Nie dodamy sshpass, ponieważ zbyt początkującym użytkownikom SSH zbyt łatwo psuje bezpieczeństwo SSH”.brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
Gdzie znalazłeś informacje o
-S
opcji? Robi coś zupełnie innego! Służy do multipleksowania i ControlPath.SSH nie zaakceptuje haseł na stdin kiedykolwiek , więc należy wstępnie zainstalować autoryzowanych kluczy w sposób rozmieszczenia (preferowane) lub użytkowania
sshpass
lubexpect
skryptu jak opisano w wielu innych kwestiach.źródło
-S
flaga pochodzi zsudo
: S