2018年10月15日 星期一
[Postfix] - 新增虛擬帳號部分 , 實現 同一個User , 針對不同網域收信後,轉到各自的gmail
# sudo vim /etc/postfix/main.cf
# 新增接收的網域 , 跟 虛擬帳號
mydestination = abc.com def.com
virtual_alias_maps = hash:/etc/postfix/virtual
# sudo vim /etc/postfix/virtual
service@abc.com 123@gmail.com
service@def.com 456@gmail.com
# 前面是同一個User@不同網域 指定給不同的@gmail.com
# 如果都要同一使用者收 ~
# sudo vim /etc/aliases
# 修改後 ~ 等一下要hash重啟 postfix
# 這樣postfix才知道要收不同的網域
# 改好 /etc/postfix/virtual 後 , 要hash 生效
# postmap /etc/postfix/virtual
# 重啟
# /etc/init.d/postfix restart
# 先修改成都寄到自己的 gmail
# 後續再改成正確的客戶 gmail
2018年10月14日 星期日
[Postfix] - 垃圾信件降低方法
#參考資料
https://support.google.com/mail/answer/81126#authentication
##原圖來自DMARC官網itpisondotcom中譯
由於 email 被行銷玩到 .... 有點爛掉
所以造成各 ISP的信箱 ~ 針對信件所需規格越來越多
所以系統架構 smtp 跟 發信內容架構也有關係
基本架構 : IP 反解申請 , 正解確認 , DNS MX 要設定 , Google Yahoo SPF 要設定 ..
1. 新增 TLS 信件通道加密
sudo vim/etc/postfix/main.cf
smtpd_tls_security_level = may
smtp_tls_security_level = may
2. 新增 dkim
sudo apt-get install opendkim
-
設定 /etc/opendkim.conf
# 修改以下設定 Mode sv Domain {your-domain} # 新增以下設定 AutoRestart Yes AutoRestartRate 10/1h LogWhy Yes Syslog Yes SyslogSuccess Yes Canonicalization relaxed/simple ExternalIgnoreList refile:/etc/opendkim/TrustedHosts InternalHosts refile:/etc/opendkim/TrustedHosts KeyTable refile:/etc/opendkim/KeyTable SigningTable refile:/etc/opendkim/SigningTable SignatureAlgorithm rsa-sha256 Socket inet:8891@localhost PidFile /var/run/opendkim/opendkim.pid UMask 022 UserID opendkim:opendkim TemporaryDirectory /var/tmp
-
產生 domain key (將 {your-domain} 換成您的 domain name
mkdir /etc/opendkim/keys/{your-domain} opendkim-genkey -D /etc/opendkim/keys/{your-domain}/ -d {your-domain} -s default chown -R opendkim: /etc/opendkim/keys/{your-domain} mv /etc/opendkim/keys/{your-domain}/default.private /etc/opendkim/keys/{your-domain}/default
-
把您的 domain 加入 OpenDKIM 的 key table
vi /etc/opendkim/KeyTable # 新增以下設定 default._domainkey.{your-domain} {your-domain}:default:/etc/opendkim/keys/{your-domain}/default.private
-
加入 OpenDKIM 的 signing table
vi /etc/opendkim/SigningTable # 新增以下設定 *@{your-domain} default._domainkey.{your-domain}
-
快速設定 OpenDKIM (步驟 3~5)
# 將 {your-domain} 改為你的網域 export domain={your-domain} mkdir /etc/opendkim/keys/$domain cd /etc/opendkim/keys/$domain opendkim-genkey -d $domain -s default chown -R opendkim:opendkim /etc/opendkim/keys/$domain echo "default._domainkey.$domain $domain:default:/etc/opendkim/keys/$domain/default.private" >> /etc/opendkim/KeyTable echo "*@$domain default._domainkey.$domain" >> /etc/opendkim/SigningTable
-
加入 OpenDKIM 的 TrustedHosts table
vi /etc/opendkim/TrustedHosts # 新增以下設定 {your-domain} host.{your-domain}
sudo vim /etc/postfix/main.cf
#DKIM
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891
還有信件內的 DMARC... 繼續補充
[PHP升級] - 5.5.9 -> 5.6
某個專案 , Ubuntu 14.04 PHP 5.5.9 不夠用 ~ 所以要升級到 PHP 5.6
@產品環境做法 :
1. 使用Docker or Vm Fork 出另外一個驗證環境, 測試無誤後
直接升級或慢慢切換搬資料
@測試環境 : 不正常做法 : 直接衝
透過 PPA 先安裝必要元件
sudo apt-get install software-properties-common
fifi@xxx:~# php -v
PHP 5.6.38-1+ubuntu14.04.1+deb.sury.org+2 (cli)
Copyright (c) 1997-2016 The PHP Group
結果 網頁上的 phpinfo(); 跟 cli 模式下的 php 版本不同
查看了一下, 是 php so 沒有 include 新版的
cd /etc/apache2/
root@trust-digit:/etc/apache2# grep php * -R
mods-available/php5.load:#LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
改為
mods-available/php5.load:#LoadModule php5_module /usr/lib/apache2/modules/libphp5.6.so
restart apache2
OK了 # 如有其他 php 5.6 套件要安裝
# apt-cache search php5.6
@產品環境做法 :
1. 使用Docker or Vm Fork 出另外一個驗證環境, 測試無誤後
直接升級或慢慢切換搬資料
@測試環境 : 不正常做法 : 直接衝
透過 PPA 先安裝必要元件
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get -y update
sudo apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip php5.6-soap
fifi@xxx:~# php -v
PHP 5.6.38-1+ubuntu14.04.1+deb.sury.org+2 (cli)
Copyright (c) 1997-2016 The PHP Group
結果 網頁上的 phpinfo(); 跟 cli 模式下的 php 版本不同
查看了一下, 是 php so 沒有 include 新版的
cd /etc/apache2/
root@trust-digit:/etc/apache2# grep php * -R
mods-available/php5.load:#LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
改為
mods-available/php5.load:#LoadModule php5_module /usr/lib/apache2/modules/libphp5.6.so
restart apache2
OK了 # 如有其他 php 5.6 套件要安裝
# apt-cache search php5.6
訂閱:
文章 (Atom)