Les principales commandes SSH

Les commandes SSH (Secure Shell) permettent de se connecter et d’administrer un serveur à distance de manière sécurisée, incluant des commandes de base comme ssh utilisateur@hôte pour la connexion, ls pour lister des fichiers, cd pour naviguer, pwd pour le répertoire courant, mkdir pour créer des dossiers, et scp ou rsync pour le transfert de fichiers. Elles offrent aussi des options pour spécifier des ports (-p), utiliser des clés privées (-i), ou exécuter des commandes directement.

Pré-requis

Si vous utilisez MacOS ou Linux, vous disposez déjà de l’interface nécessaire pour accéder à votre site via SSH. Vous pouvez simplement utiliser le terminal intégré pour utiliser SSH.

Mais si vous êtes sous Windows, vous devrez installer un client pour pouvoir utiliser SSH. Le client SSH le plus populaire est PuTTY. Vous devrez le télécharger et l’installer avant de pouvoir accéder à votre site à partir de Windows. Vous utiliserez alors les mêmes commandes SSH dans PuTTY que dans le Terminal.

Les commandes pour transférer vos fichiers

Scp

Scp possède un caractère plutôt particulier, puisqu’il désigne à la fois un protocole de communication SSH (une commande) et le programme par lequel on exécute sa principale fonction, le transfert de fichiers via une connexion SSH. Voici comment procéder, tout d’abord pour un transfert de serveur à serveur, depuis votre ordinateur local. Pour cette opération, il vous faudra avoir accès aux deux serveurs, depuis votre machine locale, étant donné que vous lancerez une commande qui copiera les fichiers d’un serveur à un autre.

scp — r — p user@serveur1 : chemin/vers/dossier/source user@serveur2 : chemin/vers/dossier/destination

Pour un transfert de serveur à serveur, la commande reste sensiblement la même, étant donné que vous restez connectés à un ordinateur central.

scp — r — p chemin/vers/dossier/source user@serveur2 : chemin/vers/dossier/destination

Rsync

Rsync possède la même particularité que SCP, c’est-à-dire que c’est à la fois un logiciel et une commande. Il permet, comme son nom l’indique, une synchronisation unidirectionnelle, soit de copier les fichiers de la source en direction de la destination, donc on peut constater assez rapidement que le transfert de fichiers est également possible avec cette commande. Voici comment.

Local to Remote: rsync [OPTION]… — e ssh [SRC]… [USER@] HOST: DEST

Remote to Local: rsync [OPTION]… — e ssh [USER@] HOST : SRC… [DEST]

Wget

La commande wget permet de retrouver, de télécharger et de transférer des fichiers de différents serveurs web. C’est un outil assez polyvalent. Voici la procédure à suivre pour transférer des fichiers avec wget, avec le protocole FTP.

wget –ftp-user=whuser –ftp-password=tDBmcWzB1 –mirror ftp://ftp.myserver.net/www

 

Les commandes pour parcourir les répertoires

Cd

La commande cd représente une des options évidentes pour transférer des fichiers vers un répertoire spécifié. La navigation d’un répertoire à un autre s’effectue avec cette commande suivie du nom du répertoire. Elle possède plusieurs dérivés, en voici quelques-uns.

cd/ : Permet de se retrouver à la racine du disque.

cd ou cd : Permet d’accéder directement au répertoire de l’utilisateur.

cd/ var/www/: Dirige vers le répertoire/var/www

cd… : Remonte dans le répertoire antérieur auquel vous êtes.

cd — : Retourne au répertoire précédent.

pwd : Renvoie au chemin absolu du répertoire courant ce qui est utile puisqu’en général le Shell (le terminal) n’affiche que le nom du répertoire courant.

Ls

La commande Ls affiche le contenu d’un répertoire, si aucun autre préfixe n’est présent par après, elle affiche le contenu du répertoire courant. Elle n’affiche pas, par défaut, les fichiers cachés (débutant par un point). Voici ses différents dérivés.

ls — l : Affiche les informations de manière détaillée.

ls — a : Affiche les fichiers cachés.

ls — h : Affiche la taille des fichiers de façon lisible.

ls — r : Trie les fichiers en sens inverse

ls — t : Trie les fichiers par date du plus récent au plus ancien.

ls — S : Trie par taille décroissante.

ls — la : Affiche tous les fichiers y compris les fichiers cachés.

ls — lhS : Affiche les informations des fichiers, avec des tailles lisibles, le tout ordonné du plus grand au plus petit.

 

Les commandes pour copier, déplacer et supprimer

Cp

C’est clairement l’équivalent du CTRL+C dans SSH. Elle est utilisée pour copier des fichiers.

