1 (edited by cemoi 2009-05-21 09:44:03)

Topic: [ok]utilisation de winscp avec mysecureshell

Bonjour, je voudrai utiliser mysecureshell avec le client winscp qui est multi-plateforme et qui permet pas mal de choses sympathique.

Tout marche enfin presque... ;-) je m'explique:

winscp permet de faire de la synchronisation entre une arborescence local et une arborescence distante ou inversement. Il permet également d'ouvrir un document distant de l'éditer à partir de sa machine et il sera mis à jour en temps réel sur le serveur.
Exemple: j'ouvre openoffice.odt pour l'éditer à travers winscp je change quelques lignes je l'enregistre et je le ferme >> le document est déjà à jour sur le serveur. Pour le fonctionnement exact winscp charge le fichier en cache dans ../temp/winscp (un truc du genre) et met à jour à temps réel sur le serveur c'est à dire à chaque enregistrement de votre document.

Cela est tres pratique ça remplace tres bien le webdav et ça a beaucoup plus d'avantages que le webdav vu que ça passe par un serveur ssh que ce sont de vrai user unix que le client (winscp) tourne sur win/linux/macosx etc...

Bon malheureusement cette particularité ne marche pas avec mysecureshell il doit falloir donner plus de droits ... j'ai testé avec un utilisateur de openssh en pasant par bash sans reestrictions et cela marche très bien.

Pour le reste tout fonctionne: création/surpression de répertoire synchronisation entre le local et le distant ou inversement, navigation dans l'arbo de l'utilisateur.

Dans le sftp_config j'ai mis 2 connections possible par user car je me demande si winscp ne fait pas plusieurs connexions...

Quand j'enregistre le fichier modifié winscp me dit: Impossible d'initialiser le protocole SFTP. SFTP fonctionne-t-il sur le serveur ?
Question idiote vu que je suis déjà connecté...



Mon /etc/ssh/sftp_config  >>



## MySecureShell Configuration File ##

#Default rules for everybody

<Default>

        GlobalDownload          50k     #total speed download for all clients

                                        # o -> bytes   k -> kilo bytes   m -> mega bytes

        GlobalUpload            0       #total speed download for all clients (0 for unlimited)

        Download                5k      #limit speed download for each connection

        Upload                  0       #unlimit speed upload for each connection

        StayAtHome              true    #limit client to his home

        VirtualChroot           true    #fake a chroot to the home account

        LimitConnection         10      #max connection for the server sftp

        LimitConnectionByUser   1       #max connection for the account

        LimitConnectionByIP     2       #max connection by ip for the account

        Home                    /home/$USER     #overrite home of the user but if you want you can use

                                                #       environment variable (ie: Home /home/$USER)

        IdleTimeOut             300     #(in second) deconnect client is idle too long time

        ResolveIP               true    #resolve ip to dns

#       IgnoreHidden            true    #treat all hidden files as if they don't exist

#       DirFakeUser             true    #Hide real file/directory owner (just change displayed permissions)

#       DirFakeGroup            true    #Hide real file/directory group (just change displayed permissions)

#       DirFakeMode             0400    #Hide real file/directory rights (just change displayed permissions)

                                        #Add execution right for directory if read right is set

#       HideFiles               "^(lost\+found|public_html)$"   #Hide file/directory which match

                                                                #this extented POSIX regex

        HideNoAccess            true    #Hide file/directory which user has no access

#       MaxOpenFilesForUser     20      #limit user to open x files on same time

#       MaxWriteFilesForUser    10      #limit user to x upload on same time

#       MaxReadFilesForUser     10      #limit user to x download on same time

        DefaultRights           0640 0750       #Set default rights for new file and new directory

#       MinimumRights           0400 0700       #Set minimum rights for files and dirs



#       PathDenyFilter          "^\."   #deny upload of directory/file which match this extented POSIX regex



        ShowLinksAsLinks        false   #show links as their destinations

#       ConnectionMaxLife       1d      #limits connection lifetime to 1 day



        Charset                 "ISO-8859-15"   #set charset of computer

#       GMTTime                 +1      #set GMT Time (change if necessary)

</Default>


<Default>

</Default>



<User mathieu>

Home /var/www/explorateur/mathieu

Download 100k

Upload 100k

StayAtHome true

