捐血一袋救人一命

江蘇拙政園

江蘇 拙政園

全家福

日本 和歌山城

賞楓之旅

千燈 夕照

水鄉千燈

蘆洲 微風運河

破曉時分

2010年12月6日 星期一

血拼經驗談

去上海,總免不了去買些A貨或超A貨。

在以前,可以去襄陽公園那邊的賣場,可是後來大陸官方整頓後,很多A貨商就四處流散了。

所以很多人會選擇去上海科技館,那邊交通真的很方便,地鐵2號線世紀廣場出口就在Mall(亞太盛匯)裡面。

不過我個人偏好去「襄陽公園」遺址週遭…

理由很簡單:

  1. 上海科技館雖然地鐵直達,但是距離市中心還是比較遠一點,交通時間很長!
  2. 店面不會放實物(或者說店面的實物品質都 So So),你只能以型錄購物方式,指定款式,再由店員去倉庫取貨(10~20分鐘不等),如果你要利用這段時間去逛別家店,店家就不會鳥你,因為實物擺在店裡風險太高(怕被抓)。
  3. 店員取貨來之後,可能色澤、品質你不滿意(店員不會第一次就拿最好的給你),又得等店員去倉庫換貨,往返時間太長。
  4. 再怎麼說,大賣場的店租絕對比倉庫貴上許多,所以你能殺的價格有限。

所以你花三四個小時,可能只能選到一兩件滿意的商品。

而去襄陽市場遺址週遭,你不用只看型錄,滿倉庫的貨隨你挑選。

你只要在地鐵「陜西南路站」出來,路上隨時會有人搭訕推銷。

只要你想買,對方就會帶你,曲了拐彎的穿大街走小巷,你只要放心跟著去倉庫即可,也不用想太多什麼,去了會被殺人滅口或是慘遭酷刑還是搶劫的。

當然,帶路人不會第一次就帶你去超A貨倉庫看,通常都是B級貨,

只要你看不上眼,表示對這些次級品沒興趣,準備離去時,店家就會帶你去A級貨倉庫挑選。

如果你還是看不上眼,準備再次離去時,店家就會帶你去超A貨倉庫。

注意一點,通常存放超A貨的倉庫,為了確保商品不會受潮損毀,不是使用除濕機,就是有冷氣空調,不會只有抽風扇!

這些超A貨,店家通常一開價就是2000,4000 RMB的漫天開價!這時你就可以直接不客氣的打個1折或是2折,大約就是 200~400 RMB的價格。

如果店家對於價格不滿意,你也無需留戀,反正這個地方,就是超A貨多(有的人稱水貨);這家買不成,還有別家等著你呢…

拉客的帶路人為了要抽佣金,通常會幫忙緩一緩場面,要求加一點,你也別加多,加個10 RMB就差不多了,接下來就看店家怎麼還價。

我個人認為成交價大約在 1.8折~2折之間是差不多的,硬要殺到最底價,你也會浪費許多時間。

如果成交了,你可以跟店家要個名片,以後可以省點時間,或是好康道相報。

PS.我建議要去襄陽市場遺址的話,至少兩個人以上,有人可以幫腔作勢,殺價會輕鬆點。但是呢,跟去的人可別也一頭熱的去選包包,一定要冷靜,三不五時提醒一下血拼的人,時間要到了,會來不及搭機,或是約會來不及了;總之呢,隨便你找理由,就是要讓店家自己降價。

PS.如果沒有打算要買,就千萬別出價;出了價又不買,是很不好的行為。

PS.地鐵1號線、10號線,於「陜西南路」站下車,沿陜西南路或淮海中路走走,隨時都會有人拉客。不用擔心找不到門路。

PS.如果你去上海科技館買東西,千萬小心店家給你看A貨,結帳後卻給你B貨!很多店家都抱著反正觀光客明天就離開了,也沒空再回來換貨,會來個偷龍轉鳳,讓你事後又得跑一趟去換貨!

2010年12月5日 星期日

七浦路成衣批發市場

從地鐵站一出來,就是成衣賣場,這裡主要都是賣女人的衣服,所以我只負責帶小朋友,好讓老婆大開殺戒。

不過,就我老婆自己的說法,感覺價格不比五分埔便宜,甚至價格更硬

所以沒買幾件就準備回家了。

2010年12月4日 星期六

海底撈

今天約了在大陸出差的朋友一起去海底撈,見識一下各大企業爭相觀摩的餐廳。

我們選擇的是海底撈長壽路店,就在長壽路地鐵站旁邊。

海底撈就是一個單點的火鍋店,但是為什麼各大企業要爭相觀摩…

就從我們的感受說起,

一到長壽路店門口,一樓沒有無障礙步道,但是馬上有服務人員幫忙把嬰兒車抬到電梯口,然後又一名服務人員幫忙按電梯,電梯一到樓上開門,馬上就兩位服務生搶上前來,一位幫我收嬰兒車,一位負責引導落座。

落座之後,又來一位服務生,負責逗我兒子,一位負責點菜。

其實每樣菜都不算貴,只是大家想嘗鮮,如果點太多道又怕吃不完就浪費了,但是他可以讓你只點半份,價錢就除以2,挺不錯的想法。

客人可以省錢,店家也可以省食材。

當然如果只是服務好,也沒啥好說的。

不管是他提供的涼茶(只要有點飲料就無限續杯,點酸梅湯可以續涼茶,點涼茶可以續酸梅湯),還是湯底,醬料或是食材都非常好。牛肉嫩,羊肉也不羶。

朋友點了一份拉麵,這也有噱頭,叫師傅出來舞麵。

在我們跟朋友用餐的同時,還有專人逗我兒子,送玩具給他,這頓飯真的是我們出來遊玩的幾天裡,吃的最輕鬆的一餐。

飯後去上洗手間時,有人伺候著幫你開關水龍頭、擠洗手乳等等,我老婆說天氣冷手都乾裂,服務人員就送一條護手霜給我老婆…

離開前仔細看了一下候位區,有做指甲彩繪的,有下棋的,有擦鞋的,有看書報喝飲料的,這些服務全都免費…

真的只能說不簡單。

一個是成本如何 Cover,一個是員工的教育管理。難怪許多企業想要一探究竟。

2010年12月3日 星期五

上海投宿經驗談

因為這次旅遊,在上海住的是「星程長鈺酒店」,我覺得它有幾個特點,讓我覺得很滿意。

交通方便

  1. 地鐵8號線、10號線,老西門站下車,飯店就在地鐵6號出口旁。
  2. 距離「豫園」(老城隍廟)只有一站
  3. 距離「新天地」只有一站
  4. 距離「人民廣場」只有一站,方便逛完南京步行街,搭地鐵回飯店。
  5. 距離「南京東路」只有二站,方便去外灘、南京東路步行街、及小楊生煎寧波路店(請往寧波路出口,經過全家便利商店後的第一個路口就是寧波路,在路口就可以看到小楊生煎,很好找的)
  6. 距離「陜西南路」只有二站,去敗超A貨很方便
  7. 距離「天潼路」只有三站,要去七浦路成衣批發市場很方便
  8. 開車上延安高架道路也很快,所以打D去哪也很方便。

生活機能方便

  1. 大馬頭茶餐廳,港式口味,比起上海本幫菜的「濃油赤醬」較能接受,就在地鐵站1號出口旁
  2. 24小時營業的85度C,隨時可以買到咖啡、蛋糕、麵包
  3. 易買得超市內有新加坡來的「麵包新語」,口感、味道、衛生都比較好
  4. 易買得超市內還可以買到很多生活日用品
  5. 易買得超市旁還有電器用品Mall

image

不過…它也不是完美的,畢竟它只是三星級的飯店,

  • 飯店櫃台服務不夠積極
  • 房間硬體設施需加強維護
  • 早餐太過簡陋

 

PS.某些飯店,不招待外賓,包括港澳台旅客,例如:浦江之星東台路店

2010年12月2日 星期四

周庄之旅

今天起了個早,因為要跟團去周庄,而且就住周庄不回蘇州了,所以忙著打包行李。

大約八點半左右,旅行社的小巴開到飯店來接我們。

沿路導遊就跟我們說千萬別去買山塘的票~~為什麼不早點講呀…

 

到周庄還要一個多小時的車程,就當睡個回籠覺吧…

到周庄鎮之後,先去佛教文物館,

然後去買票、拍照,票上會印大頭照,這樣當日就可以隨意進出周庄鎮。

然後小巴把我們載到XXX下車,參觀沈萬三水底墓…導遊小姐說這裡只有衣冠塚,但是只能看到一個墓碑,沒有什麼文物留存。

 

接著又去沈廳、張廳,古時候的人家名堂真多,男人跟女人坐的椅子都不同,

男人是方,女人是圓,說什麼天圓地方,男人就是天,女人就是地…

 

等逛完沈廳、張廳也差不多是中午了,就跟著導遊去餐廳吃飯。

倒也不是說這家做的好吃不好吃,而是在一進周庄時,就有看到許多婦女在河邊洗菜洗鍋的… 但是河水看起來挺髒的,雖然還有魚活著,雖然船家說周庄的水是活水…

導遊說她也怕死怕病,所以她選的這家是用自來水洗菜烹煮的…:D

我藉著上廁所的時間,繞去廚房偷看,確實是用自來水,這才放心了。

PS.這家餐廳似乎只做中午的生意,下午五點多我們打算來這吃晚餐,店家早就打烊了…

 

飯後就跟司機師傅去車上拿行李,下午就不跟團了。

 

下午先去搭個船遊河,一船100 RMB,最多可載八人,還好蠻多人想要湊人數搭船,所以湊了五人去搭船,這樣也比較好算。

 

船夫先簡介周庄,然後讓我們輪流去搖櫓,再來就是遊樂的高潮,船夫故意左右搖晃船身,大家都嚇的大叫。

 

最後船夫要賺點小費,也不管大家同不同意就獻唱了,結果一到岸,兩位大陸人為了閃小費,跑得跟飛一樣…我們還是乖乖給啦,不想為了這種小錢搞得大家心情不愉快。

然後就在小鎮裡到處亂逛,順便找一下可以給小朋友吃的東西。

2010年12月1日 星期三

山塘老街

山塘老街是一條水陸並行的一條街,南起閭門,北至虎丘風景區南門,全長約三公里

南端入口與「北浩弄」相接(31.3161, 120.60363),北端入口在「虎丘山風景區南門旁」(31.332690, 120.57914)

image

如果您不跟計程車司機講清楚,計程車都會將您載到「廣濟路」上的售票亭旁!

先說清楚,參觀以下景點,才需要購票

  • 玉涵堂
  • 安泰救火會
  • 船文化傳承館
  • 商會博物館

如果不想參觀這些景點,是不需要購票的!

虎丘山風景區

虎丘有兩個入口,北門及南門;多年前出差,是自行搭公車去時,終點站是在北門旁邊。這次包車前往,走的是南門。

虎丘路走到底,就是南門!

虎丘路現在變成婚紗一條街,在這裡有個虎丘山風景區的售票亭,但是距離虎丘山風景區還很遠…

有網友反應,黑車在拉客時,殺價殺得太兇,就被載到這個售票亭丟包。

所以千萬堅持要司機載到虎丘路底,看見虎丘山風景區大門才下車,風景區大門內就有售票處。

image

胥門

從吉慶街方向看,一點也不壯觀,一定要從萬年橋大街那邊的方向看,才會有Fu。

image

盤門景區

盤門景區正門售票處在東大街上,如果打D的話,可以走南面的小巷,一直通到盤門的水陸城門旁邊,那裡也有個售票處;那裡離水陸城門、吳門橋最近,而且在正門那邊也沒辦法拍攝瑞光塔全景

盤門景區的「麗景樓」僅開放泡茶的人上去…只能說是超級機車,票價上可沒說要泡茶才能去呀…

image

2010年11月30日 星期二

滬蘇杭旅遊-敗興離去

昨日沒去成西湖,本想說如果今天天氣好些,就把西湖與西溪的行程壓縮成一天。

結果…一早起來,雨勢比昨天還大…這樣的天氣不知道會撐多久…

乾脆提前前往蘇州去玩…

2010年11月29日 星期一

