2019年9月13日 星期五

Use Fail2Ban to improve security

Fail2Ban is a security tools used to ban source IP address that attempt to gain access to a Linux server. It will scan the system (sub-system) log to trace for illegal access log.

Source: https://www.fail2ban.org/wiki/index.php/Main_Page

Postfix

The Postfix uses the /var/log/maillog for checking. The filter file is /etc/fail2ban/filter.d/postfix.conf.

Open Relay

To prevent open relay in log:

Sep 12 15:00:06 xxx postfix/smtpd[12025]: NOQUEUE: reject: RCPT from unknown[185.208.211.112]: 454 4.7.1 <martinlujan997@gmail.com>: Relay access denied; from=<united@ctinets.com> to=<martinlujan997@gmail.com> proto=ESMTP helo=<WIN-7O75RVKC0I6>
Sep 12 15:00:07 xxx postfix/smtpd[11939]: NOQUEUE: reject: RCPT from unknown[185.208.211.112]: 454 4.7.1 <martinlujan997@gmail.com>: Relay access denied; from=<cooper@ctinets.com> to=<martinlujan997@gmail.com> proto=ESMTP helo=<WIN-7O75RVKC0I6>

In the filter file, add the line:

^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[<HOST>\]: 454 4\.7\.1 <\S*>: Relay access denied;.*$

2019年7月2日 星期二

維修Monitor

最近無所事事, 對電子學感到興趣. 多行了鴨寮街購買工具及零件. 目標是做雷射槍及機械人稱霸宇宙. 但因所費需時, 還是看一看有沒有短期目標, 可以實習一下.

在這裡我要先多謝環境局黃錦星局長. 因為他的"四電一腦"環保政策, 使我的舊顯示器, 兩年前壞掉了但又不知怎麼處理. 唯有將此環保廢料,  暫時儲存於士多房內.


心想, 如果可以修理好這個顯示器, 是多麼的有意義喔. 修好了的顯示器, 可捐贈給非洲的兄弟, 既可為環保出一分力, 又可以使非洲大草原上,  無所事事的同胞, 有機會上一下網, 見識一下草原外發生的事情.


好了, 開始入正題. 先說一下顯示器的問題. 顯示器於2009年購買, 用了大約十年. 期間會有突然黑畫面, 過幾秒就會回復正常, 這情況會越來越頻密. 直至最後, 顯示器會完全不能開啟. 開關顯示燈亦沒有亮著. 在這時, 正常人會看一下電源線有沒有供電. 因為電源線都裝有保險絲. 換另一條電源線看一下運氣. 再開不著就可以certify此顯示器了.

要學會修理一台顯示器, 最直接啲方法就是去圖書館, 借一本有關液晶體顯示器維修的書籍. 但我可以告訴你, 這個方法對百分之九十九以上人士是行不通的. 原因是"時間無限, 而生命有限".


更有效的方法是去看一下Youtube教學. 打入關鍵字"Monitor Repair", 你會找超過一千個教學片. 這些教學片會浪費大部份時間教你拆機, 小部份時間教你用萬用錶作測試, 再有小部份中的部份教你焊接電子零件. 身為I.T.天才的我, 當然不會將那千多段片都看過. 為了更快更有效率去得到解決方法. 本人使用大數據加人工智能去分析及推論, 終於找到一個簡單, 快捷, 低成本及高成功率的方法. 但在這裡我先賣一個關子. 說一下在分析過程中學到的基本知識.


顯示器一般可分為三個部份: 1) 供電部份 (可以當做火牛); 2) 控制電路; 3) 螢光幕. 我們能力範圍內, 只可修理第一部份. 因為控制電路太複雜, 而更換螢光幕成本又太貴. 為節省時間, 我己將供電部份拆了出來. 注意事項: 因此底版有高壓組件, 可能引至觸電!!! 請拔除電源線後四十分鐘, 才可拆開, 令電容器有時間自然放電,否則需要人手放電.


