Vous êtes sur la page 1sur 59

LINUX

2-2 LES SHELLS

2.2.1 TC–shell
Il exécute deux fichiers d’initialisation, qui sont les deux fichiers de commandes
(scripts) du répertoire privé de l’utilisateur : .cshrc et .login. Puis l’interpréteur se
met en attente d’une commande de l’utilisateur

Le fichier d’initialisation .cshrc est exécuté lors de chaque appel au TC–


shell. Il est destiné à positionner des variables du TC–shell, à affecter pour
certaines commandes des arguments implicites et à définir d’autres commandes
(alias). Il affecte une valeur :

● à la variable prompt qui définit l’invite,

● à la variable path qui contient les répertoires de recherche des


commandes,

● Aux variables nécessaires à la gestion de l’historique des commandes,


etc.

Le fichier .login, qui est exécuté après le fichier .cshrc, une seule fois
lors de la connexion, est destiné à positionner des variables
d’environnement de la session. Il contient les initialisations standard,
principalement les caractéristiques du terminal utilisé.

Les principales variables du TC–shell sont :

 prompt valeur du prompt.


 path précise le chemin d’accès aux répertoires
contenant les principaux programmes.
 home indique le répertoire d’accueil de l’utilisateur.

En sortie de session, à l’aide de la commande exit, le fichier de


commandes .logout est exécuté.
2.2.2 Bash
Les principales variables du Bash sont :
PS1 valeur du prompt.
PATH précise le chemin d’accès aux répertoires contenant
les principaux programmes.
HOME indique le répertoire d’accueil de l’utilisateur.

En sortie de session, à l’aide de la commande exit, le fichier de


commandes .bash logout est exécuté s’il existe

2.3 COMMANDES LINUX


Une commande est composée en premier d’un code mnémonique
(son nom proprement dit), suivi parfois d’options et/ou de paramètres. Une
option dans une ligne de commandes Unix est une lettre. Elle commence par
un tiret "–". Sous Linux, les options peuvent être de la forme :
-c = caractère
--mot = un mot explicite
L’espace est le caractère séparateur des différents éléments d’une
commande. Cette dernière est prise en compte et n’est interprétée que
lorsque l’utilisateur a tapé la touche.
L’interpréteur Bash permet de modifier des commandes déjà
exécutées et de les relancer
L’exécution d’une commande peut être interrompue à l’aide de la
combinaison CTRL-C. Si vous avez saisi une commande inconnue du
système, ce dernier vous l’indiquera par un message d’erreur.

Réponse
1- passwd
Système de fichiers

3.1 L’ARBORESCENCE
REPONSE
I- Gestion des utilisateurs

La gestion des utilisateurs est une partie essentielle de


l’administration Linux. Parfois, nous devons créer de nouveaux utilisateurs
ou ajouter d’autres utilisateurs à des groupes spécifiques. Une autre
possibilité consiste à exécuter des commandes en tant qu’utilisateur
différent. Après tout, il n’est pas rare que les utilisateurs d’un seul groupe
spécifique aient les autorisations nécessaires pour afficher ou modifier des
fichiers ou des répertoires spécifiques. Ceci, à son tour, nous permet de
collecter plus d’informations localement sur la machine, ce qui peut être très
important. Jetons un coup d’œil à l’exemple suivant de la façon d’exécuter
du code en tant qu’utilisateur différent.

Exécution en tant qu’utilisateur

Exécution en tant que root

Voici une liste qui nous aidera à mieux comprendre et gérer la gestion des
utilisateurs
II- Gestion des paquets
Que vous travailliez en tant qu’administrateur système, que nous
entretenions nos propres machines Linux à la maison ou que nous
construisions / mettions à niveau / mainteniez notre distribution de tests
d’intrusion de choix, il est crucial de bien comprendre les gestionnaires de
paquets Linux disponibles et les différentes façons de les utiliser pour
installer, mettre à jour ou supprimer des paquets. Les packages sont des
archives qui contiennent des fichiers binaires de logiciels, des fichiers de
configuration, des informations sur les dépendances et assurent le suivi des
mises à jour et des mises à niveau. Les fonctionnalités fournies par la
plupart des systèmes de gestion de paquets sont les suivantes :

Téléchargement de paquets
Résolution des dépendances
Un format de package binaire standard
Emplacements d’installation et de configuration courants
Configuration et fonctionnalités supplémentaires liées au système
Contrôle qualité
Nous pouvons utiliser de nombreux systèmes de gestion de paquets
différents qui couvrent différents types de fichiers comme « .deb », « .rpm
», et autres. L’exigence de gestion des paquets est que le logiciel à installer
soit disponible en tant que package correspondant. Généralement, cela est
créé, offert et maintenu de manière centralisée sous les distributions Linux.
De cette façon, le logiciel est intégré directement dans le système et ses
différents répertoires sont distribués dans tout le système. Le logiciel de
gestion des paquets récupère les modifications nécessaires à l’installation du
système à partir du package lui-même, puis implémente ces modifications
pour installer le package avec succès. Si le logiciel de gestion des paquets
reconnaît que des packages supplémentaires sont nécessaires au bon
fonctionnement du package qui n’a pas encore été installé, une dépendance
est incluse et avertit l’administrateur ou tente de recharger le logiciel
manquant à partir d’un référentiel, par exemple, et de l’installer à l’avance.

