sshpass – полезный инструмент, используемый для запуска аутентификации ssh в неинтерактивном режиме.
Используя sshpass, вы можете использовать пароли для команд ssh или scp без взаимодействия, что помогает использовать их в скриптах оболочки.
Вместо этого мы рекомендуем использовать аутентификацию на основе ключей.
Установить sshpass
Пакет sshpass доступен в репозиториях пакетов по умолчанию для большинства современных операционных систем.
Вы можете использовать следующие команды, чтобы установить его в вашей системе.
На Debian:
sudo apt install sshpass
На CentOS:
yum --enablerepo=epel -y install sshpass
Использование sshpass
sshpass использует переменную окружения SSHPASS для хранения паролей пользователей.
Вам нужно сначала переменную SSHPASS с паролем, а затем использовать эту команду.
Вот простой скрипт оболочки, использующий sshpass.
1
2
3
|
export SSHPASS=ry3AvbWO0oupYX9HCMzp0Axx
sshpass –e scp testfile.csv user@example.com:/uploads/
|
Вы также можете запустить команду ssh следующим образом с sshpass.
1
|
sshpass –e ssh user@example.com
|