Muszę wykonać ssh z wiersza poleceń systemu Windows , podając hasło w sposób nieinteraktywny. Mógłbym zaimplementować uwierzytelnianie oparte na kluczach i móc wykonywać polecenia ssh tak samo
ssh <user>@<host> <command>
Czy są jakieś polecenia, takie jak
ssh <user>@<host> -P <password> <command>
Nie wiem, czy jest to wykonalne. Jednak można obejść to samo. Podaj mi kilka pomysłów, aby osiągnąć to samo.
command-line
ssh
passwords
Balachandar
źródło
źródło
Odpowiedzi:
Plink PuTTY ma argument wiersza poleceń jako hasło . W odpowiedziach na to pytanie poczyniono inne sugestie : użycie programu Expect (który jest dostępny dla systemu Windows) lub napisanie programu uruchamiającego w Pythonie z Paramiko.
źródło
Narzędzie sshpass jest przeznaczone właśnie do tego. Najpierw zainstaluj sshpass, wpisując to polecenie:
Następnie dodaj polecenie ssh / scp przedrostkiem
Ten program jest najłatwiejszy do zainstalowania w systemie Linux.
Zamiast tego użytkownik powinien rozważyć użycie bezpieczniejszego uwierzytelniania za pomocą klucza publicznego SSH (z
ssh
poleceniem).źródło
sudo port install sshpass
. Jeśli jednak występuje problem z logowaniem z innego powodu, sshpass zwykle kończy się niepowodzeniem (brak komunikatu o błędzie). Więc debuguj polecenie bezsshpass
wcześniejszego; następnie dodajsshpass -p blah
(itp.).A co z tym spodziewasz się scenariusza?
źródło
expect
jest notorycznie niedoceniany!Rozwiązanie Windows
Windows-Key + R
putty.exe -ssh [username]@[hostname] -pw [password]
źródło
Rozwiązanie PowerShell
Korzystanie Posh-SSH:
źródło