Setting up the SSH Server

The SSH Server is designed to allow SSH clients to connect to a maverick shell.


Installation Instructions

To install the SSH server follow these steps:

  1. Get jaramiko library

    To run the ssh server maverick requires the jaramiko library.It is obtainable from here:

    Currently maverick requires a modified version of the 109 version. The diff file to make the modifications is here:

    Rebuild jaramiko with the patch and copy the resulting jaramiko.jar file to the maverick/lib directory. Note the snapshot build comes with a prebuilt jaramiko.jar ready for use, so this step may be skipped.

  2. Create or copy a host key

    The SSH server uses host keys in the openssh format. There are a number of ways of creating a host key. Both RSA and DSA keys are supported. First method, use maverick's inbuilt generator:

    cd maverick/etc/ssh
    RUN org.maverickdbms.server.ssh.KeyGenerator -b 1024 -t RSA -f maverick-host-key
        

    Second method, copy an existing openssh host key or create your own with openssh's sskeygen utility.

    cd maverick/etc/ssh
    ssh-keygen -b 1024 -t RSA -f maverick-host-key
        

    Finally using openssl:

    cd maverick/etc/ssh
    openssl genrsa -out maverick-host-key 1024
        
  3. Install JAAS module

    This is perhaps the most difficult section of the install. To provide a authentication layer need to install and configure a JAAS module. This varies depending on how you wish authentication to done on your server.

    Please see the Install Authentication page for further details on completing this step.

  4. Update maverick.properties

    There are a number of configuration options available for the SSH Server

    org.maverickdbms.server.ssh.banner={Banner message to display on login}
    org.maverickdbms.server.ssh.config_dir={Directory holding config info ie host key}
    org.maverickdbms.server.ssh.debug={true/false}
    org.maverickdbms.server.ssh.host_key={Host key file name: default: maverick-host-key}
    org.maverickdbms.server.ssh.login_config={JAAS Config file, default: jaas.config}
    org.maverickdbms.server.ssh.login_context_name={JAAS login context, default: MaVerick}
    org.maverickdbms.server.ssh.interface={Network interface the server listens to, default: localhost}
    org.maverickdbms.server.ssh.network port={Default port number, default: 6668}
    
  5. Start Server
    RUN org.maverickdbms.server.ssh.Server
    

The server should now be running(by default on localhost port 6668). Try logging in with a ssh client say openssh or putty


Robert.Colquhoun@gmail.com