2016年11月14日 星期一

設定 IBM X3500 M3 Raid Server 並安裝 SUSE Linux 11


這是幾年前的筆記
偶爾翻到把它貼上網
有需要的人可以參考

=================
上週拿到幾台
IBM System X3500 M3
ServeRAID M1015

開始安裝 SUSE 11 中文繁體版
受了很多挫折
後來終於裝好了
其實很容易
不過第一次裝卻繞了很多遠路
分享一下
希望別人不要跟我一樣繞遠路
閱讀這篇手札,您需要具備基本的 RAID 和 BIOS 常識
=================

1.
第一步驟
把例如兩顆硬碟裝進伺服器的 RAID 插槽裡
新機器第一次開機時
可能會出現硬碟無法開機的錯誤畫面
經過漫長的等待
會出現一個畫面詢問是否要按下 Ctrl-H 進入 IBM 的 Web BIOS 設定 (這個就是設定 RAID 的地方)

按下 Ctrl-H 之後
會進入一個 Adapter Selectoin 視窗
依照畫面的指示
建立例如一顆虛擬硬碟(就是將 2 顆硬碟設定成 RAID 1 變成一顆虛擬硬碟)

操作畫面選項按鈕如下 (僅供參考,隨著版本更新畫面會變)
Configuration Wizard
Add Configuration \ NEXT
JBOD Drivers \ (配合 Ctrl 挑選兩顆硬碟) \ NEXT
Manual Configurations \ NEXT
Drivers \ (配合 Ctrl 鍵依序挑選 Slot 0, Slot 1] \ Add To Array (如此 Driver Groups 的 Driver Group0 就會有兩顆硬碟) \ Driver Groups 挑選 Driver Group0 \ Accept DG \ NEXT
Array with Free space 挑選 Driver Group0 \ Add to SPAN \ NEXT
RAID Level 確定是挑選 RAID 1 \ Select Size 輸入可以參考畫面上的 R1 綠色字建議值例如 278.464 GB \ Accept
(跳出一個警告視窗說 Write Through mode 降低使用 Cash 時斷電引發的資料損失,但是會降低執行速度,是否確認) 基本上挑選 YES 後畫面會到前一個畫面,Virtual Drive 的欄位 Driver Group0 就出現一個 VD 0 了, 接著按 NEXT 再回到更前一個畫面,再按 Accept,接著出現警告畫面是否儲存設定,基本上就按 YES, 然後又出現一個警告畫面說所有硬碟的資料會遺失.基本上也是按 YES
Virtual Drivers 挑選 VD 0 \ Set Boot Drive \ GO
大致完成了 RAID 的設定,畫面中其他功能可以自行研究看看

2.
下載 SUSE 11 x64 的版本 (我之前有試過下載 x86 版本,讀不到 IBM RAID )
(請務必檢查 MD5,因為如果使用 IE 或 google 瀏覽器下載好幾 g 的檔案,通常 MD5 檢查都錯誤且安裝都失敗,近年來 IE 或 google 都有針對這個問題改善了
不過最好還是用專業的下載軟體,如果用專業的下載軟體,則設定 NOVELL 會員帳號與密碼的網域應該為 cdn.novell.com, 不是你在 IE 上看到的網址)
安裝方法皆和一般安裝相同
如果是繁體中文安裝預設會出錯

舉我碰到的出錯實例來說
SUSE 會建議你例如將硬碟分割成為 3 個分區
1.使用 FAT 格式化的 \boot\efi (70.6 MB 開機用的受保護區塊)
2.使用 SWAP 格式化的 SWAP (網路上有人建議用實際記憶體的兩倍)
3.使用 EXT3 格式化的 \ (例如剩下的空間都給他)

基本上
分割  FAT 格式化的 \boot\efi 時
要使用[編輯]鈕改 codepage
從預設的 950 (就是 Microsoft 制定的 cp950 (ms950), 目前應該仍未納入標準) 成為例如空白選項 (也許其他選項也可以,沒試過)
這樣就行了
否則安裝中途會出現 \boot\efi 無法 mount 的狀況或是裝完之後無法開機

(附帶一提,安裝 SUSE 途中出錯時可以按下 ALT+CTRL+F2 , 由圖形介面安裝模式切換成命令列安裝模式,接著執行指令 dmesg | tail 就會看到安裝的錯誤訊息為「 cp950 無法辨識」, 接著可以按 ALT+F7 回畫面模式)

That's all

附上當時下載各個軟體的網址

SUSE Linux Enterprise Server 11 x64 Base/SP1 download
http://download.novell.com/protected/Summary.jsp?buildid=GafTuvg_ldk~

