The Maverick.NET SSH API

Getting Started with the Maverick.NET SSH API

What does Maverick.NET do?

Maverick.NET is an SSH API. SSH (Secure Shell) is a program to log into another computer over a network, to execute commands in a remote machine and to move files from one machine to another. It provides strong authentication and secure communication over insecure networks. There are two separate SSH protocol versions available, the original SSH1 and the current version SSH2. The two protocols are not compatible and you cannot connect to an SSH1 server using an SSH2 client and visa versa. SSH1 is considered deprecated and has many vulnerabilities (full details can be found at cert.org).

What features does Maverick.NET support?

The Maverick.NET SSH API provides support the SSH1 and SSH2 protocols and their associated utilities.

Which assemblies to I need?

When creating a Visual Studio .NET project make sure that you reference the Maverick.NET assembly. Two versions of the assembly are installed so make sure you check the path in the Add Reference dialog to ensure that you have selected the desired version. You have the option of using either the Release build (best performance) or the Debug build (performance is affected by trace output).

Are there any examples?

Take a look at the examples folder which is installed in the installation directory. This contains a number of C# and Visual Basic examples that will help you get started.

Looking for some pointers to get started?

Class/Interface Description
SSHConnector This class makes SSH connections to the remote servers and should be your first port of call.
SSHClient Created by the SSHConnector you can't do much without this work horse client.
SSHSession Once your client is authenticated you're most likely going to want to execute a command, or start the users shell.
SFTPClient If you want to perform SFTP file transfers then take a look at this class.
SCPClient A simple client for performing Secure Copy (SCP) file transfers on both SSH1 and SSH2 connections.
ForwardingClient This class provides full tunnel management for port forwarding configurations.

Where can I get support or report bugs?

Sometimes everything does not work as expected, either through no fault of your own or because users are unfamiliar with the API. If you encounter a problem using the API or just want an answer to something that's not currently covered by the documentation please get in contact with our support team. We here to help you get your SSH implementation up and running as quickly as possible.