С# отправить простую команду SSH
Я молодой студент и получил домашнюю работу на этой неделе. Это довольно сложно
для меня, потому что я должен создать программу, которая может подключиться к SSH-серверу
и отправить commamd "etc/init.d/network restart".
Я должен программировать это приложение на С#, и я довольно новичок в нем (только что узнал из
некоторые уроки школы). Я также должен создать графический интерфейс.
Я понимаю основы С# (loop, if и т.д.).
Я уже создал графический интерфейс, меню, кнопки и список журналов.
GUI = 3 текстовых поля (ip, имя пользователя, пароль) и кнопку для подключения.
![screenshot of ui]()
![screenshot of code]()
Я кодирую программу Microsoft Vistual Studio.
Мой вопрос: как установить соединение SSH с моим сервером?
Ответы
Ответ 1
Я использовал SSH.Net в проекте некоторое время назад и был очень доволен этим. Он также содержит хорошую документацию с большим количеством образцов о том, как ее использовать.
Оригинальный веб-сайт пакета можно найти здесь, включая документацию (которая в настоящее время недоступна в GitHub).
В вашем случае код будет примерно таким.
using (var client = new SshClient("hostnameOrIp", "username", "password"))
{
client.Connect();
client.RunCommand("etc/init.d/networking restart");
client.Disconnect();
}
Ответ 2
SshClient cSSH = new SshClient("192.168.10.144", 22, "root", "pacaritambo");
cSSH.Connect();
SshCommand x = cSSH.RunCommand("exec \"/var/lib/asterisk/bin/retrieve_conf\"");
cSSH.Disconnect();
cSSH.Dispose();
//используя SSH.Net
Ответ 3
SharpSSH должен выполнить эту работу.
http://www.codeproject.com/Articles/11966/sharpSsh-A-Secure-Shell-SSH-library-for-NET