Utiliser sendmail sur SSH

5

J'ai un accès SSH au serveur avec le travail sendmailfourni par mon hébergeur. Je veux configurer mon local sendmailpour utiliser le serveur distant en tant que relais. Comment puis je faire ça? Est-ce que c'est possible?

Remarque: je peux écrire un script pour exécuter quelque chose comme ssh user@host sendmail ...cela, mais il me semble qu'il existe une meilleure solution.

Sergey
la source

Réponses:

4

Préparer SSH

Localement, créez une nouvelle clé SSH sans mot de passe. Dans ces exemples, il /etc/mail/ssh-sendmail-keyappartiendra à l' MAILUSERutilisateur. Changement mailuser à tout Unix compte de votre système local utilise: postfix, sendmail, mail, ... L' utilisation rootou nobodynon recommandée.

# ssh-keygen -f /etc/mail/ssh-sendmail-key -N ""
# chown MAILUSER /etc/mail/ssh-sendmail-key{,.pub}

Append le contenu /etc/mail/ssh-sendmail-key.pubà du serveur authorized_keys fichier:

ssh-rsa AAAA....

Postfix

Créer un sshtransport dans master.cf:

ssh    unix    -       n       n       -       -       pipe
    user=MAILUSER argv=/usr/bin/ssh -i /etc/mail/ssh-sendmail-key myhostserver /usr/sbin/sendmail -i $recipient

Dans main.cf, ajoutez:

default_transport = ssh

Exim

Routeur:

ssh:
    driver = manualroute
    domains = ! +local_domains
    transport = ssh
    route_list = * foo

Transport:

ssh:
    driver = pipe
    user = MAILUSER
    command = /usr/bin/ssh -i /etc/mail/ssh-sendmail-key myhostserver /usr/sbin/sendmail -i $RECIPIENT
Grawity
la source