Forum Linux.redhat chrooter un environnement web

Posté par  .
Étiquettes : aucune
-1
6
juin
2011

bonjour,
je souhaiterais chrooter un user qui servira a un dev a pousser sont code. j'ai trouvé quelques méthodes qui se ressemble plus ou moins seulement ce n'est pas encore complétement ce que je recherche. en gros je souhaiterais un chrootage un peux comme les environnement web des hébergeurs genre OVH. quand on s'y connecte en ssh on y voit qu'un répertoire appelé www dans lequel on peut y mettre sont code et c'est tout. On ne vois pas les répertoires genre bin/ et tout le tralala qui servent a l'environnement . j'ai cherché sur google mais je ne trouve rien qui d’équivalent.

  • # Emplacement par défaut ou chroot

    Posté par  . Évalué à 1.

    Si tu veux que l'emplacement par défaut n'affiche que www, il "suffit" de définir le répertoire utilisateur (HOME) dans /etc/passwd pour indiquer un répertoire relatif à la racine du chroot et contenant uniquement www.

    Si tu veux empêcher l'utilisateur de remonter dans la hiérarchie, tu te retrouves avec un chroot dans un répertoire qui ne contient pas de binaires. Dans ce cas un shell interactif ne sera pas utilisable (même pas de ls), et il faut utiliser sftp. Ce type de configuration est couvert par http://www.minstrel.org.uk/papers/sftp/builtin/

  • # SFTP simple ou restreindre les commandes autorisées

    Posté par  (site web personnel) . Évalué à 1.

    Tout dépend de si tu veux autoriser l'exécution de commandes sur le serveur ou donner un simple accès SFTP :
    - exécution de commandes : voir le fichier de configuration OpenSSH et ForceCommand pour restreindre. Il y a aussi des outils pour restreindre les commandes, du genre scponly ou rssh.
    - SFTP simple : voir le fichier de configuration OpenSSH et ChrootDirectory pour changer la racine.

    Je ne me suis jamais penché sur les méthodes de chroot qui impliquent de recopier les exécutables utiles dans le chroot, ça me paraissait trop difficile à maintenir (mise à jours, etc.).

    Aucune idée de comme ça se passe chez OVH, mais l'accès que j'ai chez eux n'est pas chrooté.

    • [^] # Re: SFTP simple ou restreindre les commandes autorisées

      Posté par  . Évalué à 1.

      alors en fait oui je souhaite malgres tout l'execution de commande genre ls, scp, rsync enfin quelques trucs quoi.

      "Aucune idée de comme ça se passe chez OVH, mais l'accès que j'ai chez eux n'est pas chrooté."

      mais dans ce cas comment font ils pour creer ce type d'environnement ? quand je me connecte avec mon user en ssh je ne vois qu'un repertoire "www" et "cgi-bin" rien de plus et je ne peux remonter plus haut que le home dans lequel je suis.

      • [^] # Re: SFTP simple ou restreindre les commandes autorisées

        Posté par  . Évalué à 1.

        Une approche qui peut t'intéresser est l'utilisation du mode restreint de bash.

        Voir RESTRICTED SHELL dans bash(1).

        Pour l'utiliser comme shell de login, le plus simple est de créer un lien symbolique /bin/rbash pointant vers /bin/bash, l'autoriser dans /etc/shells et de définir /bin/rbash comme shell pour un utilisateur.

        Attention, pas de cd du tout !

      • [^] # Re: SFTP simple ou restreindre les commandes autorisées

        Posté par  (site web personnel) . Évalué à 1.

        Chez OVH, que dit la commande pwd? Si c'est /home/user, c'est que tu n'es pas chrooté.

        • [^] # Re: SFTP simple ou restreindre les commandes autorisées

          Posté par  . Évalué à 0.

          alors, si en fait je peux remonter d'un cran. pwd donne /homez.15/monuser . je peux remonter dans homez.15. d'ici si je fais un ls ca me met permission denied.

          • [^] # Re: SFTP simple ou restreindre les commandes autorisées

            Posté par  (site web personnel) . Évalué à 1.

            Pareil que ce que j'ai. Donc ce n'est pas un chroot. C'est juste les droits d'accès sur les répertoires (pas de droit de lecture du répertoire mais droit d'exécution pour pouvoir atteindre les fichiers qui sont dedans, par exemple /bin/ls. Ce s'obtient peut-être avec une truc du genre :

            # chmod go-r /
            # chmod go-r /bin
            # (etc.)
            

            (je n'ai pas testé du tout)

            Cependant, ça n'est pas très simple à mettre en place, ni très maintenable (il ne faut rien oublier). Il doivent sûrement utiliser des patchs noyau qui permettent de mettre des permissions par défaut (style grsecurity).

            • [^] # Re: SFTP simple ou restreindre les commandes autorisées

              Posté par  (site web personnel) . Évalué à 0.

              @MENZA :

              Tu veux mettre une jail sur le fuc... user ! Très bonne idée !
              Tu veux comme OVTRUC, on s'en tappe de qui fait comment ce qui compte c'est ton besoin : sécuriser !

              On te dis "chroot" du ssh, on te redit "CHROOT" du ssh...
              => google : "chroot ssh"
              En une heure à tout casser ce sera en place !

              Si tu te prends pas une heure pour regarder comment faire ca sur ton serveur rend la dédibox en leur disant que tu es trop feignant pour le configurer.... et prend un hébergement mutualisé !

              NB : Et au passage dans la veine sécurisation tu peux interdire les accès par login / mot de passe et n'authoriser que les authent par clé ( et interdit le RSA )

              Fuse : j'en Use et Abuse !

            • [^] # Re: SFTP simple ou restreindre les commandes autorisées

              Posté par  . Évalué à 0.

              ouai, je pense aussi que ca doit etre plus complique qu'un chrootage. je voulais juste paufiner le truc mais je crois que je vais rester sur le chrootage qui fonctionne tres bien en fait. en tout cas merci pour tes renseignements niol.

  • # aïe

    Posté par  . Évalué à -1.

    désolé mais ça pique trop les yeux, j'ai pas pu lire jusqu'au bout.

  • # R5

    Posté par  . Évalué à 0.

    toujours a propos de mon chrootage. j'ai mis en place l'environnement chrooté pour un user,ca semble fonctionner correctement je peux faire des connexions ssh. depuis un ordi distant je veux copier des fichiers dans mon repertoire chrooté via rsync . quand je lance la commande ca me demande le mot de passe, je fais entré et ca reste comme ca sans rien faire. quelqu'un a t il une idee sur ce probleme ?

Suivre le flux des commentaires

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