10 votes

Comment installer sudo insults sur Mac ?

Comment installer sudo insults sur le terminal Mac ?

Apparemment, Apple l'a nettoyé depuis Darwin, donc ajouter Defaults insults par le biais de sudo visudo n'est pas utile.


† Les insultes que la commande sudo dit quand on entre un mauvais mot de passe.

15voto

klanomath Points 63400

Pour installer un sudo avec des insultes vous devez le compiler vous-même :

Exigences : Xcode 8.0, Sierra 10.12, probablement SIP désactivé

  • Sauvegarde de sudo et visudo :

    sudo cp /usr/bin/sudo  /usr/bin/sudo.backup
    sudo cp /usr/sbin/visudo  /usr/sbin/visudo.backup
  • Créez un répertoire : mkdir sudo

  • Passez dans le répertoire : cd sudo

  • Curl le sudo open source d'Apple :

    curl https://opensource.apple.com/tarballs/sudo/sudo-83.tar.gz | tar zxf -
  • cd vers le dossier source :

    cd sudo-83/src
  • configure, make et make l'installent :

    ./configure --with-password-timeout=0 --disable-setreuid --with-env-editor --with-pam --with-libraries=bsm --with-noexec=no --sysconfdir="/private/etc" --with-timedir="/var/db/sudo" --with-all-insults
    make
    sudo make install

    Le fichier sudo-83/src/INSTALL contient beaucoup plus d'options de réglage pour la commande configure !

  • Les fichiers peuvent être installés dans /usr/local/bin/ et /usr/local/sbin/, vous devrez donc peut-être les déplacer (dans mon cas, j'ai dû le faire) :

    sudo mv /usr/local/sbin/visudo /usr/sbin/visudo
    sudo rm /usr/local/bin/sudoedit
    sudo mv /usr/local/bin/sudoreplay /usr/bin/
    sudo mv /usr/local/bin/sudo /usr/bin/sudo
    /usr/bin/sudo ln -s /usr/bin/sudo /usr/bin/sudoedit

    ou modifiez votre chemin et ajoutez /usr/local/bin et /usr/local/sbin.

  • Entrez /usr/bin/sudo /usr/sbin/visudo

  • Ajoutez la ligne dans mode d'insertion (il suffit de frapper i )

    Defaults        lecture_file = "/etc/sudo_lecture" #<-already there
    Defaults        insults

    Enregistrez le fichier après avoir appuyé sur esc avec :wq! .

  • Vous devez probablement quitter et relancer le terminal maintenant.

Résultats :

host:~ user$ ls -l /usr/bin/sudo*
-rwsr-xr-x  1 root  wheel  restricted 225428 Oct 19 02:01 /usr/bin/sudo
-r-x--x--x  1 root  wheel  restricted 369136 Oct 19 02:00 /usr/bin/sudo.backup
lrwxr-xr-x  1 root  wheel  restricted     13 Oct 19 02:03 /usr/bin/sudoedit -> /usr/bin/sudo
-rwxr-xr-x  1 root  wheel  restricted  49544 Oct 19 02:01 /usr/bin/sudoreplay
host:~ user$ sudo openssl sha1 /usr/bin/sudo*
SHA1(/usr/bin/sudo)= 87d9ad990813b5a949d07267d566bb3a1fddeec0
SHA1(/usr/bin/sudo.backup)= 088c317bf7b8a146803533173699021b9aef5b16
SHA1(/usr/bin/sudoedit)= 87d9ad990813b5a949d07267d566bb3a1fddeec0
SHA1(/usr/bin/sudoreplay)= f76c5ad8d6f2aebbc24d77fee54a54ba9d207e25

Last login: Wed Oct 19 02:09:33 on console
host:~ user$ sudo ifconfig
Password:
Do you think like you type?
Password:
He has fallen in the water!
Password:
I don't wish to know that.
sudo: 3 incorrect password attempts

Les fichiers peuvent être écrasés après une mise à jour/mise à niveau du système !


Recompilation sudo avec des insultes fonctionne également sur des systèmes plus anciens - vous devez cependant choisir l'archive correspondante (par exemple, sudo-73.tar.gz devrait fonctionner avec 10.9 et 10.10).


En modifiant le fichier ins_*.h dans le fichier src dossier vous devriez pouvoir inclure plus d'insultes. Vous pouvez également ajouter des fichiers ins_*.h supplémentaires mais vous devez alors les inclure dans insults.h comme les quatre autres le sont déjà. Vous pouvez aussi inclure des insultes non anglaises bien sûr !

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X