Как банально отправить команду по SSH?

Sanya330

Client
Регистрация
16.08.2020
Сообщения
302
Благодарностей
69
Баллы
28
Стоит задача, подключится к серверу и отправить туда несколько команд. Пробовал сделать через запуск Kitty с параметрами запуска, но выдаёт такое окно, которое исключает полную автоматизацию. Кто может помочь с данным вопросом?
89243
 

semafor

Client
Регистрация
27.12.2016
Сообщения
289
Благодарностей
404
Баллы
63
У вас putty говорит, что на локальной машине в кэше нет отпечатка ключа (авторизируетесь я так понимаю по ключам). Давненько не подключался, но если верно помню, достаточно нажать accept, ключ сервера сохранится в кэш на локали и в следующий раз вопроса быть не должно.
Решение по автоматизации работы с серверами по ssh есть здесь https://zennolab.com/discussion/threads/avtomaticheskaja-nastrojka-smtp-servera-soedinenie-s-serverom-po-ssh.23197/
 
Последнее редактирование:
  • Спасибо
Реакции: Sanya330

Sanya330

Client
Регистрация
16.08.2020
Сообщения
302
Благодарностей
69
Баллы
28
У вас putty говорит, что на локальной машине в кэше нет отпечатка ключа (авторизируетесь я так понимаю по ключам). Давненько не подключался, но если верно помню, достаточно нажать accept, ключ сервера сохранится в кэш на локали и в следующий раз вопроса быть не должно.
Решение по автоматизации работы с серверами по ssh есть здесь https://zennolab.com/discussion/threads/avtomaticheskaja-nastrojka-smtp-servera-soedinenie-s-serverom-po-ssh.23197/
Да Putty выдаёт предупреждение, но оно выдаёт предупреждение на каждый новый сервер, а сервера каждый день добавляются новые и вручную тыкать кнопки не получится, тк проект может работать и в моё отсутствие. Почему-то опций для отключения этих предупреждений нет :(

Авторизация возможна только по ключу.
В шарпе я не разбираюсь и поэтому не понимаю как тут использовать ключ
SshClient sshClient = new SshClient("ip", 22, "root", "password");
 

Sanya330

Client
Регистрация
16.08.2020
Сообщения
302
Благодарностей
69
Баллы
28
Готовое решение подключения через SSH с использованием ключа
Код:
var ip = project.Variables["VMIP"].Value;
var port = Convert.ToInt32(project.Variables["VMPort"].Value);
var user = project.Variables["VMUser"].Value;
var PrivateKey = project.Variables["PrivateKey"].Value;

var sshClient = new SshClient(ip, port, user, new PrivateKeyFile(new MemoryStream(Encoding.Default.GetBytes(PrivateKey))));
sshClient.Connect();
 
  • Спасибо
Реакции: DDDmoney, TeslaCo и djaga

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)