Можно ли отправлять почту с терминала Linux на любую учетную запись Gmail?
Если возможно, то какая конфигурация необходима?
Я пробовал использовать mailx и sendmail, но это не работает.
Я тоже пробовал с такой дворнягой
echo "test" | mutt -s this-is-my-subjest [email protected]
но бесполезно...
Я использую CentOS 6.2.
решение1
Я бы посоветовал использовать sendEmail:
sendEmail-1.56 by Brandon Zehm <[email protected]>
Synopsis: sendEmail -f ADDRESS [options]
Required:
-f ADDRESS from (sender) email address
* At least one recipient required via -t, -cc, or -bcc
* Message body required via -m, STDIN, or -o message-file=FILE
Common:
-t ADDRESS [ADDR ...] to email address(es)
-u SUBJECT message subject
-m MESSAGE message body
-s SERVER[:PORT] smtp mail relay, default is localhost:25
Optional:
-a FILE [FILE ...] file attachment(s)
-cc ADDRESS [ADDR ...] cc email address(es)
-bcc ADDRESS [ADDR ...] bcc email address(es)
-xu USERNAME username for SMTP authentication
-xp PASSWORD password for SMTP authentication
Paranormal:
-b BINDADDR[:PORT] local host bind address
-l LOGFILE log to the specified file
-v verbosity, use multiple times for greater effect
-q be quiet (i.e. no STDOUT output)
-o NAME=VALUE advanced options, for details try: --help misc
-o message-content-type=<auto|text|html>
-o message-file=FILE -o message-format=raw
-o message-header=HEADER -o message-charset=CHARSET
-o reply-to=ADDRESS -o timeout=SECONDS
-o username=USERNAME -o password=PASSWORD
-o tls=<auto|yes|no> -o fqdn=FQDN
Help:
--help the helpful overview you're reading now
--help addressing explain addressing and related options
--help message explain message body input and related options
--help networking explain -s, -b, etc
--help output explain logging and other output options
--help misc explain -o options, TLS, SMTP auth, and more
У меня это работает очень хорошо. Не забудьте использовать TLS с gmail. Вам нужно предоставить данные сервера, который будет отправлять письмо с этими параметрами:
-s SERVER[:PORT] smtp mail relay, default is localhost:25
-xu USERNAME username for SMTP authentication
-xp PASSWORD password for SMTP authentication
Для меня это лучший вариант, так как он позволяет добавлять вложения и его можно легко разместить в скриптах.
Пример использования:
sendEmail -f [email protected] -t [email protected] -s test -m messageBody -s smtp.gmail.com -xu [email protected] -xp xxxxxpass -o tls=auto
Aug 17 16:21:37 z sendEmail[22420]: Email was sent successfully!
решение2
Терминальная mail
программа должна справиться с этой задачей. Обычно она работает «прямо из коробки», позволяя пользователям/программам отправлять сообщения локально, внутри системы.
Введите и нажмите ввод. Затем введите свое сообщение и закройте/отправьте с помощью Ctl-D.mail -s 'subject line' [email protected]
решение3
Обычно вам не нужно настраивать что-то конкретное, в CentOS по умолчанию есть почтовый сервер.
Если я правильно помню, команда выглядит mailto
так: введите информацию (от кого, тему и т. д.), затем введите текст, а когда закончите печатать, нажмите ctrl+D, и вы получите EOT.
Имейте в виду, что ваш почтовый сервер будет использовать вашу пользовательскую информацию или что-то в этом роде, from : user@pcname
но я сегодня не за Linux, поэтому не могу это проверить.
Надеюсь, это поможет.
РЕДАКТИРОВАТЬ :
вот ссылка на страницу руководства O'reilly:там