revised: 18-Apr-2023
These first steps will create the server - a VPS based on the image: Ubuntu 22.04 64bit "Jammy Jellyfish" and establishing means to upload/download files together with a graphical comprehensive control panel[Webmin].
It is worthly to note here that one will be working within a "console/monitor" environment, very unlike the common graphical ones. The steps are presented in a manner to make this experience minimal - that said, it would be very useful to have some familiarity with this environment. Once the server is up and running, one may wish look at some very basic bash commands and Linux commands. Of the many such guides, have a look a this one: Linux commands to A Beginner's Guide to the BASH Terminal
The VPS intended in these pages, are for services only and not for significant data storage. Hence a server space of even 15Gb is more than enough.
Step01 Establish an account with Linode (preferred) or DigitalOcean: Apart from establishing the usual username and password process, one is required to have a credit card. Once login, one will "Add a Linode" (it is highly recommended you choose one of at least 2Gb RAM, if a mailserver is to be implemented). There is also the option to create a DigitalOcean "droplet", choosing in all cases, Ubuntu 22.04 64bit as the operating system. Both providers will allow one to enter a public key (from one's SSH public/private key- see: More Secure Logon - SSH). If one has chosen not to use the SSH key pair (not recommended), either one of these providers will either send a welcome email containing two critical bits of information: the site IP address [a number with 4 parts eg. 127.0.0.1] and the user: 'root' password or provides the opportunity to set the 'root' password prior to the creation of the server
Step02 Using PuTTY, see reference: DigitalOcean - using SSH key with PuTTY. Open the application: PuTTY on your computer. PuTTY will open to its configuration page. In the dialogue box below the sub-heading "Host Name (or IP address)", copy and paste the IP address from the welcome email. The port can be left blank and the button active beside "SSH". As described in the linked tutorial, "Working with PuTTY's Public Key Format", set PuTTY to link up with one's private key. As PuTTY logins into your server, one will initially receive a warning: choose to 'accept' to continue.
Step03 At the first login with PuTTY, a dialog warning is produced -- accept the connection. The first request(if one has not used a SSH key-pair) from the PuTTY terminal will be [login as:] Enter the username: root and press the Enter/Return key. The second request will be for the password. From the initial server setup, one should have the root password, copy and paste (see Tip#2) this password and press the Return key.
Step04 One should now be successfully logged in to the server. Now create the password for user: root // one that has at least 12 characters. Should one need to create another password, one can create handy but a very strong and memorable password to replace it - for good suggestions see: Passwords With the new passward handy to copy, enter this command in the terminal: passwd that follows after '#'):
Step05 The following commands need to be entered (via cut & paste) and their actions completed sequencely:
Step06 Installing and activating the Webmin control panel: Enter similarly the following two commands below:
Reference: How To Install Webmin on Ubuntu 20.04
Step06 Opening Webmin: Once the install process is complete, type in this link in one's browser: https://[IP address]:10000. One will get the warning along the lines of "Connection not Protected". Ignore this warning and advanceto make the exception. Thereafter, this should lead one to the login page of the server's Webmin control panel.
The username for Webmin will be 'root' and its password.
Reaching and completing successfully Step06, one has now a functionally and accessible server. The graphical interface: Webmin now offers many advantages in future configuration work. However given the nature of the Internet, one needs to immediately secure the server with a firewall, the fail2ban app and finally Proftp as means to upload/down files.