Archives par mot-clé : ssh

Cygwin, SSH Agent et un peu de Git

Publié dans Geekeries | Laisser un commentaire

Cet article est une traduction (assez libre et agrémentée) de SSH Agent on Cygwin via kill the radio. Une autre resource pas mal sur le même sujet est disponible sur : Problem with ssh-add / ssh-agent under cygwin.

Il existe sûrement des dizaines de tutoriels sur l’art et la manière de démarrer un SSH Agent sur Cygwin, mais voilà qui peut toujours service !
Si jamais l’erreur suivante apparaît lorsque vous utiliser la commande ssh-add :

Could not open a connection to your authentication agent.

Cela signifie que vous n’avez pas de gestionnaire de clés SSH de démarré. Visiblement, il ne sert à rien de lancer le Pageant de Putty, il va donc falloir gérer tout ça directement dans Cygwin.
Continuer la lecture

Comment configurer le HOME de Cygwin et plus

Publié dans Geekeries | Un commentaire

Je ne vais pas entrer dans les détails de la configuration de Cygwin, mais simplement quelques points pour savoir comment paramétrer le dossier utilisateur à utiliser. Pour cela, il faut configurer la variable d’environnement HOME:

  • D’abord dans Windows: HOME=/cygdrive/c/Users/%USERNAME%. Cela aura pour effet de placer votre home dans votre dossier utilisateur Windows C:/Users/%USERNAME%.
  • Et si besoin de l’ajouter aussi dans le fichier /etc/passwd là où il y a votre nom d’utilisateur.

Continuer la lecture

Fichier de configuration SSH

Publié dans Geekeries | Laisser un commentaire

SSH est tout de même un protocole vraiment formidable pour accéder à un serveur distant. Une petite ligne de commande, un mot de passe (et/ou une clef publique) et hop, c’est comme si on était sur la machine qui se situe parfois à je ne sais quelle distance de nous, le tout sécurisé ! Que demander de plus ?
Cela dit, si vous êtes comme moi, vous en avez peut-être légèrement marre de taper la ligne de commande de connexion :
ssh username@monhostquiestparfoisuneadresseIPcompliquee
Ou pire s’il faut préciser une clef DSA ou RSA :
ssh -i cheminversmaclefengeneralpastrescourt/maclef username@monhostquiestparfoisuneadresseIPcompliquee
Continuer la lecture

Ainsi cron cron cron, les petites marionnettes

Publié dans Geekeries | Laisser un commentaire

ça cron ?
Voilà 3 mois que j’ai écris un billet intitulé avec autant de mauvais goût que celui que vous êtes en train de lire : ça cron ! Mise à part leur entrée en matière un peu capillotractée, ces 2 billets abordent le même sujet : les crons.
Cron, c’est un système sous Linux qui permet de déclencher un événement à intervalle régulier. Par exemple on peut exécuter tous les jours un script PHP qui nettoie une base de données, ou une ligne de commande Shell qui ouvre un lecteur audio et joue un titre au hasard. Bref, c’est un outils permettant de faire pas mal de choses intéressantes et qui font un peu rêver. Comme je l’expliquais précédemment, j’ai trouvé mon bonheur pour apprendre à utiliser cron sur le site Code18 : Installer un cronjob, mais à l’époque, je n’avais pas eu le temps de tester. Aujourd’hui, c’est chose faites ! Ce petit billet a donc pour but de retracer les grands étapes d’utilisation d’un cron.

Ce dont on a besoin

Tout simplement : un serveur accessible en ligne de commande sur lequel cron est installé.
Pour vérifier si cron est utilisable, il faut utiliser la ligne de commande qui liste les événements programmés :

crontab -l

Si cron est utilisable la liste des événements programmés s’affichera, ou s’il n’y en a pas, un message du style : no crontab for ******.

Dans le cas contraire : -bash: /usr/bin/crontab: Permission denied ou -bash: crontab: command not found.

Pour tout cela, il faut bien sûr se connecter auparavant au serveur en SSH :

ssh user@serveur

Ajouter ou modifier un événement

Il faut utiliser la ligne de commande :

crontab -e

Celle-ci ouvrira le fichier crontab (contenant les événements programmés) sous l’éditeur par défaut, vim par exemple.
Continuer la lecture

Envoyer un email en ligne de commandes

Publié dans Geekeries | Laisser un commentaire

Parmi les petites choses inutiles que j’ai appris aujourd’hui (suite à un cours de réseaux), j’ai notamment découvert comment envoyer un e-mail en ligne de commandes. Voici les étapes à suivre. A noter que le serveur renvoie 250 OK quand la commande a réussi.

Se connecter à un serveur telnet

D’après ma compréhension actuel, il faut se connecter sur un serveur telnet pour envoyer un e-mail. Donc est justement ce serveur. Mais y a surement moyen de faire autrement.

telnet <hote> 25

Serveur d’envoi, émetteur et récepteur

correspond tout simplement au domaine qui envoie l’email. Donc pour l’adresse test@testons.fr, c’est testons.fr. Il ne reste plus qu’à préciser l’e-mail de l’expéditeur (qui peut être n’importe quoi), et l’e-mail du récepteur (pour le coup, vaut mieux que ce soit la bonne adresse).

helo <domaine> mail From:<email-emetteur> rcpt To:<email-recepteur>

Contenu de l’e-mail

Il suffit de taper :

data

Le sendMail vous laisse alors le champ libre pour écrire ce que vous voulez. Commençons par l’entête de l’e-mail, en voici un exemple minimaliste.

From: email-emetteur
To: email-destinataire
Date: date de création du message

Il est à noter que l’on peut écrire n’importe quoi comme informations. Elles seront affichés à l’utilisateur, mais cela ne veut pas dire que ces informations sont justes. Mais il est possible de préciser d’autres choses :

Subject: Votre sujet
From: email-emetteur
Reply-To: email à utiliser pour la réponse
Date: date du message
Mime-Version: 1.0
To: email-destinataire
Cc: email-destinataire en copie carbonne

Il y a d’autres choses que je n’ai pas compris :

Received: information sur le chemin suivi
Message-Id: numero@domaine
X-Phone: message_Id
X-Mailer: ?

Bref, laissez une ligne vide et commencez à écrire votre message. Il vous faudra terminer par un point.


J'écris mon message, je suis content !
Super content !
.

Quitter la connexion

Rien de plus simple :

quit

Résumons

Avec tout ça, on peut envoyer un e-mail en ligne de commandes à un utilisateur en utilisant les caractères que l’on veut (sauf dans le sujet) et en précisant ce qu’on veut pour l’émetteur et le serveur d’envoi. Bref, c’est assez fun et ça marche vraiment bien. Reste donc à trouver une parade aux 2 limitations citées plus haut.