2015-02-20 3 views
0

Я планирую сделать App либо в C++/C# (с помощью Visual Studio) в ОС Windows 7.C++/C# приложение для подключения к Linux серверу

OK, что это приложение делает это будет принимать ввод через студийных элементов например текстовое поле или кнопки. Затем он должен создать команду на основе ввода и запустить эту команду на сервере Linux.

например: Один простой пример, чтобы перезапустить определенный процесс на машине Linux

Теперь перейдем к моей проблеме:

Как подключить приложение к Linux машине? Я не хочу устанавливать стороннее приложение, так как мне не разрешено это делать.

Если возможно, пожалуйста, перечислите мне различные способы я могу сделать это

+0

Нет .. в простых терминах, что я прошу, «из приложения C# на окнах я могу подключиться к Linux-машине, чтобы я мог выполнять команды на этой машине». –

ответ

0

, если я правильно понимаю, для решения этого вы можете implemente WebService. Но когда вы сказали:

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

Я боюсь, что вы не можете установить WebService на сервере Linux?

Другая возможность, использовать SSH, если уже установить на Linux сервер (какой-то шанс, что есть), и вы, вероятно, могли бы найти LIB .Net, чтобы сделать SSH

Эта ссылка поможет .Net class to execute remotely on Linux over SSH?

0

Ну, вы можете сделай это. Я уже знаком с этим сценарием. У меня есть несколько приложений, работающих таким образом. Единственный вариант, который позволит вам сделать это без участия стороннего приложения, - это использовать протокол SSH.

Протокол SSH является хорошо известным и наиболее мощным инструментом системных администраторов linux. Вы можете выполнить любую команду над ним в ящике Linux из любой части мира или любой части дерьма, которая может запускать SSH-клиент. Спросите меня на комментарии, если вам нужна дополнительная информация об этом.

EDIT

Одним из примеров, если вы хотите перезапустить определенный процесс .. Вы можете передать команду через SSH, как показано ниже.

ssh [email protected]_ip '/etc/init.d/httpd restart" 

Приведенное выше будет перезапуск службы HTTPD (Apache).

Некоторые библиотеки, которые вы можете использовать в .NET

http://www.codeproject.com/Articles/11966/sharpSsh-A-Secure-Shell-SSH-library-for-NET

https://sshnet.codeplex.com/

Я не использовал выше библиотек .Net, вместо этого я сделал несколько вещей с помощью системы Linux с питоном и Баш.

+0

ya, пожалуйста, скажите подробнее ..Но не только SSH, если доступны какие-либо другие методы. Я читал, что вы можете это сделать, используя telnet, программирование сокетов и т. Д. –

+0

да, но программирование сокетов даст вам слишком много работы и вам понадобится разработать еще одну программу, которая будет работать на Linux-машине (если вы делаете процесс клиентского сервера). Но очень просто использовать SSH, а SSH-сервер уже установлен почти в каждом ящике Linux, за исключением нескольких случаев. – BlueBird

+0

Можете ли вы сказать мне, как это сделать? Вы предлагаете мне сделать это с помощью Putty? –

Смежные вопросы