IBM ServeRAID Support CD v9.20 (signed) - IBM BladeCenter and System x
http://www-947.ibm.com/support/entry/portal/docdisplay?lndocid=MIGR-64669
檔案為 ibm_fw_sraidmr_1015-20.10.1-0045_linux_32-64.bin

http://delivery04.dhe.ibm.com/sar/CMA/XSA/02gd7/1/ibm_utl_sguide_8.42_anyos_x86-64.iso


參考資料:

SLES11 X86_64 unattended network install to ServeRAID M1015 fails - IBM System x
http://www-947.ibm.com/support/entry/portal/docdisplay?lndocid=MIGR-5084680

(Critical update) IBM ServeRAID M1015 SAS/SATA controller firmware v20.10.1-0045 for Linux - IBM System x
http://www-947.ibm.com/support/entry/portal/docdisplay?lndocid=MIGR-5082827

2016年5月25日 星期三

全世界最便宜的SSL憑證加簽


全世界最便宜的SSL憑證加簽

台灣SSL憑證加簽公司因為市場小,所以SSL憑證加簽,看服務類型一年動輒數萬到超過十萬都有,一般來說,憑證加簽有針對單一網域名稱加簽,價格較便宜,例如針對bookclub.fmj.com.tw這個網域名稱加簽,也可以針對一個網域的所有子網域名稱加簽,價格會較貴,例如針對*.fmj.com.tw加簽,則www.fmj.com.tw或bookclub.fmj.com.tw或fmj.com.tw下的任意子網域名稱都同時有效。
全世界最便宜的SSL憑證加簽,約落在一年美金3-5元之間,通常一次購買三年或以上,才享此優惠價格,前一陣子因為要做FB的APP,需要https連線,所以趕緊去申請了一個當時全球最便宜之一的SSL憑證加簽,所以這篇文章的範例,是JSP網站使用COMODO(柯摩多)憑證加簽作範例,一年只要4.99美元,一次買三年,三年合計不到台幣500元,安裝了之後,我其實蠻滿意的,唯二不太開心的是,原本預計一個小時內會買完並且安裝完,結果如預期般的遇到挫折,花了超過三小時才安裝完,而且才剛裝完,又看到另外一家一年只要3.xx美元...

1.申請前要先做的準備工作

由於COMODO線上申請憑證,他需要確認你擁有所申請網域名稱的控制權,以本文章範例來說,我要申請bookclub.fmj.com.tw的SSL憑證加簽,所以我要具有以下幾個控制權之一,且隨便一個即可,例如我要能收到 admin@bookclub.fmj.com.tw之EMail信箱的認證信函,至於信箱admin也可以挑選其他例如administrator、postmaster、hostmaster或webmaster之類的一堆象徵網域系統管理者名稱的信箱名字,或者呢,你可以將COMODO提供的認證檔案,放到bookclub.fmj.com.tw網站的根目錄下,選擇讓COMODO的測試程式透過http或https連上來認證,又或者呢,你要有添加bookclub.fmj.com.tw網域名稱下子網域名稱的權力,這樣COMODO會給你一個看似亂碼組成的子網域名稱,你必須將他加到你的DNS伺服器裡,變成例如34857394CBA.bookclub.fmj.com.tw,但由於DNS伺服器通常有更新時間的問題,所以認證時間可能要很久,最後,你要有接受購買訊息通知的EMail信箱,並請再準備一張線上付費的信用卡。

2.使用java發SHA2的憑證與加簽申請CSR檔

SHA1的憑證已經被大多數的瀏覽器認定為不安全,所以除非有特殊要求,建議你發SHA2的憑證,其keyalg和sigalg參數範例如下,validity是憑證有效天數,以下範例請自行修改你的網域名稱與路徑等參數,SHA2的keysize要用2048,alias是憑證的名字,keypass和storepass則是憑證和憑證儲存檔案的存取密碼,當然,發憑證的這台電腦,要安裝java才行,且為了發SHA2憑證,不要使用太老舊的java版本(筆者試過java7與8都可以),以下是單獨的一行指令,可以用Windows的命令提示字元來執行。


"C:/Program Files/Java/jre7/bin/keytool" -keysize 2048 -genkey -alias tomcat -keyalg RSA -sigalg SHA256withRSA -validity 36500 -dname "CN=bookclub.fmj.com.tw,OU=it,O=fmj,L=taipei,S=taiwan,C=tw" -keypass changeit -keystore "C:/fmj.keystore" -storepass changeit