滬蘇杭旅遊-初到杭州

昨晚舟車勞頓的,所以今天起床比較晚;本來跟飯店約十點接送至虹橋機場,跟飯店要喬改成十一點。

不過飯店表示,11點無法接送,所以飯店會給10 RMB車馬費,讓我們自己打D。

我想也好,因為我是要去虹橋火車站,雖然火車站就在虹橋機場第二航廈旁,但也要走一段路。我拖著兩大箱行李,還帶著老婆跟兩歲娃兒,飯店又只負責接送到機場,還不如飯店貼點錢,我自己打D直接到火車站輕鬆點。

PS.在櫃台退房時,櫃台給我們 10 RMB,結果旁邊一對大陸夫妻看到,就問說為什麼他們不能接送,也沒有 10 RMB 可以退?櫃台表示,要前一晚有預約接送的房客才會退,沒預約的話,飯店就省了… 吐舌頭

所以我們就自己打D前往虹橋火車站,距離也不遠,就是起步價12 RMB。

2010年11月28日 星期日

蘇杭九日遊 出發了!

計畫許久的旅行,終於啟程了!

自從8月初開始計劃準備去旅遊,

因為機票是利用亞洲萬里通哩程數兌換的,所以花了很長的時間、打了很多次的長途電話才敲定10月底出發。

可是到出發前一天才發現,我的台胞證不見了,本想到上海浦東機場,再去辦落地台胞證加簽。

沒想到,中華航空公司櫃台小姐先是表示只要沒有台胞證,就不能登機。

可是我說,浦東機場允許辦理落地台胞證加簽,櫃台小姐跑去問資深人員後,才同意辦理;但是櫃台小姐又說,我是遺失的,所以必須出具報案單,才能讓我登機。

我心想,剛才你連可以辦落地簽都不知道,現在你就知道遺失必須出具報案單才能登機…真的是OOXX

接著我問那我現在立刻去航警局報案,請問航警局在哪…

櫃台小姐居然答非所問的說,我不確定航警局會不會受理遺失報案…

我當場很想爆粗口,妳是住海邊的呀,管這麼寬,妳管航警局受不受理幹嘛?航警局受不受理,那是我的事。

連續問了三次都得到一樣的回答,我就沒耐心了,直接去問航空站服務台,直奔航警局報案。

2010年11月3日 星期三

無法從Android Market下載應用軟體的原因

最近剛入手了遠傳小精靈 IDEOS,卻經常發生無法下載程式檔案的問題,經過爬文許久,仍然無法解決。

後來狠下心,把系統回復初始狀態後,結果手機就自動用3G上網下載應用程式,而且都很順利的自動安裝完成。

後來才想到很可能是防火牆的問題。

今天實際去測試一次,並檢查防火牆 Log,果然找到原因!

在連接 Android Market 時,會走 TCP 80 Port去讀取網站相關資訊,但是要下載應用軟體時,卻是走TCP 5228 Port。

只要防火牆開了 TCP 5228 Port,就可以正常下載了!

2010年11月1日 星期一

離線 Google Maps for Android

為何要使用離線 Google Maps?

因為

  1. 台灣各地的網路品質不一,有時在偏遠地方,或是車速過快,都會導致來不及讀取地圖。
  2. 3G上網還是很貴

所以試了幾種離線的 Google Maps 程式,最後選擇 Mobile Atlas Creator。

1. Download Mobile Atlas Creator for Windows,在 PC 上安裝此程式,用來下載 Google Maps (最新版的 Mobile Atlas Creator 已經不能使用 Google Maps 來當圖資來源,新版使用Google Maps 圖資請參考MOBAC詳細說明)

2. Download SQLite JDBC Driver,存到 Mobile Atlas Creator的目錄下,Mobile Altas Creator會使用它,將Google Maps 存成 SQLite 資料庫格式。

3.選擇 Map Source,我個人習慣都是去抓Google Maps

4.設定Google Maps語系為「zh-TW」,選單中沒有,請自行 Key In

5.選擇 Atlas 存檔格式,看你自己習慣在手機上使用哪個程式來讀取離線資料,我個人是選用 Big Planet Tracks SQLite,因為 RMaps 和 Big Planet Tracks 都可以讀取這個格式。

PS.如果你沒有事先下載SQLite JDBC Driver(Step 2),就無法以此格式存檔,用這個格式存檔,一來檔案小,二來手機反應速度也快。

PS.RMaps的功能與Big Planet Tracks類似,不過它有幾個缺點

  • 不能用手機抓地圖資料存到離線資料庫檔案
  • 當離線資料庫檔案容量太大時,讀取速度會很慢!

2010年10月25日 星期一

按照部門來安裝印表機

以往公司透過 Group Policy 安裝印表機,都是在Windows 啟動時,執行一支 printer.exe 的小程式來連接印表機,但是它會把 Active Directory 裡的印表機全數安裝上去。

對於所有的公司同仁都覺得有點困擾,因為使用者每次列印都要從一大堆印表機選擇其中某一台。

同仁希望能減少印表機的清單數量。

所以我寫了以下的 Script,透過讀取使用者OU來決定安裝哪些印表機

這樣只要設定一條Group Policy 就可以套用全公司,也不用設定好幾條 Group Policy去分別套用 OU

2010年10月15日 星期五

試玩 Android Emulator

1.下載安裝 JDK

2.下載安裝 Eclipse IDE for Java Developers

  執行 Eclipse.exe

  選擇「Help」→「Install New Software」

  image 

2010年10月12日 星期二

NTLDR is missing

今日同事反應他的筆電一開機就出現此訊息,請我協助處理。

以下簡述處理過程

2010年9月15日 星期三

金庸筆下的桃花島

今天在搜尋太湖的旅遊資訊時,無意間發現一段話,「附近還有石公山、縹緲峰、桃花島、三山島等風景…」

就自然而然的聯想到金庸筆下的桃花島。

太湖西山確實也產桃…

所以就用Google Maps去找了一下…

發現太湖西山與東山之間有個小島,名為「小大山」,

2010-09-15_160403

用衛星空照圖來看,居然島中央還有一大一小圓形的迷宮圖形

2010-09-15_160319

不知是否就是金庸先生筆下的桃花島…期待三月桃花盛開時~~

PS.舟山外海也有一個號稱桃花島的觀光景點,那是大陸拍攝「射鵰英雄傳」時造出來的景…

2010年9月7日 星期二

蘇州公交資訊查詢

蘇州市公交資訊(包括木瀆、光福、太湖西山、太湖東山…)

http://www.szjt.cn/ContentDetail.aspx?p=eaef4b49-3f6b-4272-99b4-3a13cba3c3ba&q=dd0b32e4-ec2a-4d82-b044-f8d0c365b489&r=eaef4b49-3f6b-4272-99b4-3a13cba3c3ba&t=22ac6238-ba87-4534-848a-9067336d9ab4

蘇州→上海機場長途公交資訊

http://www.szjt.cn/XMLPage.aspx?r=39190378-4442-4bd9-aa86-3bed48d4bae5&xml=static/G.keyunjc.xml

蘇州長途客運站

http://www.szjt.cn/XMLPage.aspx?r=61621433-110a-4366-b470-9f00405ce39d&xml=static/G.keyunzd.xml

以下網站可以依停靠站來查詢有哪些公車停靠

http://www.szkg.net.cn/fwrx/fwrx_test.asp

例如:我查「林屋洞」,就會列出有停靠林屋洞的公車資訊,也會同時列出該公車所有停靠站。接著再用網頁搜尋內容的功能,就可以很容易找出從「觀前街」到「林屋洞」的公車了。

http://big5.elong.com/gate/big5/trip.elong.com/home/space-72530-do-blog-id-25072.html

2010年9月4日 星期六

查詢上海火車資訊

當在上海鐵路局官網點選票價查詢時,會開啟下列網站

http://www.12306.cn/mormhweb/kyfw/pjcx/

當輸入日期與起迄站之後,就可以查詢班次、票價

票價高低依續為高速、動車、特快、快速、普快…

以我查詢上海到蘇州為例,

高速的車程只要20~30分鐘左右,而動車組大約是40分鐘

高速跟動車組只有分一等座與二等座,其他車型才有分硬座/軟座或是軟/硬臥

但是我覺得時間價格比最值得的是動車組。

高速二等座大約是41 RMB,而動車組二等座大約是26 RMB,兩者車程時間差是16~20分鐘

但是特快與動車組車程時間差是20~30分鐘,但是價差卻只有2 RMB

特快之下的車型,票價價差大約都是 2 RMB,但車程時間差卻都很大!

所以建議搭乘動車組最划算…當然,如果沒有趕時間,就選最慢的也沒關係…

PS.發站與到站必須自己手打(雖然有下拉選單,但是下拉選單是空白的!)。另外,請使用Unicode 簡體輸入,輸入繁體中文的話,它可是會跟你說找不到…

image

2010年8月27日 星期五

Fortigate VDOM設定

最近朋友的公司申請了兩條ADSL,想要使用一台Fortigate 60B來連接,因為兩條線的用途不同,風險也不同,希望能切割開來,所以來問我怎麼辦。

其實Fortigate、Juniper都可以做到一台切成多台來用,不過這裡主要介紹Fortigate,Juniper就不多談了。

PS. 使用 VDOM 功能,會造成 CPU Loading 大幅加重!

Google Apps 標準版-中小企業的好幫手

對中小企業來說,Google Apps 可說是很實用的雲端服務。

它提供了

電子郵件(包括過濾廣告信、過濾病毒及釣魚信件)

日曆(行事曆,可以自動E-Mail 提醒行程,也可透過手機傳送行程簡訊)

文件

協作平台(企業可自行建置內部網站或公開網站,也可提供給員工建立個人部落格)

重點是這一切都不用錢!可以節省中小企業不少開銷。

中小企業要建置不用花錢買設備!

不用花錢、花時間建置!

不用花錢請人維護!

不用電費

而且要建置一個簡單的表單網站都沒問題,它可以自動把網站上的表單,存到Google Docs裡,也可以選擇寄送到指定信箱。

所以你可以用來做問券,做通訊錄,也可以做檔案分享網站

Google Apps 已改為收費服務,而且價格不便宜,就不用考慮了!

周庄過渡商業化

在搜集旅遊資料的過程中,找到許多以水為路,以船為車的江南水鄉。

包括

  • 上海市的「七寶鎮」、「朱家角鎮」
  • 蘇州市的「木瀆鎮」、「光福鎮」
  • 昆山市的「千燈鎮」、「甪直鎮」、「周庄鎮」、「錦溪鎮」
  • 吳江市的「同里鎮」
  • 以及湖州市的「南潯鎮」
  • 嘉興市的「西塘鎮」、「烏鎮」

斑肝湯? 鲃肺湯?

在計劃十月底滬蘇旅遊時,查到一項美食名為「鲃肺湯」,看名字實在看不出來到底是什麼東西做的湯…

仔細一查,原來是用「鲃魚」的肝、肉熬煮的湯。

什麼是「鲃魚」,再查一下,原來就是指某一種河豚。

接著往下查,就可以看到「斑肝湯」與「鲃肺湯」的爭論。(還遷扯到于右任…)

「斑肝湯」就是「斑魚」的肝、肉熬煮的湯。

而斑魚,指的也是河豚。

2010年8月26日 星期四

10/27-11/3旅遊計劃(2)

這次去大陸玩,帶了老婆跟孩子,她倆都是第一次去大陸,而且孩子還小,所以必須找交通方便一點的飯店。

所以我先上攜程網,找出上海的飯店,然後設定預算價格 Range

然後看看攜程介紹每間飯店距離地鐵的資訊,一一列出後,去查看Google Maps各飯店距離地鐵的距離以及預估步行時間。

然後把10分鐘步行距離的飯店都列在Google Masp上,選擇一家距離景點最近的飯店

要不然省了飯店錢,交通費又貴了…

PS.如果是跟別人一起出去玩,可以不用考慮飯店距離地鐵的遠近,直接包計程車,大家一起分攤費用,可能還比搭地鐵便宜…不過我們一家人也沒啥好分攤的,所以還是乖乖搭地鐵吧…

最後選了這一家「浦江之星」

