Supprimer le compte « pi » dans Raspbian ?

raspbian_os
Dernière mise a jour 05 Nov 2020 a 02:35 pm

Vous venez de recevoir votre petit rapsberry et vous décidez d’y installer la célèbre distribution Raspbian.
Par défaut, la première connexion se fait en ssh avec le compte principal utilisateur « pi » et son mot de passe par défaut « raspberry« .
Sur la doc officielle, la PREMIERE chose à faire est de le changer. Et à titre perso je dirai même plus, la PREMIERE chose à faire est de le supprimer ! Sinon vous risquez de vous retrouver assez vite dans la base de données du moteur SHODAN .
Si vous ne connaissez pas encore SHODAN allez voir ICI.
Cette opération de suppression de compte par défaut parait anodine mais n’est pas si simple que ça pour le grand débutant.
Et si vous merdez, vous n’aurez plus du tout accès à la raspberry !!!!
En effet, le compte « pi » est administrateur et appartient au groupe « sudo » avec les pleins pouvoirs. Allez y tester pour voir:

ssh pi@raspberry

sudo -i

et vous apparaissez bien en « root« .

Pour votre culture, ce mécanisme est géré dans le fichier /etc/sudoers mais on ne va pas détailler ici son fonctionnement pour ne pas brouiller la compréhension générale.

Donc vous êtes root, ça tombe bien! Restez en root, nous allons profiter de ses privilèges pour créer notre nouvel utilisateur avec un couple nom d’utilisateur/mot de passe choisi par vos soins.

Création du nouveau compte

…que j’appellerai ici pour l’exemple « tutox »

useradd -m -d /home/tutox/ -s /bin/bash tutox

-Définition du mot de passe pour l’utilisateur « tutox »

passwd tutox

-Rentrez 2 fois le mot de passe.

Pour rappel comment choisir un bon mot de passe,  voir l’article de l’ANSSI.

-Ajout de « tutox » au groupe « sudo »:

usermod -G sudo tutox

-Redémarrage de la framboise:

Reboot

-Test de la connexion avec le nouveau compte utilisateur:

ssh tutox@raspberry

Tapez votre super mot de passe

sudo -i

On tape le mot de passe et si tout se passe bien on bascule en root.

Suppression de l’ancien compte « pi »

Puisque le nouveau compte « tutox » est opérationnel on peut passer à la suppression du compte générique « pi »

-Suppression du compte « pi » et de ses fichiers et de son répertoire personnel /home/pi

userdel -r pi

Pour aller plus loin

Vous l’avez sans doute remarqué mais pour passer en root vous êtes obligé de taper une seconde fois le mot de passe de l’utilisateur au moment du « sudo -i’.

Or avant , avec l’utilisateur « pi » quand vous tapiez « sudo -i » vous basculiez directement en root. Cette possibilité est due notamment au fichier :

sudo cat /etc/sudoers.d/010_pi-nopasswd

qui contient

pi ALL=(ALL) NOPASSWD: ALL

Vous l’avez compris c’est le NOPASSWD qui permet à l’utilisateur de ne pas devoir retaper son mot de passe pour basculer en super utilisateur.

Donc si vous souhaitez être comme avant, car AVANT c’était mieux Hein , bah vous créé le même fichier en remplaçant « pi » par votre nouveau nom d’utilisateur , ici « tutox ».

Ou bien vous gérez çà directement dans le fichier /etc/sudoers

sudo visudo

et rajouter la ligne

tutox ALL=(ALL) NOPASSWD: ALL

Du coup votre appartenance au groupe sudo n’est plus nécessaire puisque votre nom d’utilisateur est inscrit en dur dans le fichier « sudoers ».

L’utilisation et la configuration de « sudo » mériteraient à elles seules un tuto entier, ici on ne voit qu’une infime partie au travers de ce petit cas pratique .

Conclusion

La suppression du compte « pi » installé par défaut sur Raspbian est la première étape pour avoir un peu plus de sécurité sur son raspberry. La suite logique voudrait que l’on sécurise aussi le service SSH en lui changeant entre autre son port par défaut.Mais cette étape fera l’objet d’un autre tuto 😉

