A voir également:
- Samba sftp
- Samba logiciel - Télécharger - Gestion de données
- Impossible d'initialiser le protocole sftp. sftp fonctionne-t-il sur le serveur ? ✓ - Forum Linux / Unix
- Singer samba 6 année fabrication ✓ - Forum Loisirs / Divertissements
- Partage samba windows 10 - Guide
- Chanson samba lalalala ✓ - Forum Musique / Radio / Clip
4 réponses
Salut,
j'ai un serveur sftp (sur e meme server linux que samba) (ssh configuré et opérationnel)
Ne fait pas confusion.
Il n'y a pas de serveur sftp.
La partie serveur est le programme sftp-server (voir le fichier sshd_config) et le client et le programme sftp.
En gros il s'agit de SSH + le transfer de fichiers (scp et sftp).
Il n'y a pas non plus de server linux.
Linux c'est le kernel, GNU/Linux c'est l'OS et il y a plusieurs distributions.
Un serveur c'est une machine ou un programme qui offre des services ou ressources à un client.
lorsque un user se connecte avec winscp sur le server sftp, il ne voit que ce qu'il a le droit de voir (droits samba de ce user) ?
Je ne crois pas que samba à quelque chose là dédans quand tu te connectes avec Winscp.
Tu peux remarqué ça en arrêtant le serveur Samba. Tu verras que la connexion avec Winscp functionnera toujours.
Si tu veux que l'utilisateur ne voie que le répertoire que lui est destiné, avec openssh il y a la possibilité de créer un environnement chrooté.
En ce cas l'utilisateur en plus de n'avoir accès qu'à son répertoire, sera emprisonner dans un pseudo-système se trouvant à l'intérieur de ton GNU/Linux.
Si ça ne t'interesses que pour le transfer de fichiers alors c'est de ça que tu as besoin (enfin c'est mon opinion).
lami20j
j'ai un serveur sftp (sur e meme server linux que samba) (ssh configuré et opérationnel)
Ne fait pas confusion.
Il n'y a pas de serveur sftp.
La partie serveur est le programme sftp-server (voir le fichier sshd_config) et le client et le programme sftp.
En gros il s'agit de SSH + le transfer de fichiers (scp et sftp).
Il n'y a pas non plus de server linux.
Linux c'est le kernel, GNU/Linux c'est l'OS et il y a plusieurs distributions.
Un serveur c'est une machine ou un programme qui offre des services ou ressources à un client.
lorsque un user se connecte avec winscp sur le server sftp, il ne voit que ce qu'il a le droit de voir (droits samba de ce user) ?
Je ne crois pas que samba à quelque chose là dédans quand tu te connectes avec Winscp.
Tu peux remarqué ça en arrêtant le serveur Samba. Tu verras que la connexion avec Winscp functionnera toujours.
Si tu veux que l'utilisateur ne voie que le répertoire que lui est destiné, avec openssh il y a la possibilité de créer un environnement chrooté.
En ce cas l'utilisateur en plus de n'avoir accès qu'à son répertoire, sera emprisonner dans un pseudo-système se trouvant à l'intérieur de ton GNU/Linux.
Si ça ne t'interesses que pour le transfer de fichiers alors c'est de ça que tu as besoin (enfin c'est mon opinion).
lami20j
Dans la suite de ce message, je parle de Paul comme d'un user qui a quelques droits sur certains repertoires.
---->Il n'y a pas de serveur sftp.
---->La partie serveur est le programme sftp-server (voir le fichier sshd_config) et le client et le programme sftp.
bien vu
---->lorsque un user se connecte avec winscp sur le server sftp, il ne voit que ce qu'il a le droit de voir (droits samba de ce user) ?
Ben le probleme est là justement, il voit tout, absolument tout. Certes il ne peut pas créer de répertoire/fichiers dans des chemins comme /etc, mais par contre il peut récupérer tous les fichiers du serveur sans exception.
et là c un mega probleme
---->Je ne crois pas que samba à quelque chose là dédans quand tu te connectes avec Winscp.
justement je voudrais que samba dise au sftp ce que PAUL peut voir, sinon il voit tout
---->Tu peux remarqué ça en arrêtant le serveur Samba. Tu verras que la connexion avec Winscp functionnera toujours.
exact, ça fonctionne toujours, et c la le probleme
---->Si tu veux que l'utilisateur ne voie que le répertoire que lui est destiné, ...
oui, je veux qu'il ne puisse voir que ce que je lui ai autorisé a voir dans samba
exemple, paul peut voir :
/volume1/bboa
/volume1/public
/volume1/photo
et paul ne peut pas voir :
/volume1/opt
/volume1/save
et le seul endroit dans le système, où ces droits sont gérés, c'est dans smb.conf (le fichier de config de samba) -> d'où ce post
autre exemple :
lorsque paul se connecte en ftp avec filezilla sur le serveur ftp, il ne voit que ce que je lui ai autorisé a voir dans samba.
je voudrais qu'il en soit de même pour sftp (avec winscp)
j'espere avoir été assez clair.
Si ce n'est pas possible, tant pis, mais je serai surpris qu'il en soit ainsi.
---->Il n'y a pas de serveur sftp.
---->La partie serveur est le programme sftp-server (voir le fichier sshd_config) et le client et le programme sftp.
bien vu
---->lorsque un user se connecte avec winscp sur le server sftp, il ne voit que ce qu'il a le droit de voir (droits samba de ce user) ?
Ben le probleme est là justement, il voit tout, absolument tout. Certes il ne peut pas créer de répertoire/fichiers dans des chemins comme /etc, mais par contre il peut récupérer tous les fichiers du serveur sans exception.
et là c un mega probleme
---->Je ne crois pas que samba à quelque chose là dédans quand tu te connectes avec Winscp.
justement je voudrais que samba dise au sftp ce que PAUL peut voir, sinon il voit tout
---->Tu peux remarqué ça en arrêtant le serveur Samba. Tu verras que la connexion avec Winscp functionnera toujours.
exact, ça fonctionne toujours, et c la le probleme
---->Si tu veux que l'utilisateur ne voie que le répertoire que lui est destiné, ...
oui, je veux qu'il ne puisse voir que ce que je lui ai autorisé a voir dans samba
exemple, paul peut voir :
/volume1/bboa
/volume1/public
/volume1/photo
et paul ne peut pas voir :
/volume1/opt
/volume1/save
et le seul endroit dans le système, où ces droits sont gérés, c'est dans smb.conf (le fichier de config de samba) -> d'où ce post
autre exemple :
lorsque paul se connecte en ftp avec filezilla sur le serveur ftp, il ne voit que ce que je lui ai autorisé a voir dans samba.
je voudrais qu'il en soit de même pour sftp (avec winscp)
j'espere avoir été assez clair.
Si ce n'est pas possible, tant pis, mais je serai surpris qu'il en soit ainsi.
Salut,
je crois qu'il y a un malentendu quelque part.
J'ai très bien compris ce que tu veux faire et c'est faisable mais pas comment tu le penses (enfin c'est mon opinon).
Le serveur Samba utilise le protocol SMB
Un serveur FTP utilse le protocol FTP
Le serveur SSH utilie le protocol SSH (version 1 et 2)
lorsque paul se connecte en ftp avec filezilla sur le serveur ftp, il ne voit que ce que je lui ai autorisé a voir dans samba.
Oui et c'est normal.
Mais pas comment tu penses. (enfin tant que je n'ai pas vu les fichiers de configuration de tes serveurs je ne peux pas être sûr de ce que tu va lire, mais dans la logique c'est ça)
Je m'explique.
Dans le fichier de configuration de samba tu as donné accèss à certains ressources pour les utilisateurs. Donc ils peuvent se connecter et voir ce que toi a decidé. Jusqu'ici c'est bon.
En revanche avec le ftp, les utilisateurs voient ce que tu as decidé mais pas parce que dans le fichier samba.conf tu as configureé l'accès aux ressources, mais parce que le serveur ftp (tu utilises quoi comme serveur ftp?) a aussi un fichier de configuration dans lequel on spécifie les droits, les répertoires, etc.. (ce qu'on veut partager)
Si, ce sont les même que dans samba.conf alors ça s'explique pourquoi tu peux.
Pour ssh il y a des solutions envisageable que je connais.
1.
- limitations des accès avec chroot
SSH2 a 2 mots clé
ChRootUsers user
limiter l'accès au répertoire de compte user
ChRootGroups groupe1
s'applique pour tous le comptes d'un group
Dans les 2 cas on peut ajouter plusieurs utilisateurs ou groupes separré par une virgule sans espace.
je n'ai pas testé
2.
OpenSSH
pour openssh il y a des patch pour pouvoir créer un environnement chrooté.
J'ai testé sur debian et ça marche impecable. D'ailleurs je suis en train de préparer un tuto pour ça en utilisant 2 scripts perl pour automatisation.
A savoir que avec sftp en fait tu te connectes sur un compte pour transfer de fichiers. Une fois le ssh activé de toute façon c'est normal que l'utilsateur accede à son compte (c'est le but de SSH - Le shell securisé)
lami20j
je crois qu'il y a un malentendu quelque part.
J'ai très bien compris ce que tu veux faire et c'est faisable mais pas comment tu le penses (enfin c'est mon opinon).
Le serveur Samba utilise le protocol SMB
Un serveur FTP utilse le protocol FTP
Le serveur SSH utilie le protocol SSH (version 1 et 2)
lorsque paul se connecte en ftp avec filezilla sur le serveur ftp, il ne voit que ce que je lui ai autorisé a voir dans samba.
Oui et c'est normal.
Mais pas comment tu penses. (enfin tant que je n'ai pas vu les fichiers de configuration de tes serveurs je ne peux pas être sûr de ce que tu va lire, mais dans la logique c'est ça)
Je m'explique.
Dans le fichier de configuration de samba tu as donné accèss à certains ressources pour les utilisateurs. Donc ils peuvent se connecter et voir ce que toi a decidé. Jusqu'ici c'est bon.
En revanche avec le ftp, les utilisateurs voient ce que tu as decidé mais pas parce que dans le fichier samba.conf tu as configureé l'accès aux ressources, mais parce que le serveur ftp (tu utilises quoi comme serveur ftp?) a aussi un fichier de configuration dans lequel on spécifie les droits, les répertoires, etc.. (ce qu'on veut partager)
Si, ce sont les même que dans samba.conf alors ça s'explique pourquoi tu peux.
Pour ssh il y a des solutions envisageable que je connais.
1.
- limitations des accès avec chroot
SSH2 a 2 mots clé
ChRootUsers user
limiter l'accès au répertoire de compte user
ChRootGroups groupe1
s'applique pour tous le comptes d'un group
Dans les 2 cas on peut ajouter plusieurs utilisateurs ou groupes separré par une virgule sans espace.
je n'ai pas testé
2.
OpenSSH
pour openssh il y a des patch pour pouvoir créer un environnement chrooté.
J'ai testé sur debian et ça marche impecable. D'ailleurs je suis en train de préparer un tuto pour ça en utilisant 2 scripts perl pour automatisation.
A savoir que avec sftp en fait tu te connectes sur un compte pour transfer de fichiers. Une fois le ssh activé de toute façon c'est normal que l'utilsateur accede à son compte (c'est le but de SSH - Le shell securisé)
lami20j
Bonjour,
j'ai effectivement compris tout ce que tu m'as dit.
comme je n'ai pas trouvé de fichier de config ftp qui resume les droits des users, je me suis dit que le demon ftp recuperait les droits des users dans le fichier de config de samba (que j'ai joint). Plus bas dans ce post apparaissent les fichiers que j'ai trouvé et qui te donneront des infos sur ma config.
Apparemment, la methode "limitations des accès avec chroot" ne m'interesse pas car chacun de mes users a des droits differents.
Avec ChRootUsers user, on limite l'accès au répertoire de compte user, ca c pas du tout ce que je veux.
Avec ChRootGroups groupe1, il faut que je cree plein de groupes et que je mettre les users dedans. pas cool
le patch pour openssh "créer un environnement chrooté", a l'air interessant, je vais attendre que tu finisses ton tuto pour voir et tester
Ce que je souhaite :
paul accède aux repertoires suivants :
/volume1/public
/volume1/DL
/volume1/bboa
christian accède aux répertoires suivants :
/volume1/public
/volume1/web
/volume1/DL
/volume1/bboa
/volume1/HDI
pour chaque user, il y a une config differente
merci pour ton aide précieuse
***********************
voila mon fichier de config de samba
NAS250> cat /usr/syno/etc/smb.conf
[global]
socket options=TCP_NODELAY
workgroup=MSHOME
realm=*
printing=lprng
winbind enum groups=yes
idmap gid=10000-30000
passdb backend=smbpasswd
security=user
idmap uid=10000-30000
printcap name=/usr/syno/etc/printcap
load printers=yes
winbind enum users=yes
[public]
invalid users=nobody,nobody
valid users=nobody,christian,jonathan,sylvie,paul,admin,nobody
comment="Partage public"
path=/volume1/public
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,christian,jonathan,sylvie,paul,admin,nobody
writeable=yes
[web]
invalid users=nobody,nobody
valid users=nobody,christian,admin,nobody
comment="Site web local"
path=/volume1/web
guest ok=yes
browseable=yes
read list=nobody,christian,nobody
write list=nobody,admin,nobody
writeable=yes
[DL]
invalid users=nobody,nobody
valid users=nobody,Kriss,christian,sectorzero,jonathan,alphavictor,sylvie,jeanclaude,paul,SaveByFTP,admin,mohamed,nobody
comment="Download"
path=/volume1/DL
guest ok=yes
browseable=yes
read list=nobody,Kriss,christian,sectorzero,jonathan,alphavictor,sylvie,jeanclaude,mohamed,nobody
write list=nobody,paul,SaveByFTP,admin,nobody
writeable=yes
[save]
invalid users=nobody,nobody
valid users=nobody,SaveByFTP,admin,nobody
comment="Sauvegardes"
path=/volume1/save
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,SaveByFTP,admin,nobody
writeable=yes
[bboa]
invalid users=nobody,nobody
valid users=nobody,christian,jonathan,sylvie,paul,admin,nobody
comment="Big Box Of Art"
path=/volume1/bboa
guest ok=yes
browseable=yes
read list=nobody,christian,jonathan,sylvie,paul,nobody
write list=nobody,admin,nobody
writeable=yes
[HDI]
invalid users=nobody,nobody
valid users=nobody,christian,SaveByFTP,admin,nobody
comment="HirenDemarreurIndispensable"
path=/volume1/HDI
guest ok=yes
browseable=yes
read list=nobody,christian,nobody
write list=nobody,SaveByFTP,admin,nobody
writeable=yes
[NetBackup]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment="System default share"
path=/volume1/NetBackup
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
[tmp]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment=""
path=/volume1/tmp
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
[opt]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment=""
path=/volume1/opt
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
NAS250>
***********************
paul est dans le group users, comme tous les autres compte d'ailleurs
NAS250> id -gn paul
users
NAS250>
***********************
liste des group
NAS250> cat /etc/group
#$_@GID__INDEX@_$65539$
root:x:0:
lp:x:7:nobody,lp,nobody
ftp:x:21:nobody,ftp,nobody
smmsp:x:25:nobody,smmsp,nobody
nobody:x:1023:nobody,nobody
users:x:100:nobody,nobody
NAS250>
***********************
Fichiers contenant ftp dans leur nom
je n'arrive pas a determiner quelle version de ftp il s'agit
il y a juste le demon qui tourne /usr/syno/sbin/ftpd
NAS250> find / -name ftp*
/etc/ftpusers
/usr/syno/sbin/ftpd
/usr/syno/synoman/tools/ftp.cgi
***********************
seul fichier de config de ftp que j'ai trouvé
NAS250> cat /etc/ftpusers
root
bin
daemon
adm
lp
sync
shutdown
halt
uucp
operator
nobody
NAS250>
***********************
j'ai effectivement compris tout ce que tu m'as dit.
comme je n'ai pas trouvé de fichier de config ftp qui resume les droits des users, je me suis dit que le demon ftp recuperait les droits des users dans le fichier de config de samba (que j'ai joint). Plus bas dans ce post apparaissent les fichiers que j'ai trouvé et qui te donneront des infos sur ma config.
Apparemment, la methode "limitations des accès avec chroot" ne m'interesse pas car chacun de mes users a des droits differents.
Avec ChRootUsers user, on limite l'accès au répertoire de compte user, ca c pas du tout ce que je veux.
Avec ChRootGroups groupe1, il faut que je cree plein de groupes et que je mettre les users dedans. pas cool
le patch pour openssh "créer un environnement chrooté", a l'air interessant, je vais attendre que tu finisses ton tuto pour voir et tester
Ce que je souhaite :
paul accède aux repertoires suivants :
/volume1/public
/volume1/DL
/volume1/bboa
christian accède aux répertoires suivants :
/volume1/public
/volume1/web
/volume1/DL
/volume1/bboa
/volume1/HDI
pour chaque user, il y a une config differente
merci pour ton aide précieuse
***********************
voila mon fichier de config de samba
NAS250> cat /usr/syno/etc/smb.conf
[global]
socket options=TCP_NODELAY
workgroup=MSHOME
realm=*
printing=lprng
winbind enum groups=yes
idmap gid=10000-30000
passdb backend=smbpasswd
security=user
idmap uid=10000-30000
printcap name=/usr/syno/etc/printcap
load printers=yes
winbind enum users=yes
[public]
invalid users=nobody,nobody
valid users=nobody,christian,jonathan,sylvie,paul,admin,nobody
comment="Partage public"
path=/volume1/public
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,christian,jonathan,sylvie,paul,admin,nobody
writeable=yes
[web]
invalid users=nobody,nobody
valid users=nobody,christian,admin,nobody
comment="Site web local"
path=/volume1/web
guest ok=yes
browseable=yes
read list=nobody,christian,nobody
write list=nobody,admin,nobody
writeable=yes
[DL]
invalid users=nobody,nobody
valid users=nobody,Kriss,christian,sectorzero,jonathan,alphavictor,sylvie,jeanclaude,paul,SaveByFTP,admin,mohamed,nobody
comment="Download"
path=/volume1/DL
guest ok=yes
browseable=yes
read list=nobody,Kriss,christian,sectorzero,jonathan,alphavictor,sylvie,jeanclaude,mohamed,nobody
write list=nobody,paul,SaveByFTP,admin,nobody
writeable=yes
[save]
invalid users=nobody,nobody
valid users=nobody,SaveByFTP,admin,nobody
comment="Sauvegardes"
path=/volume1/save
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,SaveByFTP,admin,nobody
writeable=yes
[bboa]
invalid users=nobody,nobody
valid users=nobody,christian,jonathan,sylvie,paul,admin,nobody
comment="Big Box Of Art"
path=/volume1/bboa
guest ok=yes
browseable=yes
read list=nobody,christian,jonathan,sylvie,paul,nobody
write list=nobody,admin,nobody
writeable=yes
[HDI]
invalid users=nobody,nobody
valid users=nobody,christian,SaveByFTP,admin,nobody
comment="HirenDemarreurIndispensable"
path=/volume1/HDI
guest ok=yes
browseable=yes
read list=nobody,christian,nobody
write list=nobody,SaveByFTP,admin,nobody
writeable=yes
[NetBackup]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment="System default share"
path=/volume1/NetBackup
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
[tmp]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment=""
path=/volume1/tmp
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
[opt]
invalid users=nobody,nobody
valid users=nobody,admin,nobody
comment=""
path=/volume1/opt
guest ok=yes
browseable=yes
read list=nobody,nobody
write list=nobody,admin,nobody
writeable=yes
NAS250>
***********************
paul est dans le group users, comme tous les autres compte d'ailleurs
NAS250> id -gn paul
users
NAS250>
***********************
liste des group
NAS250> cat /etc/group
#$_@GID__INDEX@_$65539$
root:x:0:
lp:x:7:nobody,lp,nobody
ftp:x:21:nobody,ftp,nobody
smmsp:x:25:nobody,smmsp,nobody
nobody:x:1023:nobody,nobody
users:x:100:nobody,nobody
NAS250>
***********************
Fichiers contenant ftp dans leur nom
je n'arrive pas a determiner quelle version de ftp il s'agit
il y a juste le demon qui tourne /usr/syno/sbin/ftpd
NAS250> find / -name ftp*
/etc/ftpusers
/usr/syno/sbin/ftpd
/usr/syno/synoman/tools/ftp.cgi
***********************
seul fichier de config de ftp que j'ai trouvé
NAS250> cat /etc/ftpusers
root
bin
daemon
adm
lp
sync
shutdown
halt
uucp
operator
nobody
NAS250>
***********************