66 lines
2.6 KiB
Markdown
66 lines
2.6 KiB
Markdown
# 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/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. Запуск и установка в режиме службы
|
||
|
||
Запуск в интерактивном режиме:
|
||
```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 = ; пароль для сервера исходящих собщений
|
||
...
|
||
``` |