Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

smtpRelay

small SMTP relay

Go Report Card

Download binary

example config.ini

# Db for queue emails
QueueDbDialect = "mssql"
QueueDbConnect = "server=127.0.0.1;user id=SmtpRelayLog;password=pa55w0rd;database=SmtpRelayLog;connection timeout=300"

# Db for log
StatusDbDialect = "mssql"
StatusDbConnect = "server=127.0.0.1;user id=SmtpRelayLog;password=pa55w0rd;database=SmtpRelayLog;connection timeout=300"

Hostname = "localhost" # hostname for HELO, if blank, then get mashine hostname

AllowIP = ["127.0.0.1", "192.168.1.20"] # allow sender IP

AllowDomains = ["dmbasis.ru"] # allow send email domain

SMTPListenAddr = ":2500" # SMTP server listen on (example: "127.0.0.1:2500")

SendStream = 10
ResendStream = 2

MaxRepeatSend = 2
RepeatIntervalMinutes = 5

Debug = false

execute with default config file ./config ini

./smtpRelay

or change config file path

./smtpRelay -c /path/to/youconfig.ini

For run as service in Windows use NSSM

in log database create table "statuses" structure

id queued_at sending_at from rcpt message_type message_id status

message_type is string from "X-Postmaster-Msgtype" header

message_id is string from "Message-Id" header

in queue database create table "queues" structure

id created_at updated_at message_type message_id from from_hostname rcpt rcpt_hostname data repeat later_status

Releases

Packages

Used by

Contributors

Languages