Подтвердить что ты не робот

Библиотека С# для SSH и Telnet

Я ищу библиотеку С#, которая обеспечивает доступ к SSH и Telnet под одним и тем же интерфейсом. Что было бы хорошим выбором?

4b9b3361

Ответ 1

Я рекомендую Granados для стека SSH. Он используется во многих продуктах.

Я рекомендую эту страницу проекта кода для стека telnet.

Вы также можете скачать эмулятор терминала Poderosa. Он использует Granados в качестве стека SSH и имеет собственную реализацию стека telnet.

Poderosa очень подключается. Он обеспечивает хороший уровень абстракции в сетевых стеках. Если у вас нет времени писать собственный унифицированный интерфейс, вы должны действительно проверить их работу. Он обеспечивает доступ к SSH и Telnet под тем же интерфейсом, что и вы. К сожалению, это написано японскими инженерами. Все встроенные комментарии написаны на японском языке. Это может занять некоторое время, чтобы понять коды.

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

Вы можете не заметить, что даже в простой команде "ls -al" возвращаемое содержимое может также содержать некоторые escape-последовательности символов. Эти escape-последовательности должны указывать имя каталога и имя файла в разных цветах.

Опять же, для эмуляции терминала лучшая библиотека С#, которую я могу найти, - Poderosa. Если вам не нужно использовать библиотеку С#, PuTTY имеет лучшую поддержку эмуляции терминала. Он может распознавать почти все escape-последовательности символов, которые я видел до сих пор.

Хотя я настоятельно рекомендую вам посмотреть на Подерозу и Гранадос, помните, что эти проекты, похоже, больше не активны. Ну.. даже так, это все же лучшее, что я видел.

Ответ 2

Создание SSH-работы с С# действительно очень сложно, и большинство реализаций являются либо глючными, либо слишком медленными. Когда мы делали SmarTTY, мы много боролись с SharpSSH и SSH.Net, а затем решили сделать свою собственную оболочку С# вокруг libssh2.

Хотя SmarTTY не является открытым исходным кодом, если вы хотите использовать свою библиотеку SSH в своем проекте, не стесняйтесь оставить мне электронное письмо. Если есть большой спрос на такую ​​библиотеку, мы можем опубликовать ее как отдельный продукт.

Ответ 3

Эта ссылка может помочь вам Cnet Telnet Library

  • Минималистичная Telnet
  • telnetcsharp.codeplex.com
  • xpresslearn
  • thoughtproject.com
  • dotnettelnet

Ответ 4

Я не мог найти ничего, что обеспечивало бы идентичные (или даже похожие API) для telnet и ssh, sharpSSH - небольшая библиотека что прекрасно абстрагирует SSH.