而在這電路板有很多元件. 但最有可能失靈只有電解電容器(Electrolytic Capacitor), 即紅箭頭所所指的元件. 此類電容器極限工作温度為105°C (其他會發高熱的元件可抵150°C以上). 電容器內部為啫喱或液體, 當過熱時會洩漏或爆開, 像煲水一樣. 影響供電部份的穩定性. 洩漏或爆開時用肉眼乜可看到. 這些電容器十分便宜, 就算是優質的也是平均二至三元一粒. 最大那個要三十多元, 但那個部份的工作温度不高, 所以很少有問題. 因為電解電容器會老化,由其是一平價機, 件多數不會使用優質零件. 所以建議全部更換.. 去買零件時請記低位置及型號.


電解電容器上有兩個數字, 即容量(F)及電壓(V). 購買時容量要相同, 電壓可以高一點.但最好找到相同的, 因為電壓高一些, 價錢會貴一些. 而温度亦有85°C和105°C兩級. 105°C是必需的. 至於安裝方面, 電解電容器有分正負極, 底板上有表示, 不要安錯.






以下是拆了出來的舊電容. 黑色的東西就是已燒焦的液體:






你可能會問, 有沒有沒有其他原因導致開不到顯示器. 答安案當然是有. 但這是一個或然率問題. 當99%的情況可以用更換電解電容器去降決問題時, 你還會在意那餘下的1%嗎?


最後, 給你一些電解電容器的冷知識. 為什麼兩個相同的容器, 工作時會有不同的温度? 這個和ESR (Equivalent Series Resistance)有關係. ESR越高就會令電容器越熱.. 而這個數值又會和產品質素, 液體洩漏多少有關. 而電容量亦會因為洩漏而慢慢降低效率, ESR慢慢升高. 直至完全敗壞. 下圖你可以看到 新與舊電容器 ESR及電容值的差距. 電容值由1000uF,(容許10%誤差) 開始下跌.

2018年11月18日 星期日

Install vacation plugin on Roundcube Mail in Centos 7

The standard roundcubemail in Centos 7 epel repository is 1.1.2 (LTS) which does not have the plugin vacation included, you should install it manually. The document logged the course of installing the plugin as well as the problems encountered.

1) Install the vacation binary program

The Centos 7 does not have vacation program in the yum repository. So it needs to be download from the source, compile and install.

Download the latest stable release 1.2.7.1 and extract it with the following command:

# tar -xvf vacation-1.2.7.1.tar.gz


Now you can compile it. You need to have the development packages to do so. The following packages are required: gcc, gdbm-devel

# make
gcc  -g -Wall   -Xlinker -warn-common -D_PATH_VACATION=\"/usr/bin/vacation\" -o vacation vacation.c strlcpy.c strlcat.c rfc822.c -lgdbm

Install it:

#make install

install -s -m 755 vacation /usr/bin/vacation
install -m 755 vaclook /usr/bin/vaclook
install -m 444 vacation.man /usr/man/man1/vacation.1
install: cannot create regular file ‘/usr/man/man1/vacation.1’: No such file or directory
make: *** [install] Error 1

There is an error encountered when installing the man files. The reason is it tries to install the man files into /usr/man instead of the /usr/share/man. So you need to edit the Makefile with the follow amendment:

MANDIR          = $(PREFIX)/man/man MANDIR          = $(PREFIX)/share/man/man

Then do the installation again:

#make install
install -s -m 755 vacation /usr/bin/vacation
install -m 755 vaclook /usr/bin/vaclook
install -m 444 vacation.man /usr/share/man/man1/vacation.1
install -m 444 vaclook.man /usr/share/man/man1/vaclook.1

2) Install Roundcube vacation plugin

There are four sources of vacation plugin:

https://github.com/rplessl/roundcube-vacation-plugin (last active is 2018-7-11)

https://github.com/bhuisgen/rc-vacation (last active is 2018-10-24)

https://github.com/gabor-toth/roundcube-vacation-plugin (last active is 2018-2-1)

https://sourceforge.net/projects/rcubevacation/ (last active is 2015-8-20)

Except the second one (rc-vacation), all the rest are alike. I've tried to install the second one, but no luck, it requires to install some modules which are beyond my knowledge. Blah, blah, blah....

Requirements :
- jQuery UI for vacation date support.
- PEAR Net/LDAP2 module for LDAP driver.

I finally select the first one  (rplessl).

Download and unzip it to the directory:  /usr/share/roundcubemail/plugins/

Rename the folder from roundcube-vacation-plugin-master to vacation for simplicity.

