The Protocol property is almost always set before a new
connection is made with the remote server. Supported values
are: Raw, Telnet, SSH1,
SSH2 and SSHAuto.
For the Telnet protocol, wodSSH
expects to connect only to telnet based servers. Although
it may appear that this is the same as the Raw type, Telnet provides additional functionality.
Under the hood, the Telnet protocol specification describes
specific 'telnet options' that are sent at the
beginning of each connection and during the connection,
that are not visible to the end user. wodSSH intercepts these
codes, and sends answers back to the remote server, providing
you with a plain connection.
The Raw protocol is a plaintext
protocol (if it can be called a protocol at all). It's
purpose is to allow wodSSH to connect to any server which
may not be specifically supported, allowing you to send and receive
arbitrary data and commands, depending on the remote server type.
For instance, you could connect to a remote server
on port 25 and send SMTP commands and even send email to
someone. Since protocols like SMTP don't have any
special codes, there is nothing to interpret, so you
will receive exactly what the remote server sent you.
The SSH1 protocol is an
'old-style' SSH protocol, which is most popular
among UNIX servers today. Almost all servers that support
Telnet also support the SSH1 protocol. It's fully
encrypted, and it's known to be secure - as long as the DES
algorithm is not used for encryption.
The SSH2 protocol is newer
than SSH1 and has a more sophisticated protocol description.
It supports far more encryption algorithms and most of
them are used with larger key values than in SSH1. Although the
name is similar, the protocols are quite different and are not
backward compatible.
The SSHAuto protocol is a
'general SSH' protocol. If you set the Protocol
property to SSHAuto, then wodSSH will try to negotiate
which SSH version to use with the remote server. Some
servers support both SSH1 and SSH2, in which case SSH2
will be selected. However, if server is SSH1 then wodSSH will
automatically fallback to SSH1 and use it.
You can test the Protocol property during the connection
to obtain the protocol type value. Although you may have set it
to SSHAuto (for example), wodSSH may change this value
internally to SSH1 or SSH2 depending which SSH version it
negotiated with the remote server. Please remember that
before a new connection is established (with another
server) you should set this property back to SSHAuto.
Changing the Protocol property may also affect the Port property. When you
set Protocol to Telnet, wodSSH will automatically set the Port
property to 23. If any SSH version is set, wodSSH will
change the Port property to 22.