GCP SendGrid 信箱設定

僅作為個人紀錄使用

一、設定 SendGrid,並申請帳號

  1. 至搜尋框輸入”sengrid email”,並點選該項目

GCP-SendGrid

  1. 進入「SendGrid Email API」頁面後,直接點選「開始使用免費方案」

GCP-SendGrid

  1. 接著選擇使用的方案,這裡使用Free免費方案,每月最多可免費寄送12000封信件

GCP-SendGrid

  1. 再來要註冊 SendGrid帳號,點選註冊

GCP-SendGrid

  1. 開始註冊帳號,這裡填寫的Username及Password會當作網站發信用的帳密

GCP-SendGrid

  1. 送出後回到後台,即可看已訂閱「Free」方案

GCP-SendGrid

二、主機 Postfix 設定

  1. 以 SSH 連線進入主機
  2. 輸入以下指令進行安裝套件及設定
1
2
3
4
5
6
7
8
9
10
sudo umask 077
sudo yum install cyrus-sasl-plain cyrus-sasl-md5 mailx -y

```bash

3. 編輯 /etc/postfix/main.cf 文件,至文件最底部,貼上以下設定值,並儲存

```bash
sudo vi /etc/postfix/main.cf

1
2
3
4
5
6
7
8
貼上以下設定值:
relayhost = [smtp.sendgrid.net]:2525
smtp_tls_security_level = encrypt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
header_size_limit = 4096000
smtp_sasl_security_options = noanonymous

GCP-SendGrid

  1. 輸入以下指令,建立發信的帳號密碼檔,USERNAME填入剛註冊的帳號(注意是username,不是信箱),PASSWORD填入註冊密碼
1
2
sudo echo [smtp.sendgrid.net]:2525 USERNAME:PASSWORD >> /etc/postfix/sasl_passwd

  1. 輸入以下指令,將上面建立好的檔案,轉成db格式
1
2
sudo postmap /etc/postfix/sasl_passwd

  1. 輸入以下指令,確認是否有產生.db的檔案
1
2
sudo ls -l /etc/postfix/sasl_passwd.db

  1. 確認建立好後刪除先前的帳號密碼檔
1
2
sudo rm-rf /etc/postfix/sasl_passwd

  1. 輸入指令,重啟 postfix,若無錯誤訊息則表示設置成功
1
2
sudo postfix reload

三、測試發信

  1. 輸入下面指令測試發信,youremail@example.com 填入你的信箱,若有收到主旨為”Test-Email”,內容為”Message”的信件,即表示設定成功!
1
2
echo 'Message.' | mail -s Test-Email youremail@example.com

  1. 也可使用程式來發信,設定資訊如下:
    • SMTP
    • Host: smtp.sendgrid.net
    • Port: 2525
    • Username: 註冊帳號
    • Password: 註冊密碼