Рейтинг:0

Подключиться к ssh и выполнить команду в 1 скрипте

флаг fr

Я вхожу в ssh и запускаю команду вручную, и я хочу это написать.

На данный момент я делаю:

ssh 192.168.1.5-p 1234 а потом я вижу пароль пользователя [email protected]: затем я нажимаю ввод (пустой пароль), а затем я хочу запустить команду оболочки, например PS

Как я могу сделать все это в 1 скрипте?

William Martens avatar
флаг cn
Привет! Добро пожаловать в AskUbuntu! Отвечает ли это на ваш вопрос? https://askubuntu.com/a/16053/1130604
флаг vn
Другими словами, вы хотите запустить команду на удаленной машине. Должны ли нужны root-права? Вам нужно получить то, что эта команда отправляет на стандартный вывод на локальном компьютере? У вас есть root-права, но вы ничего не можете изменить на сервере?
Рейтинг:1
флаг cn

Запустить команду через SSH очень просто. Просто поместите команду в и команды SSH. Например, для запуска эхо привет через SSH, с пользователем пользователь и хозяин хозяин, я мог бы запустить это:

ssh user@host "эхо привет"
# и введите пароль (если он есть)
yfr24493AzzrggAcom avatar
флаг fr
Это не работает, потому что ssh требует ввода для пустого пароля
William Martens avatar
флаг cn
@ yfr24493AzzrggAcom Это может быть так, но было бы довольно небезопасно иметь что-то вроде `ssh someuser@somehost "somecommand" "somepassword"` ответ ниже меня (к моменту написания этого, ответ @sfphoton) упоминает открытый ключ- что я бы действительно посоветовал изучить.
yfr24493AzzrggAcom avatar
флаг fr
Я не могу изменить SSH-сервер
William Martens avatar
флаг cn
@ yfr24493AzzrggAcom извините, что конкретно вы имеете в виду под изменением?
Рейтинг:0
флаг cn

это объясняет то, что называется "Авторизованные ключи" и это был бы мой «простой» способ сделать это, как вы говорите, вам нужен пустой пароль (правильно? если нет, пожалуйста - укажите это!)

+ Связанная, а также подробная ссылка - также на AskUbuntu

Рейтинг:0
флаг us

На самом деле вы можете настроить ssh с аутентификацией с открытым ключом. Это не потребует от вас ввода пароля, а также считается более безопасным. Это хорошее руководство, как это сделать: https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server

Возможно, вы не хотите устанавливать пароль для ключа ssh или хотите добавить его в свою связку ключей, чтобы не получать еще один запрос пароля.

На этом этапе вы можете запустить ssh без ввода данных пользователем, так как вы можете указать команду для запуска: команда ssh Someone@somehost. Или в вашем случае: ssh [email protected] -p 1234 пс

yfr24493AzzrggAcom avatar
флаг fr
Это не работает, потому что ssh требует ввода для пустого пароля. И я не могу изменить сервер SSH
sfphoton avatar
флаг us
Почему нельзя поменять ssh сервер? Вам нужно только скопировать файл (ваш открытый ключ) на него

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.