MODELE : PAGE

Premières configurations système après l’installation de Linux-Debian

Premiers contacts

Premiers contacts

Connexion au système distant avec le client SSH puTTy

Juste après l’installation d’un système Debian virtuel, on doit connaitre l’adresse ip et le mot de passe admin afin de prendre le contrôle via SSH sur une console éloignée (PuTTY), puis exécuter les premières commandes de configuration.

Exécuter le logiciel PuTTY, entrer l’adresse IP dans le champs « Host Name », Port 22, puis appuyer sur le bouton « Open ».

Une fenêtre terminal en mode de commande alphanumérique apparait. Taper « root », puis saisir le mot de passe administrateur.

PuTTY - saisie de l'adresse IP
PuTTY – saisie de l’adresse IP du serveur
Fenêtre terminal - Session du serveur Contabo
Fenêtre terminal – Session du serveur Contabo

Mise à jour du système Debian

Mise à jour du système Debian

Une fois authentifié en tant que « root », en premier lieu, on va mettre à jour les versions les plus récentes de tous les paquets installés sur sa version actuelle de Debian.

apt update && apt full-upgrade -y
# ou
apt update & upgrade

Remarque : l’option « -y » permet de ne pas avoir à répondre « oui » ou « non » à chaque demande.

Remarque : doit-on utiliser apt ou apt-get ?
Avec apt, vous n’avez pas à vous frayer un chemin entre les commandes apt-get et apt-cache. apt est plus structuré et vous fournit les options nécessaires pour gérer les packages. Bottom line: apt = les options de commande les plus couramment utilisées d’apt-get et apt-cache.
Author Name
apt update, upgrade, dist-upgrade et full-upgrade : quelles sont les différences ? quel terme utiliser en fonction de se que l’on cherche à faire : Lire l’article suivant…
E t en prime un lien vers un article de l’hébergeur Contabo intitulé : « Debian et Ubuntu Upgrade »
Author Name

Instalation de la commande sudo

sudo (abréviation de substitute user do) est une commande permettant à l’administrateur système d’accorder à certains utilisateurs (ou groupes d’utilisateurs) la possibilité de lancer une commande en tant qu’administrateur.

La commande sudo est indispensable pour gérer les droit d’accès à partir du moment ou l’on déclare des utilisateurs. En effet, pour des questions de sécurité, il est fortement déconseillé d’utiliser le super-utilisateur autre que pour les tâches d’administration importantes.

apt install sudo

Ajout et configuration d’un utilisateur

Ajout et configuration d’un utilisateur

On ajoute l’utilisateur ipadair2 au groupe sudo :

usermod -aG sudo ipadair2

Pour retirer à l’utilisateur ipadair2 les droits acquis :

gpasswd -d ipadair2 sudo

On édite le fichier sudoers pour ajouter l’utilisateur aux administrateurs et aussi se débarrasser du mot de passe à retaper à chaque commande : sudo nano /etc/sudoers

On ajoute les informations suivantes dans le fichier sudoers :