附帶一提,此處憑證儲存檔案名稱取名為例如fmj.keystore,儘量不要用預設的憑證名稱.keystore,因為這種只有附檔名的檔案名稱在Mac或Linux上都是屬於隱藏檔,使用不太方便, 憑證發完了,接著發憑證加簽請求CSR檔案:
"C:/Program Files/Java/jre7/bin/keytool" -certreq -keyalg RSA -alias tomcat -file "C:/fmj.csr" -keystore "C:/fmj.keystore"
大功告成,fmj.csr這個文字檔,就是憑證加簽請求檔。

3.上Cheap SSL網購買COMODO憑證

連到以下CheapSSL網址https://cheapsslsecurity.com/,如下圖,如果要加簽含有多個子網域的網域名稱,才選Wildcard Certification,此處範例只要加簽一個不含子網域的網域名稱,例如bookclub.fmj.com.tw,就選Domain Validation,下圖有多家憑證加簽公司,選最便宜的COMODO,按下BUY NOW按鈕購買。
如下圖,挑選購買3年的憑證加簽,則3年後要重新續約,否則憑證加簽會失效,選了要加簽的憑證數量(此處為1個),按下Add TO CARD按鈕加入購物車。
如下圖,填入個人聯絡資料與信用卡付費資料,重點是電子郵件信箱要填正確,等等要去收CheapSSL寄給你的信,信中會提供下一步驟的指示,下圖確認要購買的項目與數量後,就可以按下PLACE ORDER按鈕購買憑證加簽,按下此按鈕後,又會跳出一個畫面(此圖省略)要求你再確認一次,就再按一次確認就可以了。
接著跳出畫面如下,僅是確認你所購買的項目無誤而已

4.由CheapSSL發的EMail連結到其網站貼入憑證加簽申請CSR檔案

做完步驟3,此時去收信應該CheapSSL的信已經立馬寄到了,筆者收到兩封EMail,一封是付費收據,一封有提供超聯結給你連入他的系統,以便貼入前面步驟2所產生的CSR憑證加簽申請檔案,連入他的系統畫面如下,可以看到你所購買的憑證項目。
接著,如下圖,畫面左方挑選ORDERS\incomplete Orders目錄,就會看到未完成的申請項目,也就是Status欄位顯示Pending的憑證項目,按下畫面中的GENERATE CERT NOW按鈕來進行接下來的憑證加簽檔案上傳步驟。
如下圖,欄位1選擇是要續約還是申請新的憑證加簽,此處選擇New代表申請新的憑證加簽,欄位2選擇你要如何證明你擁有所申請網域名稱的權限,筆者選擇最簡單的HTTP File-Based,就是等等讓他給我一個電子檔案下載,下載後我會將這個電子檔案放到我 bookclub.fmj.com.tw的根目錄下,讓他遠端連過來認證。
接著,將前面步驟2產生的CSR檔案用例如Windows的記事本打開,將其內所有的內容複製貼到下圖欄位3裡面,然後在欄位4選擇你所使用的網頁應用程式伺服器,雖然這個步驟可以省略,但此處筆者還是選擇了我所使用的網頁應用程式伺服器Tomcat,最後按下CONTINUE按鈕繼續往下。
接著畫面如下,利用按下Download Auth File按鈕來下載上圖欄位2認證網域名稱擁有權的電子檔案(檔名是一堆亂碼例如287342908374.txt),我將他放到我的網站bookclub.fmj.com.tw的根目錄下以便受檢,如果他檢查不到,你也可以自行檢查看看,例如我可以自行使用瀏覽器連上我的網址http://bookclub.fmj.com.tw/287342908374.txt,看看是否有成關連上這個電子檔,檢查速度會很快在背後偷偷自動完成,下圖欄位1與欄位2是由你所上傳的CSR檔案解析出來的資料,僅供你再次確認,欄位3可以填入這個憑證申請管理者與工程師的聯絡資料,除非有需要分人負責,否則都填入你的聯絡資料就可以了。
至於下圖欄位4只是確認你知道購買憑證加簽的權利義務以及你擁有15天的不滿意退費服務,應該預設都是勾選的,按下CONTINUE按鈕繼續往下。
接著畫面如下圖,會要求你替此次購物經驗評分,隨便評一下吧。
接著下圖畫面選擇Yes讓他能夠後續追蹤你的滿意程度(否則他會跳出更多煩人的視窗說服你選Yes),既然同意讓他後續追蹤,就填入你的名字與電子郵件信箱,按下SUBMIT FEEDBACK按鈕上傳你的意見回饋。
大功告成啦,接著如下圖,按下紅色打叉小按鈕繼續往下。
接著畫面如下,又是確認再確認就可以了,倒是如果你前面忘了下載那個確認你網域名稱擁有權的電子檔案,下面的畫面還可以再下載一次,如果前面你已經正確的做過了,此處就不用再做一次。
此時,你又要去收信了,這次不是CheapSSL寄信給你,是COMODO寄加簽完成的憑證給您啦。