至於蘇州的飯店,就住以前住過的「樂鄉飯店」,公交方便,要去觀前街散步也近,而且附近也很熱鬧

至於周庄嘛,我打算選「夢裡水鄉」!

看到它在陽台有桌椅可以喝茶,還可以看水道風景就決定是它了

2010年8月25日 星期三

Fortigate 密碼遺失/忘了怎麼辦

這種狀況只能進入維護模式去設定。

1.使用原廠配備的 Console 線(一頭是DB-9,一頭是 RJ45)

2.請將 DB-9 那一台,接到電腦的 COM1 ,如果您的筆電沒有 COM Port,請去買一個 USB to RS-232 的小玩意。再不然就是找台桌上型/伺服器電腦來接。

3.請使用Windows 的「超級終端機」,如果您沒有安裝這個軟體,可以到控制台的新增移除程式裡勾選安裝,不過系統會要求您插入原版光碟。另一個解決辦法就是去下載 PuTTY

4.使用 PuTTY時,請點選 Serial,原來輸入名稱的地方,就會自動變成 COM1,按下「Open」就可以連接。

image

5.將Fortigate斷電,再插上電源,讓它重新啟動。您會在 PuTTY 的畫面看到啟動過程、訊息

image

6.等到系統出現 login 提示符號時,請輸入帳號「maintainer

7.密碼是bcpb[序號],您可以查看機身上的貼紙。如果您沒有更改過該防火牆的主機名稱,預設的主機名稱,就是序號。像上圖,我把防火牆主機名稱改成Office,他就會顯示 Office login,如果沒設定名稱,就是 FGxxxxxxxx login。

PS.請注意,步驟6~7必須在30秒內完成!要不然怎麼打都沒有用!

8.登入之後,請執行以下命令

config system admin
edit admin
set password “新的密碼”
end

PS.一定要輸入end,上述的設定才會寫入,不然不會生效!

9.如果要把所有的設定清除,改為出廠預設值,請執行以下命令

execute factoryreset

Fortigate SSL VPN

Fortigate SSL VPN只能在NAT模式下運行,不能在通透模式在運行。

Fortigate SSL VPN有兩種運作模式

1.Web Mode:支援HTTP/HTTPS/FTP/SMB/CIFS/Telnet/VNC/RDP,它是使用Java Applet,所以任何瀏覽器均可。

2.Tunnel Mode:流量會從”ssl.root”虛擬介面進出,需要另外安裝SSL VPN Client,這個軟體可以在Fortinet網站上下載(Free),它包含在 Fortigate Client軟體中!

2010年8月21日 星期六

淺水灣之旅

夏日炎炎,去海邊吹吹海風,曬曬太陽,這個地方離淺水灣不遠,有沙灘,有潮間帶,重點是遊客不多,算是個私房景點。

旁邊的咖啡館還提供沖水服務(當然是要用餐才可以免費沖水啦…)

DSC00069

DSC00075

DSC00076

DSC00080

DSC00083

DSC00090

DSC00092

DSC00103

image

2010年8月14日 星期六

設定中華電信小烏龜

請將您的電腦 IP 設為 192.168.1.0/255.255.255.0 這個網段的 IP

但是不要設成 192.168.1.1/255.255.255.0 (這個是小烏龜內建的 LAN IP)

設好之後就可以使用 Browser 連接 http://192.168.1.1 登入小烏龜 (ATU-R)

 

帳號:cht

密碼規則:cht[Location][a|v]dsl

這裡解說一下密碼規則;

如果您的小烏龜背面貼著北區,Location請改為n

如果您的小烏龜背面貼著中區,Location請改為c

如果您的小烏龜背面貼著南區,Location請改為s

如果您的小烏龜是ADSL,[a|v]請改為a

如果您的小烏龜是VDSL,[a|v]請改為v

例如:chtnvdsl

 

中華電的小烏龜有內建NAT功能,如果臨時沒有小烏龜,也可以用它來頂著先。

但是,在您動手修改之前,請先備份設定檔!

因為中華電信的小烏龜每一批都不一定是同一個廠牌,所以我也沒辦法告訴您確切的設定及操作。

請自己點選選單瞧瞧囉!

如何遠端登入電腦

當你要遠端管理電腦時,經常會需要執行遠端桌面,可是往往電腦卻沒有設定允許遠端連線。

這時,就可以利用以下方法來設定遠端電腦,允許使用者遠端連線到這台電腦。

 

1.透過 Wake On LAN 功能,喚醒已關機的電腦。

WAKE ON LAN 工具很多,建議使用以下兩種

a.WOL Magic Packet Sender ,它可以儲存電腦名稱、IP、MAC Address,以後使用只要從下拉選單中選取即可。

image

b.Depicus Wake On Lan Tools,它有GUI 程式跟 文字模式程式,方便你用程式去呼叫它。

image

 

2.透過 SC 指令,啟動遠端電腦 Remote Registry服務 (正常預設是啟動的,如果沒有啟動,請以 SC 指令啟動)

sc \\REMOTE-PC start RemoteRegistry

粗體藍色字樣部份,請改成遠端電腦的名稱,或是 IP Address

3.執行 Regedit ,選擇「檔案」→「連線網路登錄」,輸入遠端電腦名稱,載入遠端電腦的註冊機碼

image

image

4.修改遠端電腦的 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server,將 fDenyTSConnections 的數值改為 0,即可允許遠端登入。

image

PS.您的帳號必須要有管理者權限,此外遠端修改登錄,只能修改 HKEY_LOCAL_MACHINE 以及 HKEY_USERS,不能修改 HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_CURRENT_CONFIG

PS.如果要修改遠端電腦某帳號的 HKEY_CURRENT_USER

Step 1:請點選 HKEY_USERS之後,再按下「檔案」→「載入Hive控制檔」

image

Step 2:在開啟欄位輸入 \\REMOTE-PC\C$\Documents and Settings\ACCOUNT,按下開啟,就會開啟遠端資料夾,然後選取 NTUSER.DAT,再按下開啟,就會出現「載入Hive控制檔」視窗,請隨意取一個你容易辨識的名稱,例如:USER_AIDAN

image

PS1. REMOTE-PC,請自行改為遠端電腦名稱

PS2. C$,請改為遠端電腦的使用者的 UserProfile 所在磁碟機代號

PS3. ACCOUNT,請改為遠端電腦的使用者帳號

Step 3:按下確定之後,在 HKEY_USERS 底下,就會出現一個 USER_AIDAN 的機碼樹,這就是 Aidan 的 HKEY_CURRENT_USER 機碼資料

image

Step 4:改完之後,記得選取「檔案」→「Hive解除載入」

image

2010年8月9日 星期一

江南水鄉:周庄鎮

交通:http://www.zhouzhuang.net/LY_zijiayou.html

汽車新站(距離售票處約 800 公尺)
從汽車新站到售票處搭三輪車:3~10 RMB
汽車站(售票處旁)

餐飲
著名餐點:萬三蹄、鲃肺湯(魚肝+魚肉)

門票:

門票項目

現場購票 (RMB)

同程訂票 (RMB)

取票地點

普通周庄票(08:00~16:00)

100(人)

88(人)

停車場或老牌樓售票處
夜周庄票(16:00~21:00)

80(人)

70(人)

停車場或老牌樓售票處
環鎮水上遊

40(人)