# Création de l'utilisateur "ipadair2"
remi@vmi820488:~$ sudo adduser ipadair2
Adding user `ipadair2' ...
Adding new group `ipadair2' (1001) ...
Adding new user `ipadair2' (1001) with group `ipadair2' ...
Creating home directory `/home/ipadair2' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for ipadair2
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] Y

Remarque : pour changer le mot de passe de l’utilisateur par défauts : passwd robert

L’édition du fichier sudoers n’est pas la façon la plus « propre » de faire les choses quand nous avons un utilitaire créé pour nous aider à effectuer ces actions. La commande usermod nous permet d’ajouter/modifier des groupes dans lesquels se trouve un utilisateur.

Pour ajouter des utilisateurs à sudoers avec la commande usermod, il suffit d’ajouter le compte utilisateur dans le groupe sudo :
remi@vmi82:~$ sudo usermod -aG sudo ipadair2
# OU
remi@vmi82:~$ sudo gpasswd --add ipadair2 sudo
# Consulter la liste des groupes de l'utilisateur ipadair2
remi@vmi82:~$ groups ipadair2
ipadair2 : ipadair2 sudo
# Pour retirer les droits acquis
remi@vmi82:~$ sudo gpasswd --delete ipadair2 sudo
remi@vmi82:~$ groups ipadair2
ipadair2 : ipadair2
# pour réinitialiser le mot de passe (en cas d'oubli)
remi@vmi82:~$ sudo passwd ipadair2
# saisir deux fois le nouveau mot de passe

On accède éditer le fichier /etc/sudoers en exécutant la commande « visudo » .
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:>

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
remi    ALL=(ALL) NOPASSWD:ALL

# Allow members of group sudo to execute any command
%sudo    ALL=(ALL:ALL) NOPASSWD:ALL
ipadair2 ALL=(ALL) NOPASSWD:ALL
# ipadair2 ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "@include" directives:

Résumé des commandes employées :

sudo usermod -aG sudo ipadair2
sudo visudo
...
# On sauvegarde(Ctrl+o)/quit(Ctrl+x)
# On termine en redémarrant le service sudo:
/etc/init.d/sudo restart

état des lieux de l’adressage réseau

état des lieux de l’adressage réseau

Nous allons récupérer les informations sur la configuration réseau établi par l’hébergeur, c’est à dire le nombre d’interface réseau mises en place, l’adressage IP, le masque de sous-réseau, la asserelle ainsi que l'(les) adresse(s) DNS. Ces informations seront à noter car elles nous seront utiles dans les futures installations.

Adresse IP, masque de sous-réseau, Passerelle, adresse(s) DNS

Une configuration réseau complète, permettant de profiter d’un réseau ou de l’Internet, est constituée des éléments suivants :

Une adresse IP qui identifie votre hôte sur le réseau où il est connecté.
La commande « ip address » ou « ip a » en raccourci, permet d’afficher les interfaces réseau avec les adresses IP associées.
robert@vmi000000:~$ ip addr
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:50:56:45:85:2a brd ff:ff:ff:ff:ff:ff
altname enp0s18
altname ens18
inet 38.242.201.85/20 brd 38.242.207.255 scope global eth0
valid_lft forever preferred_lft forever
La commande retourne l’interface « lo » qui correspond à l’interface de « loopback » (boucle locale), ainsi que l’interface « eth0 » correspondante à la carte réseau connectée à mon réseau local. On peut voir que l’adresse IP actuelle sur cette carte est « 38.242.201.85/20« .
Un masque de sous-réseau qui indique la partie de votre adresse qui caractérise le réseau local sur lequel votre hôte est connecté, et lui permet de déterminer, pour n’importe quelle adresse IP, si celle-ci fait ou non partie du réseau local
Une passerelle par défaut qui indique l’adresse IP à laquelle il faut transmettre les paquets IP destinés à des hôtes situés hors du réseau local, pour qu’ils soient routés vers le réseau local de leur destinataire.
Afin de connaître la passerelle par défaut utilisée actuellement par notre machine, plusieurs solutions sont possibles. La commande suivante retourne les routes locales, ainsi que la route par défaut, ce qui donne l’adresse IP de la passerelle.
ip route show
robert@vmi000000:~$ ip route show
default via 38.242.192.1 dev eth0 onlink
38.242.192.0/20 via 38.242.192.1 dev eth0
Dans mon cas, la passerelle est « 38.242.201.1 ».
Une ou plusieurs adresses de serveurs DNS auxquels le système ira demander les correspondances entre noms de domaine (www.webOdesign.net) et adresses IP (38.242.201.85).
Pour la trouver, il faut regarder le contenu du fichier « /etc/resolv.conf« 
robert@vmi000000:~$ sudo cat /etc/resolv.conf
Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
127.0.0.53 is the systemd-resolved stub resolver.
run "resolvectl status" to see details about the actual nameservers.
nameserver 161.97.189.51
nameserver 161.97.189.52
robert@vmi000000:~$ sudo cat /etc/resolv.conf
run "resolvectl status" see details about nameservers.
nameserver 161.97.189.51
nameserver 161.97.189.52

Personnalisation du shell

Personnalisation du shell

Afin d’ajouter dans le shell une touche de coloration syntaxique :

  • se placer dans le dossier racine de l’utilisateur ipadair2
  • éditer le fichier « .bashrc » à l’aide d’un éditeur de texte : nano .bashrc
  • chercher dans le fichier (Ctrl+W dans l’éditeur nano) la chaine « force_color« 
  • décommenter la ligne « force_color_prompt=yes« 
  • sauvegarder et quitter (Ctrl+o, Return, puis Ctrl+x dans l’éditeur nano)
  • Appliquer la modification dans le shell avec la commande « source .bashrc« .
remi@vmi820488:~$ cd /home/ipadair2/
remi@vmi820488:/home/ipadair2$ sudo nano .bashrc

  GNU nano 5.4                         .bashrc *
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac
...
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes
...
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
File Name to Write: .bashrc
^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute   ^C Location
^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify   ^_ Go To Line

# Puis, save(Ctrl+o)/quit(Ctrl+x) pour enregistrer et quitter
# Appliquer la modification au shell
remi@vmi820488:/home/ipadair2$ source .bashrc

Personnalisation des commandes

Personnalisation des commandes

Se placer dans le dossier utilisateur « ipadair2 », puis créer le fichier « .bash_aliases » : nano .bash_aliases.
Entrer les lignes suivante :

alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Puis, save(Ctrl+o)/quit(Ctrl+x) pour enregistrer et quitter
# Appliquer la modification au shell
remi@vmi820488:/home/ipadair2$ source .bashrc