<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Способ организации массовой почтовой рассылки]]></title><description><![CDATA[<p dir="auto">Способ организации массовой почтовой рассылки для NetXMS win32 (хотя аналогичный способ сработает и на других осях, но там как правило нет подобных проблем) на основе Gmail.<br />
Нам понадобиться</p>
<ol>
<li>Stunnel, который можно загрузить с одного из зеркал <a href="http://www.stunnel.org/?page=downloads" rel="nofollow ugc">проекта</a></li>
<li>Blat, который можно загрузить со страницы <a href="http://www.blat.net/" rel="nofollow ugc">проекта</a>.</li>
</ol>
<p dir="auto">Ставим Stunnel как сервис, и меняем конфигурационный файл следующим образом.</p>
<pre><code>; Sample stunnel configuration file for Win32 by Michal Trojnara 2002-2012
; Some options used here may be inadequate for your particular configuration
; This sample file does *not* represent stunnel.conf defaults
; Please consult the manual for detailed description of available options

; **************************************************************************
; * Global options                                                         *
; **************************************************************************

; Debugging stuff (may useful for troubleshooting)
debug = 7
output = stunnel.log

; Disable FIPS mode to allow non-approved protocols and algorithms
;fips = no

; **************************************************************************
; * Service defaults may also be specified in individual service sections  *
; **************************************************************************

; Certificate/key is needed in server mode and optional in client mode
cert = stunnel.pem
;key = stunnel.pem

; Authentication stuff needs to be configured to prevent MITM attacks
; It is not enabled by default!
;verify = 2
; Don't forget to c_rehash CApath
;CApath = certs
; It's often easier to use CAfile
;CAfile = certs.pem
; Don't forget to c_rehash CRLpath
;CRLpath = crls
; Alternatively CRLfile can be used
;CRLfile = crls.pem

; Disable support for insecure SSLv2 protocol
options = NO_SSLv2
; Workaround for Eudora bug
;options = DONT_INSERT_EMPTY_FRAGMENTS

; These options provide additional security at some performance degradation
;options = SINGLE_ECDH_USE
;options = SINGLE_DH_USE

; **************************************************************************
; * Service definitions (at least one service has to be defined)           *
; **************************************************************************

; Example SSL server mode services

;[pop3s]
;accept  = 995
;connect = 110

;[imaps]
;accept  = 993
;connect = 143

;[ssmtp]
;accept  = 465
;connect = 25

; Example SSL client mode services

;[gmail-pop3]
;client = yes
;accept = 127.0.0.1:110
;connect = pop.gmail.com:995

;[gmail-imap]
;client = yes
;accept = 127.0.0.1:143
;connect = imap.gmail.com:993

[gmail-smtp]
client = yes
accept = 127.0.0.1:25
connect = smtp.gmail.com:465

; Example SSL front-end to a web server

;[https]
;accept  = 443
;connect = 80
; "TIMEOUTclose = 0" is a workaround for a design flaw in Microsoft SSL
; Microsoft implementations do not use SSL close-notify alert and thus
; they are vulnerable to truncation attacks
;TIMEOUTclose = 0

; vim:ft=dosini
</code></pre>
<p dir="auto">запускаем сервис.</p>
<p dir="auto">Для удобства использования Blat лучше распаковать в netXMS/var (в этом случае нам не придется писать длинные пути или добавлять переменные path)<br />
Теперь для удобства (можно и не делать прописав данный профиль в файле настроек, который будет описан ниже) создадим профиль для Blat, который сохранится в реестре.<br />
Для этого просто нужно запустить blat.exe со следующими параметрами.</p>
<pre><code>blat.exe -install smtp.google.com почтовый_ящик 3 587 gmail юзер пароль_к_ящику
</code></pre>
<p dir="auto">gmail здесь это имя профиля, который потом можно вызывать просто добавив к параметрам данный идентификатор, профилей может быть несколько.</p>
<p dir="auto">Далее создадим 2 файла</p>
<ol>
<li>adr.list (имя и расширения файла может быть любым, это просто текстовый файл)<br />
в нем буду хранится наши адреса в следующем формате</li>
</ol>
<pre><code>user1@mail.com
user3@mail.com
user85@mail.com
</code></pre>
<p dir="auto">один адрес - одна строчка. Лишних пробелов и знаков желательно избегать.</p>
<ol start="2">
<li>opt.list (имя и расширения файла может быть любым, это просто текстовый файл)<br />
В данном файле будут хранится настройки в следующем формате</li>
</ol>
<pre><code>-f "имя отправителя" -p gmail -log blat.log -try 1 -ti 60
</code></pre>
<p dir="auto">имя отправителя желательно использовать примерно такое</p>
<pre><code>NETXMS Server &lt;ваш_ящик@gmail.ru&gt;
</code></pre>
<p dir="auto">gmail здесь это имя профиля.<br />
В файл blat.log будут писаться логи.</p>
<p dir="auto">все, все приготовления завершены.</p>
<p dir="auto">теперь идём в  Action Configuration И создаем новый execute command on management server со следующим параметром</p>
<pre><code>blat.exe -tf adr.list -of opt.list -subject "Port down on %a!" -body "В %t порт номер %5 на коммутаторе %n был отключен."
</code></pre>
<p dir="auto">после идем в Even processing policy editor и на событие port down добавляем этот action.</p>
<p dir="auto">аналогичным образом создаем все требуемые action'ы</p>
<p dir="auto">Данный способ весьма гибок в настройках, так-как позволяет на лету менять списки рассылки либо настройки, даже из скрипта в самом netxms или ручками.</p>
<hr />
<p dir="auto">udp1: некоторые опечатки и уточнения.<br />
версия первая, писал второпях, если кому нужны уточнения, то не стесняйтесь.</p>
]]></description><link>https://forum.netxms.org/topic/1647/способ-организации-массовой-почтовой-рассылки</link><generator>RSS for Node</generator><lastBuildDate>Fri, 13 Nov 2026 21:42:02 GMT</lastBuildDate><atom:link href="https://forum.netxms.org/topic/1647.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 Mar 2012 11:54:59 GMT</pubDate><ttl>60</ttl></channel></rss>