При попытке автоматически войти на сервер с помощью sudo ssh cmd в скрипте

Я новичок в сценариях Shell. Я хочу войти на сервер, используя скрипт. Обычная команда, которую я использую, -> sudo ssh . когда я попытался поместить это в файл формата txt и попытался запустить, он выдавал ошибку "не могу выполнить". Я администратор, и у меня есть root-доступ. Любая помощь будет высоко оценен.

2 ответа

Добавьте это в начало вашего файла, чтобы оболочка знала, какой интерпретатор использовать.

#! /bin/sh

Также убедитесь, что ваш файл исполняемый:

chmod +x yourScript

Также нет необходимости в sudo с ssh. Используйте только SSH

ssh user@machine

Если вам нужно передать пароль, я рекомендую sshpass

apt-get install sshpass
sshpass -p<password> ssh user@machine

Создайте пару ключей с помощью ssh-keygen. Чтобы установить доверие между двумя пользователями на двух машинах, вам нужно добавить содержимое ~/.ssh/id_rsa.pub на вашем компьютере в ~/.ssh/authorized_keys на удаленной машине и chmod это только пользователь. Вы должны быть в состоянии войти без пароля сейчас.

Затем, чтобы использовать sudo удаленно, вам нужно настроить что-то еще в файле sudoers на этой машине с помощью visudo:

По умолчанию: пользователь! Requiretty

Другие вопросы по тегам