Forum Linux.général useradd et shell

Posté par . Licence CC By‐SA.
Étiquettes : aucune
0
13
oct.
2023

dans le but de monter un serveur ftps (avec chiffrement tls) avec pure-ftpd
j'ai fait quelques découvertes
les commandes en console root

# groupadd ftpgroup
essai 1
# useradd -g ftpgroup -d /dev/null -s /usr/sbin/nologin ftpuser
essai 2
# useradd -g ftpgroup -d /dev/null -s /sbin/nologin ftpuser
(pas d'alerte,mais je n'ai pas nologin dans le dossier /sbin ou de lien)
essai 3
# useradd -g ftpgroup -d /dev/null -s /bin/false ftpuser
(pas d'alerte false se trouve dans /bin)
# mkdir /var/ftproot/
# chown ftpuser:ftpgroup /var/ftproot/
# chmod 770 /var/ftproot/
# ls -ld /var/ftproot/ 
drwxrwx--- 2 ftpuser ftpgroup 4096 13 oct. 15:33 /var/ftproot/
# grep ftpuser /etc/passwd
ftpuser:x:1004:1004::/dev/null:/bin/false
# grep ftpgroup /etc/group
ftpgroup:x:1004:

le constat :

les shells sont maintenant dans le dossier /bin
le chemin /sbin/nologin ne donne pas d'alerte
(j'ai corrigé l'erreur d'écriture)

une doc en français pour pure-ftp:
https://doc.ubuntu-fr.org/pure-ftp

os/linux/devuan/chimaera/mate

  • # essai 1

    Posté par . Évalué à 3. Dernière modification le 13 octobre 2023 à 16:48.

    dans la commande à l'essai 1 il faut écrire /usr/sbin/nologin au lieu de usr/sbin/nologin (manque le / en début)

    • [^] # Re: essai 1

      Posté par . Évalué à -7.

      vrai , essai 1 , il manquait le slash
      merci

  • # mauvais constats...

    Posté par (site web personnel, Mastodon) . Évalué à 2.

    Le premier constat que tu fais...

    les shells sont maintenant dans le dossier /bin

    ...est un peu faux.
    C’est juste qu’on s’attend (par habitude d’une convention non tacite) à trouver ces binaires dans /bin/ ; mais il n’y a jamais eu d’obligation que ce soit là...

    J’ai souvent croisé des shells à divers emplacement selon les distributions. (Solaris, AIX, MacOS X, etc.)
    Les distributions GNU/Linux ont de plus fusionné /bin et /sbin avec /usr/bin

    Bref, une des raisons pour laquelle les shebang #!/bin/foo sont déconseillés au profit de #!/usr/bin/env foo (mais c’est un autre débat.)

    Concernant le second constat...

    le chemin /sbin/nologin ne donne pas d'alerte

    Je pense qu’il n’y a pas d’alerte parce-que philosophie Unix : root sait toujours ce qu’il-ou-elle fait.
    Quand tu es un autre compte, avec chsh ou chpass, la vérification est faite que que tu choisis bien un shell autorisé/listé dans /etc/shells

    À noter que sur mon Mac par exemple, /sbin/nologin est le bon chemin. Comme quoi.

    "It is seldom that liberty of any kind is lost all at once." ― David Hume

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.