Apache2 Subversion Server 與 WebSVN 安裝

雖然近年 Git 非常火紅,但我個人開發還是喜歡中央集權式的 Subversion (SVN)擁有一台私人的 SVN Server 對於開發非常方便,尤其香港的 Client 最喜歡把 Project 左改右改,最後又改回頭。

Apache2 只需要一個簡單的插件 libapache2-svn 就能提供 SVN Repository Server 的功能,
再安裝 WebSVN 更可做到用瀏覽器查看和下載歷史檔案,非常好用。

Continue reading “Apache2 Subversion Server 與 WebSVN 安裝”

Android ProGuard 常用設定 與 Library 衝突解決 (Gson, ActionbarSherlock)

Android Apps 主要由 Java 編寫,編譯 (Compile) 時先由 Java Code Compile 成 Java Bytecode,然後再變成 Dalvik Bytecode。
由於 Bytecode 對比 Machine Code 較易被反編譯 (Decompile),
反編譯後甚至連 Variable 及 Class 的名稱都不變,造成 Apps 較易被破解及盜用。

因此 Java 程式發佈通常使用 Obfuscator 把 Bytecode 的 Variable, Class 名稱及邏輯變得難以理解。
Obfuscator 有很多種,但 Android 的世界主要使用 Proguard (其實它還具有Optimizer等功能),
而且它已經被整合進 Android build system,所以只要簡單設定就可以使用(但不代表成功使用…)。

Continue reading “Android ProGuard 常用設定 與 Library 衝突解決 (Gson, ActionbarSherlock)”

Ubuntu Postfix Mail Server 設定筆記 (四) MSA (Dovecot SMTP 認證)

本系列第四篇: 設定 MSA (Mail Submission Agent)
讓使用者透過伺服器發送郵件

一般使用者的發送 Email 的流程,不是 Webmail 就是用 SMTP。
這裡 SMTP 清晰一點是 SMTP Submission,即是 MUA 透過 MSA 委托 MTA 代為傳送郵件 (Relay)。
而 SMTP Submission 當然需要有登入設定,不然肯定會成為 Spam Mail 的 Open Relay了。
現在的 Postfix 預設設定已經不允許 Open Relay,所以必需先設定登入機制才能外部使用。

Postfix 使用模組化的設計,各部分都是分開的。
換句話說您可以使用很多不同的登入插件,
SASL (Simple Authentication and Security Layer) 就提供 Postfix 和 登入插件間的溝通。

Postfix 目前支援 Cyrus 和 Dovecot 的 SASL 實作。

本部分是為了將 SMTP 的 MSA 登入驗證整合到 Dovecot。

2017-04-26 更新: 更新文章格式

Continue reading “Ubuntu Postfix Mail Server 設定筆記 (四) MSA (Dovecot SMTP 認證)”