zimbra 安裝、管理、設定
zimbra 安裝
設定檔路徑
/opt/zimbra/conf
檔案上傳路徑
/opt/zimbra/data/tmp/upload
MySQL 資料
要先使用 zimbra 帳號,才能登入資料庫
https://wiki.zimbra.com/wiki/MySQL_Backup_and_Restore
mysql 設定檔路徑 /opt/zimbra/conf/my.cnf
通訊錄匯出
登入管理者 ==> 搜尋 帳戶 ==> 按下齒輪旁的倒三角 ==> 下載
延伸套件
zimbra 有很多延伸套件可以使用,其中就有一個是郵件下載打包工具 Email Downloader,這個工具就可以協助整郵件了。
安裝方式:
登入管理者介面 ==> 設定 ==> Zimlet ==> 右上方“齒輪” ==> 佈署 ==> 瀏覽 ==> 選擇指定檔案 ==> 點 佈署,就會放上去了
移除方式
登入管理者介面 ==> 設定 ==> Zimlet ==> 在指定的套件上按滑鼠右鍵 ==> 關閉佈署
停用方式
登入管理者介面 ==> 設定 ==> Zimlet ==> 在指定的套件上按滑鼠右鍵 ==> 切換狀態
註:記得下載的檔案名稱應與 zip 檔中 xml 檔名相同,否則安裝會失敗
相關資料:
官方延伸套件網站
https://www.zimbra.org/extend/
email 下載套件
https://www.zimbra.org/extend/items/view/email-downloader
補充1:使用 downloader 這個套件,必需使用 AJAX 閱讀模式,而且是用拖拉方式到這個套件上面
補充2:會先產生 zip 檔,而檔案內容為 *.eml 檔
補充3:如果停用再啟用可能會造成功能異常,這時就刪除重裝,記得要勾選 清除Zimlet 快取
重新啟動 zimbra 服務
有些部分仍需使用指令來管理,如重新啟動,funkent 大的文章真的是很不棒呢! ^^
zmcontrol restart <== 重新啟動所有服務
註:需要登入 zimbra 帳號
參考資料:Zimbra 三十天就上手 - Day 21 zmcontrol
https://ithelp.ithome.com.tw/articles/10134061
設定上傳檔案大小
GUI:設定 ==> 全域設定 ==> 一般資訊 ==> 從桌面上傳的最大檔案大小(KB)
command:
zimbra@mail:~$ zmprov gacf |grep FileUploadMaxSize
註:要正常使用指令,要先變更身份為 zimbra
參考資料:bizpro 大的回應
https://ithelp.ithome.com.tw/questions/10139977
網域別名設定
參考資料:Funkent -- Zimbra 三十天就上手 - Day 18 新增Zimbra 的網域別名(Domain Alias)
https://ithelp.ithome.com.tw/articles/10132789
zimbra 官方說明文件
https://www.zimbra.com/documentation/
安裝文件 -- 單機
https://zimbra.github.io/zimbra-9/single-server-install.html
Fanny Komala Sari 大大文章
https://dixmata.com/install-zimbra/
zimbra 指令
zmprov (Provisioning)
zmaccts
zmcalchk
zmcontrol (Start/Stop/restart/status Service)
zmcertmgr
zmgsautil
zmldappasswd
zmlocalconfig
zmmailbox
zmtlsctl
zmmetadump
zmmypasswd
zmproxyconfgen
zmproxypurge
zmskindeploy
zmsoap
zmstat-chart
zmstat-chart-config
zmstatctl
zmthrdump
zmtrainsa
zmtzupdate
zmvolume
zmzimletctl
zmproxyconfig
範例:
zmprov gacf <== All LDAP settings are displayed。列出所有與 LDAP有關的設定
zmprov gcf zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating <= 取得預設 IP 封鎖最小時間
zmprov gcf zimbraMtaHeaderChecks <== 查看 Postfix Header Checks 所使用的檔案位置
zmprov
mcf zimbraMtaHeaderChecks 'pcre:/opt/zimbra/conf/postfix_header_checks
pcre:/opt/zimbra/conf/custom_header_checks' <== 將 custom_header_checks 加入 Postfix Header Checks 所使用的檔案
zmcontrol -v <== 查看 Zimbra 版本
zmprov desc <== 列出所有屬性名稱
zmprov desc -v <== 列出所有屬性並說明功能
zmamavisdctl status <== 檢查 amavisd 服務狀態
zmamavisdctl reload <== 重新載入 amavisd 設定
註:各服務都有 zm[服務名]ctl 的指令,這個指令就可以管理單一服務
zmlocalconfig <== 列出所有本機參數
zmlocalconfig -e amavisBannedRuleNames=BLOCK_ALL <== 加入變數
zmlocalconfig -u amavisBannedRuleNames <== 刪除變數
zmprov gac -v |grep MailForwarding <== 列出關於 MailForwarding 相關參數
zmprov -l gaa <== 列出所有帳號
zmcontrol status <== 列出所有服務
註:gac = getAllCos,gaa = getAllaccount
參考資料:
zimbra 官方說明文件
https://www.zimbra.com/docs/os/6.0.10/administration_guide/A_app-command-line.13.03.html
zimbra 官方說明文件 -- zmprov 說明(注意看看這份文件,可以知道 gc、gac、gcf 等等縮寫的意義)
https://wiki.zimbra.com/wiki/Zmprov
ccxeoverfly 大的文章 -- ZIMBRA命令行方式常用的操作
https://www.twblogs.net/a/5b9961a62b717757338f7cd5
brayden 文章 -- Managing Service Commands in Zimbra
https://www.linuxhelp.com/managing-service-commands-in-zimbra
官方文件 -- 列出有設定轉送(forwarding)的使用者
https://wiki.zimbra.com/wiki/Obtain_all_the_forwards_per_each_account
關閉轉送功能
在 zimbar 中有兩種轉送功能
1. 允許使用者指定轉寄地址(參數:zimbraFeatureMailForwardingEnabled)
2. 使用者使用篩選條件進行郵件重新導向目的地位置(參數:zimbraFeatureMailForwardingInFiltersEnabled)
如果要完全關閉兩種轉送功能,兩個參數都要設為 FALES
註1:第一點可以在 UI 介面設定,或使用指令修改,第二點只能使用指令修改
zmprov mc default zimbraFeatureMailForwardingInEnabled FALSE
zmprov mc default zimbraFeatureMailForwardingInFiltersEnabled FALSE
註2:已設定的部分,在修改參數後,必需手動關閉
參考資料:izan 大口述
zimbra log 路徑
/opt/zimbra/log
參考資料:官方說明
https://www.zimbra.com/docs/os/6.0.10/administration_guide/9_Monitoring.12.08.html
清除 GAL 快取
在 zimbra 中,可以建立一個 GAL 帳戶,這個帳戶會快取所有使用者寄信後的 email,如果這個帳戶沒有清除,就會永久記得使用者寄信後的 email,如果有打錯帳號的情形,就會永遠記住
登入管理介面 => 設定 => 網域 => 於指定網域點滑鼠左鍵兩下 => GAL => GAL 帳戶 => 內部 GAL 輪詢間隔 => 30天
註1:設定 30 天輪詢,就會在 30 天後清除在 GAL 帳戶中的快取
註2:最小值為 1 分鐘
參考資料:zimbra 官方 wiki
https://wiki.zimbra.com/wiki/GAL_Sync_Account
發生網路錯誤服務
有部分同事常會發生“網路錯誤服務”這樣的問題,經過官方說明後確認是因為 8.5版以上為了防止惡意IP嘗試暴力攻擊所新增的功能
處理方式:
1. 將指定 IP 加入白名單
zmprov mcf +zimbraHttpThrottleSafeIPs 192.168.2.1
zmprov ms `zmhostname` +zimbraHttpThrottleSafeIPs 192.168.2.1
zmmailboxdctl restart
2. 提高 blocked 的上限次數
zmprov mcf zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating 25
zmmailboxdctl restart
註:
zmprov gacf <= 列出所有的 LDAP 參數設定
參考資料:Zimbra Tech Center
https://wiki.zimbra.com/wiki/Users_get_%27Network_service_error%27,_and_mailbox.log_shows_%27Access_to_IP_x.x.x.x_suspended,_for_repeated_failed_login%27
Zimbra DoSFilter 說明
https://wiki.zimbra.com/wiki/DoSFilter
註1:查詢設定預設值
zmprov gcf [name]
例:
取得預設 IP 封鎖最小時間
zmprov gcf zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating
取得白名單 IP 列表
zmprov gcf zimbraHttpThrottleSafeIPs
取得伺服器白名單 IP 列表
zmprov gs zimbraHttpThrottleSafeIPs
zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating: 15 <= 預設 IP 封鎖最小時間為 15 分鐘
zimbraInvalidLoginFilterMaxFailedLogin: 10 <= 預設登入最多 10 次錯誤
zimbraInvalidLoginFilterReinstateIpTaskIntervalInMin: 5 <= 進行中的程序 IP 封鎖解除時間
註2:修改預設值
zmprov mcf [name]
zmprov mcf zimbraInvalidLoginFilterDelayInMinBetwnReqBeforeReinstating 25 <= 修改 IP 封鎖最小時間為 15 分鐘
zmprov mcf zimbraInvalidLoginFilterMaxFailedLogin 5<= 修改登入最多 5 次錯誤
zmmailboxdctl restart <= 重新載入規則
如何手動解除封鎖
在指令上並沒有看到相關方式,這個可能得進入資料庫中看資料表,才能得知了
zimbra 網址檢(未完成)
設定 => 全域設定 => MAT => 通訊協定檢查、DNS 檢查
zimbra 佇列管理
zimbra 真的是做的很完整,關於佇列管理可以進到 Zimbra 管理介面 => 監控 => 郵件佇列查看
參考資料:
官方說明
https://wiki.zimbra.com/wiki/Managing-The-Postfix-Queues
附件白名單
所為的附件白名單就類似防火牆,預設全擋,只有指定的附檔名才開放
下面這個規則會發生 user@domain.ltd 這個信箱只能純文字格式的文件及 TXT 檔可以通過,其他格式禁止。
%banned_rules = (
'BLOCK_ALL' => new_RE(
[ qr'^text/plain$'i => 0 ],
[ qr'^.[a-zA-Z0-9]*$' => 1 ] ),
'DEFAULT' => $banned_filename_re,
);
@banned_filename_maps = ({
'user@domain.ltd' => 'BLOCK_ALL',
'.' => 'DEFAULT',
});
註:這個為多規則寫法
下面這個規則會發生所有信箱只能用 png、jpg、gif、pdf、doc、docx、xls、xlsx、tiff、tif、zip、7z、tar.gz 延伸附檔名且 MIME 類型為純文字及 html 的文件通過,其他延伸格式檔名的文件禁止
%banned_rules = (
'ALLOW' => new_RE(
[ qr'..(?:png|jpg|gif|pdf|doc|docx|xls|xlsx|tiff|tif|zip|7z|tar.gz)s*$' => 0 ],
[ qr'(text/plain|text/html)' => 0 ],
[ qr'.' => 1 ],)
);
@banned_filename_maps = ({
'.' => 'ALLOW'
});
註1:必需要放到 1; # insure a defined return 前面
註2: => 0,表示通過。=> 1,表示禁止
註3:關於附檔名的部分,仍有些需要測試
註4:設定檔 /opt/zimbra/conf/amavisd.conf
註5:zimbra 設定 amavisd,必需寫在 amavisd.conf.in 中,重新載入後才會生效
註6:重新載入 amavis,zmamavisdctl reload
註7:如果信件被擋了 /var/log/zimbra.log 中可以看到 Blocked BANNED 這個字串
註8:大小寫有差
補充1:當於管理介面的全域設定 => 附件 => 加入一個封鎖的附檔名時,可以使用 zmprov gacf |grep zimbraMtaBlockedExtension 秀出系統設定的附檔名,這個也是在 amavisd.conf.in 中 banned_filename_re 下的變數
參考資料:
blues 大測試
iRedmail 討論串 -- amavis
https://forum.iredmail.org/topic3734-iredmail-support-how-to-block-attachments-for-specific-users.html
Josphat Mutai 文章 -- Configure whitelist and blacklist Zimbra Amavis Spam filtering
https://computingforgeeks.com/configure-whitelist-blacklist-zimbra-amavis-spam-filtering/
sourceforge -- AMaViS - A Mail Virus Scanner 有說明 amavis 的設定規則
https://sourceforge.net/p/amavis/mailman/message/19959821/
官方討論串
https://forums.zimbra.org/viewtopic.php?t=14133
官方說明
Real time attachment scanning for outgoing mail sent via the web client
https://wiki.zimbra.com/wiki/New_Features_ZCS_8.5
Improving Anti-SPAM System,這裡有教自行定義 Anti-SPAM,8.5版以上才能
https://wiki.zimbra.com/wiki/Improving_Anti-spam_system
Anti-spam Strategies,這裡有說明,8.5 版以下的該如何建立自行定義 Anti-SPAM
https://wiki.zimbra.com/wiki/Anti-spam_Strategies#Customizing_SpamAssassin
Log Files 說明
amavis 的 log 位置為 /var/log/zimbra.log
https://wiki.zimbra.com/wiki/Log_Files
amavisd-new 內建說明文件
/usr/share/doc/amavisd-new-2.11.1/README_FILES/README.banned
郵件寄送問題
zimbra 寄出的郵件是有加密的(smtp),如果要透過使用 DLP 這樣的功能,必需要開啟 SSL 的 Deep Inspection
匯入憑證
註:這個方式適用 8.6 以前版本,8.6 以後的版本必需先安裝 Let's Encrypt 套件
參考資料:
AmJet 大的 blog -- 已收到憑證的匯入方式
http://blog.amjet.biz/IT/?p=928
zimbra 討論串 -- jorgedlcruz 回應
https://forums.zimbra.org/viewtopic.php?t=59953
官方說明文件
https://wiki.zimbra.com/wiki/Installing_a_LetsEncrypt_SSL_Certificate
帳號轉寄
這個做法是透過 postfix 中 sender_dependent_relayhost_maps 這個功能達成,所以,只要是使用 postfix,這個方式都可以通用,不過,需要注意 postfix 版本
1. 開啟 postfix 轉寄功能
vi /opt/zimbra/postfix/conf/main.cf
新增 sender_dependent_relayhost_maps = lmdb:/opt/zimbra/postfix/conf/bysender
2. 建立 postfix 轉寄檔案,並於檔案中寫入轉寄資訊(依需求設定)
vi /opt/zimbra/postfix/conf/bysender
@domain1.com [10.10.10.1] <== 全網域轉寄
user@domain.com [10.10.10.2] <== 個人轉寄
3. 建立 hash 檔案
postmap /opt/zimbra/postfix/conf/bysender
註:上面的動作會直接加入新的資料,如果要是重建 hash 檔,請刪除再重新執行
4. 重新啟動 zmmtactl 服務
zmmtactl stop
zmmtactl start
參考資料:
zimbra 官方說明
https://wiki.zimbra.com/wiki/Relay_per_Domain
zimbar 後台可以列出所使用的參數
使用滑鼠點指定的中文,他會列出所使用的參數
圾垃信管理
zimbra 也有內建 antispam 功能,還沒試過,有機會來試試
參考資料
官方說明
https://wiki.zimbra.com/wiki/Anti-spam_Strategies
zimbra 快速鍵列表
ctrl + q
其他資訊
開源界最強訊息平台 架設Zimbra郵件協同(上)
http://www.netadmin.com.tw/article_content.aspx?sn=1507080008&jump=1
開源界最強訊息平台 架設Zimbra郵件協同(下)
http://www.netadmin.com.tw/article_content.aspx?sn=1508100003
Zimbra 三十天就上手
http://ithelp.ithome.com.tw/articles/10126738
官方文件
Default Ports Used by Zimbra
https://wiki.zimbra.com/wiki/Ports
Zimbra Directory Service (LDAP)
https://wiki.zimbra.com/wiki/Zimbra_Directory_Service_(LDAP)
How to Install Zimbra Collaboration 8.8 on Ubuntu 16.04 LTS
註:在安裝過程中,會少不少套件,但目前測試收發信並沒有影響
https://blog.zimbra.com/2018/01/install-zimbra-collaboration-8-8-ubuntu-16-04-lts/
UnInstall Zimbra on Linux -- manual
註:步驟上會有些不同,在移除時應注意
https://wiki.zimbra.com/wiki/UnInstalling_Zimbra_on_Linux
postfix-header_checks
https://wiki.zimbra.com/wiki/King0770-Notes-Header-Checks
Reinstall all Zimlets and Admin Extensions
註:快速安裝/移除 延伸套件方式
https://wiki.zimbra.com/wiki/Reinstall_all_Zimlets_and_Admin_Extensions
留言
張貼留言