Category Archives: System

Zimbra email server DKIM 設定

DKIM 是一個 email 驗證機制,發送方在 email 表頭加入 DKIM 記錄,這個記錄包含 email 的數位簽章,接收方看到 DKIM 表頭後依據指示到 DNS 取得發送方 public key 進行驗證,如果驗證成功即可確保信件來源無誤

Zimbra 設定程序如下:

/opt/zimbra/libexec/zmdkimkeyutil -a -d <your domain name>

以上指令完成後 Zimbra 會提示在 DNS 加入一筆 TXT 記錄,也就是前面說的 public key 資訊以供接收方驗證,這邊要注意的是 DNS TXT 記錄有 255 個字的限制,如果直接把 Zimra 顯示資料直接貼到 DNS 資料庫會查不到資料,解決方法是原 TXT “v=DKIM1;k=rsa;p=…..” 修改成多個段落如 “v=DKIM1;” “k=rsa;” “p=…..” 每個段落不超過 255 個字即可

驗證方式:

發一封 email 到 gmail,在 gmail 信件三點標示選 show original,應該會看到 DKIM: PASS,如果為 FAIL 則須檢查設定步驟是否有誤

Windows 多個網路界面,如何指定想用的 DNS server

以 Notebook 為例,常會用到的網路界面有 WIFI、網路卡、VPN 等,當手機 USB 網路共用啟用後,這個界面 (通常是 Remote NDIS) 會設定好 IP、DNS 等資訊,當你再連上 VPN 後,VPN 界面 (以 TAP adapter 為例) 也會依 server 指定設定好另一組 IP、DNS 等資訊,現在有2 個不同的 DNS server,要怎麼確定 Window 會先用那一個?

在 Windows 設定 > 網路和網際網路 > 變更界片卡選項,在界面卡按滑鼠右鍵點內容,TCP/IPv4 > 進階 取消勾選 ‘自動計量’ 然後指定一個值,這個值愈小代表這個界面卡優先權愈高,只要優先權高的 DNS 有回應就不會去查詢優先權低的

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

SSH 以 public key 登入

步驟1: 以 puttygen 程式產生 public、private key pair,將 public key 字串存入 <USER_HOME>/.ssh/authorized_keys,private key 存在本機 mykey.ppk

步驟2:修改 putty 的 session 設定 Connection > Data > Auto-login username 填入自己的登入帳號,Connection > SSH > Auth > Private key file 選擇剛產生的 mykey.ppk

註1: 請注意 sshd_config 的 AuthorizedKeysFile 設定是否為 .ssh/authorized_keys,如果不是 public key 的存放位置要依設定存放

註2: <USER_HOME>/.ssh mode 必須為 700,authorized_keys mod 必須為 600

註3:如果登入時出現 ‘Server refused our key’ 的錯誤,請利用 puttygen 選單 Conversions > Export OpenSSH key 功能進行轉換

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

MariaDB 資料庫編碼問題

如果寫入資料庫出現類似以下錯誤

org.mariadb.jdbc.internal.util.dao.QueryException: Incorrect string value: ‘\xE8\x87\xBA\xE5\x8C\x97…’ for column

先檢查資料庫的編碼設定,例如資料庫名稱為 mydb

mysql mydb

show variables like ‘char%’;

character_set_database 的設定可能是預設值 latin1 與你的資料編碼不一致,因而出現上述問題

建決方法是將資料庫 drop 掉用以下指令在建立資料庫時指定編碼,例如

create database mydb character set ‘utf8’

這時候再檢查一次 character_set_database 應該是顯示 utf8,後續建立的 table 也都會採用這個編碼

附註:

檢查資料庫內 table 編碼可以用 show table status

檢查 table 內欄位編碼可以用 show full columns from <your table>

CentOS 7 設定 character_set_server 則是在 /etc/my.cnf.d/server.cnf 的 server section 加一行

character_set_server=utf8

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...