2016-04-19 22:13:47 -05:00
|
|
|
# Setup relayhost
|
|
|
|
|
2016-04-20 00:10:57 -05:00
|
|
|
[TOC]
|
|
|
|
|
2016-04-19 22:13:47 -05:00
|
|
|
Relay host is a server which can accept your email and sent it out to the final
|
|
|
|
destination for you.
|
|
|
|
|
2016-04-20 00:10:57 -05:00
|
|
|
## Global relay host
|
|
|
|
|
2016-04-19 22:13:47 -05:00
|
|
|
To setup a global relay host in iRedMail, please append below settings in
|
|
|
|
Postfix config file `/etc/postfix/main.cf` (Linux/OpenBSD) or
|
|
|
|
`/usr/local/etc/postfix/main.cf` (FreeBSD):
|
|
|
|
|
|
|
|
```cfg
|
|
|
|
relayhost = [relay_server]:25
|
|
|
|
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
|
|
|
|
smtp_sasl_auth_enable = yes
|
|
|
|
smtp_sasl_mechanism_filter = login
|
|
|
|
smtp_sasl_security_options = noanonymous
|
|
|
|
```
|
|
|
|
|
|
|
|
!!! note
|
|
|
|
|
|
|
|
* You should relace `relay_server` above by the real server address. for
|
|
|
|
example, `relayhost = [37.61.54.158]:25`, `relayhost = [smtp.gmail.com]:25`.
|
|
|
|
* For more possible values/formats, please check Postfix document:
|
|
|
|
[Postfix transport table format (transport)](http://www.postfix.org/transport.5.html).
|
|
|
|
|
|
|
|
Then write the username and password in `/etc/postfix/sasl_password`:
|
|
|
|
|
|
|
|
```cfg
|
|
|
|
relay.server user:password
|
|
|
|
```
|
|
|
|
|
|
|
|
Run `postmap` and restart Postfix service:
|
|
|
|
|
|
|
|
```cmd
|
|
|
|
postmap hash:/etc/postfix/sasl_password
|
|
|
|
service postfix restart
|
|
|
|
```
|
|
|
|
|
2016-04-20 00:10:57 -05:00
|
|
|
## Sender dependent relay host
|
|
|
|
|
2017-02-11 10:20:51 -06:00
|
|
|
!!! attention
|
2016-04-20 00:10:57 -05:00
|
|
|
|
2017-02-11 10:20:51 -06:00
|
|
|
Sender dependent relay host is available in iRedMail-0.9.5 or later releases.
|
2016-04-20 00:10:57 -05:00
|
|
|
|
2017-06-11 00:59:23 -05:00
|
|
|
!!! Note "If your sender dependent relay host requires SMTP Authentication"
|
|
|
|
|
|
|
|
If your sender dependent relay host requires SMTP Authentication, please
|
|
|
|
add one more Postfix parameter in `/etc/postfix/main.cf` (Linux/OpenBSD)
|
|
|
|
or `/usr/local/etc/postfix/main.cf` (FreeBSD):
|
|
|
|
|
|
|
|
```
|
|
|
|
smtp_sender_dependent_authentication = yes
|
|
|
|
```
|
|
|
|
|
|
|
|
Then add smtp username and password in file `/etc/password/sasl_password`
|
|
|
|
like below:
|
|
|
|
|
|
|
|
```
|
|
|
|
user@domain.com smtp_user:smtp_password
|
|
|
|
```
|
|
|
|
|
|
|
|
Don't forget to run `postmap hash:/etc/postfix/sasl_password` after
|
|
|
|
modified this file.
|
|
|
|
|
2016-04-20 00:10:57 -05:00
|
|
|
### Manage with iRedAdmin-Pro
|
|
|
|
|
|
|
|
Since iRedAdmin-Pro-SQL-2.4.0 or iRedAdmin-Pro-LDAp-2.6.0, it's able to manage
|
|
|
|
per-domain or per-user sender dependent relay host in domain or user profile
|
2016-04-20 00:21:43 -05:00
|
|
|
page, under tab `Relay`. Screenshot attached.
|
2016-04-20 00:10:57 -05:00
|
|
|
|
|
|
|
### Manage with command line tools
|
|
|
|
|
|
|
|
#### MySQL, MariaDB, PostgreSQL
|
|
|
|
|
|
|
|
For SQL backends, you can manage sender dependent relay host in SQL table
|
|
|
|
`mailbox.sender_relayhost`. We use MySQL for example below.
|
|
|
|
|
|
|
|
* Per-domain sender dependent relay host:
|
|
|
|
|
|
|
|
```
|
|
|
|
sql> USE vmail;
|
|
|
|
sql> INSERT INTO sender_relayhost (account, relayhost) VALUES ('@domain.com', '[mail.gmail.com]:25');
|
|
|
|
```
|
|
|
|
|
|
|
|
* Per-user sender dependent relay host:
|
|
|
|
|
|
|
|
```
|
|
|
|
sql> USE vmail;
|
|
|
|
sql> INSERT INTO sender_relayhost (account, relayhost) VALUES ('user@domain.com', '[mail.gmail.com]:25');
|
|
|
|
```
|
|
|
|
|
|
|
|
#### OpenLDAP
|
|
|
|
|
|
|
|
For OpenLDAP backend:
|
|
|
|
|
|
|
|
* per-domain sender dependent relay host is stored in attribute `senderRelayHost` of domain account.
|
|
|
|
* per-user sender dependent relay host is stored in attribute `senderRelayHost` of user account.
|
|
|
|
|
|
|
|
Sample LDIF data:
|
|
|
|
|
|
|
|
* Per-domain sender dependent relay host
|
|
|
|
|
|
|
|
```
|
|
|
|
dn: domainName=mydomain.com,o=domains,dc=example,dc=com
|
|
|
|
senderRelayHost: [mail.gmail.com]:25
|
|
|
|
...
|
|
|
|
```
|
|
|
|
|
|
|
|
* Per-user sender dependent relay host
|
|
|
|
|
|
|
|
```
|
|
|
|
dn: mail=user@mydomain.com,ou=Users,domainName=mydomain.com,o=domains,dc=example,dc=com
|
|
|
|
senderRelayHost: [mail.gmail.com]:25
|
|
|
|
...
|
|
|
|
```
|
|
|
|
|
|
|
|
### Screenshot of iRedAdmin-Pro
|
|
|
|
|
|
|
|
* iRedAdmin-Pro: Per-domain relay setting:
|
|
|
|
|
2017-10-28 00:38:13 -05:00
|
|
|
![](./images/iredadmin/domain_profile_relay.png)
|
2016-04-20 00:10:57 -05:00
|
|
|
|
|
|
|
* iRedAdmin-Pro: Per-user relay setting:
|
|
|
|
|
2017-10-28 00:38:13 -05:00
|
|
|
![](./images/iredadmin/user_profile_relay.png)
|
2016-04-20 00:10:57 -05:00
|
|
|
|
2017-01-11 22:08:02 -06:00
|
|
|
## See Also
|
|
|
|
|
2018-01-04 06:38:26 -06:00
|
|
|
* [Integrating Amazon SES with Postfix](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/postfix.html)
|
2017-01-11 22:08:02 -06:00
|
|
|
* [Use SendGrid as relay server](https://sendgrid.com/docs/Integrate/Mail_Servers/postfix.html)
|