Dimerson » 04 ноя 2018, 07:27
Я тут подумал, и пришел к выводу, что это не борьба не с причиной, а со следствием. В данный момент имеется один gwia со включенной smtp auth на 25 порту. На него через нат проброшен 25 порт снаружи (соответствует mx записи). Радикально решить можно так: данный gwia оставить без изменений - он по умолчанию будет gwia для отправки почты из системы наружу. Создаем еще 1 экземпляр gwia в домене. На допустим 1025 порту. Smtp auth=off для него. И прокинуть 25 порт снаружи на этот 1025.
Получается так что в принципе невозможно ничего подобрать снаружи. Надо только еще 1 gwia сканер в gwava добавить для второго gwia. Вуаля.
Как вариант можно поднять не gwia а создать gwava smtp сканер (на его порт будет прокидываться 25 порт снаружи). Он будет проверять почту к тому же. Отключить ему smtp auth. И если с почтой все ок, передавать принятую системному gwia.
upd: на первый взгляд неясно, как отключить AUTH LOGIN у GWIA (скорее всего неотключаемо).
Посему я поглядел что у меня с lsof -i | grep smtp
master 7596 root 12u IPv4 29762 0t0 TCP localhost:smtp (LISTEN) ---- системный postfix
gwia 8125 root 8u IPv4 34974 0t0 TCP gw2012.INTERNALDOMIANNNAME:smtp (LISTEN) ---- gwia в стоставе groupwise
На OES с GroupWise поднял еще 1 шт ip адрес.
На нем поднял SMTP интерфейс (суть smtp proxy, все политики сканирования унаследовал со сканера GWAVA для GWIA, выставил галку Do not allow AUTH LOGIN) GWAVA.
gwvsmtp 83411 root 42u IPv4 586460421 0t0 TCP 192.168.100.194:smtp (LISTEN)
он подлюка для нормального пропихивания почты хочет правильный mx.
прописал в /etc/hosts
192.168.100.194 <ТО ЧТО В MX моего почтового домена>
тестируем:
----------------------------------------
старый - GWIA:
220 XXXXXXXXX Ready
EHLO
250-XXXXXXXXX
250-AUTH LOGIN
250-8BITMIME
250-SIZE
250 DSN
AUTH LOGIN
334 VXNlcm5hbWU6
Он дает авторизацию по SMTP
----------------------------------------
новый - GWAVA SMTP Scanner:
220 Server Ready
EHLO
250-192.168.100.194
250 NO-SOLICITING
AUTH LOGIN
502 Command not implemented
Он не дает авторизацию по SMTP
----------------------------------------
Отправляю себе письмо телнетом
220 Server Ready
helo
250 OK
mail from:<tester@mail.ru>
250 OK
rcpt to:<my@email.address>
250 Ok
data
354 Start mail input; end with <CRLF>.<CRLF>
Subject: Test
That,s all folks !!!
.
250 Ok
Принимает
----------------------------------------
Пробуем отправку от несуществующего пользователя:
220 Server Ready
helo
250 OK
mail from:<tester@mail.cu>
250 OK
rcpt to:<NopeUser@email.address>
550 No such recipient
Дает отлуп
----------------------------------------
Пробуем отправку от пользвателя левого домена:
helo
250 OK
mail from:<tester@mail.ru>
250 OK
rcpt to:<RealUser@mail.ru>
500 5.5.1 Invalid command
Подключение к узлу утеряно.
Дает отлуп
----------------------------------------
Вроде бы все работает как надо. Осталось настроить на firewall проброс 25 порта снаружи вовнутрь (сменить внутренний адрес GWIA на адрес GWAVA SMTP).
И про подбор пароля забыли насовсем.
UPD2:
Попробовал пихнуть телнетом eicar.com в base64 в виде аттача:
получаю
550 Message was blocked by server (GWAVA blocked: virus, reference ID: str=0001.0A0C020F.5BE133F4.005F,ss=1,re=0.000,recu=0.000,reip=0.000,vtr=str,vl=1,cl=1,cld=1,fgs=0)
на вебморде gwava красота EICAR_Test_File 6 нояб. 2018 г., 13:25:56
в логах gwava
[3r50irg][2] NOV-06 13:25:56 GWAVA reports message should be blocked
[3ra3ogg][2] NOV-06 13:25:56 Message was blocked: virus
[3ra3ogg][1] NOV-06 13:25:58 Socket is closed
как бы работает. скоро в продакшен.
UPD3:
А вот свеженькое из продакшена
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:47</t><i>< 200 Engine connected</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:47</t><i>=> 220 Server Ready</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:47</t><i><= HELO *.*</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:47</t><i>=> 250 OK</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:48</t><i><= AUTH LOGIN</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:48</t><i>=> 502 Command not implemented</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:48</t><i><= QUIT</i></ln>
<ln><p>3r96ggg</p><l>4</l><d>2018-NOV-06</d><t>14:50:48</t><i>=> 221 Closing transmission channel</i></ln>
В общем так оно надёжнее.