Now edit the file config.ini to select the driver (the method to update the auto-reply and forward rule). Since the default method is "sshftp" which is the one I preferred. So, no need to be modified.

[default]
driver = "sshftp"
subject = "Default subject"
body = "default.txt"

However, according the the document, if the imap (default) server is not the same as the smtp (postfix) server, you can change the parameter "server =", so that the .forward file in the home directory can be updated.

Now set the config.ini to be apache group readable:

# chown 0440 config.ini
# chgrp apache config.ini

Next modify the file /etc/roundcubemail/config.inc.php to activate the plugin:

// ----------------------------------
// PLUGINS
// ----------------------------------
// List of active plugins (in plugins/ directory)
$config['plugins'] = array('vacation');

After this, you will see the vacation icon in roundcube menu.


However, when clicking on the item, a blank page appears. It is due to an internal error when executing the plugin. To see what is wrong, you need to increase the debug level in /etc/roundcubemail/config.inc.php to 4.

// ----------------------------------
// LOGGING/DEBUGGING
// ----------------------------------
// system error reporting, sum of: 1 = log; 4 = show, 8 = trace
$config['debug_level'] = 4;

Afterwords, you will see the error in the page:

Fatal error: Call to undefined function ssh2_connect() in /usr/share/roundcubemail/plugins/vacation/lib/sshftp.class.php on line 29

Well, it complains about the ssh2 module is not installed. We install the required package:

# yum install php-pecl-ssh2

All done now!


2018年9月18日 星期二

The trust relationship between the workstation and the primary domain failed

In running a Windows domain environment, there are occasionally that a member workstation cannot log in with the following error prompted:


To fix the problem. Simply login as the local administrator, remove the current domain and join to a temporary workgroup. Reboot and re-join the domain. Reboot...and that is it!

Note that this method is the cleanest way and the user profiles in the workstation is preserved.


2017年5月9日 星期二

傷心事

我小時候往在公共屋村. 常常跑到樓下公園的沙池玩泥沙. 有一天, 我看見一個很可愛的女孩, 眼睛大大, 還常帶著可人的笑容. 我本能的跑上前去和她交個朋友. 經過一個星期交往, 大家都混熟了. 她說自己原本是住在新界的寮屋, 和父母一起剛遷進這個屋村. 她還說她的志願是看多一點這個大世界. 從此我天天都會和她在公園玩泥沙, 和她一起感覺是非常快樂和溫馨, 沙池中就像我和她的二人世界. 幸福的時間過了三年, 可能女生發育比較早, 她已高出我大半個頭了. 有一天, 她說要離開這個沙池, 去看一看外面的世界. 她問我會不會和她一起離開這個沙池, 可能當時年紀少, 我沒有想清楚就答她, 我很想留在沙池中的二人世界.




從此, 她再沒有回過這個沙池....我在沙池等了她一年, 希望她會回來, 從盼望到失望. 從失望到絕望. 心灰, 心傷, 至心碎的我終於決定離開這個傷心地, 我也沒有在到這個沙池玩了. 幾年後因為小朋友都不愛玩泥沙, 那個沙池被填平了, 改用了一些厚厚的地毯供小孩嬉戲. 但當我每次經過那個公園, 回想過去的歡樂時光, 心裡都會有點黯然.

人生的一些傷心事, 是否都會是揮之不去呢? 答案又不盡然. 例如失而復得, 應不會覺得以前失去是什麼傷心事, 只會覺的是一個寶貴的經歷. 但是好夢難完, 失而復得只是少數人可享有的幸福. 我們還是嘗試改變自己的心態: 故事繼續...

如今我長大了, 有一次我在逛街, 看見以前的那個"沙池的女孩子"和我刷身而過, 相信她應認不到我, 因為當年的我還是小孩臉, 而我也沒有和她打招呼, 一則這麼多年沒見, 覺得有點唐突. 再者就是她變了很多, 樣貌像個師奶, 正確一點應是"肥師奶". 她左右兩手各有一個小孩子. 旁邊還有一位男士, 我想是她的丈夫, 還推著一部嬰兒車, 我依稀看到從前的那個"沙池的女孩子"正在車中甜睡.

