Serveur sftp, shell réduit (rssh) et chroot

Voilà qui est déjà plus simple.
Mais est-ce que ça peut être moi qui “fabrique” les deux clefs, pub et priv ?
Dans ce cas, je les installe où ça va bien et je n’ai qu’à envoyer la clef privée à chaque ayant-droit.
Comme, dans mon cas, tout les ayant-droits ont les même possibilités de vue et de TC sur le seul dossier ‘sftp>’… :017
Il est même possible qu’ils n’aient que l’acceptation à formuler, comme c’est le cas pour son propre réseau ???
La question va être de trouver la gestion qui va bien dans FileZilla et/ou en ligne de commande…
Vais être occupé encore pendant un bout de temps, moi :confused:

EDIT :
Suis tombé sur cette page assez explicite pour un éternel débutant comme moi :
http://formation-debian.via.ecp.fr/ssh.html#idp11849648
et celle-là, sensiblement identique :
http://www.tuteurs.ens.fr/internet/loin/ssh.html

Ces deux pages m’ont permis de comprendre un peu mieux les différents systèmes de clefs.

Salut,

Oui, pourquoi pas, mais tu as une clef privé que va se balader…
Ce n’est pas ce qu’il y a de mieux pour la sécurité… :wink:

Oui bien sûr, tu as raison.
On va voir si Yann nous trouve quelque chose qui puisse être sécurisé et que l’on peut généraliser à tous les ayant-droits.
Puisque dans mon cas, tous ceux qui sont “accrédités” sur mon sftp ont vu sur les mêmes dossiers, il serait pratique qu’ils aient la même clef … ou un autre système.
je ne fais que poser une question qui appelle certainement des remarques.

bonjour
je tente le sftp du wiki, mais à peine au début que j’ai ça : root@debian-server:~# subsystem sftp /usr/lib/openssh/sftp-server
-bash: subsystem : commande introuvable
j’ai cherché sans trouvé (peut etre mal cherché mais rien ne donne de commande qui puisse indiquer à sshd ou se trouve sftp-server)

vous auriez une idée svp ?

merci

Ce n’est pas une commande, c’est un ligne à mettre dans le fichier de configuration de ssh.

ah mince :blush: (ls deux pieds dedans…)

merci

mon dossier se présentant comme àa, dois-décommenter des “fonctions” ?

[code]Host *

ForwardAgent no

ForwardX11 no

ForwardX11Trusted no

RhostsRSAAuthentication no

RSAAuthentication yes

PasswordAuthentication yes

HostbasedAuthentication no

GSSAPIAuthentication no

GSSAPIDelegateCredentials no

GSSAPIKeyExchange no

GSSAPITrustDNS no

BatchMode no

CheckHostIP yes

AddressFamily any

ConnectTimeout 0

StrictHostKeyChecking ask

IdentityFile ~/.ssh/identity

IdentityFile ~/.ssh/id_rsa

IdentityFile ~/.ssh/id_dsa

Port 666

Protocol 2,1

Cipher 3des

Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3$

MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160

EscapeChar ~

Tunnel no

TunnelDevice any:any

PermitLocalCommand no

VisualHostKey no

ProxyCommand ssh -q -W %h:%p gateway.example.com

SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no

Subsystem sftp /usr/lib/openssh/sftp-server
[/code]

