Serveur sftp +rssh+chroot

Il manque le sticky bit au fichier /usr/lib/rssh/rssh_chroot_helper
EDIT: c’est le bit SetUID dont il s’agit
il faudrait faire un :

sudo chmod u+s /usr/lib/rssh/rssh_chroot_helper
ls -l /usr/lib/rssh/rssh_chroot_helper

C’est Ok pour les utilisateurs dans le fichier passwd du chroot.

Merci.


Tout ça pourrait très bien se résumer à ce simple manque de sticky bit sur le fichier
/usr/lib/rssh/rssh_chroot_helper
Si j’avais été plus “pro”, je m’en serais rendu compte en allant voir le fichier /var/log/messages

daniel@localhost:~$ ls -l /usr/lib/rssh/rssh_chroot_helper
-rwsr-xr-x 1 root root 30760 nov 27  2012 /usr/lib/rssh/rssh_chroot_helper

Ok !

On retente la connexion pour voir ?

sftp -v -P 666 jessie@localhost

merci beaucoup ça fonctionne :041 :023 :smiley: :038

Super!!!

Ce que j’aurais du faire pour me rendre compte du problème et qui nous aurait fait gagner du temps. Mais bon.

sudo cat /var/log/messages | grep rssh_chroot_helper

Tu utilises la connexion par clefs ou par mot de passe :question:
Car dans le sshd_config que tu donnes, c’est les clefs qui sont acceptée :

PubkeyAuthentication yes

et les mot de passe commentés

#PasswordAuthentication yes

par mot de passe(pour l’instant)
qu’est-ce que ça change?
est-ce important?
si oui comment corrigé svp?

Et tu arrives à te connecter par mot de passe avec ces deux lignes telles qu’elles sont ? :017

euh… oui :017

edit : attends je vérifie

:023 je confirme :023

daniel@localhost:~$ sftp -P 666 jessie@localhost
jessie@localhost's password: 
Connected to localhost.
sftp>

une petite explication pcq là je me demande si je rêve pas, lol
non mais sans rire ce n’est pas supposé ou quoi???

Non, c’est une interrogation car, en principe, il est préférable de mettre la ligne sue le mot de passe en clair, c’est à dire sans être commentée. Cela dit, il est vrai que le contraire n’est pas précisé :
PasswordAuthentication no
Donc, laisse comme ça mais si tu as un problème lors de tentatives de connexions “externes” (pas localhost), essaie de décommenter cette ligne.

As-tu essayé de te connecter en externe :question:

2. en réseau
sur wheezy, squeeze:
Code:
$ sftp -P 666 machin@IP_de_votre_serveur

sur lenny:
Code:
$ sftp -oPort=666 machin@IP_de_votre_serveur

oui ça fonctionne la preuve :

Commande :	open "jessie@192.168.1.5" 666
Commande :	Approbation de la nouvelle clé de l'hôte : Oui
Commande :	Pass: ************
Statut :	Connected to 192.168.1.5
Statut :	Récupération du contenu du dossier...
Commande :	pwd
Réponse :	Current directory is: "/"
Commande :	ls
Statut :	Listing directory /
Statut :	Calcul du décalage horaire du serveur...
Commande :	mtime "lib"
Réponse :	1376849191
Statut :	Décalage du fuseau horaire : Serveur : 0 secondes, Local : -14400 secondes. Différence : -14400 secondes.
Statut :	Contenu du dossier affiché avec succès

Ça c’est de la connexion en interne : 192.168.1.5
Il faut que tu essaies de te connecter avec ton IP publique : 66.171.xx.yy
Et ça yu ne peux le faire que d’une autre IP.
Soit tu vas chez un ami et tu essaies de te connecter, soit sur le parking de Macdo ou autre qui offre le wifi, soit en te connectant en Freewifi si tu es chez eux ou équivalent chez un autre FAI. N’importe où sauf à partir de l’IP 66.171.xx.yy
Ou alors tu ouvres une “porte” à quelqu’un de confiance pour qu’il teste.
Pas moi car je n’ai pas le temps en ce moment. De plus, savoir si je suis de confiance ??? :smiling_imp:

Bonjoir !

Tout d’abord désolé du déterrage de topic !
Mais je suis en train de suivre moi aussi ce tuto de création d’un server SFTP, et je suis également confronté à un problème avec le script copie_binaire… :

!/bin/bashinstall -D $1 $2$1 for i in `ldd $1 | grep -o '/[^[:space:]]*'`; do      if [ ! -e $2$i ]; then install -D $i $2$i; fi

done

Je n’arrive pas à installer ce satané script ! Ça me retourne des

!/bin/bash: event not found

ou

!/bin/bashinstall: event not found

ou

install: opérande de fichier manquant

ou

erreur de syntaxe près du symbole inattendu « | »

Je suis un noob certes, mais au point de ne pas réussir à faire un copier-coller j’ai mal à mon estime. ^^
Je suis tout seul à galérer ?

Merci beaucoup de votre aide !
Pudding

Bonjour,

La syntaxe du wiki n’est pas bonne, ils ont dû cafouiller. Bref, essaies comme ça :

#!/bin/bash
install -D $1 $2$1
for i in `ldd $1 | grep -o '/[^[:space:]]*'`; do 
       if [ ! -e $2$i ]; then install -D $i $2$i; fi
done

Bonjour @sk4hrr,

Merci de ta réponse. Donc il y a bien une pouille dans la cottage , ok !
Je n’ai pas vraiment de mieux avec ce que tu m’a donné. On est d’accord que je suis censé pouvoir coller tout ça d’un coup dans le terminal ? D’ailleurs si je ne prends pas tout les “for” “if” et “do” n’ont plus de sens.

Voilà ce que j’obtient :

pi@raspberrypi:~ $ #!/bin/bash
pi@raspberrypi:~ $ install -D $1 $2$1
install: opérande de fichier manquant
Saisissez « install --help » pour plus d'informations.
pi@raspberrypi:~ $ for i in `ldd $1 | grep -o '/[^[:space:]]*'`; do 
        if [ ! -e $2$i ]; then install -D $i $2$i; fi
done
ldd: arguments de fichier manquants
Pour en savoir davantage, faites : `ldd --help'.

Je suis censé remplacer $1 et $2 par les chemins de fichier source et cible ?
C’est le ficher /usr/bin/sftp qu’on veut copier avec ses dépendances ? Dans /home/sftp ?

Pudding

Mouarf non, il s’agit d’un script, donc il faut créer un fichier :

nano copie_binaire

Tu colles tout dedans et après tu peux reprendre à cette instruction (dans la doc’) :

# chmod a+x ./copie_binaire

Ah voilà ! Je savais bien qu’il me manquait une case une info !

Merci ça marche bien mieux.
Problème résolu !

Bonjour

Je viens de modifier la présentation des lignes de commandes de la page du wiki concerné,
et de quelques messages dans ce fil de discussion.

1 J'aime