回過神來, 他們都走遠了. 這時我的多年心結也解開了. 如要我再選擇一次, 我還是喜歡現在的自由身. 最少還有權利親近自己想愛的人, 約她們去看電影, 吃晚飯. 至於小孩子方面, 在超級市場推著購物車也覺麻煩的我, 怎會願意推著BB車周處去. 假日的我喜歡和朋友到戶外遊玩, 如攀山, 潛水等也絕對不是小孩子玩意. 無論怎樣也好, 最後我我默默祝福"沙池的女孩子"有一個幸福美滿的家庭, 作為我對她的一點心意.

大怪獸

我年少時也時常發明星夢, 在夢裹我總是飾演跳飛機裹的大怪獸, 我演出的角色十分成功, 每次都能讓孩子們開開心心的欣賞我的演出. 但時光飛逝, 有一天, 我的拍擋 Sunny 哥哥沒有上班, 監製說 Sunny 哥哥因為年紀太大, 不適合再做兒童節, 但我依然以那隻大怪物身份演出兒童節目.



跳飛機改名為430穿梭機, 周星馳和梁朝偉都曾經成為我的拍擋, 但他們都步 Sunny 哥哥後塵, 轉做其他節目, 但我依然以那隻大怪物身份演出兒童節目.

因為時常換拍擋, 心裡乜有點兒黯然, 於是要求監製幫助我改變一下工作環境, 不久之後, 監製為我找到一個比較常青的兒童節目, 超人大戰大怪獸 (請不要叫我為奴隸獸, 我想沒有人希望別人為他蓋上奴隸的稱號), 所為憾的是超人有一半時間都是以真人演出, 所以我也換了兩個拍擋, 廸加和帝拿, 但我依然以那隻大怪物身份演出兒童節目.

為什麼我能在兒童節目長青? 因為我不是人...我是大怪獸!

英雄遲暮, 紅顏白髮.

噢... 烏乎哀哉....

** ** **

要在觀眾心目中留著青春美麗印象, 對一個名星是非常重要的, 現建議下面三個可行方法:

1) 英年早逝, 像 beyond的家駒 一般永遠年青.
2) 整容手術, 像 黃夏蕙 一般青春美麗.
3) 披上外殼, 像 我大怪獸 一般, 有永恆的外表, 而沒有內心世界.

噢... 烏乎哀哉....

2016年11月5日 星期六

更換浴室水龍頭

使用多年的浴室水龍頭開始漏水, 情況越見嚴重. 決定更換水龍頭. 走訪區內的水電鋪, 價錢約三百至六百, 包安裝. 但全都是國內生產的產品. 心想, 水龍頭這類耐用品, 可使用超過十年以上, 還是選擇一些質素比較好的. 於是決定先上網做下資料搜集, 再作打算.



水龍頭的優劣

1) 外觀: 外型的選擇很注重個人的喜好, 在此不必多說. 但有些品牌會有更多型號以供選擇. 同一個品牌, 因為有唔同既外觀 (有些是名家設計), 價錢可以是有很大的差別.
2) 電鍍技術: 水龍頭主要物料為黃銅. 但因為電鍍工序, 市面上看到的主要都是銀光色 (有些是金光色). 電鍍技術的好壊會直接影響因年月而氫化或磨損之消耗. 好的電鍍技術能使水龍頭表面歷久常新, 只需用濕布輕輕抺掉污積就可以了. 但如果電鍍工藝做得不好, 則表面電鍍會隨著時日而變得暗啞, 甚至表面電鍍脫落.
3) 物料: 之前說過, 主要物料為黃銅. 有文章說過, 以水龍頭的重量計, 黃銅的材料價就要接近七十港元. 在大陸的網購水龍頭可以做五十元一個. 有可能嗎? 答案在於這些產品會使用合金, 如鐵及鉛等物料. 此等物料小則會影響水龍頭的耐用度, 嚴重者會影響水質, 對健康無所裨益.

4) 閥芯: 此仍水龍頭的閘水組件, 屬會損耗部份. 現在因為多數的水龍頭為單杆式, 會採用一體式閥芯, 並使用陶瓷做物料, 以增加耐用性. 曾經有個品牌, 因號稱其閥芯可開闢五十萬次, 所以可永久保用. (但香港代理, 有永久, 十年或五年保用).

