wolfSSL provides many different embedded libraries and products, one of which is the wolfSSH Lightweight SSH library. wolfSSH is a lightweight SSHv2 server library written in ANSI C and targeted for embedded, RTOS, and resource-constrained environments - primarily because of its small size, speed, and feature set. It also includes many different example applications, such as an example client, echoclient, server, echoserver, and a port forwarding example.
To configure the library when downloading it from GitHub (https://github.com/wolfSSL/wolfssh), the first step required is to run the autogen.sh script from within the root directory of wolfSSH. This script sets up the library for use with autotools. Once the autogen.sh script has been run, the library can be configured as desired and then built. If downloaded from the wolfSSL website (https://www.wolfssl.com/download/) use of autogen.sh is not required. The configure script can take many features, some of which are outlined below:
--enable-debug | Add debug code - this turns off optimizations
(default: disabled) |
--enable-keygen | Enable key generation
(default: disabled) |
--enable-scp | Enable scp support
(default: disabled) |
--enable-sftp | Enable SFTP support
(default: disabled) |
--enable-fwd | Enable TCP/IP forwarding support
(default: disabled) |
All of the wolfSSH configure options can be viewed by running the configure script with the "-h" option. These configure options may also be prefixed with "--disable" as well, to disable features that are enabled by default.
The wolfSSH library can be downloaded by either cloning the wolfSSH GitHub repository (https://github.com/wolfssl/wolfssh.git), or by viewing the wolfSSL download page. For more information about using wolfSSH, please contact facts@wolfssl.com.