2008年2月20日 星期三

單一身份認證的應用(Application of OpenID)

6 則留言:
OpenID」這名詞,如果有注意科技類的報導,應該就有聽過這兩則新聞:《Yahoo!支援OpenID》、《Blogger支援OpenID》。

什麼是OpenID呢?說穿了就是讓你可以四處通行的一組帳號、密碼,現在各個大型網站(Google、Yahoo!、MSN...等)也朝著類似的方向發展,所有的服務都綁在同一組帳號之上,記得我先前也有談過這麼做的風險(一旦帳號資料洩漏,影響的層面極廣)。

因為這些大型網站的市場難以撼動(目前僅Yahoo!支援OpenID),所以OpenID反而成了許多第三方(3rd-party)公司漸漸接受的認證方式,所以弄個OpenID來使用,老實說也不是件壞事,除了便利性之外,還能夠把自己較為重要的帳號、密碼,與使用一般網路服務的帳號資料分開(如果有支援OpenID,就只透過OpenID認證),畢竟大多數人還是習慣用相同的密碼去認證所有的網站(這是人性...)

可以申請OpenID的地方有很多,常見的地方如下:(參考來源
*myOpenID.com Secure, free, hosted OpenID server by JanRain
*IsOpenID First Russian OpenID provider
*GetOpenID.com SSL-enabled OpenID server
...
我自己是選用了myOpenID.com來申請,其實申請的方式很簡單,只要跟著它的步驟來做就可以完成:

1.登入官網:https://www.myopenid.com/signup



2.填入帳號、密碼、EMAIL、認證與勾選同意條款:

帳號、密碼:


EMAIL、認證文字與勾選同意條款:


3.收信,按下確認連結:



4.OpenID到手:



在設定的過程中,個人覺得比較重要的是安全性的設定,如下圖所示:



就如內文的說明,以免遭受釣魚網站的影響,而洩漏了OpenID的帳號、密碼,所以在認證時,還是會連回https://www.myopenid.com/signin進行登入。(只怕官網負載過高...)

申請到OpenID之後,你就可以利用它來登入相關的網站(AOL),或是用來做為回覆留言時認證使用(Blogger、WP系統的Blog),或者只拿它來登入有支援OpenID的網路服務。

細部的設定還有很多,我就不一一介紹,主要是看OpenID提供商,做了那些應用上的規劃,例如:管理認證頻率、是否只允許認證一次(下次就得重新認證),或是輸出憑證供瀏覽器使用...等。

不過OpenID(那一串網址)還是有點難記,如果能夠改成自己部落格的網址該有多好呢?

其實是可行的,我在找OpenID的資料時,已經有人寫出了實做方法(參考來源:遇見瓦特比──《把部落格網址轉成 OpenID》:

其實很簡單,只要你申請好OpenID之後,可以透過它們的SERVER來幫自己部落格的網址做轉址認證的動作(這說法,不知適當嗎?)

只要在部落格的標頭之後(head)加入下列三行即可:
<link rel="openid.server" href="http://www.myopenid.com/server" >
<link rel="openid.delegate" href="http://xxx.myopenid.com/" >
<meta equiv="X-XRDS-Location" content="http://xxx.myopenid.com/xrds" >

只要把紅色的xxx換成你在OpenID.com申請的ID(例:indeepnight)即可,新增完後,就可以拿自己部落格的網址做為OpenID使用,以筆者自己為例,我也依照這辦法實際操作一次,的確能夠拿自己的部落格網址作為OpenID使用(見下圖)。



除了像筆者這樣去找個平台留言測試之外,你也能夠透過如果你想要測試看看自己的部落格網址是否也成為OpenID的話,也可以到check your OpenID這個網站來測試。(圖片中的文字位置移動過,但內容不變)

1.打入部落格網址:(以http://indeepnight.blogspot.com為例)



照到相關資訊,要求你嘗試登入(try logging in)...

2.嘗試登入時,因安全設定,需到官網登入後才能繼續:



3.去官網登入後,會詢問認證次數(永久、一次或拒絕):



4.成功認證的說明:(我的部落格網址已成為OpenID)



一連串的介紹跟測試,應該可以讓大家更瞭解OpenID一點,但是就像我前面所說,它現在仍在起步階段,因為誘因不夠,也很難成火侯(除非能打倒大型網站的帳號整合風...難上加難),畢竟創新服務還是先搶先贏

就拿Yahoo!支援OpenID來看,不過是早一步把觸角伸到OpenID的領域,到時候連其它小公司也能用Yahoo!的ID登入時,還有人會來申請OpenID嗎?我想這個問題就讓時間來解答吧!

2008年2月19日 星期二

防毒軟體被停用?(Antivirus Software Being Disabled?)

2 則留言:
現代人的電腦裡,幾乎都備有防毒軟體(主要是指M$的Windows系統),姑且不論是正版教育版免費版還是網路上所謂的快樂版,不管是「求心安」或「大家有,我也要有」的心態下,防毒軟體漸漸地變成了標準配備之一。

單就防毒軟體來說,它畢竟還是有限度的防範而已(防火牆或其它附加功能只是加強範圍),雖然現在已經發展出啟發式分析(缺點是誤判率會提高)、防護機制加密碼管控,避免被人為停用)...等,雖然功能已增加許多,對於有心人士來說;「怎麼繞過防毒軟體監控,來完成他們想要做的事」,他們付出的心血絕不會比防毒軟體商來得少。

如果某天一開機,發現防毒軟體突然沒有作用時,你就要先做好心理準備,這時候被感染的機會,高得讓你難以想像,可能是授權過期自行停用其它原因造成防毒軟體失效,如果是自己的問題反而好解決,怕就怕遇上的是會停用防毒軟體的惡意程式...

2008年2月15日 星期五

網路喚醒的應用(Application of WOL)

沒有留言:
網路喚醒(Wake On LAN)」已經不是什麼新名詞!新主機板上的內建網路晶片,幾乎都具有這功能,就連最多人有的D牌網路卡(PCI介面),也都支援此功能。

不過...一般人要用到這功能的機會不多,自己在家時,走過去按下電源鍵還比較快,更別提要透過另一台電腦來遠端喚醒,有這種需求的人,應該是工作地點不一定人力卻相當吃緊的工作環境,以現在愈來愈吃緊的IT人力來說,應該有不少人需要吧!?

況且這功能從LAN的字意上來看,它原本就是設計在區域網路(LAN)下使用,如果想要在廣域網路(WAN)的環境下使用該功能,你的IP分享器或是ROUTER就要有提供「Subnet Directed Broadcasts」或類似的功能(一般家用機種應該都沒有),不然就是讓電腦直接上網,不經過其它設備,只是用這種方法所增加的風險過高,所以我是用一台長時間開機的主機(LINUX或WINDOWS皆可)當中介點來達到此目的。

提醒大家一下,無論採用何種方法都有風險,端看自己怎麼衡量...

我採用的方式是經過一台不關機的LINUX(CENTOS v5.1)來當中介點,只對特定網域開放SSH的服務(或是透過網頁來動態開啟SSH可存取的IP,可以參考鳥哥的教學)再透過中介點來網路喚醒區網內特定一台的PC,再透過遠端存取技術(VNC、遠端桌面...等)來獲取遠端電腦裡的資料,甚至可以透過中介點來掛載(MOUNT)被開啟的電腦,也能夠讓在外奔波的IT人,在情急且人力不足的狀況下,得到公司內部裡的資料。

雖然類似的功能在某些中高階的網路設備也有,但是對於預算永遠不夠的IT部門來說,自力更生是不變的法則,現在就來導入正題吧!

首先還是要介紹一下WOL所需的條件為何?

1.主機板支援Wake On LAN的功能。(BIOS開啟)
2.網路卡支援Wake On LAN。
3.PCI的網卡與主機板以三線的接線連結(若支援PCI2.2者免)
4.需保留電源給網路卡。(現在的ATX均可支援,設定如下)



除了以上的條件之外,在WOL的步驟裡還有一個很重要的東西,那就是魔法封包(Magic Packet)的產生,因為我採用的是LINUX的系統,所以我是用了一個很小的程式(ether-wake.c)來產生魔法封包,實際的運作方式如下圖所示:

1.下載ether-wake.c:指令「wget 加上網址」



2.產生名為wol(可自訂)的執行檔:

指令:cc -O -Wall -o wol ether-wake.c
       ↑   ↑  
     編譯參數 輸出檔名


說明:雖然有警告訊息,但是產生出來的執行檔仍然可以正常使用,據朋友指出,可能是不同版本LINUX有關。(目前尚未找出該訊息的含意,若有好心人士歡迎指教)

3.利用執行檔來網路喚醒:./wol -v -b MAC -i interface



常用參數說明:
-v 追蹤封包與顯示版本
-b 要喚醒電腦的網卡MAC
-i 透過那張網路卡發送魔法封包
除了LINUX的程式之外,WINDOWS當然也有產生魔法封包的程式,可以參考WOLCMDWake on Lan for Windows GUI

如此一來就能夠開啟具備WOL功能的PC了,再來就是透過資料掛載遠端控制(視頻寬而定),來存取公司內部的資料。

不過,在喚醒電腦之後,要怎麼進到那台電腦裡存取資料,是另一個層面的問題,尤其是安全便利性的考量。所以在決定怎麼應用之前,還是得事先做好準備,以免主機是開了沒錯,反而會讓自己陷入「看得見,吃不著」、「好東西與好朋友共享」的窘境之中。

PS:
後續有時間,會再補上實作時需注意的細節。(歡迎指教)

2008年2月14日 星期四

輕量級的流量記錄軟體(Darkstat for Like-UNIX)

沒有留言:
對一般人來說,知道網路的流量其實並沒有太大的意義(用多用少都是自己承擔),除非是多人共用同一條寬頻或是架設小型網站,如果是這一類型的使用者,流量在網路的管理上就是一個很重要的參考依據。

如果你手上有中高階的網路設備或是防火牆的話,其實可以直接跳過這一篇,因為那些設備上一定都有流量的記錄,甚至還能分析出區網內每一個IP各別的流量(如果設備等級夠高的話),就算不行,至少也能夠記錄總流量的進出,不成問題。

如果手上沒有中高階的網路設備,可以利用Linux當成IP(頻寬)分享器來使用,只要拿一台舊主機來湊個數,就可以得到不錯的效果,同時也能在這樣子的環境下,練習更多網路管理的技術,一舉兩得的事,何樂不為,這次使用的主機設備如下:
硬體:CPU:XP-1800、RAM:DDR400-512MB、兩張網卡
軟體:OS:CENTOS-5.1Darkstat(小而美的流量統計軟體)
曾經接觸過Linux的人一定都聽過幾種很著名的流量分析軟體,例:MRTG(The Multi Router Traffic Grapher)、NTOP等,而且這兩個相當紅的流量分析軟體,甚至能夠在M$的WINDOWS下運行(MRTGNTOP),由此可知它們功能之強大。(有興趣的人可以看一下NTOP上的這篇文章

但是這兩種流量分析軟體,對於太老舊的機器或是對Linux還不是這麼熟悉的人來說,可能就是一種蠻大的負擔,因為要安裝它們基本上都要其它的套件相配合,才能夠發揮出它們真正的功效,例:MRTG需要GCC、Perl、GD、libpng和zlib(再加上apache-網頁伺服器)等套件(參考文件),雖然有些是在預設安裝時都有,但是那些還未裝上的套件,就要花點時間來安裝及處理它們相依性的問題,這一點對於剛接觸Linux的人或是等級太低的主機(系統負擔增加)就會構成困擾。

所以今天就來介紹這隻輕量級的流量統計軟體「Darkstat」,雖然它沒有辦法分析出各別的IP的流量,不過它能夠透過DNS來解析IP的功能,我覺得就是值得推薦的一個功能,除此之外,最重要的是...它不用煩惱跟其它套件的相依性(這一點就是極大的福音),它官網上所說的優點(大意如下):

1.圖型來顯示HOST的流量,並列出每個PORT的進出資訊。
2.內嵌式的網頁伺服器。(值得佳許)
3.透過DNS解析IP所代表的意義。(可以做為參考使用)
4.小巧、可攜性高、單獨執行、有效率、結構簡單。

接下來我們就來開始安裝吧!其實步驟相當簡單(為了抓圖方便我是用Pietty連進主機做安裝的動作...),可以直接點圖放大觀看。

1.下載Darkstat的RPM檔:(\為斷行符號)
#wget http://apt.freshrpms.net/pub/dag/packages/darkstat/\
darkstat-3.0.707-1.el5.rf.i386.rpm


2.安裝Darkstat的RPM檔:
#rpm -ivh darkstat-3.0.707-1.el5.rf.i386.rpm


3.執行Darkstat:

#/usr/sbin/darkstat -i eth1


4.常用參數說明:

-b:指定嵌入的網頁伺服器IP。(預設0.0.0.0,例:192.168.99.1)
-p:指定嵌入的網頁伺服器port。(預設667,例:-p 8080)
-f:過濾(參考tcpdump)。
-i:網路卡介面。(例:eth0、eth1...等)
-l:定義網段。(例:192.168.99.0/255.255.255.0)
#/usr/sbin/darkstat -p 99 -i eth1 –f "port 22"
eth1的port:22做流量統計(可在主機的port:99看結果)
5.檢查是否正常執行:
# ps ax | grep darkstat (檢查darkstat是否正常執行)
# netstat -tlnp | grep darkstat
(檢查darkstat開啟的port)



6.流量統計結果的圖形:

圖形Graphs:每分、時、日和月的流量


HOST:


有興趣的人可以抓來玩看看唷!輕量級的流量統計軟體,很容易上手,自己實作一次樂趣無窮唷!最後,還是跟大家說一聲:「情人節快樂」(街上應該閃光四射吧!)

2008年2月13日 星期三

多電腦切換器與遠端連線(KVM & Remote Login)

沒有留言:
對IT管理者來說,有些工具是能夠幫我們減輕工作量,尤其是在人力精簡時間成本飆高的現在來說,為自己建造一個良好的工作環境更為重要。

我先前也寫過《遠端登入的優缺點》及《遠端連線的黑暗技》,今天主要是來看看KVM和遠端連線的應用層面差在什麼地方,並不是要比較KVM和遠端連線那個好。

更何況這類工具已經朝向全面化的發展,例如KVM原本是用在限定的範圍內(LAB或機房內),現在也發展出KVM over IP的相關硬體,如此一來也就突破了原有的思維。

這兩種設備我都有使用(一人的命運),有其便利不便之處,舉例來說:

傳統KVM的優點:(這裡先不討論over IP的部份)
1.方便快速切換於各主機之間。
2.無需安裝其它軟體或啟動服務。
3.不受網路頻寬所限制。
4.有較大的空間可以使用。(減少輸出/入設備)

遠端連線的優點:Telnet/SSH/VNC/遠端桌面連線...等)
1.不受線材長度的限制。
2.減少往返的時間成本。
3.不需增添硬體。
以上的優點,只要使用過的人都會知道,如果真要比較應用層面的話,KVM應該要跟VNC或是遠端桌面連線來比,因為它們的使用訴求相近。

如果拿KVM跟Telnet/SSH這種文字介面的遠端連線相比,就有失偏頗,畢竟KVM跟VNC這一類工具的主要是能夠「即所」(某個商業軟體的廣告詞),而SSH這一類的應用,大多是透過指令的方式來維護主機使用。

我個人使用的經驗裡,最能突顯KVM的好處,應該就是在機架櫃內的應用,因為機架櫃內的空間極其珍貴,光是主機線材(電力、電信及網路)就足以塞滿機架櫃的內部,如果每台主機各自有一套螢幕、滑鼠和鍵盤的話,一個機架櫃中只要兩台主機以上,就可以把你的機架櫃塞滿,更何況還有繼電其它資訊設備,一般也說也會置放在機架櫃內便於控管。

所以KVM切換器在這種有安全/人員控管的環境內,就能夠看出它的功效,雖然KVM的線材通常都不會超過五公尺(超過20公尺需訊號加強器),但是在限定大小的機房內,勉強還算合用,若是專業級的大型機房則另當別論。

最能看見遠端連線的優點在那呢?

我個人覺得在部門間的主機連線母公司對子公司的主機管理,最能夠看出遠端連線的優點,不過遠端連線還是得透過網路做為媒介,除了安全性的隱憂之外,最怕頻寬負載過重人員設定錯誤這兩件事。

頻寬負載過重:

在部門間的主機連線比較沒有頻寬負載過重的問題(區網的架構下),但是在公司間就得面臨這部份的挑戰,除非原本就有特別規畫一條專線僅供遠端連線使用,否則以現在公司間的資料量來說,頂多只能使用文字介面的遠端連線(Telnet/SSH)來更動主機設定,要用到VNC/遠端桌面連線就顯得有點吃力

人員設定錯誤:

為什麼會怕人員設定錯誤呢?因為你不是真的在電腦面前,如果你透過遠端連線來修改主機設定,一個錯手就可能造成極大的影響,尤其是與防火牆有關的設定(例:LINUX上iptables的設定錯誤,把自己也拒於門外),一個設定錯誤,就得自己親自跑一趟現場,如果是部門之間,頂多練個腿力,如果是母/子公司之間,就真的是吃力不討好的一件事,嚴重一點還有可能會掉飯碗。

雖然KVM和遠端連線各有利弊,對一般人來說,要多花筆錢去買KVM的硬體設備(至少得1K以上),其實是件頗難的事情,所以遠端連線的使用者應該比使用KVM的人來得多吧!

以筆者的親身經歷來說,當初在家自學時,家中弄了個小型區網來練習,也是透過遠端連線來操控三~四台電腦,除了能同步查閱參考資料之外,也能避免在家裡東奔西跑,而且在區網內的安全性顧慮比較小,如果想要自學的人也可以參考這種模式囉!(雖然也能利用虛擬化技術來完成,但是筆者還是喜歡一台主機做一件事就好,也比較能夠模擬真實的情境)

KVM遠端連線,只能說:「工具人人會用,各有巧妙不同」。

2008年2月12日 星期二

多核心的體驗(Experience of Multicore)

4 則留言:
現在的CPU主流應該是雙核心起跳,有錢一點的人也可以去敗個四核心來用(如果你的軟體有支援四核心),現階段去添購新PC或是NB的人,雙核心已經屬於基本配備之一。

對市井小民來說,雙核心用得上嗎?(有需要?軟體有支援?)

這問題我也經常在問我自己,我先前也寫過《多核心CPU的應用》,還有在TOM'S HARDWARE看過的一篇文章《平行處理,第一部:CPU 核心》都有關於多核心的應用與討論。

我在過年前,想要利用電腦把一些影片轉檔成DVD PLAYER能播放的格式,帶回家度過這個有點長又不算太長的年假,尤其是在沒有網路的家,在進行轉檔的過程中,就深刻地感受到多核心的威力,也就是這篇文章的靈感來源。

筆者手中有三台能夠動用的電腦(兩台PC+一台NB),其中包括了一台P4(單核3.0+1GB RAM)、一台Athlon 64 X2(雙核3800+1GB RAM)、一台NB(雙核T5600+2GB RAM),為了要盡快把想看的影片轉完,我就同時開了這三台主機來進行轉檔的工作。

一比之下,就能感受到雙核心的威力,因為用P4主機轉影片格式,大約是1:1的時間(雖然有超執行緒的技術支援,但是P4時代的HT應該算是偽雙核),用雙核心的Athlon 64 X2或T5600來進行轉檔,大約可以達到2:1的速度(原本1分鐘的影片只需30秒即可完成轉檔)。

為了要實際測試一下這部份的差距,我就拿NB來做個小實驗,在相同的環境之下,比較單核心跟雙核心在轉檔這部份的差別。

測試硬體:CPU:T5600(約1.83GHz)、2GB RAM
測試軟體:TMPGEnc PLUS 2.5
影片格式:原檔的時間長度:1:29=89s
   INPUT:RMVB格式
      Audio: AAC 32000Hz stereo
      Video: RealVideo 4 512x384 25.00fps 479Kbps
   OUTPUT:MPG格式
      Video: MPEG1 Video 352x240 29.97fps 1150Kbps
      Audio: MPEG Audio 44100Hz stereo 224Kbps

在單、雙核心的測試,我是直接透過工作管理員來做到單核或雙核的切換,如下圖:



雙核心轉檔:使用43s完成轉檔。(CPU使用率約為75%



單核心轉檔:使用60s完成轉檔。(CPU使用率約為50%



經過了這樣子的測試之後,為什麼沒有得到2:1的時間差距呢?我自己想了一下,最有可能的因素就是影片長度CPU使用率這兩點。

影片長度:
為了測試的便利性,我沒有採用較長時間的影片檔,只用了89秒的影片,無法跟當初我轉影片檔時,動輒一小時長度的影片來比較。(誤差的部份被放大許多)

CPU使用率:
使用雙核心轉檔時,CPU的使用率僅為75%,並沒有達到100%,如果是直接透過數據來換算效能,多25%的CPU使用率可以減少約17s的轉檔時間,換句話說,如果CPU使用率達到100%時,就能夠逼近2:1的效能差距。

除了上述的因素之外,NB的架構與PC也有所不同,要考慮的因素還有很多,我這篇文章的重點是多核心在影像轉檔上的功效,這應用也是我們比較有機會看出雙核心效能的地方。

可惜我手邊沒有四核心的CPU可以測試,不然我也挺想試看看四核心能否達到更好的效率(單就TOM'S硬體的結論來看應該是可以成倍數成長)。

除此之外,在我測試的過程中,發現記憶體的大小對於影像轉檔的影響極小,只要記憶體能支持系統正常運行即可,1GB還是2GB的RAM,對於轉檔的時間長短並無太大的影響,這一點不像處理靜態影像一樣,完全都給看記憶體的臉色來做事。

雖然這個多核心的體驗的測試過程有點粗糙,重點是讓大家看見多核心CPU對於時間及效能影響在那?讓我們這些小市民們也能夠真實地體會一下CPU革命的好處吧!

2008年2月5日 星期二

年假公告(Notice of 2008/02/06~11)

沒有留言:
一開始,先祝大家「新年快樂新年新氣象(也許有人會回我「新年新工作...」)」,沒有提早放假的人,今天應該是上班的最後一天,大家都會在MSN或部落格留上自己的祝福。

按照慣例,我是一個放假就很難上來更新文章的人,就算有,可能也是在分站「文字工的逆襲」,而年假要上來更新文章,對我來說,更是一件不可能的任務...

並不是要躲寒流而窩在溫暖的被窩裡,也不是在牌桌上努力地「乾泳」,而是我一回家對外連絡的媒介就只剩下電話,而且還是不具備任何網路功能的2G電話(雖然已經換了3G卡,但是完全沒開通網路的欲望),雖然我用過各式各樣的網路(從撥接到現在的FTTB),但是,我家卻是一個非常不數位化的地方。(老實說也用不著呀!除了我回家這幾天之外...)

其實每次過年大概都是這樣子度過,回到久違的家(真的很久...一年回個一兩次的地方),跟爸媽吃年夜飯、幫忙整理家裡、擔任接送老媽去拜拜的司機、陪陪久違的父母親、參加一年一度的家族聚會(雖然很像是在比「泳技」)...等。

每年都一樣,很難有什麼變化,光是那幾天要去燒香拜拜的地方(雖然我沒有什麼信仰問題,那是家中習俗!),就足以把你綁在家裡動彈不得,更別提要去那兒玩耍。

況且今年,台北養的那隻「喵仔」也會跟我一起回家,因為我捨不得讓他去住寵物店的「套房」,畢竟在家中我是不關他的,又沒那個本錢讓他去住別墅,只好委屈他要跟我長途跋涉回家。(這篇重點應該是年假我沒有辦法上來更新吧!?)

好啦!總而言之,這個年假我要上網的機率不高!(除非我衝網咖、或是提早回台北...),不過還是很歡迎大家留言與賜教,只要我能夠上線,就會馬上回覆各位的留言,畢竟這地方也是我生活重心之一。

最後,再拜個早年:「新年快樂!!」。鼠年再一起努力打拼吧!