You can use SSH client by OpenSSH to connect to SSH servers in Unix-based operating systems such as Linux or macOS. It's typically installed by default, but it is available in the package manager's default repository if it isn't. On Windows, you can connect to SSH servers using third-party tools such as PuTTY.

The essential step to connecting to an SSH server using OpenSSH client at the terminal is to use ssh command with the server's IP address or host name as the argument. However, many more advanced connection options could be used or even required.

Related: PuTTY
Related: Secure Shell (SSH)

Steps to SSH into server using OpenSSH client:

  1. Make sure you have valid user on the SSH server.
  2. Make sure you have credentials to log in via supported authentication method.
  3. Connect to SSH server from SSH client using minimal format (ssh <username>@<host/ip>).
    $ ssh 192.168.111.18
    The authenticity of host '192.168.111.18 (192.168.111.18)' can't be established.
    ECDSA key fingerprint is SHA256:w3b7BfZzQrrY75Fx1XYH0t2RVkiXb7r6+gcC5umTR7o.
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    Warning: Permanently added '192.168.111.18' (ECDSA) to the list of known hosts.
    user@192.168.111.18's password: 
    Welcome to Ubuntu 20.10 (GNU/Linux 5.8.0-25-generic x86_64)
    
     * Documentation:  https://help.ubuntu.com
     * Management:     https://landscape.canonical.com
     * Support:        https://ubuntu.com/advantage
    
    0 updates can be installed immediately.
    0 of these updates are security updates.
    
    Last login: Wed Oct 28 14:50:14 2020 from 192.168.111.22

    Username does not need to be specified if is the same as the client's username.

  4. Specify port number if connecting to non-standard port.
    $ ssh user@192.168.111.18 -p 2022
  5. Use -v to view more details about the connection process.
    $ ssh -v 192.168.111.18 -p 2022
    OpenSSH_8.3p1 Ubuntu-1, OpenSSL 1.1.1f  31 Mar 2020
    debug1: Reading configuration data /etc/ssh/ssh_config
    debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
    debug1: /etc/ssh/ssh_config line 21: Applying options for *
    debug1: Connecting to 192.168.111.18 [192.168.111.18] port 2022.
    debug1: Connection established.
    debug1: identity file /home/user/.ssh/id_rsa type -1
    debug1: identity file /home/user/.ssh/id_rsa-cert type -1
    debug1: identity file /home/user/.ssh/id_dsa type -1
    debug1: identity file /home/user/.ssh/id_dsa-cert type -1
    debug1: identity file /home/user/.ssh/id_ecdsa type -1
    debug1: identity file /home/user/.ssh/id_ecdsa-cert type -1
    debug1: identity file /home/user/.ssh/id_ecdsa_sk type -1
    debug1: identity file /home/user/.ssh/id_ecdsa_sk-cert type -1
    debug1: identity file /home/user/.ssh/id_ed25519 type -1
    debug1: identity file /home/user/.ssh/id_ed25519-cert type -1
    debug1: identity file /home/user/.ssh/id_ed25519_sk type -1
    debug1: identity file /home/user/.ssh/id_ed25519_sk-cert type -1
    debug1: identity file /home/user/.ssh/id_xmss type -1
    debug1: identity file /home/user/.ssh/id_xmss-cert type -1
    debug1: Local version string SSH-2.0-OpenSSH_8.3p1 Ubuntu-1
    ##### snipped

    Use -vvv to see even more details.

  6. Disconnect from SSH server using exit command.
    $ exit
    logout
    debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
    debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
    debug1: channel 0: free: client-session, nchannels 1
    Connection to 192.168.111.18 closed.
    Transferred: sent 2864, received 3208 bytes, in 3.7 seconds
    Bytes per second: sent 771.3, received 864.0
    debug1: Exit status 0
Discuss the article:

Comment anonymously. Login not required.