5) 使用: 好的水龍頭的手杆易於操縱. 很輕鬆的就可以調校到適當水温. 亦不會隨時日而變得不順暢或費力.

品牌

據網上資料作分析. 水龍頭首選"德國制造"既品牌. 因為德國工藝技術在行內有很高的評價. 但是一分錢一分貨. 屬高檔產物. 主要品牌有:

1) Hansgrohe: 1901年成立. 有包括中國生產的廠房.

網址: http://www.hansgrohe.com/

2) Grohe: 1948年成立. 由Hansgrohe的兒子創辦. 有包括泰國生產的廠房.

網址: http://www.grohe.com/

註: 比得起錢買德國品牌, 當然有要求件貨品係"Made in Germany"喇. 買之前要做下功課,例如同一型號, 中國製同德國製model#係唔同. 避免在大陸站網購
此類產品. 因為有劣評.  估計好運的買到次貨品, 運氣差的話可能買到假貨.

如果不是想花費太高, 但質量有所保障. 可考慮"意大利制造".

1) Cisal: 1952成立. 曾幾何時 (2012年前吧?), 係意大利品牌來說, 呢隻係網上有很好的口碑. 其重點主打係陶瓷內心永久保用. 不過現在有永久, 十年或五年, 視乎代理商. 其實這個品牌從前係好有名. 不過可能係Marketing唔係好得 (看一下佢個網站, 同別家品牌比較一下, 就可看出點端倪). 佢有一個代理商叫Winkler, 已經發展咗自家既品牌.

網址: http://www.cisal.it/

2) Fiore: 1965年成立. 主打"Made in Italy". 係佢地每個水龍頭, 都刻有"Made in Italy".

註: 筆者係Cisal同Fiore兩個品牌之中選擇咗佢. 其中有一個原因就係佢有一張証書叫NSF. NSF係証明佢既水龍頭出既水, 符合國際健康既標準. 不過回想起來又幾有趣, 洗澡既水係好少入口吧.

網址: http://www.fiore.it/

其他比較有名既品牌 (主要係Made in China, 排名不分先後):

Winkler: 香港既品牌, 當然比佢排首位. 如果我冇認知錯誤, 佢既產品係Made In China, 但用Cisal陶瓷閥芯. 佢間中都有係屋村做road show. 最近主打無鉛物料, 最啱香港人口味. 如果係買Made In China, 不妨支持下既個品牌.

網址: http://www.winklerlimited.com/

Delong: Marketing做唔錯. 好多人用. 品評綜合來講都係正面.

網址: http://www.delong.com.hk/

Toto: 日本品牌.

網址: http://www.toto.com/

Roca: 全世界最大嘅潔具集團.

網址: http://www.roca.com/

購買

要自己去睇款. 旺角及灣仔就最集中. 有啲sales會好熱情咁說你買單一個品牌. 但宜貨比三家. 因為係公價打折, 同一款產品唔同店可能有唔同既折扣. 由其是一些舊(平民)款式. 有時產品還會做特價. 你亦可考慮購買套裝. 一套三件或四件, 會比單買更便宜.

如要買德國啲高級產品, 可真接向德國網站郵購. 例如Hansgrohe的一個平民款式. 香港要賣約一千四百港元, 但網購價只需折合六百港元(不包運費, 因為水龍頭比較重,多買幾件相對運費會比較便宜).

網址參考:
https:/www.amazon.de/
https://insani24.de/

安裝

試想一下, 欺山不可欺山. 水喉安裝, 一個做得不好真係會水長流. 所以還是找師父安裝吧. 視乎安裝既難度, 約三百至五百元吧? 不過如果係更換浴室水龍頭又真係可以自己做得來喎.

蘋果日報都有教學: http://www.appledaily.com.tw/appledaily/article/supplement/20130321/34900839/

安裝有兩個重點:

1) 確保水龍頭既尺寸與入水位係一致. 據賣水龍頭店的老闆娘表示, 近年的水龍頭尺寸已標準化為6英寸 (152mm). 如果你的水喉出位不是這個尺寸, 還是找水喉師父代勞把.
2) 安裝時要温柔一點, 不好去使用蠻力. 因為用力過大有機會使喉管爆裂.

好了, 花了約十五分鍾. 完工.........滿有一分成功感.