SSH连接远程Linux服务器(C#)

本文介绍了如何使用Granados,一个.NET的SSH客户端库,用于C#中连接远程Linux服务器。该库支持SSH1和SSH2协议,包含多种加密验证算法,并提供了TCP连接功能。由于文档缺乏,通过分析源码和测试代码,总结了添加引用、实现事件接收器接口以及执行SSH命令的步骤。
摘要由CSDN通过智能技术生成

 Granados是一个基于.NET的SSH客户端库。它有以下特点:
1.Granados是一个C#的开源项目。源码地址:http://www.routrek.co.jp/support/download/varaterm/granados200.tar.gz
2.同时支持SSH1和SSH2。
3.Granados实现了AES, Blowfish, TripleDES, RSA, DSA等加密验证算法。
4.实现TCP协议连接。

如何使用Granados库

可惜的是Granados的文档几乎没有!所以只有从它的源码找到它的测试代码来看。总结步骤为:

1.工程中添加Routrek.granados.dll(下载的包里有)的引用。

2.添加Reader类,实现ISSHConnectionEventReceiver和ISSHChannelEventReceiver接口。首先引用命名空间:

using  System.Threading;
using  System.Diagnostics;
using  System.Net;
using  System.Net.Sockets;
using  Routrek.Crypto;
using  Routrek.SSHC;
using  Routrek.SSHCV1;
using  Routrek.SSHCV2;
using  Routrek.Toolkit;
using  Routrek.PKI;


Reader类实现如下:

class  Reader : ISSHConnectionEventReceiver, ISSHChannelEventReceiver
    
{
        
public SSHConnection _conn;
        
public bool _ready;

        
public void OnData(byte[] data, int offset, int length)
        
{
            System.Console.Write(Encoding.ASCII.GetString(data, offset, length));
        }

        
public void OnDebugMessage(bool always_display, byte[] data)
        
{
            Debug.WriteLine(
"DEBUG: " + Encoding.ASCII.GetString(data));
        }

        
public void OnIgnoreMessage(byte[] data)
        
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值