Si un logiciel installé a été supprimé, le système de gestion des paquets


reprend alors les informations du package, les modifie en fonction de sa
configuration et supprime les fichiers. Il existe différents programmes de
gestion de paquets que nous pouvons utiliser pour cela. Voici une liste
d’exemples de tels programmes :

Il est fortement recommandé de configurer notre machine virtuelle


(VM) localement pour l’expérimenter. Laissez-nous expérimenter un peu
dans notre machine virtuelle locale et l’étendre avec quelques packages
supplémentaires. Tout d’abord, installons en utilisant. gitapt
Gestionnaire de paquets avancé (APT)
Les distributions Linux basées sur Debian utilisent le gestionnaire de
paquets. Un package est un fichier d’archive contenant plusieurs fichiers «
.deb ». L’utilitaire est utilisé pour installer des programmes à partir du
fichier « .deb » associé. Facilite la mise à jour et l’installation de
programmes, car de nombreux programmes ont des dépendances. Lors de
l’installation d’un programme à partir d’un fichier « .deb » autonome, nous
pouvons rencontrer des problèmes de dépendance et avoir besoin de
télécharger et d’installer un ou plusieurs paquets supplémentaires. Rend cela
plus facile et plus efficace en regroupant toutes les dépendances nécessaires
à l’installation d’un programme. APTdpkgAPTAPT

Chaque distribution Linux utilise des référentiels de logiciels qui sont


souvent mis à jour. Lorsque nous mettons à jour un programme ou en
installons un nouveau, le système interroge ces référentiels pour obtenir le
package souhaité. Les référentiels peuvent être étiquetés comme stables, de
test ou instables. La plupart des distributions Linux utilisent le référentiel le
plus stable ou « principal ». Cela peut être vérifié en affichant le contenu du
fichier. La liste des référentiels pour Parrot OS se trouve à l’adresse
./etc/apt/sources.list/etc/apt/sources.list.d/parrot.list

APT utilise une base de données appelée cache APT. Ceci est utilisé pour
fournir des informations sur les paquets installés sur notre système hors
ligne. Nous pouvons rechercher dans le cache APT, par exemple, pour
trouver tous les paquets associés. Impacket
Nous pouvons alors afficher des informations supplémentaires sur un colis.

Nous pouvons également répertorier tous les paquets installés.

S’il nous manque des paquets, nous pouvons les rechercher et les installer
à l’aide de la commande suivante
Git
Maintenant que nous l’avons installé, nous pouvons l’utiliser pour
télécharger des outils utiles à partir de Github. L’un de ces projets s’appelle
« Nishang ». Nous traiterons et travaillerons avec le projet lui-même plus
tard. Tout d’abord, nous devons naviguer vers le dépôt du projet et copier le
lien Github avant d’utiliser git pour le télécharger. git

Néanmoins, avant de télécharger le projet et ses scripts et listes, nous


devons créer un dossier particulier.
DPKG
Nous pouvons également télécharger les programmes et les outils à partir
des référentiels séparément. Dans cet exemple, nous téléchargeons 'strace'
pour Ubuntu 18.04 LTS.

De plus, nous pouvons maintenant utiliser les deux et installer le paquet.


Puisque nous avons déjà travaillé avec, nous allons passer à l’exemple
suivant. aptdpkgaptdpkg

Avec cela, nous avons déjà installé l’outil et pouvons tester s’il fonctionne
correctement.
III- Gestion des services et des processus
En général, il existe deux types de services : internes, les
services pertinents requis au démarrage du système, qui
effectuent par exemple des tâches liées au matériel, et les
services installés par l’utilisateur, qui incluent généralement
tous les services serveur. Ces services s’exécutent en arrière-
plan sans aucune interaction de l’utilisateur. Ceux-ci sont
également appelés et identifiés par la lettre '' à la fin du nom
du programme, par exemple, ou. daemonsdsshdsystemd

La plupart des distributions Linux sont maintenant passées à .


Ce démon est un démarré en premier et possède donc l’ID de
processus (PID) 1. Ce démon surveille et s’occupe du
démarrage et de l’arrêt ordonnés des autres services. Tous les
processus ont un PID assigné qui peut être affiché sous avec
le numéro correspondant. Un tel processus peut avoir un ID
de processus parent (PPID) et, le cas échéant, il est appelé
processus enfant. systemdInit process/proc/

En outre, nous pouvons également utiliser pour gérer les liens


de script d’initialisation SysV. Jetons un coup d’œil à
quelques exemples. Nous utiliserons le serveur dans ces
exemples. Si nous ne l’avons pas installé, veuillez l’installer
avant de passer à cette section. systemctlupdate-
rc.dOpenSSHexemples.

Vous aimerez peut-être aussi