1. Configurer le fichier sudoers de façon à ce que vous puissiez passer des commandes root avec la commande sudo.
# Test préliminaire de sudo $ more /etc/sudoers /etc/sudoers: Permission non accordée # Modification du fichier sudoers via la commande visudo $ visudo $ sudo more /etc/sudoers # /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # See the man page for details on how to write a sudoers file. # Defaults env_reset # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL) ALL cvanvinc ALL=NOPASSWD:ALL # Allow members of group sudo to execute any command # (Note that later entries override this, so you might need to move # it further down) %sudo ALL=(ALL) ALL # #includedir /etc/sudoers.d
2. Activation de la journalisation des évènements
$ visudo $ sudo cat /etc/sudoers # /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # See the man page for details on how to write a sudoers file. # Defaults env_reset # Activation de la journalisation et des insultes Defaults log_year, logfile=/var/log/sudo.log, insults # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL) ALL cvanvinc ALL=NOPASSWD:ALL # Allow members of group sudo to execute any command # (Note that later entries override this, so you might need to move # it further down) %sudo ALL=(ALL) ALL # #includedir /etc/sudoers.d cvanvinc@pinson:~$ sudo cat /etc/sudoers # /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # See the man page for details on how to write a sudoers file. # Defaults env_reset # Activation de la journalisation Defaults log_year, logfile=/var/log/sudo.log, insults # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL) ALL cvanvinc ALL=NOPASSWD:ALL # Allow members of group sudo to execute any command # (Note that later entries override this, so you might need to move # it further down) %sudo ALL=(ALL) ALL # #includedir /etc/sudoers.d # Vérification des logs $ sudo tail -f /var/log/sudo.log janv. 31 09:15:30 2012 : cvanvinc : TTY=pts/0 ; PWD=/etudiants/cvanvinc ; USER=root ; COMMAND=/bin/more /etc/sudoers janv. 31 09:16:30 2012 : cvanvinc : 3 incorrect password attempts ; TTY=pts/0 ; PWD=/etudiants/cvanvinc ; USER=root ; COMMAND=/bin/more /etc/sudoers janv. 31 09:16:46 2012 : cvanvinc : TTY=pts/0 ; PWD=/etudiants/cvanvinc ; USER=root ; COMMAND=/bin/more /etc/sudoers janv. 31 09:17:49 2012 : cvanvinc : TTY=pts/0 ; PWD=/etudiants/cvanvinc ; USER=root ; COMMAND=/bin/cat /etc/sudoers janv. 31 09:19:05 2012 : cvanvinc : TTY=pts/0 ; PWD=/etudiants/cvanvinc ; USER=root ; COMMAND=/usr/bin/tail /var/log/sudo.log
3. Trouver ce que font les commandes ci-dessous (notamment le rôle des options -u et -c).
# Effectue une commande (ici ls) non pas en tant que root mais en tant que yazza. $sudo -u yazza ls ~yazza # Modifie le fichier index.html via l'éditeur vi en tant que www. $sudo -u www vi ~www/htdocs/index.html # Effectue un redémarrage dans 15min et envoit un message d'avertissement aux utilisateurs. $sudo shutdown -r +15 "quick reboot" # L'option "-c" de "sh" permet de passer une commande directement en tant de chaîne de caractères. # La commande évalue donc l'espace disque utilisée par le contenu du répertoire /home, trie les résultats par ordre décroissant et les stocke dans le fichier USAGE. # L'option "-s" de la commande "du" permet de ne pas inclure la taille des sous-répertoires. $sudo sh -c "cd /home ; du -s * |sort -rn > USAGE" # Exemple $cd ~ ; du -s * |sort -rn 1164060 linux-3.2.2 76376 linux-3.2.2.tar.bz2 38300 workspace 20692 Téléchargements 4312 Images 1124 Documents 400 II-adaptation évolutive de l'encéphale selon le milieu.pdf 24 exos 20 cerealguy.svg 8 Vidéos 4 Public 4 Musique 4 Modèles 4 Bureau