Sudo-1.9.13p1

Introduction à Sudo

Le paquet Sudo permet à un administrateur système de donner à certains utilisateurs (ou à certains groupes d'utilisateurs) la possibilité de lancer tout ou partie des commandes en tant qu'utilisateur root ou qu'un autre utilisateur en enregistrant les commandes et les arguments.

This package is known to build and work properly using an LFS 11.3 platform.

Informations sur le paquet

Dépendances de Sudo

Facultatives

Linux-PAM-1.5.2, MIT Kerberos V5-1.20.1, OpenLDAP-2.6.4, MTA (qui fournit une commande sendmail), AFS, FWTK et Opie

Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/sudo

Installation de Sudo

Installez Sudo en exécutant les commandes suivantes :

./configure --prefix=/usr              \
            --libexecdir=/usr/lib      \
            --with-secure-path         \
            --with-all-insults         \
            --with-env-editor          \
            --docdir=/usr/share/doc/sudo-1.9.13p1 \
            --with-passprompt="[sudo] password for %p: " &&
make

Pour tester les résultats lancez : env LC_ALL=C make check 2>&1 | tee make-check.log. Check the results with grep failed make-check.log.

Maintenant, en tant qu'utilisateur root :

make install &&
ln -sfv libsudo_util.so.0.0.0 /usr/lib/sudo/libsudo_util.so.0

Explication des commandes

--libexecdir=/usr/lib : Ce paramètre contrôle où les programmes privés sont installés. Tous dans ce répertoire est une bibliothèque, alors ils sont mis dans /usr/lib au lieu de /usr/libexec.

--with-secure-path : Ce paramètre ajoute de façon transparente les répertoires /sbin et /usr/sbin dans la variable d'environnement PATH.

--with-all-insults : Ce paramètre inclut toutes les insultes de sudo.

--with-env-editor : Ce paramètre active l'utilisation de la variable d'environnement EDITOR pour visudo.

--with-passprompt : ce paramètre configure l'invite de mot de passe. Le %p sera étendu en le nom de l'utilisateur dont le mot de passe est demandé.

--without-pam : Ce paramètre empêche de construire le support Linux-PAM quand Linux-PAM est installé sur le système.

[Note]

Note

Il y a de nombreuses options pour la commande configure de sudo. Regardez la sortie de configure --help pour une liste complète.

ln -sfv libsudo_util... : contourne un bogue dans le processus d'installation, qui lie à la version précédemment installée (si elle est là) au lieu de la nouvelle.

Configuration de Sudo

Fichier de configuration

/etc/sudoers

Informations sur la configuration

Le fichier sudoers peut être très compliqué. Il se compose de deux types d'entrées : des alias (simplement des variables) et des spécifications utilisateur (qui indiquent qui peut lancer quoi). L'installation installe une configuration par défaut qui n'a aucun privilège installés pour aucun utilisateur.

Quelques modifications de la configuration usuelles consistent à indiquer le chemin de recherche pour le super utilisateur et à autoriser les membres du groupe wheel à exécuter toutes les commandes après avoir fournit leur propre mot de passe. Utilisez les commandes suivantes pour créer le fichier de configuration /etc/sudoers.d/00-sudo en tant qu'utilisateur root :

cat > /etc/sudoers.d/00-sudo << "EOF"
Defaults secure_path="/usr/sbin:/usr/bin"
%wheel ALL=(ALL) ALL
EOF
[Note]

Note

Dans les installations les plus simples où il n'y a qu'un seul utilisateur, il peut être plus simple de simplement modifier le fichier /etc/sudoers directement. Dans ce cas, l'entrée secure_path n'est pas forcément utile et utiliser sudo -E … peut importer l'environnement complet de l'utilisateur non privilégié dans la session privilégiée.

Les fichiers du répertoire /etc/sudoers.d sont analysés et triés par ordre lexicographique. Assurez-vous que les entrées dans un fichier ajouté ne remplace pas les entrées précédentes.

Pour des détails, voir man sudoers.

[Note]

Note

Les développeurs de Sudo recommandent fortement d'utiliser le programme visudo pour éditer le fichier sudoers. Il fournira une vérification de santé de base comme l'analyse de la syntaxe et les droits du fichier pour éviter des erreurs possibles qui pourraient aboutir à une configuration vulnérable.

Si PAM est installé sur le système, Sudo est construit avec le support PAM, exécutez la commande suivante en tant qu'utilisateur root pour créer le fichier de configuration PAM :

cat > /etc/pam.d/sudo << "EOF"
# Begin /etc/pam.d/sudo

# include the default auth settings
auth      include     system-auth

# include the default account settings
account   include     system-account

# Set default environment variables for the service user
session   required    pam_env.so

# include system session defaults
session   include     system-session

# End /etc/pam.d/sudo
EOF
chmod 644 /etc/pam.d/sudo

Contenu

Programmes installés: cvtsudoers, sudo, sudo_logsrvd, sudo_sendlog, sudoedit (lien symbolique), sudoreplay et visudo
Bibliothèques installées: audit_json.so, group_file.so, libsudo_util.so, sample_approval.so, sudoers.so, sudo_noexec.so et system_group.so
Répertoires installés: /etc/sudoers.d, /usr/lib/sudo, /usr/share/doc/sudo-1.9.13p1 et /var/lib/sudo

Descriptions courtes

cvtsudoers

convertit entre les différents formats de fichiers sudoers

sudo

exécute une commande en tant qu'un autre utilisateur selon les permissions du fichier de configuration /etc/sudoers

sudo_logsrvd

est un serveur de journalisation d'événements et d'E/S pour sudo

sudo_sendlog

envoie les journaux d'E/S de sudo au serveur de journalisation

sudoedit

est un lien symbolique vers sudo qui inclut l'option -e pour appeler un éditeur en tant qu'un autre utilisateur

sudoreplay

est utilisé pour rejouer ou afficher les logs de sorties créés par sudo

visudo

permet une édition sécurisée du fichier sudoers