Czego używasz jako lekkiego SMTP tylko do wychodzących wiadomości e-mail?
Korzystam z aplikacji, która wysyła wiadomości e-mail za pośrednictwem SMTP, gdy zdarzają się zdarzenia, i nie potrzebuję w pełni funkcjonalnego serwera poczty elektronicznej.
EDYCJA: Cieszę się, że mogę użyć czegoś takiego jak postfix (i zrobić), jeśli to najlepszy wybór. Myślałem, że może być coś znacznie prostszego, co kończy się po wyjęciu z pudełka.
email
software-rec
smtp
FlappySocks
źródło
źródło
Odpowiedzi:
Istnieje kilka opcji minimalnej liczby agentów przekazujących pocztę tylko do przekazywania (MTA lub „serwerów pocztowych”), z których niektóre zostały wspomniane w innych odpowiedziach:
Aby którykolwiek z nich działał, potrzebujesz pełnoprawnego MTA, które będzie dalej przekazywać wiadomości (znane jako „centrum poczty”) i zdecydowanie zaleca się kontrolowanie tego centrum poczty. Bad Things ™ może się zdarzyć inaczej.
źródło
IMHO, najprostszym sposobem na to jest postfiks. Możesz skonfigurować go jako lekki przekaźnik wychodzący za pomocą następujących poleceń:
Tak długo, jak serwer SMTP określony w
relayhost
nie wymaga uwierzytelnienia, umożliwia przekazywanie lub jest prawidłowym miejscem docelowym dla adresu odbiorcy, będzie to działać.myorigin
Parametr będzie domyślna nazwa domeny. Jeśli więc wyślesz pocztę do foo, trafi ona na adres [email protected]. Poczta wysyłana przez pasek użytkownika będzie pochodzić z [email protected].Jeśli musisz się uwierzytelnić i chcesz obsługiwać TLS, uruchom także następujące polecenia:
Następnie
/etc/postfix/sasl_password_maps
mieć tę treść:Cała poczta zostanie wysłana do twojego przekaźnika z podaną nazwą użytkownika i hasłem.
źródło
relayhost=other.mailserver.com:465
wtedysmtp_tls_wrappermode=yes
ismtp_tls_security_level=encrypt
ale próbuje użyć lokalnego użytkownika jako auth. Muszę jakoś przepisać użytkownika autoryzacji.Zakładając, że potrzebujesz programu, który możesz uruchomić z powłoki, takiego jak sendmail (8), być może MSMTP spełni twoje potrzeby? Może łączyć się ze zdalnym serwerem SMTP i przesyłać pocztę, którą otrzymuje w standardowy sposób, podobnie jak sendmail.
źródło
ESMTP to serwer przesyłania poczty tylko do przekazywania, który może działać w Twojej aplikacji.
źródło
Możesz znaleźć sSMTP odpowiedni dla twoich potrzeb. Przeczytaj ten artykuł i jego ograniczenia.
Szczerze mówiąc, nie byłbym zbytnio zestresowany instalowaniem postfiksa lub exim, nawet jeśli to tylko do wysyłania e-maili.
źródło
Jeśli korzystasz z dokera, https://hub.docker.com/r/zixia/simple-mail-forwarder/ jest dobrym wyborem do łatwego wdrożenia i ma rozmiar zaledwie 10 MB, z pełną obsługą smtp (tls).
źródło
Technicznie nie potrzebujesz serwera poczty e-mail na swoim hoście, to czego potrzebujesz (i prawdopodobnie już masz) to klient smtp (lub MUA), który może połączyć się z twoim korporacyjnym serwerem SMTP (który może być gdziekolwiek możesz się połączyć .)
W zależności od aplikacji (i języka programowania, w którym została napisana) istnieje wiele różnych sposobów łączenia się aplikacji z serwerem SMTP w sieci.
Zwykle w przypadku PHP lub Python istnieje plik konfiguracyjny z aplikacją określający serwer „SMTP” (który może znajdować się na hoście lub w innym miejscu w sieci). Jeśli masz już serwer poczty w sieci, po prostu wskaż konfiguracja do tego serwera.
Jeśli nie ma innych opcji, aplikacja może wygenerować wiadomość e-mail na standardowe wyjście, które można przetworzyć za pomocą:
listoftargets = „[email protected] [email protected]” echo „Testuj zawartość” | mail -s „Temat testu” $ listoftargets
W niektórych systemach istnieje już minimalny serwer pocztowy do wysyłania.
Sam T.
źródło
mail
lubsendmail
nazwane pliki wykonywalne. Powiadomienia systemowe Nie o to chodzi, prawda? W przypadku czegokolwiek innego nie ma żadnych ograniczeń.