5.由COMODO發的EMail附件下載加簽完畢的憑證

下圖是我的EMail信箱,前兩封是這次COMODO寄給我的,一個是跟我說我可以去下載COMODO的安全認證標章圖片放到我的網頁裡,我只能說,管他的,但是如果你有需要的話,是可以照著做,另一封就是寄來加簽完成的憑證以及COMODO的根憑證與中繼憑證,點進去下載他的附件吧。
至於下圖的第三和第四封EMail,是前面第四步驟CheapSSL發給我的EMail讓我連結到他網站貼入憑證加簽申請CSR檔案。
EMail點進去,畫面如下,申請不同的憑證類別,所需的中繼憑證數量可能不同,此範例的EMail附件是一個ZIP壓縮檔案,解壓後是一個根憑證,兩個中繼憑證,和一個這次所申請我網域名稱的加簽憑證,而根憑證和中繼憑證,基本上都可以在COMODO的公開網站裡下載得到。

6.安裝加簽憑證到你的伺服器上

往下做之前,請先將憑證儲存檔案如此處的fmj.keystore備份,做錯了就將錯誤的憑證儲存檔案刪除掉就好了,重新複製一個原始的憑證儲存檔案來重新做,前面說到EMail附件解壓縮後有以下四個憑證檔案:

Root CA Certificate - AddTrustExternalCARoot.crt
Intermediate CA Certificate - COMODORSAAddTrustCA.crt
Intermediate CA Certificate - COMODORSADomainValidationSecureServerCA.crt
Your PositiveSSL Certificate - bookclub_fmj_com_tw.crt

我們要將這四個憑證都匯入步驟二所發的憑證儲存檔案fmj.keystore中,因為這個步驟要使用java所提供的龜毛程式keytool,我們先講COMODO官方網站所提供錯誤且keytool不接受的方法,這也是為什麼我花了超3小時才搞定這個憑證的原因,官方說明如下:


Certificate Installation: Java Based Web Servers (Tomcat) using keytool
Installing SSL Certificate Chain (Root, Intermediate(s) and the End Entity)

所以我使用Windows的命令提示字元照著做(這是錯誤示範):
1. Import Root Certificate (這是錯誤示範)
"C:/Program Files/Java/jre7/bin/keytool" -import -trustcacerts -alias AddTrustExternalCARoot -file "C:/db/ca/fmj/AddTrustExternalCARoot.crt" -keystore "C:/db/ca/fmj/fmj.keystore"

2. Import Intermediate(s) (這是錯誤示範)
"C:/Program Files/Java/jre7/bin/keytool" -import -trustcacerts -alias intermediate_filename -file "C:/db/ca/fmj/COMODORSAAddTrustCA.crt" -file "C:/db/ca/fmj/COMODORSADomainValidationSecureServerCA.crt" -keystore "C:/db/ca/fmj/fmj.keystore"

3. Import Entity/Domain certificate (這是錯誤示範)
"C:/Program Files/Java/jre7/bin/keytool" -import -trustcacerts -alias tomcat -file "C:/db/ca/fmj/bookclub_fmj_com_tw.crt" -keystore "C:/db/ca/fmj/fmj.keystore"

結果就出現錯誤,訊息如下:
金鑰工具錯誤: java.lang.Exception: 無法從回覆中將鏈建立起來
我原本想,這個錯誤和上次申請的那家godaddy憑證加簽是一樣的,是因為他所提供的根憑證過期造成的,結果不是,因為我去COMODO重新下載最新的根憑證重新匯入,錯誤訊息還是一樣,最後讓我 google 到以下網站的方法就成功了:

https://community.igniterealtime.org/docs/DOC-2208

方法就是,將所有憑證依照根憑證、中繼憑證與加簽憑證的正確順序,貼到同一個文字檔案中(我自己取了一個檔名combine.crt),以 enter 分隔每個憑證的內容,再直接匯入這個新的文字檔到憑證儲存檔案fmj.keystore裡,成功了!沒有依序匯入憑證時造成憑證彼此無法互相關聯的錯誤訊息,指令範例如下:

"C:/Program Files/Java/jre7/bin/keytool" -import -keystore "C:/db/ca/fmj/fmj.keystore" -alias tomcat -file "C:/db/ca/fmj/combine.crt"

接下來,這個憑證儲存檔案fmj.keystore,就可以搬到你的網頁應用程式伺服器上,作為SSL通訊協定所使用的憑證啦,這個部分應該讀者已經很熟悉了,就不繼續寫下去了。


參考資料

https://community.igniterealtime.org/docs/DOC-2208