顯示具有 MIS日記 標籤的文章。 顯示所有文章
顯示具有 MIS日記 標籤的文章。 顯示所有文章

2018年12月10日 星期一

Proxmox Mail Gateway 自訂關鍵字

因為WEBUI不能輸入中文,所以只能從底層的Spamassassin處理
需要修改 /etc/mail/spamassassin/custom.cf
修改完畢後需要重啟服務套用 systemctl restart pmg-smtp-filter

參考資料
https://forum.proxmox.com/threads/custom-cf-file.1864/
https://wiki.apache.org/spamassassin/WritingRules
https://ssorc.tw/74

2018年12月9日 星期日

Proxmox Mail Gateway WebUI patch

PMG網頁介面個人修正,可以少點兩次滑鼠
修改的路徑是 /usr/share/javascript/pmg-gui/js/pmgmanagerlib.js

Proxmox Mail Gateway 的問題

PMG不足之處

論壇上的評測
https://forum.proxmox.com/threads/feature-requests.43237/

使用Proxmox Mail Gateway取代efa-project

從DistroWatch看到Proxmox的資訊,發現Mail Gateway年初就OpenSource了,想說efa-project能用web操作的功能有限,不容易給其他人維護,看了一下Proxmox的Mail Gateway幾乎是全Web操作的,所以就下載來試試看


2017年5月29日 星期一

EFA-Project 更新 3.0.2.3

導入EFA之後垃圾郵件有減少使用上也沒什麼問題,前陣子收到讀者反映說新版本釋出,依照之前的方式修改程式無法運作,所以才有這篇的產生

主要是因為mailwatch的變更頗大,程式碼重新組織也增加了新功能
因此這次修改沒有像以前一樣那麼大


2017年2月19日 星期日

安裝Mantis作為事件追蹤系統

最近開會一直有橫向聯繫不夠的問題發生,因此老闆指示要加強各單位橫向聯繫的功能。
所以打算導入Mantis讓「支票攤在陽光下,自己開的支票自己坦」

1. 安裝 CentOS 7.3.1611 使用最小安裝,設定固定IP

2. 修改 /etc/selinux/config 將模式改為 permissive

3. 使用yum安裝所需的套件 net-tools unzip wget  mariadb-server httpd php php-pdo php-mysql

4. 設定服務開機啟動 systemctl enable httpd

5. 啟動服務 systemctl start mariadb

6. 關閉防火牆 systemctl disable firewalld  (好孩子不要學)

7. 下載 mantisbt-2.1.0.zip 解壓縮放置到 /var/www/html/

8. 下載 adminer.php 放置到 /var/www/html/

9. 使用adminer登入mariadb建立一個新的資料庫與使用者

10. 使用瀏覽器連接到mantis目錄會導向installer

11. 依照installer的引導完成mantis初始化

12. 最後需要將config.inc.php內容放置到 /var/www/html/mantis/config/config_inc.php

13. 預設帳號為administrator 密碼為 root

以上就是基本安裝


2017年1月2日 星期一

垃圾郵件防治 EFA-Project 自訂關鍵字

EFA使用的是spamassassin作為計算分數的引擎,而spamassassin有自訂規則的功能


