์ด ํฌ์คํ ์ ์ฐ๋ถํฌ ์๋ฒ์ Postfix๋ฅผ ์ค์นํ๊ณ Gmail SMTP Relay๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๋ถ ๋ฉ์ผ ๋ฐ์ก ๊ธฐ๋ฅ์ ์ค์ ํ๋ ๊ณผ์ , ๊ทธ๋ฆฌ๊ณ ๋ฐ์ ๊ฐ๋ฅํ ๋ฌธ์ ์ ๋ค์ค ๋๋ฉ์ธ ๊ด๋ฆฌ ๋ฐฉ์์ ๋ด๊ณ ์์ต๋๋ค.
1. Postfix ๊ธฐ๋ณธ ์ค์น ๋ฐ ์ค์
SSH ํ๊ฒฝ์์ Postfix ์ค์น ์ debconf ์ค์ ํ๋ฉด์ ์กฐ์ํ๋ ๋ฐฉ๋ฒ๊ณผ ํ์ ์ค์ ๊ฐ์
๋๋ค.
1-1. SSH ํ๊ฒฝ ์ค์ ์กฐ์
SSH ํฐ๋ฏธ๋์์๋ ํค๋ณด๋์ Tab ํค๋ก <Ok> ๋ฒํผ ๋ฑ ๋ฉ๋ด ํญ๋ชฉ ๊ฐ ํฌ์ปค์ค๋ฅผ ์ด๋ํ๊ณ , Enter ํค๋ก ์ ํ ๋๋ ๋ค์ ๋จ๊ณ๋ก ์งํํฉ๋๋ค.
1-2. Postfix ์ฌ์ค์ ๋ช ๋ น์ด
์ค์ ๋์ค ์ค์๋ก ๋น ์ ธ๋์๊ฑฐ๋ ์ค์ ์ ๋ณ๊ฒฝํ๊ณ ์ถ์ ๋ ์ฌ์ฉํฉ๋๋ค.
sudo dpkg-reconfigure postfix
1-3. ์ฃผ์ ์ค์ ๊ฐ (Gmail Relay ๋ชฉ์ )
| ์ง๋ฌธ | ๊ถ์ฅ ์ ํ ๊ฐ | ์ค๋ช |
|---|---|---|
| General type of mail configuration | Internet Site | ๋ฉ์ผ ์๋ฒ ์ ํ ์ค์ |
| System mail name | mydomain.com (์ค์ ๋๋ฉ์ธ) | ์๋ฒ์์ ๋ฐ์ก๋๋ ๋ฉ์ผ์ ๊ธฐ๋ณธ ๋๋ฉ์ธ ์ด๋ฆ |
| Recipient for root and postmaster mail | your-actual-email@gmail.com | ์์คํ ์๋ฆผ์ ๋ฐ์ ์ค์ ์ธ๋ถ ๋ฉ์ผ ์ฃผ์ |
| Other destinations to accept mail for | (Blank) | ๋ฐ์ก ์ ์ฉ์ด๋ฏ๋ก ๋น์๋ก๋๋ค(์ํฐ). |
| Force synchronous updates on mail queue? | No | ์ฑ๋ฅ์ ์ํด ๋น๋๊ธฐ์ ์ฒ๋ฆฌ๋ฅผ ์ ํํฉ๋๋ค. |
| Local networks | 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 | ์๋ฒ ์์ฒด(Loopback)๋ง ์ ๋ขฐํ๋๋ก ์ค์ ํฉ๋๋ค. |
| Mailbox size limit (bytes) | 0 | ๋ก์ปฌ ์ฌ์ํจ ํฌ๊ธฐ ์ ํ ์์ |
| Local address extension character | + | ๊ธฐ๋ณธ๊ฐ ์ ์ง |
| Internet protocols to use | ipv4 | ์์ ์ ์ธ ์ฐ๊ฒฐ๊ณผ IPv6 ์ค๋ฅ ๋ฐฉ์ง๋ฅผ ์ํด ๊ถ์ฅ |
2. ๋ฉ์ผ ๋ฐ์ก ์คํจ ๋ฌธ์ ์ง๋จ ๋ฐ ํด๊ฒฐ (๋ก๊ทธ ๋ถ์)
Postfix ์ค์ ์๋ฃ ํ ๋ฉ์ผ ๋ฐ์ก ํ ์คํธ ์, ๋ค์๊ณผ ๊ฐ์ ๋ก๊ทธ๊ฐ ๋ฐ์ํ๋ฉฐ ์คํจํ์ต๋๋ค.
connect to smtp.gmail.com[...]:587: Network is unreachableconnect to smtp.gmail.com[...]:587: Connection timed outconnect to mydomain.com[...]:25: Connection timed out
2-1. ๋ฌธ์ ์์ธ ๋ถ์
- ๋ฐฉํ๋ฒฝ ์ฐจ๋จ (๊ฐ์ฅ ํฐ ์์ธ): ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ๋ณด์ ๊ทธ๋ฃน(Security Group) ๋๋ ๋ฐฉํ๋ฒฝ์์ ์ธ๋ถ๋ก ๋๊ฐ๋ 587๋ฒ ํฌํธ(SMTP submission)๊ฐ ๋งํ ์์.
- ๋ถ์์ ํ Relay ์ค์ :
relayhost = [smtp.gmail.com]:587์ค์ ์ด์ ์ ๋ค์ด๊ฐ ๋ฉ์ผ์ด 25๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํด ์์ฒด์ ์ผ๋ก ๋ฐ์ก์ ์๋ํจ. - IPv6 ์ฐ๊ฒฐ ๋ฌธ์ : IPv6 ๋คํธ์ํฌ๊ฐ ๋ถ์์ ํ ๊ฒฝ์ฐ ํ์์์ ๋ฐ์.
2-2. ํด๊ฒฐ ์กฐ์น
- ๋ณด์ ๊ทธ๋ฃน(๋ฐฉํ๋ฒฝ) ์์ : ํด๋ผ์ฐ๋ ์ฝ์(AWS, GCP, OpenStack ๋ฑ)์์ 587๋ฒ ํฌํธ ์์๋ฐ์ด๋(Outbound)๋ฅผ ํ์ฉํฉ๋๋ค.
- IPv4 ๊ฐ์ ์ฌ์ฉ:
/etc/postfix/main.cfํ์ผ์ ์ด์ด ์๋ ์ค์ ์ ๋ณ๊ฒฝํฉ๋๋ค.text inet_protocols = ipv4 - ํ ๊ฐ์ ์ ์ก: ๋ฐฉํ๋ฒฝ ํด๊ฒฐ ํ, ์ง์ฐ๋ ๋ฉ์ผ์ด ์ฌ์๋๋๋๋ก ๋ช
๋ นํฉ๋๋ค.
bash sudo postfix flush
2-3. ๋ฉ์ผ ํ ํ์ธ ๋ช ๋ น์ด
mailq
# ๋๋
postqueue -p
๋ฉ์ผ์ด ์ ์์ ์ผ๋ก ๋ฐ์ก๋๋ฉด ํ์์ ์ฌ๋ผ์ง๋๋ค.
3. ๋ค์ค ๋๋ฉ์ธ ๋ฐ์ก/์์ ๊ด๋ฆฌ ์ ๋ต
๋จ์ผ Postfix ์๋ฒ์์ 10๊ฐ ์ด์์ ๋ค์ค ์ฌ์ดํธ ๋ฉ์ผ์ ๊ด๋ฆฌํ๊ณ ์คํธ ์ํ์ ๋ฎ์ถ๋ ์์ ํ ๋ฐฉ๋ฒ์ ๋๋ค.
3-1. ๋ฐ์ก (Sending) ์ ๋ต
- ๋ชฉํ:
info@site1.com,contact@site2.com๋ฑ ์ฌ์ดํธ๋ณ ์ฃผ์๋ก ๋ฐ์ก. - ๋ฌธ์ : Gmail Relay๋ ์ธ์ฆ๋ ๊ณ์ (
abcd@gmail.com) ์ธ์ ์ฃผ์๋ก ๋ณด๋ด๋ฉด ๊ฐ์ ๋ก ์ฃผ์๋ฅผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์คํธ์ผ๋ก ๋ถ๋ฅ๋ ์ ์์. - ํด๊ฒฐ์ฑ
(๊ฐ์ฅ ์์ ):Gmail ๋์ฒด ๋ฐ์ ์ฃผ์ ๋ฑ๋ก
- Gmail ์ค์ (
abcd@gmail.com) >๊ณ์ ๋ฐ ๊ฐ์ ธ์ค๊ธฐ>๋ค๋ฅธ ์ฃผ์์์ ๋ฉ์ผ ๋ณด๋ด๊ธฐ๋ก ์ด๋. info@site1.com๋ฑ ๋ชจ๋ ๋ฐ์ ์ฃผ์๋ฅผ ๋ฑ๋กํ๊ณ ์ธ์ฆ.- ์๋ฒ์์๋ ๋ฐ์ ์ฃผ์๋ฅผ ํด๋น ์ฃผ์๋ก ์ค์ ํ์ฌ ๋ฐ์ก.
- Gmail ์ค์ (
3-2. ์์ (Receiving) ์ ๋ต
- ๋ชฉํ: ๋ชจ๋ ์ฌ์ดํธ(
info@site1.com๋ฑ)๋ก ์จ ๋ฉ์ผ์ ํ๋์ ๊ณ์ (abcd@gmail.com)์ผ๋ก ๋ชจ์์ ์์ . - ํด๊ฒฐ์ฑ : Postfix ๊ฐ์ ๋๋ฉ์ธ(Virtual Domain) ๋ฐ ํฌ์๋ฉ
/etc/postfix/main.cf์ค์ ์ถ๊ฐ:virtual_alias_domains = site1.com site2.com ... (๋๋ฉ์ธ ๋์ด) virtual_alias_maps = hash:/etc/postfix/vmail_aliases/etc/postfix/vmail_aliasesํ์ผ ์์ฑ ๋ฐ ํฌ์๋ฉ ๊ท์น ์์ฑ:info@site1.com abcd@gmail.com contact@site2.com abcd@gmail.com- ์ค์ ์ ์ฉ:
bash sudo postmap /etc/postfix/vmail_aliases sudo systemctl restart postfix
โ ๏ธ ์ค์: ์์ ๊ธฐ๋ฅ์ด ์๋ํ๋ ค๋ฉด ๊ฐ ๋๋ฉ์ธ์ MX ๋ ์ฝ๋๊ฐ ํ์ฌ Postfix ์๋ฒ์ ๊ณต์ธ IP๋ฅผ ๊ฐ๋ฆฌํค๊ณ ์์ด์ผ ํฉ๋๋ค.