cp/home/chemin/fichier.ext /home/nouveauchemin/nouveaufichier.ext: fait une copie du fichier fichier.ext du répertoire /home/chemin/ dans le répertoire /home/nouveauchemin/ ayant le nom nouveaufichier.ext

cp—R/home/chemin/*/home/nouveauchemin/ : Copie l’ensemble des fichiers et répertoires dans l’arborescence/home/chemin/ et l’insère les copies dans le répertoire /home/nouveauchemin/

Mv

Cette commande, utilisée de la même manière que cp, est utilisée pour déplacer ou renommer un fichier. Elle possède les mêmes extensions que cp d’ailleurs.

Rm

La commande suivante permet de déplacer ou de renommer un fichier.

rm fichier.ext: Supprime le fichier fichier.ext, demande une confirmation avant de le faire.

rm—f fichier.ext : Supprime le fichier fichier.ext sans demander de confirmation.

rm — rf/home/chemin/ : Supprime le répertoire chemin et tous les fichiers, dossiers et sous dossiers qui s’y trouvent — sans confirmation (soyez prudent avec cette commande).

 

Les commandes pour rechercher, consulter et éditer

Vi

La commande vi est un peu spéciale. C’est un éditeur de texte en mode texte plein écran écrit par Bill Joy en 1976 et présent sur une des premières versions de la distribution Unix BSD. Les dérivés de cette commande sont des modifications faites avec l’aide de cet éditeur.

vi fichier.ext : Ouvre le fichier fichier.ext dans l’éditeur de texte vi.

Cat

Cette commande est utilisée pour imprimer le contenu d’un fichier.

cat fichier.ext: Imprime à l’écran le contenu du fichier fichier.ext

cat fichier.txt |more : |more étend le contenu du fichier sur plusieurs pages (appuyez sur la barre d’espacement pour passer d’une page à l’autre, « q’ pour quitter).

Tail

La commande possède le même principe que cat mais imprime uniquement les dernières lignes d’un fichier. Elle est utilisée fréquemment pour consulter les derniers évènements dans un fichier log par exemple.

tail—f/chemin/fichier.txt : Consulte le fichier fichier.txt en temps réel (et ainsi voir les mises à jour, s’il y a lieu).

tail—100/chemin/fichier.txt : Imprime à l’écran les 100 dernières lignes de fichier.txt

Grep

Cette commande permet de rechercher un chaîne de caractères spécifique dans les fichiers, un peu comme la fonction rechercher/remplacer dans Office.

grep chaine fichier.ext : Imprime à l’écran tous les cas où le mot « chaine » a été trouvée dans le fichier fichier.ext.

grep — r chaine *  : Imprime à l’écran tous les cas où le mot « chaine » a été trouvé dans le répertoire présent et tous ses sous-répertoires.

Find

Contrairement à grep, au lieu de rechercher un contenu spécifique d’un fichier, find recherche les fichiers en tant que tels.

find/chemin/a/chercher/—name PlanetHoster: Recherche dans le répertoire/chemin/a/chercher/un fichier nommé PlanetHoster.

find/—name PlanetHoster: Recherche à l’échelle du serveur, un fichier nommé « PlanetHoster ».

find/chemin/a/chercher — name “*recherche*”: Initie une recherche dans le répertoire/chemin/a/chercher et retourne tous les cas où un fichier possède le mot « recherche » à l’intérieur de son nom.

 

Les commandes de surveillance de la sécurité des processus et du réseau

Last

La commande indique à l’écran les quelques dernières connexions au serveur et le moment qu’elles ont été effectuées.

last -20 : Indique uniquement les 20 dernières connexions.

last -20 -a: Indique uniquement les 20 dernières connexions ainsi que le nom du serveur d’où l’individu s’est connecté.

last -20 — ai : Possède des similitudes à la commande précédente sauf que cette variante indique l’adresse IP au lieu du nom du serveur.

Netstat

Cette commande imprime à l’écran toutes les connexions réseau actives.

netstat — an: Imprime à l’écran les connexions actives sur le serveur, l’adresse IP source et destination ainsi que le numéro du port.

netstat — rn : Indique les tables de routage pour toutes les adresses IP assignées au serveur.

Top

Cette commande dresse une table de tous les processus actifs ainsi que leur utilisation de ressources, en temps réel.

Shift + M fait le tri par utilisation de mémoire.

Shift + P pour faire le tri par utilisation de processeur. (Appuyez ctrl + c pour quitter.)

Kill

 Cette commande est utilisée pour forcer la fermeture d’un processus.

kill—9 PID : Où PID est l’identification du processus que vous désirez fermer.

 

Sources : Google IA, Kinsta, PlanetHoster et Hostinger