много воды с тех пор утекло, много еще мы с Борландом понаписали "стукачей" о всяческих эвентах на этой основе.
Цитата:
Сообщение от Plague
blat не умеет работать с серверами, требующими ssl. Варианты обхода существуют (stunnel), но это лишняя "клюква" на машине, да и не проверял я.
|
в свете того, что smtp.mail.ru перестал работать с обычным соединением, решил все-таки копнуть эту клюкву.
Итак, качаем
stunnel, ставим. В процессе установки сервис сгенерит для себя самоподписанный сертификат SSL.
Конфиг stunnel.conf для mail.ru
Код:
RNDfile = .rnd
debug = 7
output = stunnel.log
cert = stunnel.pem
options = NO_SSLv2
[mailru-smtp]
client = yes
accept = 127.0.0.1:1125
connect = smtp.mail.ru:465
[mailru-pop3]
client = yes
accept = 127.0.0.1:1110
connect = pop.mail.ru:995
по большому счёту, как выяснилось позже, pop3 не нужен, так что секцию mailru-pop3 можно исключить.
Включаем stunnel как сервис (чтоб грузился надёжней)
Перелопачиваем скрипты: заменяем pop3 авторизацию на AUTH, меняем адрес smtp. Итого, из скрипта приведенного в шапке, получаем:
Код:
@echo off
set blatdir=c:\SystemTools\mailreport
set smtpsender=от_кого@сервер.ru
set smtpserver=localhost
set smtpport=1125
set smtpuser=от_кого
set smtppwd="пароль_исходящего_ящика"
set mailto=кому@сервер.ru
set blatsubj="%COMPUTERNAME% ALERT"
set blatbody="%COMPUTERNAME% Rebooted!!"
"%blatdir%\sleep.exe" 600
"%blatdir%\blat.exe" -to %mailto% -f %smtpsender% -server %smtpserver% -port %smtpport% -u %smtpuser% -pw %smtppwd% -subject %blatsubj% -body %blatbody%
Собственно, и всё. Должно заработать, если я чего не забыл написать.
К слову, документация на stunnel мягко говоря, не блещет подробностями. Я не нашел например, параметра лимита соединений. Но в логе при загрузке оно регулярно ругается на то что он у меня не установлен:
Код:
2014.10.06 13:25:15 LOG7[2420]: No limit detected for the number of clients
Так же я не въехал в параметр импорта сохранённого сертификата сервера. По моему представлению, строки
Код:
CAfile = mailru.pem
verify = 3
будучи добавленными в секцию сервера, должны указывать сервису на сохранённый локально сертификат, дабы оно не дёргало его с сервера. Но нет, как только эти строки добавляешь, работать перестаёт вообще.
ps. для того чтоб сделать авторизацию на несколько различных мыл-серверов, достаточно просто раскопировать секцию сервера в stunnel.conf, указав для каждого уникальный порт, и стучать соответственно, для каждого в свой порт.