94 lines
2.3 KiB
Markdown
94 lines
2.3 KiB
Markdown
```
|
||
|
||
sudo doveadm pw -s BLF-CRYPT
|
||
```
|
||
|
||
```
|
||
{BLF-CRYPT}$2y$05$ituMVYZPOiAnTOApslK18OB7iPpAamHv6wZSd7ed2ZozzAaKXPGZi
|
||
```
|
||
|
||
```
|
||
windyboy@2006
|
||
```
|
||
|
||
|
||
```
|
||
sudo mysql -p -u mailuser mailserver <<'SQL'
|
||
INSERT INTO domains(name) VALUES ('windy.me');
|
||
|
||
INSERT INTO users(email, domain, password, quota_mb)
|
||
VALUES ('zhiqiang@windy.me','windy.me','{BLF-CRYPT}$2y$05$cbKWGCrttpBPHpN8R4DFFeGSUF82Upf4EsREifW0jm96A.59IfYfO', 2048);
|
||
|
||
-- optional alias
|
||
INSERT INTO aliases(source, destination) VALUES ('vnet@windy.me','zhiqiang@windy.me');
|
||
SQL
|
||
```
|
||
|
||
|
||
```
|
||
doveadm auth test zhiqiang@windy.me 'windyboy2006'
|
||
|
||
```
|
||
|
||
```
|
||
# ---- Dovecot 2.4 SQL authentication ----
|
||
sql_driver = mysql
|
||
|
||
# Debian/MariaDB socket (or use 'mysql localhost { ... }' for TCP)
|
||
mysql /run/mysqld/mysqld.sock {
|
||
user = vmail
|
||
password = CHANGE_ME_STRONG
|
||
dbname = mailserver
|
||
}
|
||
|
||
# PASSDB: verify credentials (hash in DB, e.g. {BLF-CRYPT}...)
|
||
passdb sql {
|
||
passdb_default_password_scheme = BLF-CRYPT
|
||
query = SELECT email AS username, password AS password \
|
||
FROM users \
|
||
WHERE email = '%{user}' AND active = 1
|
||
}
|
||
|
||
# USERDB: return uid/gid/home/mail
|
||
# Change 5000:5000 if your vmail UID/GID differ: check with "id vmail"
|
||
userdb sql {
|
||
query = SELECT 5000 AS uid, 5000 AS gid, \
|
||
CONCAT('/var/mail/vhosts/', SUBSTRING_INDEX(email,'@',-1), '/', SUBSTRING_INDEX(email,'@',1)) AS home, \
|
||
CONCAT('maildir:/var/mail/vhosts/', SUBSTRING_INDEX(email,'@',-1), '/', SUBSTRING_INDEX(email,'@',1), '/Maildir') AS mail \
|
||
FROM users \
|
||
WHERE email = '%{user}' AND active = 1
|
||
iterate_query = SELECT email AS username FROM users WHERE active = 1
|
||
}
|
||
|
||
|
||
```
|
||
|
||
|
||
```
|
||
swaks --server your.mx.name --port 587 --tls --auth LOGIN -au 'zhiqiang@windy.me' -ap 'windyboy@2006' --h-Subject "SASL test"
|
||
|
||
```
|
||
|
||
```
|
||
sudo postconf -n | grep -E '^(smtpd_.*restrictions|smtpd_milters|milter_.*|policyd|policy|check_policy_service)'
|
||
sudo grep -nE '^(submission|smtps)\b' -n /etc/postfix/master.cf -n
|
||
|
||
```
|
||
```
|
||
sudo postconf -P submission/inet/smtpd_recipient_restrictions
|
||
sudo postconf -P submission/inet/smtpd_client_restrictions
|
||
sudo postconf -P submission/inet/smtpd_helo_restrictions
|
||
sudo postconf -P smtps/inet/smtpd_recipient_restrictions
|
||
|
||
```
|
||
|
||
google windyboy app passwors (postfix) :
|
||
```
|
||
zfgl bdep itya kdym
|
||
```
|
||
|
||
/etc/postfix/sasl_passwd
|
||
```
|
||
[smtp.gmail.com]:587 windyboy@gmail.com:zfglbdepityakdym
|
||
```
|