0

在不涉及任何商业产品的情况下,最简单的方法是什么。我目前有这样的代码设置,但没有成功。目前 UNIXCOMPUTERNAME 和 UNIXPASSWORD 被硬编码到程序中只是为了我个人的测试目的。

这是一个 asp.net 网页,它位于代码隐藏文件中。我要么想让这个代码工作,要么我想找到一个 SSH 库。我正在使用 Visual Studio Web Developer Express,所以这似乎也限制了我。

Dim unixVariables(2) As String
    nameLabel.Text = FQDN.Text
    Dim Proc As New System.Diagnostics.Process
    Proc.StartInfo = New ProcessStartInfo("C:\plink.exe")
    Proc.StartInfo.Arguments = "-pw " & UNIXPASSWORD & " " & UNIXUSERNAME & "@" & UNIXCOMPUTERNAME & " ls > output.txt"
    Proc.StartInfo.RedirectStandardInput = True
    Proc.StartInfo.RedirectStandardOutput = True
    Proc.StartInfo.UseShellExecute = False
    Proc.Start()
    ' Pause for script to run
    System.Threading.Thread.Sleep(100)
    Proc.Close()
4

1 回答 1

1

您似乎知道,Microsoft 没有将 SSH 库作为 .NET 框架的一部分。但是,那里有一些免费的库,例如:

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

http://sshnet.codeplex.com/

http://www.routrek.co.jp/en/product/varaterm/granados.html

由于从未使用过它们,我无法为它们担保或推荐任何其他产品。但是,如果您想简单地执行问题中显示的命令行,那也应该可以正常工作。由于您没有具体说明该解决方案的确切原因,因此很难告诉您如何修复它。您确实需要确保可以以与运行 ASP 项目的用户相同的用户身份执行该命令。

于 2012-07-17T13:31:44.097 回答