VirtualChroot true

LimitConnection 2

LimitConnectionByIP 2

</User>

Une petite verification de la validité de tout ça fait en connexion ssh standard (openssh)>>>


vinci@bois:/$  MySecureShell -v -v --configtest

--- vinci ---

GlobalDownload        = 51200 bytes/s

GlobalUpload          = 0 bytes/s

Download              = 5120 bytes/s

Upload                = 0 bytes/s

StayAtHome            = true

VirtualChroot         = true

LimitConnection       = 10

LimitConnectionByUser = 1

LimitConnectionByIP   = 2

Home                  = /home/vinci

Shell                 = (null)

ResolveIP             = true

IdleTimeOut           = 300

IgnoreHidden          = false

DirFakeUser           = false

DirFakeGroup          = false

DirFakeMode           = {default}

HideFiles             = {nothing}

HideNoAccess          = true

ByPassGlobalDownload  = false

ByPassGlobalUpload    = false

MaxOpenFilesForUser   = 0

MaxReadFilesForUser   = 0

MaxWriteFilesForUser  = 0

ShowLinksAsLinks      = false

PathDenyFilter        = (null)

SftpProtocol          = {default}

LogFile               = {default}

ConnectionMaxLife     = 0s

DisableAccount        = false

IsAdmin               = false

IsSimpleAdmin         = false

Charset               = ISO-8859-15

GMTTime               = {nothing}

CanRemoveDir          = false

CanRemoveFile         = false

ExpireDate            = {nothing}

MinimumRights         = 0000 0000

DefaultRights         = 0640 0750

Config is valid.

pour info tout cela pointe sur un repertoire que apache peux lire et j'y ai mis un script php permettant d'avoir l'arborescence sur une page html avec aperçu des images blablabla.
Le script php pour ceux que ça interesserai http://www.jbc-explorer.info/?action=news


Voila je capte pas bien comment donner un peu plus de droit pour que cela marche... si le probléme vient de là.

merci pour votre aide précieuse!

1 serveur dédié sous debian Lenny avec virtualisation sous openvz >>  carte via epia avec cpu c3 800mhz 1go de ddr2 et un dd en ide 160go. Ligne adsl perso 18mo/1mo et 1 serveur dédié sous debian Lenny carte asus cpu celeron 533 512 sdram et un dd de 100go raid1 en LVM. ligne sdsl 4mo (renater)             Have fun! ;)

Re: [ok]utilisation de winscp avec mysecureshell

Bonsoir,

Tout d'abord il est possible de faire un

sftp-verif

pour voir si MySecureShell est bien configuré.

Après si cela ne fonctionne toujours pas alors il faut aller voir dans le fichier de log /var/log/sftp-serveur.log (fichier par défaut).

Sinon par rapport au fonctionnement de WinSCP, je ne sais pas s'il ne se connecte pas plusieurs fois quand on synchronise un fichier donc je propose d'augmenter le tag LimitConnectionByUser à 2 smile

Après on verra si ca ne marche toujours pas

Re: [ok]utilisation de winscp avec mysecureshell

Salut! Tout d'abord merci pour ta réponse si rapide!

Bien j'ai omis la vérification de config je l'avais déja faite je l'ai refaite pour etre bien sur de mon coup:

sftp-verif
#################################################
#    MySecureShell Verification Tool        #
#################################################


** Verifing file existance **

Verifing file existance of /bin/MySecureShell            [ OK ]
Verifing file existance of /usr/bin/sftp-who            [ OK ]
Verifing file existance of /usr/bin/sftp-kill            [ OK ]
Verifing file existance of /usr/bin/sftp-state            [ OK ]
Verifing file existance of /usr/bin/sftp-admin            [ OK ]
Verifing file existance of /usr/bin/sftp-verif            [ OK ]
Verifing file existance of /usr/bin/sftp-user            [ OK ]
Verifing file existance of /etc/ssh/sftp_config            [ OK ]

** Verifing rights **

Verifing file rights of /etc/ssh/sftp_config            [ OK ]
Verifing file rights of /usr/bin/sftp-who            [ OK ]
Verifing file rights of /usr/bin/sftp-verif            [ OK ]
Verifing file rights of /usr/bin/sftp-user            [ OK ]
Verifing file rights of /usr/bin/sftp-kill            [ OK ]
Verifing file rights of /usr/bin/sftp-state            [ OK ]
Verifing file rights of /usr/bin/sftp-admin            [ OK ]
Verifing file rights of /bin/MySecureShell            [ OK ]


