- A working Debian/Ubuntu Linux instance
 
After creating a VPS drop/node, login as root and update a newly installed system:
$ ssh [email protected]
# Pasword: ...
# > Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-101-generic x86_64).
# > ...
$ apt-get update
$ apt-get upgrade
$ apt-get dist-upgrade
$ rebootWait a minute while system is rebooting, then login again.
First of all, you’d like to add the admin group if it not exists:
$ addgroup adminYou can check admin group privileges using visudo:
$ visudoThere should be something like:
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
Now you can create the deployer user:
$ adduser deployerAnd add him to the admin group:
$ adduser deployer adminThe deployer user is successfully created, you can logout root:
$ exitThe next step is optional, but it really helps you to save quite some time. I’m talking about SSH auto-logins, these will prevent the server from asking you for a password every time you’d like to connect.
On your local machine cd into the ~/.ssh directory and generate an RSA key-pair:
$ cd ~/.ssh
$ ssh-keygen -t rsa -C "[email protected]"
# Generating public/private rsa key pair...To keep things secure, you may want to have a separate key-pair for each server, to make it possible you need to have an ssh configuration file. If you haven‘t created it before, you can do it right now:
$ touch configAdd a new host/rsa entry to your config file:
$ vi config
$ cat config
# ...
# Host yourhost
#  HostName 12.34.56.78
#  IdentityFile ~/.ssh/yourfile_rsa
# ...Now let’s see the contents of the public key, it should looks like the following:
$ cat yourfile_rsa.pub
# ssh-rsa AAAAb4kzaC1 (text omitted) 86n3iEEQ78cPVazr [email protected]Now what you have to do is to copy the contents of the created file to your clipboard, we’ll have to write it to a file on our remote server. Start by logging on to the server as deployer, proceed to the user’s .ssh directory and paste your public key into a file called authorized_keys (create it if it doesn’t exist). Save the file and close it, check that the contents have been written to the file and finally disconnect from the server:
$ ssh [email protected]
# Password: ...
$ cd ~/.ssh
$ vi authorized_keys
$ cat authorized_keys
# ssh-rsa AAAAb4kzaC1 (text omitted) 86n3iEEQ78cPVazr [email protected]
$ exitIf you’ve done everything right, you should now be able to log on to the remote server from your computer without having to input a password:
$ ssh deployer@yourhost
# > Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-101-generic x86_64).
# > ...