Webistrano: Net::SSH::AuthenticationFailed error

Si vous avez une erreur Net::SSH::AuthenticationFailed avec Webistrano (ou Capistrano), vous êtes peut-être en présence du bug de Net::SSH que je vais vous présenter. Avant, vérifiez ces points-ci:

  • Le nom du serveur (et l’IP qui va derrière) est bon.
  • Le nom d’utilisateur est bon.
  • Vous pouvez vous connecter à votre serveur en utilisant ssh user@server.example.com en tant que l’utilisateur qui exécute Webistrano (ie la configuration runner) ou bien l’utilisateur qui lance le cap.

Si vous pouvez vous connecter au serveur avec une paire de clé (ou un mot de passe) depuis votre runner, vous pouvez essayer ce correctif. Sinon, cherchez ailleurs, ça n’est sûrement pas la solution de votre problème. En fait, le problème vient de la librairie Net::SSH de Ruby, qui n’arrive pas à se connecter si on ne lui passe pas l’option de configuration auth_methods.

Pour tester

Pour être sur que le correctif que je vous propose résoudra votre problème, nous allons tester le déploiement en utilisant le fichier CAP directement. En fait, c’est le fichier que Webistrano génère pour que Capistrano déploie votre application.
Ainsi, dans Webistrano, cliquez sur le stage de votre projet, puis Export CAP file. Copiez le contenu de ce fichier dans le répertoire de travail du runner de votre stage. Pour moi, le runner est webistrano, le fichier sera donc ici: /home/webistrano/tmp/test-webistrano.cap.

Ajoutez à votre fichier cap la ligne de configuration suivante, avec la section “TEMPLATE TASKS”.

Note: si vous utilisez une autre méthode d’authentification, changez donc le nom… Vous pourrez trouver une liste exhaustive dans la documentation de Net::SSH.

Ensuite, testez le déploiement avec Capistrano, qui est dans le répertoire des librairies de Webistrano. Dans mon exemple, (où la racine de Webistrano est /home/webistrano), je lance le déploiement comme ceci:

Pour résoudre

Continue reading Webistrano: Net::SSH::AuthenticationFailed error

facebooktwittergoogle_plusredditpinterestlinkedinmail

Tunnel HTTP sur SSH: Connexion sécurisée et non filtrée

Si vous utilisez une connexion Internet filtrée (qui ne laisse passer que les paquets HTTP par exemple) ou publique sur laquelle vous faites passer des données confidentielles, vous pouvez passer par un tunnel SSH, encapsulé dans un tunnel HTTP. Ainsi, les règles de filtrage ne s’appliquent pas à vos paquets HTTP – la connexion n’est donc plus bridée – et les données sont cryptées via le protocole SSH. Il y a donc une triple-encapsulation de vos paquets:

Paquet X -> SSH -> HTTP -> Serveur relais -> HTTP -> SSH -> Paquet X

Le seul prérequis est que vous devez avec un serveur relais hors de votre réseau sur lequel vous avez un compte SSH, et sur lequel est installé HTTPTunnel. Votre ordinateur client doit également avec HTTPTunnel d’installé.

Installation de HTTPTunnel

Sur Debian ou sous CentOS, le paquet httptunnel est disponible respectivement dans les dépôts stable et EPEL.

Note: installez httptunnel sur votre machine ainsi que la machine relais, comme décrite dans l’introduction.
Note: Sous CentOS, si l’utilitaire yum ne connait pas le paquet httptunnel, ajoutez le dépôt RPMForge avec la commande suivant:

Continue reading Tunnel HTTP sur SSH: Connexion sécurisée et non filtrée

facebooktwittergoogle_plusredditpinterestlinkedinmail

MyOnlineSSH: Version anglaise

La version anglaise de MyOnlineSSH est mise en ligne permettant à tous les anglophones de se connecter en SSH depuis leur navigateur Internet, éditée avec PHP-Gettext-Edit, un outils permettant la gestion extrêmement facile des fichiers de traduction d’une application Internet (dont la version 2, avec gestion de comptes utilisateurs ne devrait pas tarder).

facebooktwittergoogle_plusredditpinterestlinkedinmail

MyOnlineSSH: Connectez-vous en SSH depuis un simple navigateur Internet

Vous pouvez aussi voir la page du projet MyOnlineSSH.

MyOnlineSSH est un service permettant de se connecter à un serveur en SSH directement depuis votre navigateur. La configuration necessaire est très petite:

  • Un navigateur avec le JavaScript activé
  • Flash Player installé
  • Le port 80 ouvert

En effet, seul le port 80 suffit pour se connecter au SSH à l’aide de MyOnlineSSH comme vous pouvez le voir dans la page Aide de MyOnlineSSH.

Je vous invite donc à tester dès à présent MyOnlineSSH:

http://www.myonlinessh.com

D’ici peu, une traduction anglaise de MyOnlineSSH verra le jour pour nos amis anglophones.

facebooktwittergoogle_plusredditpinterestlinkedinmail

Utiliser une clé d’identification spécifique avec svn

Utiliser les clés d’identification publique/privée peut être très utile pour ne pas à avoir à spécifier le mot de passe de tel ou tel compte à chaque fois que l’on souhaite se connecter. Seulement, comme pour le système SVN d’OVH, les clés sont utilisées pour exécuter une commande, ici, “/usr/bin/svnserve”, ce qui permet en quelques sortes de transformer le tunnel SSH en une connexion SVN.

Le problème, c’est lorsque l’on a plusieurs clés sur un serveur/ordinateur et que l’on veux utiliser une clé spécifique pour la connexion SVN+SSH. Pour cela, il faut tout simplement modifier une variable système via”export” :

Continue reading Utiliser une clé d’identification spécifique avec svn

facebooktwittergoogle_plusredditpinterestlinkedinmail

Accès aux fichier par sftp en commandes

Attention: C’est article est uniquement dédié aux utilisateurs de distributions issues de Debian (ex: Ubuntu)

Celà ne vous est jamais arriver de vouloir avoir un dossier qui contient d’autrs dossiers/fichiers mais qui sont sur un/des serveur(s) distant ?

Je parle de mon expèrience : maintenant, au lieu d’utiliser un FTP (sécurité faible) avec un logiciel (pas pratique), j’ai un répertoire qui contient tous les dossiers de mon serveur – pour un sécurité renforcée, sftp se connecte au serveur par SSH. Comme ça, je fait un copier / coller vers un autre répertoire et c’est parti.
Encore mieux : je travaille directement sur les fichiers sur le serveur ! C’est-à-dire que quand je fait “enregistrer”, c’est directement sur le serveur. N’est-ce pas génial ?

Pour vous présenter la méthode de sftp (méthode qui se fait dans la console), je vous ai fait un PDF.

Cliquez-ici pour accèder au fichier PDF

A bientôt.

facebooktwittergoogle_plusredditpinterestlinkedinmail