Pages : 1
#1 Le 05/03/2011, à 16:45
- Kazer2.0
Accès SFTP, bloqué user dans son dossiers
Bonjour à tous,
J'ai un peu lu les tutoriaux que j'ai trouvés pour mettre en place un accès FTP sur mon serveur, mais ça n'as encore rien donné. Habituellement je me connecte en root (SFTP) pour mettre de fichier dessus (c'est peut être pas top sécure, mais c'est un petit serveur privé). Donc je voulais faire pareil pour mon autre utilisateur
Je mettais les fichiers dans /home/kazer quand je me connecter.
J'ai ajouter un user
adduser chuckys
Adding user `chuckys' ...
Adding new group `chuckys' (1001) ...
Adding new user `chuckys' (1001) with group `chuckys' ...
Creating home directory `/home/chuckys' ...
Copying files from `/etc/skel' ...
Et j'aimerai qu'il puisse ce connecter et avoirs accès que à son dossier (/home/chuckys).
Pour l'instant, de mon point de vu j'ai presque tous résolu, il ce connecte en sftp, mais il n'est pas bloqué dans son dossier, il peut allez ou il veut.
Et le but final c'est qui puisse, sur son dossier, upload des fichiers, les modifs, bref ce qu'il veut dans SON dossier.
Je vous remercie d'avance de l'aide que vous apporterez à un débutant quand moi
Cordialement
Kazer2.0
Hors ligne
#2 Le 06/03/2011, à 00:43
- chopinhauer
Re : Accès SFTP, bloqué user dans son dossiers
Les utilisateurs de SFTP peuvent normalement voir tout le système de fichiers de la machine, comme s'ils était connectés en local. Cependant cela ne pose pas de problèmes, vu que de toute manière les droits d'écriture sont soumis aux permissions Unix. Et en général un utilisateur peut écrire uniquement dans son répertoire maison.
Si cela te gène, tu peux configurer une chroot pour certains utilisateurs du système. Mais attention un utilisateur chrooté pourra uniquement utiliser les applications contenues dans la chroot, donc par exemple il pourra se connecter pour faire du SFTP, mais pas pour avoir un terminal ssh.
Si cela te convient ajoute :
Subsystem sftp internal-sftp
Match group sftponly
# Pour coincer dans /home
ChrootDirectory /home
# Ou pour les coincer dans leur répertoire maison
# ChrootDirectory /home/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
à ta configuration OpenSSH (dans /etc/ssh/sshd_config), un groupe 'sftponly' et un lien symbolique de /home/home vers /home:
sudo addgroup sftponly
# Pour coincer dans /home
sudo ln -s . /home/home
# Pour coincer dans le répertoire maison
# À faire pour chaque utilisateur
sudo ln -s .. /home/nom_utilisateur
puis ajoute les utilisateur victimes au groupe 'sftponly':
sudo adduser <nom_utilisateur> sftponly
Edit : différencié le cas du chroot dans /home ou dans le répertoire maison de l'utilisateur.
Dernière modification par chopinhauer (Le 06/03/2011, à 17:44)
Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.
Hors ligne
#3 Le 06/03/2011, à 12:39
- Kazer2.0
Re : Accès SFTP, bloqué user dans son dossiers
Donc par exemple chez moi
Je crée un groupe (par exp : sftponly), sur lequel je met en lien symbolique (sudo ln -s . /home/chukys). Et j'ajoute l'user dans ce groupe (sudo adduser chuckys sftponly).
Mon but final est qu'il puisse agir seulement dans son dossier (crée / supprimer / modifier), et il ce connecte seulement en sftp. A la limite qu'il puisse lister les autres fichiers et dossiers, ça c'est pas grave, mais juste qu'il ne puisse agir que dans SON dossier.
Par contre dans la config ssh j'ai
Subsystem sftp /usr/lib/openssh/sftp-server
, je remplace par ce qui est plus haut ?
Je vais essayer, merci la réponse !
EDIT : En fait c'est trop cool nux, faut les bonnes commandes et après ça rox du poney une fois bien config, je viens de tester, je peut pas supprimer des fichiers de /home/kazer, mais j'ai essayé l'upload dans /home/chuckys ça marche super !
sudo addgroup chuckyssftp
sudo ln -s . /home/chuckys/
sudo adduser chuckys chuckyssftp
Donc tous ceux dans le groupe chuckyssftp ne pourrons agir que sur le dossier /home/chuckys, non ?
Dernière modification par Kazer2.0 (Le 06/03/2011, à 12:45)
Hors ligne
#4 Le 06/03/2011, à 17:49
- chopinhauer
Re : Accès SFTP, bloqué user dans son dossiers
Je crée un groupe (par exp : sftponly), sur lequel je met en lien symbolique (sudo ln -s . /home/chukys). Et j'ajoute l'user dans ce groupe (sudo adduser chuckys sftponly).
Tu joues avec les liens symboliques pour que le répertoire maison de l'utilisateur comme vu dans le chroot et dans le système de fichier entier soit égal. Par exemple si le chroot est /chroot et le répertoire maison de l'utilisateur est /home/chucky il faut que les répertoires /home/chucky (à partir du / du système) et /chroot/home/chucky pointent vers le même endroit.
J'ai modifié mon message précédent pour tenir compte de deux chroot possibles (tous les utilisateur dans /home ou chacun dans /home/nom_utilisateur
Mon but final est qu'il puisse agir seulement dans son dossier (crée / supprimer / modifier), et il ce connecte seulement en sftp. A la limite qu'il puisse lister les autres fichiers et dossiers, ça c'est pas grave, mais juste qu'il ne puisse agir que dans SON dossier.
Alors il n'y a rien à faire. Regarde la page permissions.
Par contre dans la config ssh j'ai
Subsystem sftp /usr/lib/openssh/sftp-server
, je remplace par ce qui est plus haut ?
Si tu veux mettre le chroot tu dois la remplacer, car /usr/lib/openssh/sftp-server ne se trouve pas dans le répertoire auquel l'utilisateur aura accès.
Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.
Hors ligne
Pages : 1