** Verifing rotation logs **

MySecureShell rotation logs                    [ OK ]


** Verifing server status **

Verifing server status (ONLINE)                    [ OK ]


** Verifing server dependencies **
Show only error(s):


** All tests dones **

Donc tout est ok apres j'ai passé à 4 le nombre de connections dans le /etc/ssh/sftp_config

Du coté des log il n'y a rien de particulié:

2008-11-11 19:37:05 [32:40:1m[10246]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-11 19:42:09 [32:40:1m[10246][mathieu][AMontpellier-258-1-111-79.w90]Connection time out[37:40:0m
2008-11-11 19:42:09 [32:40:1m[10246][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m
2008-11-11 19:55:12 [32:40:1m[11265]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-11 19:56:12 [32:40:1m[11265][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m
2008-11-12 15:37:23 [32:40:1m[6112]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-12 15:37:32 [34:40:1m[6112][mathieu][AMontpellier-258-1-111-79.w90]Download file '/03typescript'[37:40:0m
2008-11-12 15:37:49 [34:40:1m[6112][mathieu][AMontpellier-258-1-111-79.w90]Download file '/officiel/Suivi CAP BEP/bep m?tiers bois.xls'[37:40:0m
2008-11-12 15:42:54 [32:40:1m[6112][mathieu][AMontpellier-258-1-111-79.w90]Connection time out[37:40:0m
2008-11-12 15:42:54 [32:40:1m[6112][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m
2008-11-12 18:35:31 [32:40:1m[15195]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-12 17:36:03 [31:40:1m[15195][mathieu][AMontpellier-258-1-111-79.w90]Try to create directory '/nouveau dossier' : success[37:40:0m
2008-11-12 17:36:08 [31:40:1m[15195][mathieu][AMontpellier-258-1-111-79.w90]Try to rename '/nouveau dossier' -> '/test' : success[37:40:0m
2008-11-12 17:36:29 [34:40:1m[15195][mathieu][AMontpellier-258-1-111-79.w90]Upload into file '/test/kernel_boot_openvz.JPG'[37:40:0m
2008-11-12 17:38:47 [32:40:1m[15195][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m
2008-11-12 18:38:58 [32:40:1m[15211]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-12 18:39:11 [32:40:1m[15211][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m
2008-11-12 18:40:00 [32:40:1m[15223]New client [mathieu] from [AMontpellier-258-1-111-79.w90][37:40:0m
2008-11-12 17:40:21 [31:40:1m[15223][mathieu][AMontpellier-258-1-111-79.w90]Try to remove directory '/test' : Directory not empty[37:40:0m
2008-11-12 17:40:22 [31:40:1m[15223][mathieu][AMontpellier-258-1-111-79.w90]Try to remove file '/test/kernel_boot_openvz.JPG' : success[37:40:0m
2008-11-12 17:40:22 [31:40:1m[15223][mathieu][AMontpellier-258-1-111-79.w90]Try to remove directory '/test' : success[37:40:0m
2008-11-12 17:45:26 [32:40:1m[15223][mathieu][AMontpellier-258-1-111-79.w90]Connection time out[37:40:0m
2008-11-12 17:45:26 [32:40:1m[15223][mathieu][AMontpellier-258-1-111-79.w90]Quit.[37:40:0m

Mon problème a été réglé mais pour info à 2 connexions silmultané ça ne passe pas... o_O Autre détail il faut "éviter d'oublier" le sftp-state fullstop && sftp-state start pour prendre en compte la nouvelle config...

Merci de ton aide précieuse pour mon petit problème... le client winscp couplé avec mysecureshell est trés pratique c'est toujours bon à savoir wink

1 serveur dédié sous debian Lenny avec virtualisation sous openvz >>  carte via epia avec cpu c3 800mhz 1go de ddr2 et un dd en ide 160go. Ligne adsl perso 18mo/1mo et 1 serveur dédié sous debian Lenny carte asus cpu celeron 533 512 sdram et un dd de 100go raid1 en LVM. ligne sdsl 4mo (renater)             Have fun! ;)