- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 C#
类连接到 Solaris/Unix
服务器以读取系统信息/配置、内存使用情况等。
我的要求是从 C# 应用程序在服务器上运行命令(就像我们使用 PuTTY
客户端)并将响应存储在 字符串中
用于稍后处理的变量。
经过一些研究,我发现 SharpSSH
库可以用来做同样的事情。
当我尝试运行我的代码时,以下行给我一个Auth Fail
异常。我确信凭据(服务器名称、用户名和密码)是正确的,因为我能够使用相同的凭据从 PuTTY
客户端登录。
SshStream ssh = new SshStream(servername, username, password);
我做错了什么?
如果有帮助,以下是堆栈跟踪!
at Tamir.SharpSsh.jsch.Session.connect(Int32 connectTimeout)
at Tamir.SharpSsh.jsch.Session.connect()
at Tamir.SharpSsh.SshStream..ctor(String host, String username, String password)
最佳答案
经过一些研究,我找到了一个 VB 代码,它为我指明了正确的方向。似乎为 KeyboardInteractiveAuthenticationMethod
添加一个额外的事件处理程序有助于解决这个问题。希望这对其他人有帮助。
void HandleKeyEvent(Object sender, AuthenticationPromptEventArgs e)
{
foreach (AuthenticationPrompt prompt in e.Prompts)
{
if (prompt.Request.IndexOf("Password:", StringComparison.InvariantCultureIgnoreCase) != -1)
{
prompt.Response = password;
}
}
}
private bool connectToServer()
{
try
{
KeyboardInteractiveAuthenticationMethod kauth = new KeyboardInteractiveAuthenticationMethod(username);
PasswordAuthenticationMethod pauth = new PasswordAuthenticationMethod(username, password);
kauth.AuthenticationPrompt += new EventHandler<AuthenticationPromptEventArgs>(HandleKeyEvent);
ConnectionInfo connectionInfo = new ConnectionInfo(serverName, port, username, pauth, kauth);
sshClient = new SshClient(connectionInfo);
sshClient.Connect();
return true;
}
catch (Exception ex)
{
if (null != sshClient && sshClient.IsConnected)
{
sshClient.Disconnect();
}
throw ex;
}
}
关于c# - 使用 SharpSSH 时出现身份验证失败错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15668595/
我正在尝试使用 C# 创建 SSH 客户端。我正在使用 Tamir.SharpSsh 库。我在发送命令和从服务器获得适当响应时遇到问题。 我一直在测试它的方法是发送 ls 命令,然后是 cd.. 命令
我有 6 个文件要从 Windows 复制到 Linux:input.dat、image1.tif、image2.tif、image3.tif、image4.tif、image5.tif 我正在使用
我正在编写一个允许我从远程服务器上传和下载文件的应用程序。我使用 sftp 作为我的传输协议(protocol),我需要将所有文件和目录列出到 ListView 中。我正在为 sftp 使用 shar
我使用 SharpSSH 连接到 stfp 服务器。 这是因为我需要像这样添加一个私钥文件: sftp.AddIdentityFile(KeyFilePath); 但这会引发异常: invaid pr
我正在尝试使用 SharpSSH 从远程 SFTP 服务器获取文件,并且我想将其作为流读取。 我发现: 类(class) Sftp ,其中有 Get将其保存到本地文件的方法 -- 关闭 类(class
我将 SharpSSH .NET 库用于 SFTP。 http://www.tamirgal.com/blog/page/sharpssh.aspx 当我尝试连接服务器时出现错误 Algorithm
我正在将 SharpSSH 集成到现有的 .NET 2.0 项目中。所以不能切换到http://sshnet.codeplex.com/或其他更新的图书馆... 我拥有与设备的单一连接的所有功能,并且
我正在尝试使用 C# 类连接到 Solaris/Unix 服务器以读取系统信息/配置、内存使用情况等。 我的要求是从 C# 应用程序在服务器上运行命令(就像我们使用 PuTTY 客户端)并将响应存储在
我有一个小型 C# 应用程序,它使用 SharpSSH 库来简单地使用 SFTP 上传文件。现在,我的客户想要使用相同的程序通过 SSH/SFTP 连接到另一台服务器,但由于某种原因,该服务器是使用“
我正在使用 Tmir.SharpSsh - SshExec 方法将一些命令发送到远程 SSH 服务器。 问题是这个方法或它创建的某个线程将输出发送到我的控制台窗口(“Sha1”)。 我想问问是否有人知
我正在考虑使用 JSch 库(或者实际上是它的 sharpSSH C# 端口)为 SFTP 设置公钥客户端和服务器身份验证。不幸的是,我找不到任何关于关键加载函数使用的文件格式的文档: jsch.ad
private void OVConnection() { try { //Create a new JSch instance JSch jsch = new
我正在使用 SharpSSH 将一个 zip 文件从本地目录上传到 SFTP。一切正常。但是,我想获取我刚刚上传的当前文件的文件大小。我这样做的原因是 zip 文件很大(从 45 GB 到 80 GB
需要使用 Tamir.SharpSsh.Sftp 将文件从一个文件夹移动到另一个文件夹。 Tamir.SharpSsh.Sftp client = new Tamir.SharpSsh.Sft
我想使用 SharpSSH 将文件上传到 SFTP 服务器。 我得到了 SharpSSH.dll、要上传的文件、一个公钥,然后我将私钥发送到服务器。他们给了我一个用户名,不需要密码。 我试过这个: S
大家下午好 我在使用 .Net 的 SharpSSH 库时遇到了一个小问题(参见 http://www.tamirgal.com/blog/page/SharpSSH.aspx) Ss
我正在使用 SharpSSH (http://www.tamirgal.com/blog/page/SharpSSH.aspx) 将文件上传到某个 sftp 服务器。这很好用。现在我想下载一个文件,我
好的,这就是我要做的 我必须设置一个到 Linux 机器的 SSH session 并发出像“ls”或 cp 这样的命令。 这是片段 SshStream ssh = new
如何使用 Tamir Gal 的 SharpSSH 从 SFTP 服务器删除文件?我已经能够完成除删除之外的其他功能。 最佳答案 SshExec 类对我不起作用,但一点反射魔法起作用了: var pr
每当我尝试复制一个大于 2GB 的文件时,我在 Get 方法中得到一个数组索引越界异常: Scp myScp = new Scp("remotehost", "joe", "mypassword");
我是一名优秀的程序员,十分优秀!