EFA裡面規則放置於 /etc/mail/spamassassin 目錄,可以看到一個 KAM.cf 的檔案,會自動更新 (從http://www.pccc.com/downloads/SpamAssassin/contrib/KAM.cf)


規則格式說明
https://wiki.apache.org/spamassassin/WritingRules


寫好規則之後需要重新啟動 MailScanner 服務才會套用


測試時發現在EFA的Spam Report項目看不到規則的說明(Description)

這是因為這個說明文字是存在資料庫中,因此要在EFA的Tools選單中執行「Update SpamAssassin Rule Descriptions」的動作才行


2016年3月13日 星期日

垃圾郵件防治 EFA-Project SPAM Gateway



話說垃圾郵件一直都是MIS的痛,尤其是沒預算買SPAM閘道的(最小25U、50U對於10多人的小企業負擔不起),上Gmail就更不用說了(10U一年就要一萬多),防火牆或者UTM上面的SPAM過濾往往是半殘(在主旨加上SPAM或對中文內容無法過濾),雖然知道Linux可以架設SPAM閘道但是身為兼職的MIS多一事不如少一事,遲遲沒時間研究,偶然找到EFA這個專案(https://www.efa-project.org),他有ova在虛擬化上部署極快,啟動後經過簡單的設定即可開始運作。


EFA使用的是 CentOS6 + Postfix + MailScaner + SpamAssassin + MailWatch
而且已經預先配置完成,在CLI的精靈模式設定可以很容易地完成初始化
只需要設定欲接收的網域與轉送的Mail Server IP即可

其實公司的Mail Server有內建垃圾郵件過濾與灰名單功能,但是提供可設定的項目太少,隔離清單還是英文的,內勤人員根本不知道怎麼用。至於灰名單功能,時常會造成郵件延遲,所以後來關掉了。

基本上EFA滿足了對於一個基本的SPAM閘道需求
1. 有隔離所
2. 有spam分數,用來分析校調
3. 能做客製化調整(MailWatch是PHP寫的配合的資料庫是MySQL)


2015年7月19日 星期日

從OpenWebmail遷移帳號至Zimbra

前言

前一陣子受託將OpenWebmail帳號轉移至Zimbra上,在網路上找了一些文件,原以為能直接匯入帳號,等SE安裝完後發現匯入的只能是明文的帳號密碼,而內建的帳號轉移功能不錯能將信箱郵件也匯入不過一樣需要明文的密碼,對於默默轉移的系統IT/MIS而言無法使用,而唯一能匯入密文密碼的方式只有透過LDIF匯入的方式了,而這個Zimbra的LDAP是安裝自帶的非OS本身的LDAP套件


步驟

1. 首先要取得舊有OpenWebmail系統的帳號(passwd)與密碼(shadow),然後利用下面這個PHP Script轉換成LDIF文件(注意:這個Script會將原本停用的帳號也轉換並「啟用」)



2. 取得Zimbra的LDAP連接資訊,剛開始誤以為是使用OS自帶的openLDAP,看LDAP設定檔的rootDN與password卻一直連不上去,後來才發現是自帶的服務,rootDN與password都不同,password是安裝隨機產生的需要使用「zmlocalconfig -s -m nokey zimbra_ldap_password」才能取得,rootDN「uid=zimbra,cn=admins,cn=zimbra」

3. 使用ldapadd命令匯入LDIF,如果匯入的LDIF有問題則會中斷匯入,造成某些帳號匯入某些尚未匯入,這時候就要修改LDIF錯誤以及去除已經匯入的帳號才能繼續進行匯入

2012年2月17日 星期五

vsftpd使用SSL在filesilla無法登入的問題

今天收到一個問題就是vsftp server無法登入
GnuTLS error -8: A record packet with illegal version was received.

查了很久,換版本、重編譯都試過了,發現原來是client版本不同有不同的狀況

最後發現這篇

http://trac.filezilla-project.org/ticket/7873



只要在vsftpd.conf加上即可
ssl_ciphers=HIGH

2011年9月15日 星期四

CentOS5 => CentOS6

1. shadow密碼的HASH方式由md5改為sha512

http://scottlinux.com/2011/06/25/upgrade-red-hat-centos-password-hashing/
http://www.cyberciti.biz/faq/rhel-centos-fedora-linux-upgrading-password-hashing/

2. /etc/inittab整個解體為多個script於/etc/init/目錄底下,與/etc/sysconfig/init 這個設定檔

3. 預設改用ext4檔案系統,且文字介面安裝模式無法設定分割區與網路(應該可以用kickstart硬幹出來)

3. vixie-cron由cronie取代(因為相依性被迫安裝postfix),syslog由rsyslog取代

4. python為2.6、PHP為5.3

2011年7月13日 星期三

校時很重要

這最近多次接到同一個問題,某客戶的openwebmail登入後出現抱歉!因為您太久沒有動作,所以請回到登入畫面 並且重新登入.的訊息,查了一陣子才發現是openwebmail的session資料夾的問題,在這個案例中因為多台webmail要做平衡附載,所以使用NFS共享session資料夾,結果NAS那台的時間跑掉了與前端的webmail相差超過30分鐘,使用NTP校正時間後解決

webmail的openwebmail.log會出現
Wed Jul 13 13:06:25 2011 - [89123] (192.168.0.0) fish - session error - session fish*mail.com.tw-session-0.190812842599136 timeout access attempt

2010年10月2日 星期六

用POP3將Dovecot上所有信件重新下載的辦法

一早接到報修,客戶的Mail Server有使用者使用Office 2010的Outlook,但是無法把在Webmail上的所有信件都收下來備份

原本以為是Outlook的問題,但是測試了幾款Clinet都一樣,新的信件可以收下來但是已經讀取過的不行(其實是以前收過了)

處理方式很簡單,刪除Maildir底下的dovecot.*只保留dovecot-uidlist,打開dovecot-uidlist將第一行的第三個欄位改為1

打開Client開始收信,如果出現"-ERR [IN-USE]Couldn't sync mailbox",表示Quota爆掉了,因為重建索引檔會占用比較大的空間,先適度的放寬Quota就可以了,打完收工XD

2010年6月30日 星期三

東西總會在最需要的時候壞掉(誤)

話說周末都宅在住的地方,因為外面實在太熱了,雖然說來台南的時候就有所覺悟...
但是陽光真的太刺眼了,外加一整個悶熱,就整天宅在房間看電視
想說周一又是一周的開始要有點衝勁,於是七點多就跑到公司
沒想到...當我坐在早餐店拿起漢堡要咬下去的那個[摩門特]手機響起

客戶反映mail系統不能用,於是馬上打包早餐回公司去
周一一大早mail就故障,電話湧進計中(真是令人振奮的一個早晨)
後來發現是負責認證的LDAP發生了點問題CPU吃到200%不曉得在處理什麼
重新啟動LDAP服務就好了

接著因為要做ISMS的事件報告所以開始追問題
因為LDAP沒有開啟log所以從系統的message開始看
發現有warning: cannot open /etc/hosts.allow: Too many open files的訊息
往前追第一次出現這個問題是在凌晨0時,也就是整個系統已經無法運作達8個小時(驚)

對照SMTP的log後,推測問題應該是太多查詢導致有些查詢失敗
SMTP又不斷的重試查詢,造成越來越多的查詢延遲,直到最後整個卡死

結論就是....禮拜一要特別小心早上的電話(誤)

2009年5月24日 星期日

Simple Machines Forum(SMF)v1.1.9安裝筆記

最近在整理vhost上的網站,其中orz討論區已經有段時間沒有維護了,趁這個機會升級一下,沒想到一升級就orz了...,原本使用的是1.1.6版的SMF使用的是自訂的佈景,由於之前維護的人也不管了,這個孤兒系統的維護又回到系統管理員小弟身上,未了避免往後維護上的不便,把所有客製化的部分去除,包含自訂的佈景與外掛,以及資料庫編碼由latin1轉為UTF-8

首先在舊系統以管理者登入,強制重設所有使用者的佈景主題為預設值,在模組中升級SMF直到1.1.9版,最後用mysqldump將資料庫整個倒出來,記得修改編碼為UTF-8

重新安裝SMF於新的目錄,清空新建立的資料庫並將舊的資料匯入,將舊有attachments目錄複製到新的目錄,登入管理介面測試

已知問題

1.使用中文化出現"Sorry, the copyright must be in the template.",因為中文化未更新copyright導致的,修改languages底下的index.chinese-traditional-utf8.php檔案,將forum_copyright這個翻譯改為
$forum_copyright = '<a href="http://www.simplemachines.org/" title="Simple Machines Forum" target="_blank">Powered by ' . $forum_version . '</a> | <a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF &copy; 2006-2009, Simple Machines LLC</a>';

2.中文在斷字的時候被切掉變成問號(?),因為PHP無法正確判斷中文字的問題須改用mb_string系列的函數,修改Sources目錄底下的Load.php檔案,將$func = array的substr與strlen這兩個索引內容中的return片斷改為
if(function_exists(\'mb_substr\')){
return $length === null ? mb_substr($string,$start,mb_strlen($string,\'UTF-8\'),\'UTF-8\') : mb_substr($string,$start,$length,\'UTF-8\');
}else{
return $length === null ? implode(\'\', array_slice($ent_arr, $start)) : implode(\'\', array_slice($ent_arr, $start, $length));
}


if(function_exists(\'mb_strlen\')){
return mb_strlen($string,\'UTF-8\');
}else{
return strlen(preg_replace(\'~' . $ent_list . ($utf8 ? '|.~u' : '~') . '\', \'_\', ' . implode('$string', $ent_check) . '));
}

3.中文字看起來太小,因為字體是定義成9pt,可修改Themes目錄中的style.css,在.smalltext區段之後加上
.tborder .bordercolor .windowbg2 b a{
font-size: 1.3em;
}
#upshrinkHeaderIC .windowbg2 b a{
font-size: 1em;
}
#upshrinkHeader2 .titlebg2 span{
font-size: 1.5em
}

.windowbg .smalltext,.windowbg2 .smalltext,.windowbg3 .smalltext{
font-size: 1em;
}

2009年5月22日 星期五

在CentOS使用srpm安裝vsftpd

今天維護VHOST主機時把SFTP轉換成FTP over SSL,使用yum的vsftpd後發現Filezilla可以連線但是無法取得目錄列表,訊息列顯示
Could not read from transfer socket: ECONNABORTED - Connection aborted

Google後發現這是vsftpd的Bug,在2.0.7版後修正了,但是CentOS內建的還是2.0.5,原本打算用Fedora10的rpm安裝,發現有相依性,於是使用Fedora10的srpm重新打包

下載SRPM
wget http://opensource.nchc.org.tw/fedora/linux/releases/10/Fedora/source/SRPMS/vsftpd-2.0.7-1.fc10.src.rpm

解開SRPM
rpm -ivh vsftpd-2.0.7-1.fc10.src.rpm

安裝相依的函式庫
yum install tcp_wrappers pam-devel libcap-devel

編輯spec檔案
vi /usr/src/redhat/SPECS/vsftpd.spec

將第50行由tcp_wrappers-devel改成tcp_wrappers
因為CentOS中tcp_wrappers-devel包還在tcp_wrappers裡面
BuildRequires: tcp_wrappers

打包RPM
rpmbuild -bb vsftpd.spec

打包的結果在
/usr/src/redhat/RPMS/i386/vsftpd-2.0.7-1.i386.rpm

接下來使用rpm指令安裝就好
rpm -ivh /usr/src/redhat/RPMS/i386/vsftpd-2.0.7-1.i386.rpm

2009年5月19日 星期二

在VirtualHost中使用不同的php.ini

今天在更新VHOST主機上的lighttpd順便找了點東西,一直以來PHP上傳的檔案擁有者都是HTTP Server,在計算使用者磁碟配額Quota上十分不便,主要是因為PHP是以HTTP Server的身分執行的關係,這也造成另一個問題,所有的檔案對於HTTP Server都是可讀取(甚至可寫入)的,所以在同一台實體主機上的使用者是可以存取其他人的PHP網頁原始碼,雖然PHP提供了safe_mode的功能但是這項功能即將在PHP6中被移除,移除的主因是,PHP團隊認為安全性的問題應該由系統去負責,於是找了些可以用使用者身分執行PHP的相關資訊,意外的找到在VHost中套用不同的php.ini的方法

http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModFastCGI
http://ssorc.tw/rewrite.php/read-956.html

根據一篇lighttpd官方的討論指出,lighttpd並無法在每個要求切換執行身分(Apache可以作到),但是可以把不同的虛擬主機對應到不同的fastcgi server上,也就是每個fastcgi server都使用不同的身分執行,不過安全性提高了,但卻佔用了更多記憶體

2008年9月7日 星期日

高雄、捷運、打雜

消失的這一陣子,在下到高雄捷運打雜!!(開玩笑的)

八月接到嘉義的消息,九月要在高雄成立辦公室,因為去年架設的網路公司很滿意,所以希望今年高雄辦公室也找我去處理,於是,在下帶著三套衣物還有偽小白,以及一些工具,就出發了...

到高雄的第一天,辦公室還在裝潢,因為整個辦公室像工地一樣,連張桌子都沒有,只好跟著拖地打掃,晚上住在表哥的公寓,沒什麼進度的過了一天

第 二天起了個大早,搭著捷運從巨蛋到後驛,在走到十全路轉往高醫到公司,路過7-11買了個早餐,由於昨天沒有桌子可以工作,所以從公寓把僅存的家具(兩張 桌子)搬到公司放,把PC裝好後,開始搞網路,樓上樓下拉網路線忙了一個早上,感覺高雄真的好熱,小胖說的沒錯,站著都會流汗,一天下來全身都是濕的,下 午把monowall裝好開始測試遠端連線....很充實的過了一天

第三天又睡到自然醒,依然走路到公司,今天其他人要去上課,剩下我看 家,結果被廠商晃點,等到中午沒人來施工(怒),到了十一點多郭老師說要帶我去找他同學,因為他們想要寫個系統,於是順便去吃飯...,到了那邊發現是間 整形外科醫院,而且網路不太穩定,初步看了一下發現是閘道MAC被覆蓋,典型ARP攻擊的症狀,於是跟OA借了台mosdan來處理(感謝OA與妙姐鼎力 相助),查到最後發現並不是ARP而是分享器把自己的位址也發配出去造成兩個閘道位址(囧)....溼答答的過了一天(傍晚過後下雨)

第 四天(今天),一如前面幾天走路到公司,但是門沒開(囧),九點多嘉義的人把辦公桌椅運來了,門還是沒開,原來昨天忘了通知時間提早,導致一早大家都被鎖 在外面(XD),早上變身成搬運工把桌椅搬上辦公室,因為房子是舊的所以樓梯十分狹小,還發生桌子卡在樓梯間,在樓梯間拆桌子的狀況;晚上在公寓附近找到 一家餐廳有提供免費WIFI,就順便吃個飯打這篇雜文

明天放假,打算搭著捷運到處晃晃:P

2008年6月7日 星期六

分散式Mail Server



硬碟再怎麼大也不可能把所有的帳號建進去,況且雞蛋最好別放在同一個籃子裡:)

1.允許smtp.orz.edu.tw這台機器代轉所有寄往std.orz.edu.tw的信件

修改postfix/main.cf中的relay_domains參數,注意:不要把網域加入到mydestination,否則主機會把信件當成本地郵件處理,接著就會發生找不到帳號被退信的情況

在這個CASE中使用正規表示法的方式來定義傳輸表會比較精簡
transport_maps=regexp:/etc/postfix/tr_map

tr_map的內容
/^b94(.*)@/ relay:[std1.orz.edu.tw]
/^b97(.*)@/ relay:[std2.orz.edu.tw]

存檔後記得將傳輸表轉換成db格式,postfix才能使用
postmap /etc/postfix/tr_map

2.實際存放信件的主機需要收下std.orz.edu.tw的信件

在mydestination中加入網域即可

2008年2月25日 星期一

充實的週末

已完成
*SMF與AJAX Chat的整合
*論壇廣告

未完成
*電腦報修區
*AJAX Chat中文化

週末和學弟花了點時間研究SMF與AJAX Chat的整合,花了兩天的時間讓Chat可以使用SMF的帳號登入,以及在SMF上的Chat連結,讓已登入的使用者可以直接進入指定的頻道而非預設的公用頻道

為了增加SMF的曝光率,用JS刻了一個偽廣告,因為POP-UP的視窗會被瀏覽器阻擋,於是改成使用一個DIV標籤覆蓋在既有的網頁上


[nansen@itc public_html]$ who
orz pts/0 Feb 23 13:29 (192.168.53.63)
nansen pts/2 Feb 24 14:04 (192.168.53.95)

學弟,掛Putty不會提升經驗值的ㄚ...XD