Files
ric930-fake-smtp/README.md
2026-04-13 21:39:02 +03:00

79 lines
4.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ric930-fake-smtp
Fake SMTP сервер для ИВ КонсультантПлюс. Принимает любые соединения с именем пользователя и паролем, сохраняет письма в формате `.eml` с иерархической структурой папок.
## Особенности
- ✅ RFC 5321 (SMTP протокол)
- ✅ Работа как systemd сервис на Linux и как Windows Service
## Требования
- Go 1.21 или выше
## Сборка из исходников
### 1. Клонирование репозитория
```bash
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. Сборка бинарников
```bash
GOOS=linux GOARCH=amd64 go build -o ric930-fake-smtp
```
или
```bash
GOOS=windows GOARCH=amd64 go build -o ric930-fake-smtp.exe
```
### 3. Запуск и установка в режиме службы
При первом запуске будет зоздан config.json с параметрами по умолчанию.
Запуск в интерактивном режиме:
```bash
./ric930-fake-smtp или ./ric930-fake-smtp.exe (для Windows)
```
Установка в качестве systemd юнита:
```bash
./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:
```bash
./ric930-fake-smtp.exe install
```
### 4. Файл конфигурации
config.json находится рядом с бинарным файлом или указывается в параметре --config path/to/config.json
Секции файла не требуют особых пояснений и интуитивно понятные.
### 5. Конфигурация online.ini
```bash
...
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. В форме восстановления необходио указать:
```bash
Логин: consultant
Email: admin@local.host (берется из поля AdminEmail файла online.ini)
Тескт с капчи
```
и нажать кнопку "Отправить".
Если все указано и настроено правильно, то в интерфейсе будет сообщение о том, что пароль будет отправлен в сообщении email.
можно проверить каталог emails (или иной, указанный в config.json) на наличии нового файла .eml, который и есть отправленное сообщение. Файл можно открыть в любой почтовой программе или текстовом редакторе.