Когда вы отправляете пароль через ожидаемый, если вы делаете «ps», вы можете просмотреть всю команду с паролем. Чтобы избежать этого, вы можете вызвать ожидающий скрипт из другого bash-скрипта, отправив случайную строку длиной около 500 символов и затем пароль. Затем в ожидаемом сценарии вы можете вызвать пароль как переменную $ 1.
Пример сценария Bash:
#! / Bin / bash
строка = "6e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d8206e2884f8bf8418bac1ca224472c5d820"
. / Expectedcript $ string "MySuperSecretPassword"
И пример сценария:
#! / Usr / bin / wait -f
установить тайм-аут 20
установить строку [lindex $ argv 0]
установить пароль [lindex $ argv 1]
spawn ssh "user@192.168.1.1"
ожидать "задницу"
отправить "$ password \ r"
Надеюсь, что это решит вашу проблему.