35(人

停車場售票處
江南採珠遊

60(船)

50(船)

淀南路太史淀風景遊覽區
四季周庄(歌舞Show)

150/280

110/?

周庄新牌樓南面四季周庄售票處(普通席/貴賓席)
古鎮水巷遊(1船)

100(船)

  限乘8人
萬三財運水上之旅

150/180(船)

  單程/往返
富貴歡樂世界

30(人)

   

以上票價資訊,可能有異動,請自行參閱官網資訊。

PS.逃票方式
找當地人帶路
住宿
清晨/夜晚21:00以後進入

欣賞船歌:10~20 RMB
觀賞魚鷹捕魚: 60 RMB
南湖風帆游/快艇(每船限乘6人)
高速南湖游:80 RMB
大觀園單程:180 RMB
大觀園往返:200 RMB
淀山湖游:180 RMB
送停車場:120 RMB

住宿:
江南人家:+86-139-6265-7414
古鎮客房:+86-150-0626-5361
隆興客棧:+86-135-1162-0630 / +86- 512-5721-7638
近水樓台客棧:+86-138-0906-6432
貞固堂:+86-512-5721-2009

地圖:
景點分佈 
周庄景點分佈圖

簡介:http://big5.huaxia.com/js-tw/jsytw_lyzn67.htm

周庄免費諮詢電話:+86-800-8282-800

2010年7月30日 星期五

在遠端電腦上執行命令

因為限制使用者帳號權限在 User Level 時,會造成使用者無法執行磁碟重整。

而Windows系統用久之後,資料破碎就會越來越嚴重,自然就會造成系統效能低落。

我試用過幾款磁碟重組軟體,很多都無法讓使用者重組,而且就算能,我也不太想額外裝一堆軟體,希望盡量使用內建的工具,這樣也不會有版權的問題。

所以就想寫一個可以遠端執行磁碟重組的程式。

當然,它可以命令列在遠端執行磁碟重組,也可以做很多事,就看您想幹什麼囉!

以下程式碼,只要存成 .hta 檔案,點擊兩下就可以執行

image

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=big5" />
<title>Remote Execute Command</title>
<HTA:APPLICATION
     ID="objHTAHelpomatic"
     APPLICATIONNAME="HTAManagementAccount"
     SCROLL="No"
     SINGLEINSTANCE="yes"
     BORDER="thick"
     BORDERSTYLE="raised"
     MAXIMIZEBUTTON="no"
     SHOWINTASKBAR="yes"
     WINDOWSTATE="normal"
>
</head>

<SCRIPT Language="VBScript">
' Setup Window Size
Sub Window_onLoad
    Const Width = 500
    Const Height = 250
    self.ResizeTo width,height
    Self.moveTo (screen.AvailWidth-width)/2,(screen.AvailHeight-height)/2
End Sub

' Defrag Server by Shell
Sub ExecuteCmd
    strComputer = HostName.Value
    strCmd = Command.Value
    strArg = "cmd.exe /c " + strCmd
    ' strArg = strCmd
    Set objWMIService = GetObject ("winmgmts:\\" & strComputer & "\root\cimv2:Win32_Process")
    errReturn = objWMIService.Create (strArg , Null, Null, intProcessID)
    msgbox("Finish ! " & strComputer )
    set objWMIService = Nothing
End Sub
</SCRIPT>

<body>
請選擇您的指令<br>
<select name="Command">
  <option value="gpupdate /force">Force Update Group PolicyF</option>
  <option value="wuauclt.exe /detectnow">Force Detect Update</option>
  <option value="del c:\thumbs.db /s /a">Clear Thumbs.db Files in Driver C</option>
  <option value="del d:\thumbs.db /s /a">Clear Thumbs.db Files in Driver D</option>
  <option value="cleanmgr c: /sagerun:1">Clean Manager in Driver C</option>
  <option value="cleanmgr d: /sagerun:1">Clean Manager in Driver D</option>
  <option value="defrag c: /v">Defrag System Driver</option>
  <option value="shutdown -s -t 0">Shutdown PC (Windows XP)</option>
  <option value="shutdown -r -t 0">Reboot PC (Windows XP)</option>
  <option value="shutdown /s /t 0">Shutdown PC (Windows Server 2003)</option>
  <option value="shutdown /r /t 0">Reboot PC (Windows Server 2003)</option>
</select>
<br>
<br>
您要在哪台電腦上執行指令?<br>
Host Name:<input type="text" name="HostName" size="30"><br>
<input id=runbutton  class="button" type="button" value="Execute" name="run_button"  onClick="ExecuteCmd"><br>
<br>
<ul>
<li>如果您輸入的電腦無法接受管理(例如:防火牆阻擋),將會發生錯誤訊息</li>
</ul>
</body>
</html>

如果要改成自己 Key In 命令,請參考 在遠端電腦上執行命令2

2010年7月22日 星期四

到聖米榭爾山 Le Mont-Saint-Michel 朝聖

這個景點,距離巴黎有點遠,所以趕一大清早,就到Montparnasse station搭TGV前往Pontorson station。

因為該票券是說要在此站轉搭Autocar,我一直以為要在此站轉搭另一班火車…

所以很悠閒的在站內閒晃、吃早餐。

可是距離發車時間越來越近,可是時刻表都沒顯示Autocar到站的訊息…

 

我老婆突然想到,應該是轉搭其他交通工具,才匆匆忙忙到處問人,可是英文就已經很破了,法國人對講英文的人,也很不友善!

就看到兩人急得在站內到處亂衝,四處問人,終於在出站出口找到轉乘巴士,總算沒有誤點。

這班車坐了又快一個小時吧…總算到達目的地。

下車前,司機交待我們最後一班車的時間、搭車地點,要我們別忘記! ^_^||

 

一進山城沒多遠,就是有名的賣蛋捲的店,本來想說大家評價都不錯,想去試試,可是該店非常不友善!只是想上前詢問訂位用餐,就被揮手趕走,但是事前有訂位的人就可以順利用餐。

結果只好另外找一家店,沒想到這家店居然有中國人,可以講中文,真是讓我們超 High 的。

整個山城感覺有點像九份,但是多了一點宗教的氣息,只要順著路走,就可以找到人帶領解說。

PS. 在此山城使用公共廁所必須付費,建議於用餐時間,在餐廳順便解放一下自己…

PS. Le Mont-Saint-Michel 被列入文化遺產,聽說電影「魔戒3」的剛鐸城是參考這座山城的造型設計的,值得一看!

吃到傻眼的淡菜餐廳

今天決定從 Camden Town 一路散步到 Belgo ,剛好可以吃淡菜大餐。

出了Camden Town 地鐵站,感覺英國真的種族融爐呀…什麼人都有。

 

今天的重點是淡菜大餐…所以其他就不多說了

Belgo 有好幾家店,每家店的菜色都不太一樣,在網站上都找得到

雖然出發前就研究了一下,但是一來英文能力太差,二來不瞭解當地餐廳的點餐方式。

我以為像是台灣餐廳點選套餐一樣,可以沙拉選一樣、主菜選一樣、副菜選一樣、湯品選一樣、甜點選一樣,類似這樣的點餐方式…

所以糗事就發生了…我點了五道主菜…而且每道主餐都附上一大碗的「薯條」,其中有兩大鍋的淡菜、一隻烤雞(應該是雞吧)、一塊烤牛排、一條魚…

當場當然是吃不完,只好比手畫腳的請服務生把剩下來的都打包回去…

後來問了朋友,才知道那邊點餐是很簡單的,就是一個主餐+薯條…,不像中式或法式那麼多變化。

 

所以讓我們好一陣子都不敢再吃薯條!

 

PS. Belgo 官網:http://www.belgo-restaurants.co.uk/

PS. 最近整理部落格發現,這家餐廳已經永久停業了

Hazuki 葉月日式料理美食

這家店,是我在英國經商的同學大力推薦的,老闆是他朋友。

這天下午才吃了米其林一星餐廳的大餐…肚子感覺撐到不行…

晚上本想晚一點再吃,可是都到餐廳了,當然就先進去跟老闆聊聊天。

 

原來老闆兼主廚是大陸同胞,先到日本學藝,後來才到倫敦開店。

VWU1PEoF9osWBnAqS33Xug

老闆非常熱情,招待我們吃許多東西,真的超讚,東西一下肚,馬上就胃口大開…

ZIMo_Iyit8Bh4FiLmZC6hwx_vE4vN.ItIoLgqpkIE2GA

而且店內供應的飲用水是VOSS,水質超甘甜。這個礦泉水,在電影「命運好好玩」一部片中出現過。

xDGhShMILc0Vu0XyZOEYxg

以前沒有喝過這個礦泉水,一喝之下真的非常驚豔,老婆木舌頭居然說有什麼好喝的!當下把在博物館飲水機裝的水給老婆喝一口,再讓老婆喝一口VOSS,高下立判!

當下雖然覺得這個水很好喝,玻璃瓶子也很美,可是我還是不識貨,老婆說想要帶瓶子回家,我說玻璃瓶不好帶,容易破碎就不好處理…

回到台灣後才扼腕…露天拍賣一瓶 500元~~

PS. 在孤狗上搜尋「VOSS 礦泉水」就可以找到一大堆讚美文,很多高級飯店也供應此品牌的礦泉水…

PS. 蜜月行程離開倫敦的前一晚,我跟我老婆又去吃一次葉月,真的超讚…

PS. 倫敦的水質喝得很不習慣,用 Brita 濾水壺過濾再煮沸,整個茶壺裡還是一層白白的結石,口味也怪怪的,所以其他幾天都是在 Sansbury 買果汁來喝…再不然就是帶空保特瓶去公共場所的飲水機裝水來喝。

PS. 葉月餐廳網址:http://www.hazukilondon.co.uk
Hazuki Japanese Restaurant
地址:43, Chandos Place, London, WC2N 4HS
電話:020 7240 2530
PS.葉月餐廳似乎已經停業了

2010年7月7日 星期三

如何完全停止 Autorun 功能

1. 禁用磁片及光碟機的 Autorun 功能

匯入下列機碼,請將框框內的機碼存成 .reg 檔案,然後在該檔案名稱上,點擊滑鼠左鍵兩次,進行匯入

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
"NoDriveTypeAutoRun"=dword:000000ff

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdrom]
"AutoRun"=dword:00000000

 

2. 禁用 USB 隨身碟的 Autorun 功能

立即停止並停用 Shell Hardware Detection 服務,在命令提示字元底下輸入框框中的指令即可。

sc \\HostName stop shellhwdetection

sc \\HostName config shellhwdetection start= disable

 

3. Disable Driver Meta Data Privilege

SubInACL /subketreg HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoint2 /deny=everyone=f

PS. You can find SubInACL.exe in Windows Server 2003 Resource Kit Tools

or SubInACL


另一種方式,可以在Group Policy 裡,啟用「關閉自動播放」

2010-07-22_102735

再探 sc 服務控制管理指令

為了要遠端管理同仁電腦的服務,所以又花了一點時間去研究這個指令

sc 這個指令,不只能夠啟動/停止遠端電腦的服務,

還可以設定遠端電腦的服務,或是建立/刪除遠端電腦的服務

 

它的語法格式如下:

sc \\主機名稱 config 服務名稱 選項參數 參數值

舉例來說:

我要將遠端電腦的 Shell Hardware Detection 服務設定為已停用。

sc \\client config shellhwdetection start= disabled

這裡要注意的是,start=這個選項參數,與參數值disabled的中間有個空白字元!

這在sc指令的說明當中完全未提及,如果您打成start=disabled,指令會告數你選項參數包含等號(這是什麼鳥提示,我就明明有打等號…)

 

所以我寫個批次檔,讓系統自動去跑,省得我一個一個指令去下

for /F %%h in ( hosts.txt ) do (
sc \\%%h config shellhwdetection start= disabled
sc \\%%h stop shellhwdetection )

請將上面的指令存成批次檔(Batch File)

另外,請自行建立一個主機名稱清單 hosts.txt ,內容格式是一行一個主機名稱。

例如:

client1
client2
cient3

這兩個檔案(批次檔與主機名稱清單檔),要放在同一目錄下。

當您執行批次檔時,會將主機名稱清單檔中的每一行當成參數,代入 %%h

這樣您就可以輕鬆完成工作了!

 

如果您不知道有哪些選項參數,您只要輸入

sc \\主機名稱 指令 服務名稱

例如,當我輸入 sc \\client1 config shellhwdetection 後

會出現如下的提示

CONFIG OPTIONS:
NOTE: The option name includes the equal sign.
type= <own|share|interact|kernel|filesys|rec|adapt>
start= <boot|system|auto|demand|disabled>
error= <normal|severe|critical|ignore>
binPath= <BinaryPathName>
group= <LoadOrderGroup>
tag= <yes|no>
depend= <Dependencies(separated by / (forward slash))>
obj= <AccountName|ObjectName>
DisplayName= <display name>
password= <password>

2010年6月17日 星期四

Microsoft Outlook 的 0x80040201 錯誤訊息

當您使用 Microsoft Outlook 寄送郵件時,發生 0x80040201 的錯誤訊息時,

請先萬不要魯莽的按照許多大陸網站的教法,刪除 Office 檔案。

會發生這個問題,主要是因為使用者之前以 Exchange 方式收發電子郵件,而且使用全域通訊錄。

但是後來改用 SMTP 方式寄信後,無法再取得全域通訊錄資訊,但 Microsoft Outlook 卻又 Cache了以前寄信的全域通訊錄的 Exchange 地址,這在 SMTP Protocol(即便是Exchange Server)是不認得這玩意的,所以會發生這個問題。

您只要把您要寄送的信件打開,在每一個收件者上快點滑鼠左鍵兩下,如果有跳出錯誤訊息,就請您把該收件者刪掉,並重新 Key In,在 Key In 的同時,Microsoft Outlook 會跳出 Cache 的錯誤訊息,請您將游標選取後,按下 Del 鍵,就可以清除錯誤的 Cache,然後把收件者重新打好,就可以正常寄信了。

如何將遠端電腦服務重新啟動

要將遠端電腦服務重新啟動是很簡單的事,只要使用 Windows 內建的 sc 指令即可達成。

語法格式如下:
sc \\遠端電腦IP [stop|start] ServiceName
例如:
sc \\192.168.1.254 stop wuauserv

PS.如果遠端電腦具有管理權限的帳號與密碼跟本機登入的帳號密碼不同,可以使用「將遠端電腦重新開機」所提到的小技巧來克服。

如果還是不行,請注意是否已關閉 使用者控制!

執行 regedit,將以下值從 1 改為 0

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA


如何將遠端電腦重新開機

要將遠端電腦重新開機是很簡單的事,只要使用 Windows 內建的 shutdown 指令即可達成。

shutdown /r /m [遠端電腦名稱或IP] /t 0

重點是,如果遠端電腦具有管理權限的帳號及密碼都與本機電腦執行程式指令的帳號密碼不相符時,會導致該指令失敗。

但是利用一個小技巧就可以克服這個問題。

只要在執行 shtudown 之前,先執行

net use \\[遠端電腦名稱或IP]\c$ /user:[遠端電腦具有管理權限之帳號] [該帳號之密碼]

這樣就可以重新開機。

如果有多台電腦,請在執行 shutdown之後,再執行

net use \\[遠端電腦名稱或IP]\c$  /delete

來刪除登入

PS. Shutdown 指令在不同的 Windows 平台上,參數引導符號不相同,有的是使用減號 -,有的是用斜線 /。命令遠端電腦重新開機時,引導符號要用本機的引導符號,不是遠端電腦的引導符號!

移除服務

我自己經常會 Try 一堆軟體,可是有些軟體移除功能做得不好,經常會留下一堆「服務」,造成系統運作不順暢,甚至某些惡意軟體表面上移除了程式,實際上卻留一堆後門服務在不斷耗用你的電腦資源。

Windows 7 也可以當無線基地台

Update at 2015/05/26
Connectify 越來越多廣告,還偷偷用使用者的網路傳檔,佔用使用者頻寬!
請大家改用 Virtual Router,完全免費,也沒有任何廣告!

網路上可以很容易找到有關使用指令或是 Connectify 免費軟體來建置虛擬的無線基地台,讓其他資訊設備可以共享上網。

但是很多人在執行 netsh wlan start hostednetwork 時,會遇到以下的錯誤訊息,

無法啟動主控網路。

群組或資源不是處在執行要求操作的正確狀態。

先說明一下,無線網路的共享連線,有兩種模式,一個是AP Mode,一個是Ad Hoc Mode

兩種模式的差異,在於:

使用 AP Mode,可以同一張無線網卡連線上 Internet ,同時共用給其他設備連線。

而Ad Hoc Mode,無線網卡不能同時連線及分享,所以,必須要透過第二個網路介面分享連線,例如:有線網卡、3G網卡等等。

而 AP Mode是有限制特定型號的無線網卡!

