Как ввести пароль ssh с помощью bash? [дубликат]



этот вопрос уже есть ответ здесь:




  • Bash: управление SSH

    7 ответов



каждый день я подключаюсь к серверу через ssh. Я прохожу через эту процедуру:



IC001:Desktop user$ ssh [email protected]
[email protected]'s password:

Last login: Tue Jun 4 10:09:01 2013 from 0.0.0.0
$


Я хотел бы автоматизировать этот процесс и создать bash-скрипт, чтобы сделать это для меня. Я не забочусь о безопасности и хорошо хранить свой пароль открыто в сценарии. Я также в порядке, чтобы он был напечатан открыто на экране, пока сценарий выполняется. Поэтому я создал это:



#!/bin/bash          
ssh [email protected]
echo mypassword


но это не работает. Я тоже пробовал send вместо echo, но это также не сработало. Пожалуйста, сообщите, если это возможно сделать.

508   2  

2 ответов:

дважды проверьте, если вы не можете использовать ключи.

в противном случае используйте expect:

#!/usr/bin/expect -f
spawn ssh [email protected]
expect "assword:"
send "mypassword\r"
interact

создать новую пару клавиш: (по умолчанию)

ssh-keygen

скопировать публичный ключ на сервер: (пароль в последний раз)

ssh-copy-id [email protected]

отныне сервер должен распознавать ваш ключ и больше не запрашивать пароль:

ssh [email protected]

Comments

    Ничего не найдено.