bien qu’il existe déjà de nombreuses fonctionnalités de sécurité intégrées dans les systèmes basés sur Linux, une vulnérabilité potentielle très importante peut exister lorsque l’accès local est accordé- – c’est – à-dire des problèmes liés aux autorisations de fichiers résultant d’un utilisateur n’attribuant pas les autorisations correctes aux fichiers Donc, en fonction de la nécessité d’autorisations appropriées, je vais passer en revue les moyens d’attribuer des autorisations et vous montrer quelques exemples où une modification peut être nécessaire.,
autorisations de fichier de base
groupes D’autorisation
chaque fichier et Répertoire a trois groupes d’autorisation basés sur l’utilisateur:
- propriétaire – les autorisations de propriétaire s’appliquent uniquement au propriétaire du fichier ou du répertoire, elles n’auront pas d’impact sur les actions des autres utilisateurs.
- groupe – les autorisations de groupe s’appliquent uniquement au groupe qui a été affecté au fichier ou au répertoire, elles n’affecteront pas les actions des autres utilisateurs.
- tous les utilisateurs – les autorisations tous les utilisateurs s’appliquent à tous les autres utilisateurs du système.,
Types d’Autorisation
Chaque fichier ou répertoire à trois types d’autorisation:
- lecture – La Lecture de l’autorisation se réfère à l’utilisateur la possibilité de lire le contenu du fichier.
- écriture – les autorisations D’écriture font référence à la capacité d’un utilisateur d’écrire ou de modifier un fichier ou un répertoire.
- exécuter – L’autorisation d’Exécution affecte un utilisateur est capable d’exécuter un fichier ou d’afficher le contenu d’un répertoire.,
affichage des autorisations
Vous pouvez afficher les autorisations en vérifiant les autorisations de fichier ou de répertoire dans votre gestionnaire de fichiers GUI préféré (que je ne couvrirai pas ici) ou en examinant la sortie de la commande « ls-l” dans le terminal et tout en travaillant dans le répertoire qui contient le fichier ou le dossier.
l’autorisation dans la ligne de commande s’affiche comme suit: _rwxrwxrwx 1 owner:group
- User rights/Permissions
- le premier caractère que j’ai marqué avec un trait de soulignement est l’indicateur d’autorisation spéciale qui peut varier.,
- Le jeu de trois caractères suivant (rwx) est destiné aux autorisations du propriétaire.
- Le deuxième jeu de trois caractères (rwx) est destiné aux autorisations de groupe.
- Le troisième jeu de trois caractères (rwx) concerne les autorisations de tous les utilisateurs.
- Après que le regroupement depuis l’entier/indique le nombre de liens physiques vers le fichier.
- la dernière pièce est L’affectation de propriétaire et de groupe formatée en tant que propriétaire:Groupe.
modification des Permissions
dans la ligne de commande, les permissions sont éditées à l’aide de la commande chmod., Vous pouvez attribuer les autorisations explicitement ou en utilisant une référence binaire comme décrit ci-dessous.
définir explicitement les Permissions
pour définir explicitement les permissions, vous devrez référencer le groupe D’autorisations et les Types d’autorisations.
Les Groupes d’autorisations utilisées sont les suivantes:
Le potentiel des Opérateurs d’Affectation sont + (plus) et – (moins); ceux-ci sont utilisés pour indiquer au système la possibilité d’ajouter ou de retirer les autorisations spécifiques.,
Les Types d’autorisations qui sont utilisés sont:
- r – Lire
- w – Écrire
- x – Exécution
Donc, pour l’exemple, disons que j’ai un fichier nommé fichier1 qui a actuellement les autorisations pour _rw_rw_rw, ce qui signifie que le propriétaire, le groupe et tous les utilisateurs ont les droits de lecture / écriture. Maintenant, nous voulons supprimer les autorisations de lecture et d’écriture du groupe tous les utilisateurs.,
Pour rendre cette modification vous appelleriez la commande: chmod a-rw file1
Pour ajouter des autorisations ci-dessus vous appelleriez la commande: chmod a+rw file1
Comme vous pouvez le voir, si vous souhaitez accorder des autorisations vous pouvez modifier le caractère moins de un plus à ajouter ces autorisations.
utiliser des références binaires pour définir des autorisations
maintenant que vous comprenez les groupes et les types d’autorisations, celui-ci devrait sembler naturel. Pour définir l’autorisation à l’aide de références binaires, vous devez d’abord comprendre que l’entrée se fait en entrant trois entiers/nombres.,
un exemple de chaîne d’autorisation serait chmod 640 file1, ce qui signifie que le propriétaire a des autorisations de lecture et d’écriture, que le groupe a des autorisations de lecture et que tous les autres utilisateurs n’ont aucun droit sur le fichier.
le premier numéro représente l’Autorisation du propriétaire; le second représente les autorisations du groupe; et le dernier numéro représente les autorisations pour tous les autres utilisateurs. Les nombres sont une représentation binaire de la chaîne rwx.
- r = 4
- w = 2
- x = 1
Vous ajoutez les numéros pour obtenir l’entier/nombre représentant les autorisations que vous souhaitez définir., Vous devrez inclure les autorisations binaires pour chacun des trois groupes d’autorisations.
donc, pour définir un fichier sur les permissions sur file1 pour lire _rwxr_____, vous devez entrer chmod 740 file1.
propriétaires et groupes
j’ai fait plusieurs références aux propriétaires et groupes ci-dessus, mais je ne vous ai pas encore expliqué comment attribuer ou modifier le propriétaire et le groupe affectés à un fichier ou un répertoire.,
vous utilisez la commande chown pour changer les affectations de propriétaire et de groupe, la syntaxe est simplechown owner:group filename, donc pour changer le propriétaire de file1 en user1 et le groupe en family, vous entrez chown user1:family file1.
autorisations avancées
l’indicateur des autorisations spéciales peut être marqué de l’une des manières suivantes:
- _ – aucune autorisation spéciale
- d – directory
- l– le fichier ou le répertoire est un lien symbolique
- s – cela indique les autorisations setuid / setgid., Ce paramètre n’est pas défini dans la partie autorisation spéciale de l’affichage des autorisations, mais est représenté sous la forme d’un s dans la partie lecture des autorisations du propriétaire ou du groupe.
- t – indique les autorisations de bits collants. Ceci n’est pas défini dans la partie autorisation spéciale de l’affichage des autorisations, mais est représenté sous la forme d’un t dans la partie exécutable des autorisations all users
Setuid/Setgid autorisations spéciales
les autorisations setuid/setguid sont utilisées pour indiquer au système d’exécuter un exécutable en tant que propriétaire avec les autorisations du propriétaire.,
soyez prudent en utilisant setuid/setgid dans les autorisations. Si vous attribuez incorrectement des autorisations à un fichier appartenant à root avec le jeu de bits setuid/setgid, vous pouvez ouvrir votre système à l’intrusion.
Vous ne pouvez affecter le bit setuid/setgid qu’en définissant explicitement des autorisations. Le caractère du bit setuid/setguid est s.
définissez donc le bit setuid/setguid sur file2.sh vous émettrez la commande chmod g + s file2.sh.,
autorisations spéciales de Bit collant
le bit collant peut être très utile dans un environnement partagé car lorsqu’il a été affecté aux autorisations d’un répertoire, il le définit de sorte que seul le propriétaire du fichier peut renommer ou supprimer ledit fichier.
Vous ne pouvez affecter le bit collant qu’en définissant explicitement des autorisations. Le caractère du bit collant est t.
pour définir le bit collant sur un répertoire nommé dir1, vous devez émettre la commande chmod +t dir1.,
lorsque les autorisations sont importantes
pour certains utilisateurs D’ordinateurs Mac ou Windows, vous ne pensez pas aux autorisations, mais ces environnements ne se concentrent pas de manière aussi agressive sur les droits utilisateur sur les fichiers, sauf si vous êtes dans un environnement d’entreprise. Mais maintenant, vous utilisez un système basé sur Linux et la sécurité basée sur les autorisations est simplifiée et peut être facilement utilisée pour restreindre l’accès à votre guise.
je vais donc vous montrer certains documents et dossiers sur lesquels vous souhaitez vous concentrer et vous montrer comment les autorisations optimales doivent être définies.,
- répertoires personnels– les répertoires personnels des utilisateurs sont importants car vous ne voulez pas que les autres utilisateurs puissent afficher et modifier les fichiers dans les documents du bureau d’un autre utilisateur. Pour remédier à cela, vous voulez le répertoire d’avoir la drwx______ (700) les autorisations, donc disons que nous voulons appliquer les autorisations correctes sur l’utilisateur user1 répertoire qui peut être fait en exécutant la commande chmod 700 /home/user1.,
- fichiers de configuration du chargeur de démarrage-si vous décidez d’implémenter un mot de passe pour démarrer des systèmes d’exploitation spécifiques, vous voudrez supprimer les autorisations de lecture et d’écriture du fichier de configuration de tous les utilisateurs sauf root. À faire, vous pouvez modifier les autorisations du fichier à 700.
- fichiers de configuration système et démon– il est très important de restreindre les droits sur les fichiers de configuration système et Démon pour empêcher les utilisateurs de modifier le contenu, il peut ne pas être conseillé de restreindre les autorisations de lecture, mais restreindre les autorisations d’écriture est un must., Dans ces cas, il peut être préférable de modifier les droits à 644.
- pare-feu scripts – Il n’est pas toujours nécessaire de bloquer tous les utilisateurs de lire le fichier pare-feu, mais il est conseillé de restreindre les utilisateurs à partir de l’écriture du fichier. Dans ce cas, le script de pare-feu est exécuté automatiquement par l’utilisateur root au démarrage, de sorte que tous les autres utilisateurs n’ont pas besoin de droits, vous pouvez donc attribuer les autorisations 700.