例如:

  • Atheros AR5xxx/AR9xxx cards, driver version 8.0.0.238
  • Broadcom 4310-series (in many Dell laptops)
  • Broadcom 4321AG/4322AG/43224AG WLAN Adapter, driver version 5.60.18.8
  • D-link AirPlus G DWL-G510 Wireless PCI Adapter, driver version 3.0.1.0
  • D-Link DWA-140 RangeBooster N USB Adapter, driver version 3.0.3.0
  • Dell 1510 Wireless N adapter, Broadcom version,driver 5.60.18.8
  • Intel 5100/5300, WiFi Link 1000 BGN, driver version 13.0.0.107
  • Linksys Dual-Band Wireless-N USB Network Adapter(WUSB600N), driver version 3.0.10.0
  • Netgear 108 Mbit WG311T
  • Ralink RT2870 (in many 802.11n USB dongles)
  • Realtek RTL8187B (Win7 driver ver.1178)
  • Realtek RTL8187SE (with the drivers that came with Windows 7)
  • Realtek RTL8192u with 1370(Beta)
  • Sitecom Wireless USB Adapter 54g WL-608, with Ralink RT2870 drivers, version 3.0.9.0

如果你的無線網卡不是支援AP Mode的網卡,就不用去使用 netsh wlan 這一堆指令了!(因為要用的話,要設定一大堆參數,欲知詳細設定,請在命令列執行藍色字體的指令netsh wlan set profileparameter ?,或者看看後面匯出的設定檔)

建議您直接安裝 Connectify ,裝好之後,先去「開啟網路和共用中心」,接著選「變更介面卡設定」,將您要共享的連線介面分享出來 (請不要勾選讓使用者控制或停用該介面)

接著再到 Connectify 裡面去設定 Wi-Fi Name、Password、Internet(共享網路介面)、Mode即可完成共享。

想要更進一步瞭解它的設定

可以在命令列上輸入

netsh wlan show profile

就可以看到 Connectify 建立的 Profile Name

知道 Profile Name之後,可以把設定匯出成 XML 檔案

netsh wlan export profile name="XXXX"

以上XXXX請自行更換成你的 Profile Name

如果要匯入設定檔,請輸入以下指令

netsh wlan add profile filename="OOOO.XML" Interface="無線網路連線" user=current

以上OOOO.XML 請輸入您的 Profile File Name,如果您的無線網路介面有更改名稱,或是非繁體中文版,請自行變更為您的無線網卡名稱!

如何在命令列使用 nslookup

會突然需要在命令列使用 nslookup ,是因為太多 SPAMER ,直接連接 SMTP 25 Port

而不是透過 MX Record來送信。

所以打算用 nslookup 命令列來批次查詢 Log 當中的 IP 資訊。

因為公司的 MX 指向 AntiSPAM 設備,所以透過 MX Record 寄信一定會被攔阻。

所以很多 SPAMER 就會直接寄送到 MailBox Server 的 SMTP Port。

但是 SMTP Port 又不能在防火牆上擋掉,因為同仁出差或是常駐在外的同仁會需要寄信。

此外,郵件是指名公司收件人,即便是 SMTP 設定要求帳密驗證,郵件伺服器也不會去驗證就收下來!

公司才30來人,平均一天就收到直接寄送的廣告信多達 700多封,平均每天23會收到直接的廣告信,

我也不想用 ORDB, RBL 這類黑名單服務,因為誤判率太高。

所以想要把 SMTP Log 當中的 IP 列入 Deny IP List,但是在 列入之前,先查一下這些 IP 的反解,免得不小心擋到不該擋的信。

因為找不到 nslookup 的命令行引數說明,就自己亂 try 了一下

當我打錯引數時,會顯示 nslookup 的命令列用法,

但是在 Option 的部份,卻沒有太多說明,最後試了半天,才發現它會區分英文大小寫,打錯都不行!

例如:我要用 Google Public DNS Server 來查反解

nslookup -type=PTR A.B.C.D 8.8.8.8

type字要小寫,

PTR (Record Type)要大寫,

A.B.C.D 是要查的 IP or FQDN or Domain

8.8.8.8 這個是 Google Public DNS Server 的 IP

如果要將結果輸出到檔案,必須寫成

nslookup -type=PTR  > Resule.txt A.B.C.D 8.8.8.8

如果寫成

nslookup -type=PTR A.B.C.D 8.8.8.8 > Result.txt

會造成程式不斷將此指令寫入 Result.txt 無法結束。

其實最好的方法會是改變架構,讓所有 SMTP 都先經過 AntiSPAM 設備,不過我公司的 AntiSPAM 是委外的服務,並不提供 SMTP Relay,所以沒辦法改成這樣的架構。

2010年6月6日 星期日

Google Apps 申請注意事項

如果以一般使用者申請申請 Google Apps,之後又重新以系統管理者身份申請時,Google Apps 會寄信到該網域以確認身份。
如果第一次使用一般使用者身份登入,正確的申請方式,應該是以第一次申請的身份登入管理Google Apps,再點選以IT管理者身份申請驗證。
如果以錯誤的方式申請,當通過DNS CNAME/網頁驗證後,會發現之前申請的帳號也被計算,但是在使用者清單中卻看不到該帳號!需要兩天的時間,才會把無法驗證的帳號清除!

 

第二個Issue就是當帳號建立之後,如果要刪除掉,必須很仔細確認。
因為刪除帳號之後,沒辦法立即建立相同名稱帳號。
如果不幸誤刪,折衷的辦法是建立一個暫時的帳號,然後為該暫時帳號建立暱稱。

 

有些免費 DNS 會限制設定 DNS Record 筆數,
申請Google Apps 最好能設定三筆資料

  1. CNAME,用來讓Google 驗證你是網域擁有者
  2. 設定MX,使電子郵件生效
  3. 設定TXT,讓 SPF 生效,確保您公司的信不會被當成廣告信。

 

如果您擁有多個網域,想要讓其他網域也使用相同帳號收信時,也可以增加網域,同樣使用 DNS CNAME驗證。

 

如果您當初申請的網域,並非主要寄信的網域時,可以到 Web Mail 介面中設定使用其他電子郵件地址遞送。但是 GMail 會先寄驗證信到該網域信箱。
所以前面設定網域驗證要先設好,要不然會收不到驗證信件!

 

因為無法確知DNS快取何時會全數失效,而要隨時去檢查舊郵件伺服器上的信件,而不斷更改收信軟體的設定是相當囉唆的。
您可以利用GMail本身的功能,讓它定時自動去幫您收取舊伺服器的信件,這樣就解決了!

2010年6月1日 星期二

中小企業可以利用 Google Sites (協作平台)做什麼?

Excel Files to Form (將現存試算表轉換成表單,供使用者輸入)

Form to Excel (將表單資料存入試算表)

試算表以試算表形式內嵌在網頁中(第一行欄位無法固定,網頁中不可異動資料)

試算表以清單形式內嵌在網頁中(

  • 第一行欄位固定,
  • 可篩選資料,
  • 可否異動資料:
    1. 如為協作者,可異動資料
    2. 如為協作平台檢視者,需視文件共用的權限為「編輯」或「檢視」)

其應用如:資產清單、分機表、履歷表、問卷調查表等

 

此外,現成範本還可以選擇清單(Table)、檔案櫃(檔案上傳下載)、起始網頁(可以掛一堆小工具)等等。

 

不過,看來要做 Workflow 表單是沒辦法的…

2010年5月30日 星期日

在Windows 7 X64 底下使用 Microsoft SMS Sender

Microsoft SMS Sender 是一個很方便的軟體,可以很容易讓我們實現監控系統發送 SMS 簡訊通知,又不用花大錢的軟體。

怎麼說呢,市面上常見搭配監控系統的 SMS Box ,價格都接近上萬元,對於想要建置監控系統的 MIS 來說,要說服老闆花這筆錢並不容易。

但是有了 Microsoft SMS Sender,就可以透過一般 GSM 手機,使監控系統來發送簡訊。

您只要將手機跟電腦連接(不管用藍芽也好、USB也好,都行)

就可以使用 Microsoft SMS Sender來發送簡訊。

因為它可以使用命令行引數來發送簡訊,所以大部份的監控系統都可以很容易的呼叫執行 Microsoft SMS Sender 來發送簡訊。

 

至於我個人安裝的目的,只是為了方便傳送簡訊,因為用手機輸入訊息,遠不如使用電腦鍵盤方便。

您想想,多酷呀,要發送簡訊時,不用去掏口袋、拿手機、死命的按手機,電腦透過藍芽連接手機,執行 Microsoft SMS Sender,在電腦就可以很方便傳送簡訊。

 

今天重點不是要講怎麼連接手機,也不是要講怎麼設定 Microsoft SMS Sender,今天要講的是如何在Windows 7 底下安裝使用 Microsoft SMS Sender!

因為 Microsoft SMS Sender是 for Windows XP 軟體,原始檔案可以在以下網址取得

http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=06A4F997-7F69-4891-8929-37B9041924A2&displaylang=en

因為該軟體是以 MSI 包裝起來,安裝時會檢查作業系統,不管是 Vista 或是 Windows 7,都會無法安裝(即始設定 .msi 執行的相容性都不行)

所以,我的作法是,先安裝 Universal Extractor,這個軟體可以把 MSI 檔案解壓縮出來,會得到兩個主要的檔案:

smsr409.dll 和 SMSSender.exe

這兩個檔案就可以讓我們在 Windows 7 底下執行 Microsoft SMS Sender。

將解壓縮出來的這兩個檔案放在同一個目錄下,例如:C:\Program Files (x86)\Microsoft SMS Sender

然後將 SMSSender.exe 的相容性設定為Windows XP SP3 即可。

如果要方便執行,請自行建立捷徑。


當您在命令列底下執行 SMSSender /? 時,會顯示一個參數說明的視窗。

參數及格式

參數說明

/i 表示/p參數的電話號碼格式含國碼
/p:nnnnnnn 接收簡訊的手機號碼,只有單純的數字,什麼+、-、()都不可以使用
/m:"xxxxxxx" 簡訊內容
/u 如果使用中文需要加此參數,要不然接到的簡訊會是亂碼
/l 記錄傳送的簡訊資訊


如果要定時傳送簡訊,可以透過Windows 系統內建的工作排程去處理

2010年5月26日 星期三

介紹 中華電信資安艦隊 資安委外服務

有很多駭客攻擊手法,不是簡單的防火牆就可以保護系統,

很多都需要專業的 IPS 設備來做防護。

例如:

  • Web Service 怕 XSS,
  • 有 Database 的要擔心 SQL Injection,
  • POP3 Service 怕  Auth Brute Force Attempt

但是中小企業又買不起 IPS 設備,就算買得起,日後的 Firmware Update 費用也不低,再加上 IPS 的管理維護,也需要專門的人來管理。

 

再來講講我以前待過的公司的經歷…

董事長是老外,對資安非常重視,也很重視隱私!

所以他要求他必須使用一條專用的上網專線,從他座位的資訊面板,一直到小烏龜,必須確保是 Private Security Line。

這些都好辦。

但是,當我接上給董事長專用的 Netscreen SSG20 Firewall 之後,他老兄不樂意了!