root@debian-server:~# ./copie_binaire /usr/bin/sftp /home/sftp ./copie_binaire: line 4: [!-e : commande introuvable ./copie_binaire: line 4: [!-e : commande introuvable ./copie_binaire: line 4: [!-e : commande introuvable ./copie_binaire: line 4: [!-e : commande introuvable ./copie_binaire: line 4: [!-e : commande introuvable ./copie_binaire: line 4: [!-e : commande introuvable
pourquoi donc ?(je suis verni décidément !!

Le présent tuto, celui de la première page car les autres, je ne sais pas s’il ont été ou non modifiés, doit être suivi À LA LETTRE
J’ai l’impression que tu chesse trop de lièvres à la fois.
Cantonne-toi à une chose et passe à une seconde qaund la première est résolue.

non mais kà je suis sur ce tuto bien concentré et je le suis à la lettre…

bon j’ai avancé malgré tout mais a ce niveau là… ça ne se connecte pas (port déclaré dans le pare-feu Windows, ouvert dans le routeur (pas avast, je ne trouve pas et apparamment il laisse les connexions en local fonctionner)

kri2sis@debian-server:~$ sftp -P 666 kri2sis@localhost ssh: connect to host localhost port 666: Connection refused Couldn't read packet: Connection reset by peer

[quote=“kri2sis”]kri2sis@debian-server:~$ sftp -P 666 kri2sis@localhost
ssh: connect to host localhost port 666: Connection refused
Couldn’t read packet: Connection reset by peer[/quote]
Tu te connectes à partir de ton serveur ?

non je me connecte avec le shell en ligne de commande sur mon ordi perso qui fait parti du réseau(Bitvise SFTP)
il faut que je me connecte autrement ?

Non mais comme j’ai vu ça, je me posais la quetion :

Si tu n’arrives toujours pas à te connecter :
tu as bien fait attention à ça :

--> Placer le setuid sur le rssh_chroot_helper (et vérifier après chaque mise à jour de rssh qu'il y est toujours): Code: #chmod u+s /usr/lib/rssh/rssh_chroot_helper

le shell est en relation avec le serveur oui…
il ne faut pas ?

Oui, bien sûr.

alors si comme je le pense rss_chroot_helper est un fichier, je ne le trouve pas

j’ai dans /home/sftp : 5 répertoires

  • dev : null
  • etc : passwd
  • lib : libbsd.so.0 ; libc.so.6 ; libdl.so.2 ; libncurses.so.5 ; libnss_files.so.2
  • lib64 : ld-linux-x86-64.so.2
  • usr : bin(dossier : sftp) ; lib(dossier : openssh(dossier : sftp-server) ; libedit.so.2)

mai spas le ficjier que tu me dis et je suis sûr d’avoir suivi correctement… je retente de le mettre

oki je viens de voir le truc :
il est en effet dans /usr/lib/rssh/rssh_chroot_helper mais pas dans /home/sftp/usr/lib/rssh/rssh_chroot_helper
il faut le mettre dedans ?

Il aurait dû être copié lors de l’installation de rssh dans le dossier chroot (avec le script copie_binaire).

Si tu galères trop avec rssh, il est tout à fait possible de faire un simple chroot. Openssh comprend cette fonction. Cela reste très sécurisé puisque seules les commande sftp peuvent être lancées par les utilisateurs, car tu leur donnes le shell /bin/false. Voir ici : dunespice.no-ip.org/Logiciel-lib … rveur.html (Ligne serveur sftp)

[quote=“thuban”]Il aurait dû être copié lors de l’installation de rssh dans le dossier chroot (avec le script copie_binaire).

Si tu galères trop avec rssh, il est tout à fait possible de faire un simple chroot. Openssh comprend cette fonction. Cela reste très sécurisé puisque seules les commande sftp peuvent être lancées par les utilisateurs, car tu leur donnes le shell /bin/false. Voir ici : dunespice.no-ip.org/Logiciel-lib … rveur.html (Ligne serveur sftp)[/quote]
merci à toi mais sincèrement j’ai peur de partir dans tous les sens encore une fois donc je désinstalle proprement et je réinstalle

merci

nota : juste un détail copie_binaire n’a pas d’exention à sa création ? (# touch copie_binaire ?)

[quote=“kri2sis”][quote=“thuban”]Il aurait dû être copié lors de l’installation de rssh dans le dossier chroot (avec le script copie_binaire).

Si tu galères trop avec rssh, il est tout à fait possible de faire un simple chroot. Openssh comprend cette fonction. Cela reste très sécurisé puisque seules les commande sftp peuvent être lancées par les utilisateurs, car tu leur donnes le shell /bin/false. Voir ici : dunespice.no-ip.org/Logiciel-lib … rveur.html (Ligne serveur sftp)[/quote]
merci à toi mais sincèrement j’ai peur de partir dans tous les sens encore une fois donc je désinstalle proprement et je réinstalle

merci

nota : juste un détail copie_binaire n’a pas d’exention à sa création ? (# touch copie_binaire ?)[/quote]
C’est mieux d’en mettre une effectivement. “.sh” indique qu’il s’agit d’un script shell. Mais si un fichier a les droits éxécutables, l’extension importe peu du moment que l’interpréteur (programme lisant le script) est présent sur le pc.

Si tu as fait ce qui suit, tu ne devrais pas avoir de problèmes :

[quote]2. Configuration de rssh

L’intérêt de rssh est de donner à chaque utilisateur du serveur un shell réduit. Dans notre cas, ce shell sera réduit à sftp, c’est à dire à ttes les commandes dispensées par sftp:
cd lcd chgrp chmod chown help get lls ln lmkdir lpwd ls lumask mkdir put exit quit rename rmdir rm symlink version !command ! ?

Le fichier de configuration est /etc/rssh.conf Remplaçons celui créé lors de l’installation:
Code:

mv /etc/rssh.conf /etc/rssh.conf.old

echo “logfacility = LOG_USER” > /etc/rssh.conf

echo “allowsftp” >> /etc/rssh.conf

echo “umask = 066” >> /etc/rssh.conf[/quote]

Le chemin /etc/rssh.conf n’est pas dans le /home de l’user’ mais à la racine de ton serveur

:violin: Heureux, qui comme Ulysse… :violin:

voilà une réinstall, et déjà le premier fichier ressemble a ce dont le tuto parle au début (certainement spécifier pour les novices qu’il faut updater juste apres l’install…)
bref, connexion établi avec kri2sis (test avec le shell et FZ .mais juste lui ; machin, gintoxic… ne peuvent se connecter (j’ai vu que le probleme était évoquer dans ce fil, mais je n’ai pas vu qu’il étai régler (ou alors je vais changer mes yeux…)
autre chose : rsyslog ne semble pas vouloir se mettre dans le chroot

root@debian-server:~# /etc/init.d/rsyslogd restart -su: /etc/init.d/rsyslogd: Aucun fichier ou dossier de ce type
et sous kri2sis et bien je vai sou je veut dans le serveur… je suis assez embeter par tout cela

help me please (j’étais trop content que ca marche :cry: )

root@debian-server:~# sftp -P 666 machin@localhost machin@localhost's password: Connection closed