Подскажите пожалуйста как мне проще настроить почту на одном комьютере
чтобы мейлы можно было отправлять с программ на php на почтовые клиенты(KMail, Thunderbird) и писать мейлы
между почтовыми клиентами. Не нужно антиспама, антивирусов...
И если можно ссылочку на описание...
Настроить почту на одном комьютере
Уточните пожалуйста а все ли из этой статьи нужно для моих целей?
Там как-то много чего описаноююю
вообще-то вам оттуда ничего не надо oO
кроме настройки msmtp
Для приёма почты в php имеется встроенная функция imap_open(), которая эту почту принимает. Есть и функции обработки. Несмотря на название, POP3 она тоже умеет.
Для отправки есть функция mail() (пример: http://www.php-mail.ru/?id=2)
Только учтите, что на самом деле, mail() ничего не отправляет, в конфиге php прописана программа, которая собственно и занимается отправкой. По умолчанию sendmail, но её сложно настроить. Вам надо настроить msmtp - это проще в разы (хотя дело ваше).
Помогите пожалуйста правильно настроить msmt. В etc/msmtprc я добавил несколько акаунтов:
account default
host localhost
syslog LOG_MAIL
account google
host smtp.gmail.com
port 587
auth on
tls on
tls_starttls on
tls_certcheck off
from mstdmstd@gmail.com
user mstdmstd@gmail.com
password *******
account user_1
host localhost
port 587
auth on
tls on
tls_starttls on
tls_certcheck off
from user_1@localhost
user user_1@localhost
password 111111
account user_2
host localhost
port 587
auth on
tls on
tls_starttls on
tls_certcheck off
from user_2@localhost.com
user user_2@localhost.com
password 222222
Выполняя в командной строке получаю:
$ echo "Subject: test mail" | msmtp -f mstdmstd@gmail.com
$ echo "Subject: test mail" | msmtp -f user_2@localhost.com
$ msmtp: no recipients found
Также в Thunderbird настроив юзера :
Your name : user_1
Email address : user_1@localhost
password : 111111
При конекте я получаю
Failed to connect to server mail.localhost
Как правильно настроить etc/msmtprc?
дык вы напишите КОМУ почта в командной строке.
дык вы напишите КОМУ почта в командной строке.
Да в манах написано :
-f, --from=address Set envelope from address.
Без ключа -f получаю ошибку:
msmtp: account default from /etc/msmtprc: envelope-from address is missing
Эти примеры я в нете нашел...
В команде надо указать получателя (recipient)?
В выводе msmtp --help как указать получателя я не нашел...
И как настроить юзера чтобы его почту мог читать Thunderbird?
--from значит ОТ КОГО
Отправитель. А получатель (реципиент) задается вообше без ключей. Посмотрите еще раз мою ссылку - там примеры рабочих конфигов и команд.
рабочий конфиг:
$ cat .msmtprc
account default
host drbatty.ru
port 25
auth login
tls off
tls_starttls off
tls_certcheck off
from admin@drbatty.ru
user admin@drbatty.ru
password пароль
logfile ~/.msmtp.log
команда:
[console]$ echo "test" | msmtp drbatty@drbatty.ru[/console]
И как настроить юзера чтобы его почту мог читать Thunderbird?
в чём проблема?
отправьте почту на сервер - её можно будет прочитать чем угодно.
в т.ч. и Thunderbird'ом.
если сервер принимает почту исключительно с авторизацией по SSL, задача усложняется: http://forum.drbatty.ru/viewtopic.php?f=77&t=5395#p12172
Мне удалось отправить почту на gmail.com акаунт
Но мне надо отправлять/посылать почту локально
То есть для описанных юзеров
account user_1
host localhost
port 587
auth on
tls on
tls_starttls on
tls_certcheck off
from user_1@localhost
user user_1@localhost
password 111111
account user_2
host localhost
port 587
auth on
tls on
tls_starttls on
tls_certcheck off
from user_2@localhost
user user_2@localhost
password 222222
я получаю :
$ echo "Subject: test mail" | msmtp -f user_1@localhost user_2@localhost
msmtp: cannot connect to localhost, port 587: Connection refused
msmtp: could not send mail (account user_1 from /etc/msmtprc)
localhost, видимо надо настраивать как-то иначе ?
Но мне надо отправлять/посылать почту локально
localhost, видимо надо настраивать как-то иначе
конечно. Вам нужно поднять локальный почтовый сервер, вроде как у gmail.com.
msmtp только отправляет почту на сервер.
fetchmail принимает почту с сервера.
А вам нужен сам сервер.
mstdmstd, возможно, я вас не правильно понял, но для почтовых уведомлений на локальном компьютере я использую exim — это единственный известный мне почтовый сервер, которых может отправлять почту локальным пользователям без необходимости быть постоянно запущенным.
использую exim
по большому счёту, "локальный сервер" может состоять из одной команды "cp" - там надо-то просто скопировать файл с сообщением в спул юзера ;)
Конечно, exim это тоже может. Остальные вроде тоже...
В мандриве можно попробовать просто urpmi sendmail, ЕМНИП он уже настроен на приём/передачу локальной почты...
Конечно, exim это тоже может. Остальные вроде тоже...
Я в своё время сильно «заморачивался» поиском такого сервера, который может отправлять почту локальным пользователям, не будучи запущенным постоянно. Нашёл только exim.
по большому счёту, "локальный сервер" может состоять из одной команды "cp"
Думал уже об этом... или logger, но... у меня logwatch все локальные логи обрабатывает (отчёты на локальное «мыло» шлёт) — лениво переделывать :o