2026-04-13 21:39:02 +03:00
2026-04-13 17:22:26 +03:00
2026-04-13 17:22:26 +03:00
2026-04-13 21:39:02 +03:00

ric930-fake-smtp

Fake SMTP сервер для ИВ КонсультантПлюс. Принимает любые соединения с именем пользователя и паролем, сохраняет письма в формате .eml с иерархической структурой папок.

Особенности

  • RFC 5321 (SMTP протокол)
  • Работа как systemd сервис на Linux и как Windows Service

Требования

  • Go 1.21 или выше

Сборка из исходников

1. Клонирование репозитория

https://git.stelm.me/ric930/ric930-fake-smtp.git
cd ric930-fake-smtp
go mod init ric930-fake-smtp
go get github.com/kardianos/service

2. Сборка бинарников

GOOS=linux GOARCH=amd64 go build -o ric930-fake-smtp

или

GOOS=windows GOARCH=amd64 go build -o ric930-fake-smtp.exe

3. Запуск и установка в режиме службы

При первом запуске будет зоздан config.json с параметрами по умолчанию.

Запуск в интерактивном режиме:

./ric930-fake-smtp или ./ric930-fake-smtp.exe (для Windows)

Установка в качестве systemd юнита:

./ric930-fake-smtp install
sudo systemctl daemon-reload
sudo systemctl status ric930-fake-smtp
sudo systemctl enable --now ric930-fake-smtp
sudo journalctl -fu ric930-fake-smtp

Установка в качестве службы в Windows:

./ric930-fake-smtp.exe install

4. Файл конфигурации

config.json находится рядом с бинарным файлом или указывается в параметре --config path/to/config.json Секции файла не требуют особых пояснений и интуитивно понятные.

5. Конфигурация online.ini

...
AdminEmail = admin@local.host   ; e-mail администратора
SMTPServer = 127.0.0.1          ; адрес почтового сервера для исходящих сообщений
SMTPUseSSL = 0                  ; (default = 0) 0/1 выключить/включить поддержку шифрованных протоколов SSL/TLS  для работы с почтовыми серверами
SMTPPort = 1025                 ; порт для сервера исходящих сообщений (default = 25), для SSL/TLS 465 или 587
;SMTPLogin =                    ; логин для сервера исходящих сообщений
;SMTPPwd =                      ; пароль для сервера исходящих собщений
...

6. Восстановление пароля пользователя consultant и получение паролей других пользователей

После внесения изменений в файлы конфигурации online.ini и config.json можно приступать к процедуре восстановления пароля пользователя consultant. В форме восстановления необходио указать:

Логин: consultant
Email: admin@local.host (берется из поля AdminEmail файла online.ini)
Тескт с капчи

и нажать кнопку "Отправить". Если все указано и настроено правильно, то в интерфейсе будет сообщение о том, что пароль будет отправлен в сообщении email. можно проверить каталог emails (или иной, указанный в config.json) на наличии нового файла .eml, который и есть отправленное сообщение. Файл можно открыть в любой почтовой программе или текстовом редакторе.

Description
No description provided
Readme 37 KiB
2026-04-13 17:30:08 +03:00
Languages
Go 100%