VNC gestion des users  [RESOLU]

Vous avez réalisé ou vous voulez réaliser un truc impensable avec votre Raspberry Pi ? Cet endroit est pour vous...

Modérateur : Francois

Répondre
framframfram

VNC gestion des users  [RESOLU]

Message par framframfram » mar. 23 mai 2017 12:13

bonjour

il m'arrive un truc tout c.. : impossible de supprimer l'user PI qui est aussi admin

contexte :
raspi3 en raspbian w
le tout est à distance donc j'use essentiellement pour des raisons pratiques mais liées à ce que je fais en VNC. Le boitier étant inaccessible.

Objectif :
supprimer PI véritable faille de sécurité sur un system en prod.
la faille vient du fait que pi + raspberry sont les login+m2p d'origine et qu'en temps normal il convient - si l'on est pas trop boeuf - de le supprimer au profit d'un autre.

Problème :
impossible de supprimer pi

comment je m'y prends ? :

sudo apt-get update ; sudo apt-get install rpi-update



rm -rf /opt/* /usr/share/icons/* /usr/games /usr/share/squeak /usr/share/sounds /usr/share/wallpapers /usr/share/themes /usr/share/kde4 /usr/share/images/* /home/pi/python_games

adduser toto

je passe en super..
sudo su
nano /etc/adduser.conf
pour voir ce qu'il y a dedans j'y trouve :

-----------------------------------
GNU nano 2.2.6 Fichier : /etc/adduser.conf

# /etc/adduser.conf: `adduser' configuration.
# See adduser(8) and adduser.conf(5) for full documentation.

# The DSHELL variable specifies the default login shell on your
# system.
DSHELL=/bin/bash

# The DHOME variable specifies the directory containing users' home
# directories.

DHOME=/home

# If GROUPHOMES is "yes", then the home directories will be created as
# /home/groupname/user.
GROUPHOMES=no

# If LETTERHOMES is "yes", then the created home directories will have
# an extra directory - the first letter of the user name. For example:
# /home/u/user.

LETTERHOMES=no

# The SKEL variable specifies the directory containing "skeletal" user
# files; in other words, files such as a sample .profile that will be
# copied to the new user's home directory when it is created.
SKEL=/etc/skel

# FIRST_SYSTEM_[GU]ID to LAST_SYSTEM_[GU]ID inclusive is the range for UIDs
# for dynamically allocated administrative and system accounts/groups.
# Please note that system software, such as the users allocated by the base-pas$
# package, may assume that UIDs less than 100 are unallocated.
FIRST_SYSTEM_UID=100

LAST_SYSTEM_UID=999

FIRST_SYSTEM_GID=100
LAST_SYSTEM_GID=999

# FIRST_[GU]ID to LAST_[GU]ID inclusive is the range of UIDs of dynamically

# allocated user accounts/groups.
FIRST_UID=1000
LAST_UID=29999

FIRST_GID=1000
LAST_GID=29999

# The USERGROUPS variable can be either "yes" or "no". If "yes" each
# created user will be given their own group to use as a default. If
# "no", each created user will be placed in the group whose gid is

# USERS_GID (see below).
USERGROUPS=yes

# If USERGROUPS is "no", then USERS_GID should be the GID of the group
# `users' (or the equivalent group) on your system.
USERS_GID=100

# If DIR_MODE is set, directories will be created with the specified
# mode. Otherwise the default mode 0755 will be used.
DIR_MODE=0755

# If SETGID_HOME is "yes" home directories for users with their own
# group the setgid bit will be set. This was the default for
# versions << 3.13 of adduser. Because it has some bad side effects we
# no longer do this per default. If you want it nevertheless you can
# still set it here.
SETGID_HOME=no

# If QUOTAUSER is set, a default quota will be set from that user with
# `edquota -p QUOTAUSER newuser'
QUOTAUSER=""

# If SKEL_IGNORE_REGEX is set, adduser will ignore files matching this
# regular expression when creating a new home directory
SKEL_IGNORE_REGEX="dpkg-(old|new|dist|save)"


# Set this if you want the --add_extra_groups option to adduser to add
# new users to other groups.
# This is the list of groups that new non-system users will be added to
# Default:
#EXTRA_GROUPS="dialout cdrom floppy audio video plugdev users"

# If ADD_EXTRA_GROUPS is set to something non-zero, the EXTRA_GROUPS
# option above will be default behavior for adding new, non-system users
#ADD_EXTRA_GROUPS=1


# check user and group names also against this regular expression.
#NAME_REGEX="^[a-z][-a-z0-9_]*\$"

---------------------------------------------------

maintenant je le supprime cet utilisateur
sudo passwd -l toto

lorsque je fais la même chose avec l'utilisateur PI ( donc le "root" de base)
impossible de le supprimer.

QUESTIONS :
1/
le fait d'être en VNC est-il à l'origine de cette situation ?
car lorsque je reboot la bécane, c'est toujours pi qui est mis en marche.

2/
si cela ne vient pas de VNC
quelle est l'opération que j'ai loupé ?

3/
VNC est normalement une aide mais est-il restrictif sur rasp alors que cela ne pose pas de problème sur une machine sous Debian


J'apprécierai vos réponses
merci
Message Modérateur :
Bonjour,
Je suis désolé, mais le compte du titulaire de ce message est supprimé pour non respect des règles du forum.
Juridiquement, chaque membre est responsable de ses messages, les adresses mails "poubelles" ne sont donc pas autorisé.
Règles du forum : "Chaque utilisateur du forum doit être identifiable. Toute inscription avec une adresse mail anonyme (appelé aussi adresse mail "poubelle") entraînera la suppression immédiate du compte, sans préavis."
- Domi

domi
Administrateur
Messages : 3233
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: VNC gestion des users

Message par domi » mar. 23 mai 2017 13:32

Bonjour,

Alors première chose, le user PI n'est pas root (ou admin pour les windowsiens :-))

Comment te connecte tu avec VNC ?
si c'est avec le user PI, il est normal qu'il ne puisse être supprimé (on ne scie pas la branche sur laquelle on est assis)
Même après un "sudo su", tu récupères les droits Root, mais le user connecté à VNC reste PI.

Plutôt que le supprimer, je suis partisan de lui mettre un password costaud, et de le garder de coté.
De cette façon, je crée un user pour l'utilisation courante avec juste les droits dont il a besoin, et je ne lui autorise pas le sudo.
Bien entendu, je refuse les connexions Root (autre qu'en passant par le user PI, dont l'accès SSH est autorisé qu'a certaines IP bien précise).

Dernière chose, je ne fait jamais de connexion VNC autre que via un tunnel SSH, donc uniquement depuis l'adresse l'adresse local.

Voila, en espérant avoir répondu a tes interrogations.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

framframfram

Re: VNC gestion des users

Message par framframfram » mar. 23 mai 2017 13:59

bonjour DOMI et merci de ta réponse rapide

bon effectivement tu poses les bonnes questions j'aurai dû le prévoir.

Pi est un admin d'usine. la fonction root s'imposait d'office avec un "sudo su".
En terme de sécurité, c'est une faille réelle que de conserver un admin d'usine. Cela n'a aucun sens.

Donc j'en ai créé un autre qui a tous les droits admin. Je l'appellerai "tutu" ici

je lance la bécane qui
je me connecte avec tutu en vnc en tutu
j'ouvre une console et découvre que la bécane s'est ouverte en "pi"

Or ce "pi" a été supprimé et accepté par la bécane après avoir fait :

shutdown et login ( je parle ici de la fenêtre "framboise > shutdown > login; immédiatement après login "tutu" m'est proposé avec M2P à inscrire )

dès lors je me logue sur la machine via "tutu"
j'ouvre une console et j'ai effectivement

tutu@raspi3 en guise de prompt.

Sauf si j'ai loupé quelque chose,
lorsque je suis logué en "tutu"
le compte "pi" n'est plus actif.
je peux donc supprimer pi par
sudo deluser pi

le prompt me répond :
Suppression de l'utilisateur « pi »...
Attention ! Le groupe « pi » ne contient plus aucun membre.
userdel: user pi is currently used by process 1085
/usr/sbin/deluser : « /usr/sbin/userdel pi » a retourné le code d'erreur 8. Abandon.

voilà où j'en suis

j'ajoute un élément : connexion via ssh

je suis ok pour l'idée
ici je ne crains rien
mais effectivement faire du vnc sans ssh c'est pas la meilleure des choses....
Message Modérateur :
Bonjour,
Je suis désolé, mais le compte du titulaire de ce message est supprimé pour non respect des règles du forum.
Juridiquement, chaque membre est responsable de ses messages, les adresses mails "poubelles" ne sont donc pas autorisé.
Règles du forum : "Chaque utilisateur du forum doit être identifiable. Toute inscription avec une adresse mail anonyme (appelé aussi adresse mail "poubelle") entraînera la suppression immédiate du compte, sans préavis."
- Domi

domi
Administrateur
Messages : 3233
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: VNC gestion des users

Message par domi » mar. 23 mai 2017 17:18

framframfram a écrit :Donc j'en ai créé un autre qui a tous les droits admin. Je l'appellerai "tutu" ici
Grosse erreur, on ne donne jamais les droits Root à un utilisateur ! Seul Root est Root.
Les droits Admin n'existant pas sous Linux, je suppose que tu veux parler de Root.

Je ne vois pas en quoi le user PI est une faille.
Un bon mot de passe, et tu lui interdit les connexions de l’extérieur.
Même avec une connexion depuis l’extérieur, il est plus sécurisé qu'avec un utilisateur "tutu" ayant des droits root.

Pour l'impossibilité de suppression, il doit y avoir des daemons qui tourne avec le user PI.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

destroyedlolo
Raspinaute
Messages : 1587
Enregistré le : dim. 10 mai 2015 18:44
Localisation : Dans la campagne à côté d'Annecy
Contact :

Re: VNC gestion des users

Message par destroyedlolo » mar. 23 mai 2017 17:34

domi a écrit :Pour l'impossibilité de suppression, il doit y avoir des daemons qui tourne avec le user PI.
Une solution crade serait de renommer PI directement dans les fichiers système (que je ne nommerai pas car, si on ne les connait pas, c'est qu'on a pas suffisamment de connaissances système pour le faire de manière sécurisé.
Mais ... je suis a peut-être sur que ca peut casser des trucs mal foutu, en particulier certains scripts d'installation ...
  • BananaPI : Gentoo, disque SATA de 2 To
  • Domotique : 1-wire, TéléInfo, Tablette passée sous Gentoo, ESP8266
  • Multimedia par DNLA
  • Et pleins d'idées ... et bien sûr, pas assez de temps.
Un descriptif de ma domotique 100% fait maison.

domi
Administrateur
Messages : 3233
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: VNC gestion des users

Message par domi » mar. 23 mai 2017 17:56

Un

Code : Tout sélectionner

ps -u pi
devrait donner ce qui tourne sous PI

Mais pour moi, ça reste une mauvaise idée de vouloir supprimer PI
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

Répondre

Retourner vers « Utilisateurs avancés »