A quick guide to setup a SSH-conncection to Virtual Machine Ubuntu Server 20.04
- Ubuntu Server 20.04 Ssh Couldn't Agree A Key Exchange
- Enable Ssh On Ubuntu 20
- Ubuntu Server 20.04 Ssh Access Denied
This article shall serve to prevent wasting hours looking for the pitfalls I encountered setting up Ubuntu Server 20.04 on my Virtual Box host (Ubuntu, Windows and Mac).
Install Ubuntu Server Image in Virtual Box
How To Set Up SSH keys On Ubuntu 20.04 SSH, or secure shell, is an encrypted protocol used to administer and communicate with servers. When working with an Ubuntu server, you will spend most of your time in a terminal session connected to your server through SSH. Install the openssh-server in order to perform an installation of the SSH server on your Ubuntu 20.04. The basic steps for securing an SSH server in Ubuntu 20.04 are as follows: Step # 1: Opening the SSH Configuration File: You can open the SSH configuration file.
Download and install the .iso-file as described here. It's quite straightforward:https://hibbard.eu/install-ubuntu-virtual-box/Install openSHH right away or install it afterwards with
Ubuntu Server
Ubuntu Server comes without a GUI and nice advanced terminal features like a clipboard. You could install tmux but a more elegant way is to use a shell from your host.
Ubuntu Server 20.04 Ssh Couldn't Agree A Key Exchange
Port Forwarding
Now, on a normal server connected to the same network, you could just SSH in the server right away (if configured right).Running ‘ifconfig’ on your Ubuntu server will show a strange IP like‘10.0.2.15’which has to do with the way Virtual Box treats the virtual machine.If you try to SSH in your virtual machine you will get a misleading error
Enable Ssh On Ubuntu 20
In case it was really a connection timeout you could just open the ssh config file
and change the line
but this is not the issue here!
As always stackoverflow gets straight to point even though detailed descriptions are missing. The solution is simple port forwarding. Just follow the steps:
- Turn off VM
- Go to settings -> network -> adapter1 -> advanced -> port forwarding
- Create an entry with Name: ForwardPort (could also be anything else), Protocol: TCP, Host-IP: 127.0.1.1, Host-Port: 2222 (could also be 22 or any other unbmer as long as not occupied already on host), Guest-IP: 10.0.2.15, Guest-Port: 22
- Confirm, start VM, log in. SSH server starts automatically.
- On host enter in terminal
And there we go! I logged in as user dome on my host ubu.
Ubuntu Server 20.04 Ssh Access Denied
Transfering files
Use scp. If you want to transfer a file from guest to host use
Windows SSH support
Since Windows 10 Windows comes with openSSH, so no more need for PuTTy.Anyway, if you login i.e. with Powershell you will note, that the copy paste behavior changes. Before CTRL+C and CTRL+V worked fine, but now you need to mark text and hit ENTER to copy and right click to paste (stackoverflow).
P.S.If you use VIM in Powershell, you will note, that the background color will likely mess up readability and result in a display like this (recognize the dark blue text?)
If so, just change the background colors, with right click on the white window bar next to minimize, go to properties -> colors.