Créer votre 1er utilisateur, sécuriser votre serveur, configurer un pare-feu. Quelques étapes simples pour rapidement prendre en main votre VPS
Je pars du principe que vous disposez de vos identifiants root et que vous êtes connectés à votre vps via ssh.
ssh root@my_server_ip
Une fois connecté, on commence par mettre à jour Ubuntu:
sudo apt update && sudo apt dist-upgrade
Installation d'un paquet de mise à jour automatique du système
sudo apt install unattended-upgrades
Je laisse généralement le paramétrage par défaut mais si vous voulez le modifier, c'est le fichier /etc/apt/apt.conf.d/50unattended-upgrades
que vous devez modifier.
Enfin il faut activer les mises à jour automatiques en éditant le fichier /etc/apt/apt.conf.d/20auto-upgrades
(créez le s'il n'existe pas):
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
On créé un nouvel utilisateur:
adduser my_username
On assigne ensuite le groupe sudo à notre nouvel utilisateur afin qu'il puisse lancer des commandes en mode superuser:
usermod -aG sudo my_username
On va utiliser UFW pour régler notre pare-feu. Pour afficher la config actuelle:
ufw app list
On doit s'assurer que le port SSH soit activé
ufw allow OpenSSH
ufw enable
ufw status
Attention: si vous activez ufw sans autoriser le protocole SSH, vous ne pourrez plus vous connecter à votre VPS. Je vous conseille donc d'ouvrir un nouveau terminal et de tenter une connexion avec vos identifiants avant de quitter votre session actuelle.
Si vous destinez votre serveur à un usage web, vous aurez besoin d'ouvrir d'autres ports.
ufw allow http
ufw allow https
Plus d'infos sur UFW sur le site de Digital Ocean.
Quittez votre session et connectez-vous avec les identifiants de votre nouvel utilisateur.
ssh my_username@my_server_ip
Puis éditez le fichier /etc/ssh/sshd_config
# /etc/ssh/sshd_config
# interdit à l'utilisateur root de se connecter via ssh
PermitRootLogin no
PasswordAuthentication yes
on redémarre le daemon ssh pour que les changements prennent effet:
sudo systemctl restart ssh
Il est possible d'aller plus loin encore dans la sécurisation de votre connexion ssh en désactivant l'authentification par mot de passe. Plus d'infos sur Digital Ocean
En bonus, si vous voulez vous connecter facilement à votre serveur depuis votre machine locale, sur votre machine, éditez le fichier ~/.ssh/config
# /.ssh/config depuis votre machine locale
Host my_machine
Hostname my_server_ip
Port 22
User my_username
Puis copiez votre clé ssh vers votre machine distante en faisant:
ssh-copy-id my_machine
Renseignez votre mot de passe. Vous pouvez désormais accéder à votre machine distante en faisant un simple ssh my_machine sans renseigner votre mot de passe. Pratique !