他說,這樣子我必須把ADSL PPPoE 密碼交給 MIS ,等於 MIS 也可以隨意讀取他的Hinet 信箱,所以他要求我把硬體防火牆撤掉。( *@$%I**#4*%#2 Hinet 免費信箱一堆廣告你還要用 >_< )

我跟他報告說,網路是不安全的環境,建議要有防火牆保護會比較好!

他老兄說,我自己有購買一套防火牆軟體,非常安全…(先不管老闆的觀念正不正確,先狗腿一下,老闆的命令就要使命必達嘛)

可是當連接上網路之後呢,他老兄三天兩頭把我叫去,說他的防火牆軟體一直不停跳出警告訊息!

我說這很正常,因為網路上有很多駭客、病毒跟無聊的人,所以會一直跳警訊。

他老兄卻說,我以前在我的國家用網路都不會這樣,這是哪家的網路服務,實在太爛了…^_^|||

我是沒去過他的國家啦,更別說用他國家的網際網路。不過,在網路上本來就該小心為上。

跟他盧半天,他就是堅持不要裝硬體防火牆,又要我解決駭客攻擊的問題。

最後的辦法就是申請中華電信資安艦隊服務。

只是,董事長同意改用資安艦隊,但是我的主管卻要求要一份評估報告,確保 ROI。

還好中華電信的資安艦隊跟一般企業用ADSL比較起來,真的是便宜又大碗,

不只是月租費降低、頻寬增加、IP增加、贈送硬體防火牆(可以挪去給分公司使用),還保固三年,此外還提供 ISP 端的 IPS 服務、流量統計!現在又增加了免費的垃圾郵件過濾服務、DNS 代管等等,真的是超划算。

果然在更換資安艦隊服務後,老董就不再叫我去立正站好了…^_^

有關詳細的說明,請上 Hinet 網站 http://adsl.hinet.net/fleet_utm.html

2010年5月7日 星期五

Mail Server 變更 IP 的注意事項

最近朋友被我洗腦,把公司的網路線也換成中華電信的資安艦隊服務,

但是他沒想到更換線路,會更換掉 IP !!! (中華電信申請表上有說明呀…)

所以他公司一整天都收不到信…(這也不能怪他,畢竟他的專長是程式設計)

 

資安艦隊服務真的是不錯啦,只是換 IP 這個問題很討厭,對 MIS 人員來講,問題真的很麻煩。

所以寫這篇文章,就是建議大家該怎麼解決更換 IP ,造成郵件服務中斷的問題!

  1. 於施工前一週,向網域管理組織,例如:TWNIC,申請更換 DNS 授權 IP,將 DNS授權伺服器 IP 指向一個這段期間 IP 不會有任何異動、連線穩定、可以穩定提供 DNS 服務、安全無慮,最重要的是,可以配合縮短Cache Expire時間的地方。當然,相關的 DNS Record,需請對方都先設好。
  2. 等施工完成後,取得新 IP,立即將代管 DNS 記錄的 IP 更新。因為 Cache 時間很短,所以新 IP 很快就可以生效!
  3. 等你這邊 DNS 、防火牆等相關設定都完成之後,再去網域管理組織,例如:TWNIC,申請更換 DNS 授權 IP,改回自己管理。

PS.目前好像沒有聽說有廠商有提供這樣的短期服務,如果你很放心自己家裡的線路、設備、電力、安全等等因素,為了解決服務中斷問題,可以考慮自家架設一台 DNS!

另外,在這邊提醒一下,資安艦隊服務更換 IP,在防火牆上要特別注意 IP Mapping 的問題。

以 Fortigate Firewall 來講,設定Virtual Server,可以設定 IP Mapping 或是 Port Mapping(有指定 Source/Destination Port就會使用Port Mapping)。

PS.以Netscreen Firewall來講,就是MIP與VIP的設定。

如果使用 IP Mapping,Mail In/Out都會使用Mapping的 Public IP,如果使用 Port Mapping,Mail In是走Mapping的 Public IP,但是Mail Out會是透過 Firewall本身的 WAN IP做NAT,這很可能就會導致跟您的 DNS 設定不吻合!

所以如果要用 Port Mapping,請注意你的 DNS PTR、SPF 的IP Record,要設定 Firewall WAN IP。

 

以下連結是我在 iThome回覆網友類似狀況的說明

http://www.ithome.com.tw/itadm/article.php?c=60934

lsb > 3.2 is needed by Google-Chrome …

最近幫朋友安裝 Fedora 6 時,要安裝Google Chrome卻發生此問題。

本來想說去更新相關軟體之後,再來試看看。

可是我發現幾乎都沒有網站有留Fedora Core 6 的update程式,乾脆就直接裝Fedora 12,反正 Redhat只維護最近兩個版本的系統。

安裝好Fedora 12 X86_X64後,要安裝Google Chrome,還是發生此問題,但是在經過一整晚的 yum –y update 之後,隔天早上就可以進行安裝了。

但是我自己又在我的VM環境裡裝了 Fedora 12 i386 版本,即使經過 yum –y update 更新所有程式仍然無法安裝。

所以去查了一下,到底什麼是 lsb…

lsb (Linux Standard Base)是Linux的標準規範,因為Linux發行版本太多樣化,造成開發及維護的困難,所以 Redhat 也遵循了規範。

只是到底我是忘了少裝什麼 Package ,才會導致這個問題,找了很久才知道原來是 redhat-lsb,但是我在光碟裡也找不到 redhat-lsb 這個 RPM Package。

去 RPM Search Engine 找,幾乎看到的都是 X86_X64 的,也不知道能不能用在 i386 上,去找了一個 Fedora 10 的 i386 版本。

一執行 rpm –ivh redhat-lsb…

就說相依性問題,還需要安裝 pax…foot…(當時沒有馬上記下來,現在也忘記檔名了)

實在是很麻煩。

最後我乾脆直接用 yum 指令來解決這個問題。

其實說穿了很簡單,就只是一道指令,也解決了 Package 相依性的問題。

就是 yum –y install redhat-lsb

-y 參數表示只要有問要不要安裝,都一律回答 Yes

install參數,就是說我要安裝軟體,軟體名稱就是 redhat-lsb

2010年5月4日 星期二

YouTube影片下載工具軟體比較

最近常上網看YouTube影片,可是網路速度不甚理想,一部片子卡半天,興致都沒了。

所以就想到利用自動下載影片的工具。

網路上隨便找都一堆免費的YouTube Downloader,功能不一,所以將自己試用過的比較列出來,供大家參考。

這裡我只比較最基本的功能,因為我覺得最基本的功能都不方便的話,其他附加功能就不用考慮了,所以像是影片格式轉檔、支援多網站等我就不比了。

軟體名稱

自動抓高畫質影片

存檔不囉唆

Queue

YOUTUBE DOWNLOADER HD v1.9 Yes No No

YouTube Downloader 2.5.4

No No No
VideoGet No Yes Yes
Free YouTubeDownloader v2.4 Yes Yes Yes

PS.比較項目說明

自動抓高畫質影片:當點選下載高畫質影片時,如果影片不存在,是否會自動下載。如果不會下載,或是跳出訊息需要人為操作,都不算。

存檔不囉唆:不需要為影片命名或是不需要選擇存檔位置,或是有沒有支援中文檔名。有些軟體每次存檔都會要使用者存放路徑、檔名,或是自動存檔時,遇到中文影片名檔案名稱就會變成亂碼。

Queue:是否可以將要抓的影片列入駐列,自動一片一片去抓。很多軟體都是需要一片一片抓,或是每貼一個連結就馬上抓一片,造成同時間大量下載,不但佔用頻寬,而且畫面上一堆抓影片的視窗很亂。

後記:

VideoGet支援相當多網站,而且還支援格式轉換,可惜的是它不是免費軟體。試用版會限制下載影片次數。

Free YouTube Downloader是我目前使用上,感覺較好的軟體,一來免費,不會有版權爭議,二來操作簡便。

至於有人覺得它無法自動轉檔的問題,我覺得還好。因為一來 Codec Pack都有支援,電腦上看,不是存到隨身裝置去看(iPod Video, iPhone, PSP, Mobile,…),所以沒差。

如果真的要轉換格式,Free YouTube Downloader 的公司DVDVideoSoft 公司也提供許多免費工具可以批次轉換格式,相當方便!

如果不安裝 Toolbar ,在下載完成要結束程式時,它會倒數。

一些比較奇怪的 Youtube Downloaer,我也沒列入比較,因為光是安裝、使用就讓我倒彈。例如:

Save Tube Video:會要安裝Winpcap監聽網路封包的軟體,不過是抓個YouTube影片,不需要動到這樣的軟體吧…所以這個軟體直接被我Cancel

VDownloader:安裝過程還好,使用過程中,會自動偵測剪貼簿是不錯,不過一按下載就出現錯誤訊息…此外部份功能應該是要付費,而且有廣告。

TOP YouTube Downloader:安裝過程還好,使用過程中,貼上連結,連下載都不行,所也甭比了,此外它也是Adware。

Leawo Free YouTube Downloader:安裝過程簡單,但是使用上就有點不太喜歡,它的介面分成兩部份:

1.Browser,你可以用它來當Browser,當然它主要的目的就是廣告。

2.類似 Multi Sessions Downloader一般的介面(FlashGet, Getright, Orbit Downloader…)

2010年4月30日 星期五

在Windows IIS 底下,如何設定Web虛擬主機

什麼是虛擬主機?簡單的說,就是一台實體主機,可以掛多個網站。

其實它的設定並不難,但是需要搭配DNS設定。

  1. 在 DNS 裡面設定 IIS 主機的 A Record 對應的 IP

      例如:

      vhost.abc.com.tw.           IN               192.168.1.101

  2. 在 DNS 裡面設定 其他網址的 CNAME Record (你要用 A Record 也行,我個人習慣用 CNAME)

      例如:

      www.hinet.net.            CNAME               IN           vhost.abc.com.tw

      www.seed.net.tw         CNAME               IN           vhost.abc.com.tw

  3. 到「網際網路資訊服務(IIS)管理員」,在網站上按下滑鼠右鍵,選擇「內容」,點選「網站」頁籤,然後點選「進階(D)」,會跳出一個「進階網站識別」的視窗,請點選「新增(A)」,會再跳出一個小視窗「新增/編輯網站識別碼」 ,請在「主機標頭值」一欄輸入你這個網站的FQDN。

      例如:

      IP位址(I):全未指定

      TCP連接埠:空白

      主機標頭值(S):www.hinet.net

 

這樣就完成虛擬主機的設定(1個 IP 對應多個網站)

如果是要多個IP,對應多個網站,請在IP位址下拉選單中,指定該網站的IP Address即可。

 

如果你只是要單機測試作業,又沒有 DNS 的伺服器,可以去修改 %System_Root%\system32\drivers\etc\hosts

將網址對應到本機的 IP即可取代 DNS。

2010年4月29日 星期四

在命令提示字元下,如何切換到網路共享資料夾

要連結網路共享資料夾,可以在 Windows 底下操作 GUI。

如果要自動批次作業,就必須使用命令提示字元的命令 net

 

使用 net 指令很簡單,其語法格式如下:

連接網路共享資料夾

net use [磁碟機代號:] \\ShareServerName\ShareFolderName [/user:[網域\]帳號] [密碼]

 

中斷網路共享資料夾

net use [磁碟機代號:| \\ShareServerName\ShareFolderName] /delete

如果在執行 net use 指令,不加其他參數,則會顯示目前連接的網路共享資料夾

 

在 Windows XP 以後,如果連結網路共享時,帳密不對,導致連接網路共享後,又無法存取目錄;

此時重新指定正確的使用者名稱及密碼,也無法連接。

因為Windows不允許同一個 UNC ,使用不同帳號密碼。你可以使用 net use 看看之前連接共享資料夾的狀況。然後中斷掉之前以錯誤帳密連接的共享資料夾,即可以新的帳密重新連接。

 

如果在連接網路共享資料夾時,沒有指定磁碟機代號,因為命令提示字元底下,不接受 UNC 路徑,你可以使用 subst 指令,將磁碟機代號指定給網路共享資料夾,例如:

subst X: \\ShareServerName\ShareFolderName

2010年4月27日 星期二

Fortigate 目錄服務設定說明

在Fortigate 「使用者認證→目錄服務」看起來似乎可以很容易與 Microsoft Active Directory 結合。

其實 FSAE (Fortinet Server Authentication Extension) 是需要安裝在 AD Server 上安裝一個 Fortigate Client 內的元件才能使用 FSAE Controller。

如果客倌像我一樣不喜歡裝一些額外的軟件,那麼請使用「使用者認證→遠端」裡的 LDAP 來結合 AD 驗證。

 

「使用者認證→遠端→LDAP」

名稱:請自己取一個好記的名稱

伺服器名稱/IP位址:請輸入DC伺服器 IP

伺服器埠口:389

Common Name Identifier:請自己取一個好記的名稱

Distinguished Name:如果不知道怎麼輸入,請先輸入以下欄位!

Bind Type:正規模式

Filter:(&(objectcategory=group)(member=*))

使用者DN:請輸入具有管理者權限的帳號,例如:administrator

密碼:就輸入上述管理者的密碼xxxxx

安全連線:請打勾

協定:請點選STARTLS

憑證:用Fortinet_CA即可。

以上輸入完成後,回頭使用探索功能來填寫Distinguished Name

請Distinguished Name欄左邊的browse 圖形。

按下之後,會顯示網域名稱,例如:

twistie_collapsed DC=abc,DC=com,DC=tw

請點選藍色箭頭,它就會變成twistie_expanded DC=abc,DC=com,DC=tw

同時將「DC=abc,DC=com,DC=tw」填入Distinguished Name欄位。

按下「允許」按鍵之後,再點一次browse 圖形,就可以自動探索下一階。

一直重覆此動作,就可以找到你要設定的Distinguished Name。

PS.如果在 AD 裡使用中文,在 Fortigate 裡面會變成一堆代號,很不好認。所以最好在AD裡使用英文!

Fortigate QoS設定

防火牆的 QoS 設定功能很好用。

它可以用來保障帳各種服務的品質,尤其是使用UDP封包的服務。

例如:VoIP/Video Conference/DNS等

VoIP 與 Video Conference都是採用 UDP 封包來傳送視訊及音訊,UDP 的封包比 TCP 小,所以傳輸較快,但它不像 TCP 會去檢核是否傳送成功,當資料量大時,非常容易出錯!

所以透過 QoS 可以確保VoIP / Video Conference 品質穩定。

此外,DNS 服務預設使用 UDP 封包,除非失敗,才會使用 TCP 封包,但是這都會造成很多服務無法正常運作。

所以透過 QoS 功能,可以確保 DNS 查詢不會失敗,其他服務就能正常運作!

 

那麼 Fortigate QoS 該怎麼設定呢?

在「防火牆→流量塑型」可以設定QoS政策,給與保證頻寬,與最大頻寬,還有封包的優先權。

保證頻寬就是當流量大時,防火牆會確保給與服務一定頻寬。

最大頻寬就是當流量小時,防火牆會限制服務能使用的最大頻寬。

當然如果該服務沒有流量時,頻寬也會釋放給其他服務使用。

至於優先權高低,就是說哪個服務應該優先佔有使用頻寬。

 

這裡面比較可能會讓人難以理解的是流量塑型的方式

  • 每的政策
  • 針對所有政策使用此流量塑型

其實,每個政策,意思是說,每個套用此流量塑型政策的防火牆政策,都會有獨立的保障頻寬、最大頻寬以及優先權。

至於針對所有政策使用此流量塑型,則是指所有套用此流量塑型政策的防火牆政策,都會共用此一保障頻寬、最大頻寬以及優先權。

Fortigate NAT 設定問題

今天會興起寫這篇文章,是因為中華電信企業客服派工安裝的Fortigate 設定有問題。

問題的起源是我發現近來廣告信特多,雖然大多都被 IMF 過濾掉,但是也造成系統負載增加不少。

所以我連入 Exchange去看看 SMTP Log (C:\WINDOWS\system32\LogFiles\SMTPSVC1),我發現居然會有一堆使用防火牆 LAN Port IP 來發信的記錄!

所以立刻連上防火牆一探究竟!

我發現中華電信的工程師,把 WAN→Internal 的 SMTP Policy 勾選了 NAT !

在 Fortigate 勾選 NAT,是會進行 Source IP 的 NAT,所以當外部寄信時,會 NAT 成 LAN Port IP !

導致 Mail Server 認定是區網 IP,不須驗證,允許 Relay!

要解決此問題也很簡單,只要把打勾去掉就可以!

因為在 Fortigte 的虛擬 IP 對應時,就會做 Destination NAT!

所以如果您有使用 Fortigate 防火牆,發現有大量廣告,

或是有一堆連線是從防火牆 LAN Port IP 連接,請注意一下這個設定喔!

2010年4月22日 星期四

網路上的 DNS 教材

DNS可說是網路服務的基礎,所以瞭解其運作,會有助於 MIS 釐清問題原因。

以下幾個網站的DNS教材都不錯,所以介紹給大家參考。

Study Area

鳥哥的Linux私房菜

TWNIC

Microsoft

幫助MIS檢查DNS設定的網站

DNS Service,看似最簡單最不起眼的服務,但是很多服務卻必須要靠它才能正常運作。

如果設定錯誤,就會造成其他服務無法正常運作。

例如:

虛擬主機(Web Virtual Host),或是 Mail Server

 

所以介紹以下幾個工具網站,方便MIS使用

http://www.dnsstuff.com/

http://www.dnsquery.org/

http://www.webmaster-toolkit.com/dns-query.shtml

 

後記:

最近在幫朋友檢查 Linux BIND DNS 設定,在 BIND DNS 有 View 這個功能,可以依照用戶端 IP 來回應查詢結果。

一般會設定成幾個 View,Localhost & LAN & WAN (名稱可自訂)

一般使用Windows DNS Server,就必須內部 DNS 與外部 DNS分成兩部主機;或者將外部DNS委外託管,內部主機只管內部解析。

在本機使用 nslookup 時,預設會使用 /etc/resolve.conf 裡面的 DNS Server IP

但是你可以在 nslookup 指定 DNS Server IP

例如:

server 127.0.0.1

server 192.168.1.1

server 123.123.123.123

這樣 DNS 就會按照你指定的 IP 網段來回覆 DNS Query,不一定要靠外面的協助。

NetLimiter 2 Monitor

一般的本機網路流量監視軟體,都只能看總量(Total In/Total Out)

但是 NetLimiter Monitor 可以看到每一支程式的頻寬使用量。

image

它是由 NetLimiter 公司提供,更好的是,它是免費的!

所以如果要檢查電腦的異常流量,可以試試看這個軟體!

 

PS.NetLimiter 2 Monitor 會跟 Microsoft iSCSI Initiator 2.08 相衝,造成無法連接iSCSI Target.

2010年4月21日 星期三

找出與今日日期相同的檔案

@echo off
setlocal EnableDelayedExpansion
set Today="%DATE:~0,10%"
for /F %%I in ( 'dir *.dat /b' ) do (
set DT="%%~tI"
set FDT=!DT:~1,10!
if "!FDT!"==%Today% (
echo "%%~I"
) else (
echo wrong
)
)
endlocal

在 for 迴圈中,如果變數是檔名,可以利用以下格式,來讀取檔案相關資訊
(以 %I 為 for 迴圈變數,如果迴圈變數名不是 I,請將以下格式的 I 改掉)
%~I 檔名前後會自動加上雙引號
%~fI 會顯示該檔案的完整路徑+檔名
%~dI 顯示該檔案所在磁碟機代號
%~pI 顯示該檔案的完整路徑 (只有路徑,不含檔名)
%~nI 只顯示檔案名稱 (不含副檔名)
%~xI 只顯示檔案的副檔名 (不含主檔名)
%~sI 以短檔名格式顯示
%~aI 顯示檔案屬性 (AHRS)
%~tI 顯示檔案日期+時間
%~zI 顯示檔案大小
%~$PATH:I 搜尋PATH環境變數的每一個目錄,並顯示第一個符合檔名的完整路徑+檔名
以上的格式參數,可以組合使用。
例如:
%~nzI
以上,必須配合 for 迴圈的 /F 參數使用!
微軟官方網站的說明在此
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/for.mspx?mfr=true

將指定帳號加入某台電腦的本機管理者群組

image

strComputer = "ComputerName"

Set objAdmins = GetObject("WinNT://" & strComputer & "/Administrators")
Set objUser = GetObject("WinNT://DomainName/UserName")

objAdmins.Add(objUser.ADsPath)

要注意的是,使用者已經登入 Windows 後,才透過此程式加入管理者群組,並無法讓該使用者立即取得管理者權限。

使用者必須重新登入系統才會生效。

同樣的,如果使用者已具備管理者權限,即始使用此程式將使用者帳號移出本機管理者群組,管理者權限也不會立即失效,必須重新登入系統才能生效。

strComputer = "ComputerName"

Set objAdmins = GetObject("WinNT://" & strComputer & "/Administrators")
Set objUser = GetObject("WinNT://DomainName/UserName")

objAdmins.Add(objUser.ADsPath)

要注意的是,使用者已經登入 Windows 後,才透過此程式加入管理者群組,並無法讓該使用者立即取得管理者權限。

使用者必須重新登入系統才會生效。

同樣的,如果使用者已具備管理者權限,即始使用此程式將使用者帳號移出本機管理者群組,管理者權限也不會立即失效,必須重新登入系統才能生效。

<html>
<head>
<title>Add/Remove Domain Account into/from Local Administrator Group</title>

<HTA:APPLICATION
     ID="objHTAHelpomatic"
     APPLICATIONNAME="HTAManagementAccount"
     SCROLL="No"
     SINGLEINSTANCE="yes"
     BORDER="thick"
     BORDERSTYLE="raised"
     MAXIMIZEBUTTON="no"
     SHOWINTASKBAR="yes"
     WINDOWSTATE="normal"
>

</head>

<SCRIPT Language="VBScript">
' Setup Window Size
Sub Window_onLoad
    Const Width = 500
    Const Height = 250
    strComputer = "."
    self.ResizeTo width,height
    Self.moveTo (screen.AvailWidth-width)/2,(screen.AvailHeight-height)/2
End Sub

' Add Domain Account into Local Administrator Group
Sub AddAccount
    Set objAdmins = GetObject("WinNT://" & HostName.Value & "/Administrators")
    Set objGroup = GetObject("WinNT://Domain Name/" & Account.Value)
    objAdmins.Add(objGroup.ADsPath)
    msgbox("Finish !")
    set objGroup = Nothing
End Sub

' Displays a message box when the button is clicked
Sub RemoveAccount
    Set objAdmins = GetObject("WinNT://" & HostName.Value & "/Administrators")
    Set objGroup = GetObject("WinNT://Domain Name/" & Account.Value)
    objAdmins.Remove(objGroup.ADsPath)
    msgbox("Finish !")
    set objGroup = Nothing
End Sub
</SCRIPT>
<body>
您要在哪台電腦上管理 Administrators 群組?<br>
Host Name:<input type="text" name="HostName" size="30"><br>
Account:<input type="text" name="Account" size="32">(不含網域名稱)<br>
<input id=runbutton1  class="button" type="button" value="Add Account" name="run_button1"  onClick="AddAccount">
<input id=runbutton2  class="button" type="button" value="Remove Account" name="run_button2"  onClick="RemoveAccount"><br>
<br>
<ul>
<li>如果您輸入的電腦無法接受管理(例如:防火牆阻擋),將會發生錯誤訊息</li>
<li>如果您輸入的網域帳號不存在,也會發生錯誤訊息</li>
</ul>
</body>
</html>

PS.請記得將紅字的 Domain Name 更換成你的網域名稱

檢查網路某台電腦的本機管理者群組的非管理者帳號

在經歷許多環境發現,很多頗具規模的公司(以電腦數量來算),對於網域的管理,以及權限的管理都很鬆散。

隨隨便便一堆人都有本機管理者權限,當然公司會中毒、資料外洩也不足為奇。所以自己只要寫個簡單的小程式,就可以透過網路去檢查別台電腦的本機權限狀況。

MIS完全不用去中斷別人的工作,也不容易引起爭執。

當然在做這個動作之前,你最好先買個保險,由上級主管宣導實施,免得挨槍子。

strComputer = "ComputerName"

Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators")

For Each objUser In objGroup.Members
    If objUser.Name <> "Administrator" AND objUser.Name <> "Domain Admins" Then
        wscript.echo objUser.Name
    End If
Next

 

自動將 Exchange Archive SPAM 按照日期歸檔

使用 Exchange 2003 的 SPAM Archive 功能,會發現每天都有一堆信被封存,

才隔幾天,要開啟 Archive Folder時,卻系統卻會停止回應。

因為檔案太多,系統很忙碌的要一次讀取所有的檔案清單,

所以才有寫以下幾支程式的構想。

這支程式一執行,會將 E:\Exchsrvr\UCEArchive目錄下所有封存的 SPAM,按照日期格式 YYYYMMDD 歸檔存到 YYYYMMDD 目錄下,這樣子每個 Folder 的檔案數量不大,開啟資料夾速度就快多了。 ( Batch File )

@echo off
setlocal EnableDelayedExpansion
for /F %%a in ( 'dir E:\Exchsrvr\UCEArchive\*.EML /b' ) do (
set FileName=%%a
set DateDir=!FileName:~5,8!
if not exist E:\Exchsrvr\UCEArchive\!DateDir! mkdir E:\Exchsrvr\UCEArchive\!DateDir!
move E:\Exchsrvr\UCEArchive\!FileName! E:\Exchsrvr\UCEArchive\!DateDir!
)

這支程式只會抓今天的日期,將今天的 SPAM 歸檔 ( Batch File )

@echo off
for /f "tokens=1-3 delims=/ " %%a in ('date /t') do (set date=%%a%%b%%c)
if not exist E:\Exchsrvr\UCEArchive\%date% mkdir E:\Exchsrvr\UCEArchive\%date%
move E:\Exchsrvr\UCEArchive\ARCH_%date%*.eml E:\Exchsrvr\UCEArchive\%date%

這支程式會抓昨天的日期,將昨天的 SPAM 歸檔 ( Windows Script Host )

' 取得昨天的日期
dtmYesterday = Date() - 1

' 將昨天的日期取出年份
strYear = left(dtmYesterday,4)

' 將昨天的日期取出月份
if mid(dtmYesterday,7,1) = "/" then
strMonth = "0" & mid(dtmYesterday,6,1)
else
strMonth = mid(dtmYesterday,6,2)
end if

' 將昨天的日期取出日期
if mid(dtmYesterday,len(dtmYesterday)-1,1) = "/" then
strDay = "0" & right(dtmYesterday,1)
else
strDay = right(dtmYesterday,2)
end if

strYesterday = strYear & strMonth & strDay

' 以昨天的日期來建立目錄
ParentFolder = "E:\Exchsrvr\UCEArchive"
set objShell = CreateObject("Shell.Application")
set objFolder = objShell.NameSpace(ParentFolder)

objFolder.NewFolder strYesterday

' 將檔名包含昨天日期的檔案,全數搬移到昨天日期的目錄下
Set objFSO = CreateObject("Scripting.FileSystemObject")
FileNamePatten = "ARCH_" & strYesterday & "*.EML"
objFSO.MoveFile "E:\Exchsrvr\UCEArchive\" & FileNamePatten , "E:\Exchsrvr\UCEArchive\" & strYesterday

wscript.echo strYesterday & " Job is done !"

以下這支程式,會跳出視窗,讓您輸入日期,將指定日期的 SPAM 歸檔 ( Windows Script Host )

strDay = inputbox("請輸入日期 : ")

' 以昨天的日期來建立目錄
ParentFolder = "E:\Exchsrvr\UCEArchive"
set objShell = CreateObject("Shell.Application")
set objFolder = objShell.NameSpace(ParentFolder)

objFolder.NewFolder strDay

' 將檔名包含昨天日期的檔案,全數搬移到昨天日期的目錄下
Set objFSO = CreateObject("Scripting.FileSystemObject")
FileNamePatten = "ARCH_" & strDay & "*.EML"
objFSO.MoveFile "E:\Exchsrvr\UCEArchive\" & FileNamePatten , "E:\Exchsrvr\UCEArchive\" & strDay

wscript.echo strDay & " Job is done !"

這是改用 Batch File 語法寫的程式,功能與上一支程式相同

set /p DateDir="請輸入日期:"
if not exist E:\Exchsrvr\UCEArchive\%DateDir% mkdir E:\Exchsrvr\UCEArchive\%DateDir%
move E:\Exchsrvr\UCEArchive\ARCH_%DateDir%*.eml E:\Exchsrvr\UCEArchive\%DateDir%

自動建立AD帳號程式

今天為了客戶寫了一支自動建帳號的程式

該程式將讀取 User 提供的帳號密碼清單來建立帳號


' Greate Accounts and Setting Password
' 讀取 List.txt 檔案中的帳號及密碼
' 將帳號建立在 strOU 這個組織單位中
' 並設定密碼
' List.txt 格式,每行一個帳號密碼,帳號與密碼以空格分開
' account password
' 如果使用者密碼有空白字元
' 請自己選用一個分隔符號,然後將第41行程式的空白字串改掉
' arrAccount = split(strAccountPW, " ")
' 設定單位組織
strOU = InputBox ( "請輸入組織單位名稱:" , "Greate Accounts under OU" , "SalesDept" )
' 設定 Domain
strDomain = InputBox ( "請輸入網域名稱:" , "Greate Accounts under OU" , "domain.com.tw" )
' 設定開啟檔案模式
Const ForReading = 1
' 宣告變數
strDC = ""
strLDAP = ""
strUserCN = ""
arrDC = split(strDomain,".")
for nLoop = 0 to UBound(arrDC)
strDC = strDC & "dc=" & arrDC(nLoop) & ","
next
strDC = left(strDC, LEN(strDC) - 1)
' wcscript.echo strDC
Set objOU = GetObject("LDAP://OU=" & strOU & "," & strDC)
' Read Account List File
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile ("List.txt", ForReading)
Do Until objTextFile.AtEndOfStream
' 一行一行讀取 List.txt
strAccountPW = objTextFile.ReadLine
' 將 Account and Password 拆開,arrAccount(0)存帳號,arrAccount(1)存密碼
arrAccount = split(strAccountPW, " ")
' wscript.echo arrAccount(0) & ":" & arrAccount(1)
Set objUser = objOU.Create("User", "cn=" & arrAccount(0) )
objUser.Put "sAMAccountName", arrAccount(0)
objUser.Put "c", "TW"
objUser.Put "co", "台灣"
objUser.Put "countryCode", "886"
objUser.Put "mail", arrAccount(0) & "@" & strDomain
objUser.Put "name", arrAccount(0)
' Uncheck User need change password
' 將帳號物件寫入
  objUser.SetInfo
' 設定使用者預設密碼
Set objUser = GetObject ("LDAP://cn=" & arrAccount(0) & ",ou=" & strOU & "," & strDC)
objUser.SetPassword arrAccount(1)
' 使用變更密碼的方式來設定密碼
' objUser.ChangPassword "", arrAccount(1)
' 因為 Windows 2003 的預設密碼政策要求比較嚴格,可以使用下列預設密碼
' objUser.SetPassword "p@ssw0rd"
' 要求使用者下次登入要變更密碼
' objUser.Put "pwdLastSet", 0
' 取消帳號停用
objUser.AccountDisabled = FALSE
' 設定帳號過期日,Default為「永不過期」
' objUser.AccountExpirationDate = "1970/1/1"
objUser.SetInfo
Loop
' 關閉檔案
objTextFile.Close
wscript.echo "帳號建立完成"

使用 Ping 指令來檢查網路品質

最近為了客戶移機的事,又寫了一支WSH,它是用ping來檢測網路品質,將結果存到CSV File,然後寄到指定的信箱裡。

當我收到這個CSV File時,就可以把它匯入SQL Server,利用Excel來繪製網路品質的圖表。

On Error Resume Next
' Open File Mode (Read/Write)
Const ForAppending = 2
' 8 (hrs) * 60 (Minutes) * 60 (Seconds) = 28800
Const nTimes = 28800
' 1 Second = 1000
Const nSleep = 1000
' Branch Office Name

' 因為客戶有多個辦公室,所以加上一個Location欄位,以便日後分析
Const strLocation = "上海"
' Ping Server Public IP

' 這邊請輸入您自己要測試的端點 Public  IP
Const strPingServer = "123.123.123.123"

' 設定 SMTP Server
Const strSMTP = "xxx.xxx.xxx"

' 設定供 SMTP驗證的帳號
Const strUser = "UserName"

' 設定供 SMTP驗證的帳號密碼
Const strPasswd = "12345678"
' Initialize Variables 設定變數初始值
' Ping Status
nStatus = 0
strIP = ""
nResponseTime = 0
strAttachFile = ""
strMonth = Month(Date())
If Len(strMonth) = 1 Then
  strMonth = "0" & strMonth
End If
strDay = Day(Date())
If Len(strDay) = 1 Then
  strDay = "0" & strDay
End If
strYear = Year(Date())
strHour = Hour(Time())
If Len(strHour) = 1 Then
  strHour = "0" & strHour
End If
strMinute = Minute(Time())
If Len(strMinute) = 1 Then
  strMinute = "0" & strMinute
End If
strSecond = Second(Time())
If Len(strSecond) = 1 Then
  strSecond = "0" & strSecond
End If
strLogFile = "C:\" & strLocation & "_" & strYear & strMonth & strDay & "_" & strHour & strMinute & strSecond & ".txt"
' 檢查是否還存在 Log File,如果存在,就把它寄出去,然後刪掉(有可能之前 Ping 程式執行到一半就被中斷,例如關機或當機
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colFileList = objWMIService.ExecQuery ("ASSOCIATORS OF {Win32_Directory.Name='C:\'} Where " & "ResultClass = CIM_DataFile")
For Each objFile In colFileList
  If InStr(objFile.FileName, strLocation) Then
  strAttachFile = "C:\" & objFile.FileName & ".txt"
  ' 寄出 Log 檔案
  Set objEmail = CreateObject("CDO.Message")
  objEmail.From = "tombo@ms13.url.com.tw"
  objEmail.To = "tombo.katherine@gmail.com"
  objEmail.Subject = "Ping Status from" & strLocation & "@" & now()
  objEmail.Textbody = "Ping Status from " & strLocation
  objEmail.Addattachment strAttachFile
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSMTP
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = strUser
  objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = strPasswd
  objEmail.Configuration.Fields.Update
  objEmail.Send
  ' 刪除已寄出的 Log File
  Set objFSO = CreateObject("Scripting.FileSystemObject")
  objFSO.DeleteFile(strAttachFile)
  End If
Next
' Check IP
strPublicIP = "xxx.xxx.xxx.xxx"
strURL="http://briian.com/files/act/myip-widget.php"
Set objHTTP = CreateObject("MSXML2.XMLHTTP")
Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.Global = True
objRegEx.Pattern = "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"
objHTTP.Open "GET", strURL, FALSE
objHTTP.Send
Set colMatches = objRegEx.Execute(objHTTP.ResponseText)
For Each strMatch in colMatches
strPublicIP = strMatch.Value
Next
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile ( strLogFile , ForAppending , True)
Set colServices = GetObject("winmgmts:").ExecQuery ("Select * from Win32_Service")
objTextFile.WriteLine( "Location" & "," & "Public IP" & "," & "Date" & "," & "Time" & "," & "Count" & "," & "Status Code" & "," & "Address" & "," & "ResponseTime")
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
for nLoop = 1 to nTimes
Set colItems = objWMIService.ExecQuery ("Select * from Win32_PingStatus " & "Where Address = '" & strPingServer & "'")
For Each objItem in colItems
  if objItem.StatusCode = 0 then
  nStatus = objItem.StatusCode
  strIP = objItem.Address
  nResponseTime = objItem.ResponseTime
  objTextFile.WriteLine( strLocation & "," & strPublicIP & "," & Date() & "," & Time() & "," & nLoop & "," & nStatus & "," & strIP & "," & nResponseTime )
  else ' Ping 不到的狀況
  objTextFile.WriteLine( strLocation & "," & strPublicIP & "," & Date() & "," & Time() & "," & nLoop & "," & nStatus & "," & strIP & "," & "-1" )
  end if
Next
Wscript.Sleep nSleep
Next 
objTextFile.Close
Set objEmail = CreateObject("CDO.Message")
objEmail.From = "tombo@ms13.url.com.tw"
objEmail.To = "tombo.katherine@gmail.com"
objEmail.Subject = "Ping Status from" & strLocation & "@" & now()
objEmail.Textbody = "Ping Status from " & strLocation
objEmail.Addattachment strLogFile
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSMTP
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = strUser
objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = strPasswd
objEmail.Configuration.Fields.Update
objEmail.Send
' 刪除已寄出的 Log File
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile(strLogFile)

其實這個功能跟我之前介紹的 ping commander很類似,只是我用WSH寫的,沒有 GUI 介面,而且多了個寄送 Log的功能。但是沒有支援 ping 多個目標的功能。

也許改天有空再改用 HTA來寫 GUI 介面的程式。

後記:

如果該程式的 strLocation最好使用英文,最好不要用中文,以免用戶端如果非繁中語系程式就會出問題!