Aller au contenu

Utiliser Rsync


jlbn

Messages recommandés

  • Réponses 70
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Une solution pour le mail en utilisant un script perl de mon cru (nécessite d'avoir installé le package perl)

A lire à partir d'ici:

Bonjour CoolRaoul, j'ai une fois de plus encore besoins de tes lumières.

J'essaye d'utiliser ton script perl mais sans succès.

Deux questions :

  • pour le serveur smtp, je ne vois nulle part la possibilité de rentrer un login et mot de passe, j'avoue que ça me surprend et je ne vois donc pas comment utiliser mon smtp gmail.
  • il me semble qu'il y a dans ton script la possibilité d'utiliser un fichier comme corps du message, peux-tu me dire comment on l'utilise ? du coup ça doit faire doublon avec le début du code "corps du message" ?

echo "corps du message" | /usr/local/bin/my_sendmail -s "<sujet du mail>" -f "<addresse email expéditeur>" -m <serveur smtp> <addresse destinataire>

merci d'avance

Lien vers le commentaire
Partager sur d’autres sites

  • pour le serveur smtp, je ne vois nulle part la possibilité de rentrer un login et mot de passe, j'avoue que ça me surprend et je ne vois donc pas comment utiliser mon smtp gmail.
Mon script n'intègre pas le support du SMTP authentifié, mais il suffit d'utiliser le FTP de ton FAI qui acceptera les connexions sans mot de passe (faudra peut-être renseigner le "From" ou le "To:" avec un email du domaine correspondant pour ne pas se prendre un bounce).

  • il me semble qu'il y a dans ton script la possibilité d'utiliser un fichier comme corps du message, peux-tu me dire comment on l'utilise ? du coup ça doit faire doublon avec le début du code "corps du message" ?

Non. Il est exact que le corps de la partie textuelle du message est lue via l'entrée standard. ce n'est qu'en plus et optionnellement qu'on peut spécifier en argument des fichiers qui seront ajoutés au messages comme pièces jointes, encodés en Base64.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Re CoolRaoul,

j'ai beau faire des essais, l'envoi de mail passe pas.

J'ai un hebergement chez ovh, et j'ai donc mis :

echo "corps du message" | /usr/local/bin/my_sendmail -s "Sujet" -f "postmaster@mondomaine.com" -m ns0.ovh.net prenom.nom@mondomaine.com

dans le dossier my_sendmail, j'ai placé le script my_sendmail.sh et donc en smtp j'ai renseigné le smtp standard d'ovh

qu'est-ce que je fais de mal ?

Lien vers le commentaire
Partager sur d’autres sites

mon FAI c'est ovh egalement, et je ne vois pas comment le configurer.

As-tu configuré un client mail PC pour utiliser le mail OVH en envoi?

C'est le même nom de serveur smtp qu'il faut utiliser.

Sinon, je ne sais plus quoi dire, faut demander sur les forums OVH quel est le serveur smtp à utiliser.

PS: quand tu dis que l'envoi de mail ne passe pas, est-ce que le script fait une erreur ou bien tu recois un "bounce" ?

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Je viens de vérifier encore, pour moi avec -m smtp.free.fr ç'est OK

Tu peux faire un test en ligne de commande comme ci dessous pour voir ce qui coince (tu tapes exactement ce que j'ai misen terminant par <return< "." <return>

telnet ns0.ovh.net smtp
EHLO localhost.localdomain
MAIL FROM:<postmaster@mondomaine.com>
RCPT TO:<prenom.nom@mondomaine.com>
DATA
From: postmaster@mondomaine.com
To: prenom.nom@mondomaine.com

essai

.

***EDIT***

J'ai trouvé ceci:

Pour envoyer vos emails depuis votre logiciel de messagerie, vous
devez configurer le serveur sortant SMTP avec les paramètres suivants :

Serveur sortant SMTP : smtp.dsl.ovh.net

Aucune identification requise

(http://forum.ovh.com/showthread.php?67837-Offre-ADSL-b%E9ta-et-serveurs-smtp&p=419688&viewfull=1#post419688)

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

DiskStation> telnet smtp.dsl.ovh.net smtp

220 20.mail-out.ovh.net ESMTP
EHLO localhost.localdomain
250-20.mail-out.ovh.net
250-PIPELINING
250-8BITMIME
250 SIZE 110000000
MAIL FROM:<monadressemail>
250 ok
RCPT TO:<monadressemail>
250 ok
DATA
354 go ahead
From: monadressemail
To: monadressemail
essai

@CoolRaoul
Le résultat des commandes que tu m'as demandé, même si je n'ai pas réussi la fin, le smtp semble me laisser passer, je soupçonne donc plutôt une mauvaise manip au niveau de l'installation du script, doit-il avoir un nom particulier dans le dossier my_sendmail ?
J'ai sinon installé le paquet perl de synology donc de ce côté là ça doit être bon.
Lien vers le commentaire
Partager sur d’autres sites

Le résultat des commandes que tu m'as demandé, même si je n'ai pas réussi la fin, le smtp semble me laisser passer,

Tant que tu n'aura pas réussi la fin (terminer par <entrée> "." <entrée>, rajoute un <entrée> de plus pour faire bonne mesure) on ne pourra rien conclure: l'objectif est de vérifier si tu reçois ou pas le mail avec ce test.

Ensuite on saura si il faut incriminer le script (mais j'en doute) ou quelque chose du coté OVH

Pense à tester aussi avec "smtp.dsl.ovh.net"

Lien vers le commentaire
Partager sur d’autres sites

Re bonjour,
ci dessous, le résultat du test sur le smtp dsl, je n'arrive toujours pas à sortir une fois la dernière ligne reçu "250 ok" et je ne reçois par ailleurs pas le mail. J'ai donc quitter en fermant putty directement.
Par contre, j'ai configuré sur ma messagerie ce smtp sans authentification, et effectivement j'arrive à envoyer des mails.
concernant l'autre smtp, je joins le rapport mais je ne pense pas que ce soit le bon smtp à utiliser dans la mesure où il faut une authentification sur celui là
il me semble donc que c'est bien un probleme au niveau de l'utilisation du script ou de son installation, je ne doute pas que celui-ci fonctionne parfaitement lorsqu'il est correctement utilisé.
Je remet donc ce que j'ai installé :
  • installation du package perl
  • creation du dossire my_sendmail dans usr/local/bin
  • un coup de chmod +x sur le dossier
  • copier/coller de ton script dans un fichier script.sh en prenant garde du retour chariot unix
  • copie du fichier script.sh dans le dossier my_sendmail
  • appel dans mon script de la commande donnée :
    • echo "corps du message" | /usr/local/bin/my_sendmail -s "Sujet" -f "postmaster@mondomaine.com" -m ns0.ovh.net prenom.nom@mondomaine.com

Quand je lance mon script, pas de mail dans la boite, pas de message d'erreur, rien...

j'y comprends rien :(

merci de ton aide et de ta patience

DiskStation> telnet smtp.dsl.ovh.net smtp

220 23.mail-out.ovh.net ESMTP
EHLO localhost.localdomain
250-23.mail-out.ovh.net
250-PIPELINING
250-8BITMIME
250 SIZE 110000000
MAIL FROM:<xxxx@aaaa.fr>
250 ok
RCPT TO:<xxxx@aaaa.fr>
250 ok
DATA
354 go ahead
From: xxxx@aaaa.fr
To: xxxx@aaaa.fr
essai
.
250 ok 1393753455 qp 15197

DiskStation> telnet ns0.ovh.net smtp

220 ns0.ovh.net ssl0.ovh.net. You connect to mail632.ha.ovh.net ESMTP
EHLO localhost.localdomain
250-ns0.ovh.net ssl0.ovh.net. You connect to mail632.ha.ovh.net
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-PIPELINING
250-8BITMIME
250 SIZE 109000000
MAIL FROM:<xxx@aaaa.fr>
250 ok
RCPT TO:<xxxx@aaaa>
553 sorry, that domain isn't allowed to be relayed thru this MTA (#5.7.1) (mail632.ha.ovh.net, smtpauth: no)
Connection closed by foreign host

Modifié par jlbn
Lien vers le commentaire
Partager sur d’autres sites

Pour compléter lorsque je lançe un script comme celui-ci :

#!/bin/sh

PATH=/bin:/usr/bin:/usr/syno/bin
[ -t 0 ] || exec >/volume1/Backup/rsync/log/monscript.log 2>&1
#Envoi d'un mail
echo "corps du message" | /usr/local/bin/my_sendmail -s "sujet du mail" -f "xxxx@aaaa.fr" -m smtp.dsl.ovh.net xxxx@aaaa.fr

j'ai message dans le log :

/volume1/Backup/rsync/script_distant_avance2.sh: line 6: /usr/local/bin/my_sendmail: Permission denied

les droits du dossier et du fichier script sont en 0755

Lien vers le commentaire
Partager sur d’autres sites

  • creation du dossire my_sendmail dans usr/local/bin
  • un coup de chmod +x sur le dossier
  • copier/coller de ton script dans un fichier script.sh en prenant garde du retour chariot unix
  • copie du fichier script.sh dans le dossier my_sendmail

Pourquoi avoir créé un *dossier* my_sendmail???

C'est un *fichier* qu'il te faut, "/usr/local/bin/my_sendmail" doit être un fichier (exécutable) contenant le texte de mon script.

Autre chose, le message:

250 ok 1393753455 qp 15197

indique que le mail à bien été accepté. Reste à savoir ce que le routeur de mail OVH en a fait.

Maintenant, je t'engage à contacter le support OVH pour qu'ils t'indiquent explicitement quel smtp il faut utiliser, quelles sont les restrictions sur les domaines des champs From" et/ou "To".

NB: tous les problèmes rencontrés serait du même ordre en ayant utilisé la commande "sendmail" native (à la mauvaise gestion des erreurs par mon script prés). Il est d'ailleurs possible qu'installer le package officiel "Mail Server" (même sans le démarrer) apporte la commande sendmail standard (à vérifier toutefois)

Pour terminer, et ou çà ou cela s'avère nécessaire (suivant ce que te conseille le support OVH), j'ai fait une nouvelle version du script qui permet de paramétrer le contenu de la chaine "HELLO" du dialogue SMTP.

Tu la retrouveras ici. Ca se spécifie par le switch "-h"

Lien vers le commentaire
Partager sur d’autres sites

Bon je conclu,

Encore une dernière fois, un grand merci à CoolRaoul pour son aide depuis le début de ce sujet.

Après moult essais, tâtonnements, et erreurs de ma part, j'ai finalement un script rsync totalement fonctionnel, incluant le script perl de CoolRaoul pour l'envoi de mail.

Même si des scripts existaient par ailleurs, je voulais comprendre et faire quelque chose de plus simple que ce que je voyais.

jlbn

Modifié par jlbn
Lien vers le commentaire
Partager sur d’autres sites

Salut,

Je me suis inspiré de ce post pour régler mes problèmes de backup sous rsync, un grand merci à jlbn et à CoolRaoul.

Petite question concernant my_sendmail, je souhaite envoyer mes mails via le serveur SMTP de gmail mais il requiert une authentification, c'est possible avec ton script ou pas ?

Si ce n'est pas le cas, comment pourrais-je m'y prendre ?

Merci !

Lien vers le commentaire
Partager sur d’autres sites

Petite question concernant my_sendmail, je souhaite envoyer mes mails via le serveur SMTP de gmail mais il requiert une authentification, c'est possible avec ton script ou pas ?

Non, utiliser l'authentification n'est pas supporté dans l'état.

D'une part je ne me suis pas penché sur le fonctionnement de l'authentification SMTP.

D'autre part, le module perl Net::SMTP que j'utilise fait bien référence à une methode "auth" mais de toutes façons elle dépend du module "Authen::SASL" qui n'est pas inclus la version de perl fournie par Synology.

Si ce n'est pas le cas, comment pourrais-je m'y prendre ?

Aucune idée. Peut-être est-ce possible en python: il y a des spécialistes sur le forum, peut-être l'un d'eux pourrait proposer une solution alternative.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

J'ai installé Nail qui permet d'utiliser le SSL.

(Sauf erreur de ma part) "nail" pour DSM nécessite Optware (que d'aucuns nomment "ipkg").

Si c'est le cas, c'est dommage de ne pas avoir signalé des le début que tu avait installé cet environnement. On aurait pu gagner du temps (je n'ai pas toujours le réflexe de penser à chercher des solutions de ce coté: je ne l'utilise pas étant donné qu'il n'existe pas de version d'optware vraiment compatible avec l'architecture de mon NAS.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.


×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.