17 commentaires sur Supprimer le compte « pi » dans Raspbian ?

  1. Bonjour,

    merci pour ce travail. aucun intérêt de changer le port par défaut est, un scanner de port le retrouverai. par contre installation de fail2ban et authentification par clef rsa serai pertinent. dispo pour vous aidez si nécessaire.

  2. @Alexandre, si ca a pu taider à démystifier un peu le « sudo -i » sans mot de passe tant mieux ! 😉

    @Benns je tinvite à faire le test à laisser ne serait-ce qu’une heure branché ton rapsberry avec le port 22 actif par défaut et à regarder ds les logs fail2ban . Ensuite tu fais la même chose avec un port 22222 par défaut.
    Le nombre de tentatives de bruteforce descend dragstiquement. Du coup, tu élimines quand même un grand nombre de « script kiddie »..
    Mais au final on est daccord le changement de port par défaut ne prémunit pas totalement d’un scan ciblé avec nmap sur le service ssh

  3. même si ce n’est pas le sujet du post, pour pousser le détail des connexions ssh
    outre la modification du port
    PermitRootLogin no
    AllowUsers utilisateur
    est toujours bon a mettre, ainsi pi n’est plus autorisé

  4. Bonjour Benzo,
    Petit probleme de debutant… Apre le Reboot et ssh nouveau_nom@raspberry j’ai le message suivant:
    ssh: Could not resolve hostname raspberry: Name or service not known

    Peux-tu m’aider.
    Merci

  5. Salut Benzo.. j’avance doucement … J’ai créé le nouveau username… et aussi un nouveau hostname…
    1ere doute: quand je reboot je me trouve sur pi@nouveau_hostname.. je m’attendais a me trouver sur nouveau_username@nouveau_hostname.. c’est normale?
    2eme.. bon, je fais ssh nouveau_name@nouveau_Hostname.. impec .. je rentre le passwd et je suis sur nouveau-username@nbouveau-hostname
    je fais un sudo -i .. + passwd, ca marche je suis a root@nouveau_hostname
    je fais userdel -r pi et j’ai le message:
    « user pi is currently used by process 476 »..
    1) Pourquoi au reboot je ne suis pas sur le nouveau_username@nouveau_hostname
    2)si je n’arrive pas a deleter je pense que c’est du au point 1? Ou j’ai oublié quelque chose???…
    Merci de ton aide

    • cool ty es presque ^_^
      donc quand tes connecté en ssh nouveau_name@nouveau_hostname:
      tu fais un :
      kill -9 PID
      ( pid cest le numero du process, dans ton cas c’était 476 mais il peut avoir changé entre temps)
      Puis réessaye la commande de suppression de l’utilisateur pi mais avec l’option -f (force) :
      userdel -rf pi

  6. Benzo, Merci encore.. apres quelques « kill » et quelques « userdel » j’ai eu enfin le message:
    userdel: user ‘pi’ does not exist!!!

    je pense que maintenant c’est bon.

    Bonne soiree

    • @Patrick, voilà une très bonne raison d’utiliser un rpi. Ca me fait penser que je vais publier dans pas longtemps sur le blog, un article pour améliorer la « privacy » d’un pihole classique

  7. bon tuto,seul petit soucis qui intervient du coup…

    la commande « reboot » ne fonctionne plus

    Failed to set wall message, ignoring: Interactive authentication required.
    Failed to reboot system via logind: Interactive authentication required.
    Failed to open initctl fifo: Permission denied
    Failed to talk to init daemon

4 Trackbacks & Pingbacks

  1. Comment changer le "petit" nom de son raspberry? -
  2. Jeedom ou comment domotiser sa maison en quelques clics – MiniProjets.net
  3. Jeedom ou comment domotiser sa maison en quelques clics – Team MAGE of G2elab
  4. Monter sa borne wifi en 5mn avec un raspberry - tutox.fr

Leave a Reply

Votre adresse de messagerie ne sera pas publiée.


*