2012-09-23

IME: Intel Management Engine

vPro 必備的5個硬體組件
個人電腦的硬體要有5個條件才能稱為 vPro 平臺,第一是處理器要支援虛擬技術,第二則是要具備 Intel ME 的北橋晶片,第三是南橋晶片要支援 Intel AMT(主動管理技術),第四是能透過 AMT 寫入的 Flash ROM,最後網路晶片要支援 OOB(Out Of Band),能載入2祖 IP Address。上述條件缺一不可.

vPro 平臺會應用到處理器的 Intel VT (Virtualization Technology,虛擬技術),AMT 可控制利用 VT 安裝的嵌入式作業系統。

vPro 平臺中,最重要的就是 Intel ME (Management Engine),這類似另一個 BIOS,北橋晶片要具備 Intel ME 才能應用 vPro 平臺,只要支援 AMT 技術的軟體,就能控制 Intel ME,而達成遠端管理。

vPro平臺中另外一重要的技術是 Intel AMT (Active Management Technology,主動管理技術),只要軟體支援 AMT,就能透過網晚路管理 vPro 個人電腦。

AMT 執行後的資料,需要儲存在 Flash 中,而 Flash 還要儲存 BIOS、Intel ME 及網路晶片韌體及資料、和軟體開發商提供 API 程式,這也讓原本只需要8MB的 Flash ROM,擴充到 16MB。特別的是,記憶體中增加能儲存 NVRAM,可寫入軟體開發商的程式,應用程式可利用 AMT 技術存取 Flash 中的資料,不需要儲存在電腦中。

vPro 電腦需要具備 2組 IP Address 及支援 OOB (Out of Band),Intel 82566DN GbE 則同時具備上述功能。它會專門提供 IP Address 給 AMT 使用,管理系統就是透過此 IP Address 與 vPro 電腦溝通,不影響使用操作,而且就算關機下,也能取得 IP Address

1. Intel ME 類似主機板上另一個 BIOS


2. ME 設定主要提供管理員調整電源管理、遠端韌體更新權限等,變更 ME 設定完成後,系統需重新開機後才會套用新設定。


3. ME 目前掌管了系統開機大權,包含開機時部份的 power sequence / clock / HW-STRAP 而 ME 基本上就是一個內含在 PCH內的 Controller

當你按下 Power button 時,剛開始 ME 會先使用一 PCH 內含的 ROM 來啟動(這組 ROM 是外界無法 touch 的),接著套用一個  HW Default 去驅動 CLOCK 來讓系統開機,CLOCK 出來後,ME 會先去讀取存放在 SPI Flash 裡的 Descriptor,也就是 SPI Flash 的前 4KB, 先驗証 Descriptor 裡的 signature 是否等於 0FF0A55Ah,若不同的話,則不會執行 ME Firmware! 若值正確,會接著套用 Descriptor 裡的 hw strap 值並執行 ME Firmware,然後才開始 LOAD SPI Flash 裡的 BIOS Area,當 BIOS 開機到 MRC,時會分配 memory 給 ME UMA 使用…


ME上還有不同的AP,Intel AMT就算是ME AP的一種

4.
4.1 CALPELLA 的 clock 有 2 種模式,一種是採用舊的 clock gen 來給 platform 供給 clock,另一種是完全由 PCH 來提供 platform 上的 clock


4.2 我說的 hw strap 可能有點不妥,但有不少的 hw config 是存放在 descriptor 裡,開機時由 ME 來取用,比方說 PCH 上的 PCI Express lane 的設定,是否做 lane reversal,lane的組態設定/ PCIE lane 是否為借道給 on board LAN 的PHY來使用…等


4.3 原本不少需要透過 HW 機制來完成的動作,現階段改由 ME 來完成

Source : IME

2012-09-05

How to Change UUID of VDI files

先做好一個Windows XP的vdi,再複製一份VDI要分別做Office 2000和Office 2003的VM,出現UUID重覆的訊息,要如何處理呢?

"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" internalcommands sethduuid 檔案名稱
That's it!

How to resize a VirtualBox disk partition

Method 1 :

VirtualBox is a cross platform full virtualizer for x86 hardware. It runs on Windows, Linux, Macintosh and OpenSolaris hosts and supports a large number of guest operating systems such as Windows, Linux and OpenBSD. In a previous guide I have shown you How to install Ubuntu Linux on Windows using VirtualBox . The procedure is the same if you want to install Windows on Linux. The guest operating system is installed on a virtual disk created by VirtualBox which is nothing more than a single .vdi file. When you first create the virtual machine you must set a certain size for this disk. However after playing with VirtualBox you might realize you need more space because your virtual disk is full So, in this tutorial I will explain how to enlarge an existing virtual disk or in other words how to resize your virtualbox vdi. I have a Windows XP installation running on Linux and specifically Archlinux and I am going to create a larger disk for Windows XP.
**Note: The same procedure works for Windows Vista also. The only difference is that you have to use your original Vista installation CD for Bootmgr repair the first time the system is started after the GPARTED steps have been followed. (Thanks to Andrew)

Run VirtualBox and go to File -> Disk Manager.

1sm
Here as you can see I have a .vdi disk with a size of 10GB (1) which is almost full. So press the New button (2) to create a new virtual disk.

2sm
Click next to go to the next page of the New Virtual Disk Wizard.

3
Select Dynamically expanding image as Image type and click next.

4
Select a name for the new image (1), this should be different than the existing one, and also set the size of the new disk (2). Here I've set it to 20GB.

5
Press Finish to end the wizard.

6
Now you should have 2 .vdi images in the Virtual Disk Manager. Click Ok to close the wizard.

7sm

Here we are gonna need GParted to copy the data of our old disk to the new one. GParted is the Gnome Partition Editor application for creating, destroying, resizing, moving, checking and copying partitions, and the file systems on them. It has a LiveCD which you must download from here . You don't have to burn it on a cd, just store the .iso somewhere in you hard disk.

Now select the existin Windows XP installation (1) and click on the Settings button (2).

8sm
In the General -> Advanced tab set CD/DVD Rom as the first boot device.

9sm
In the Hard Disks settings double click below your IDE Primary Master and set IDE Primary Slave and the new Virtual Hard Disk image.

10sm
In the CD/DVD-ROM settings click on Mount CD/DVD Drive (1), choose ISO Image File (2) and use the folder button to browse to the location you have saved the gparted live cd (3).

11sm
Now click the Ok button and start the Windows XP Virtual Machine. Press Enter to boot GParted Live with Default Settings.

12sm
Don't touch keymap should be fine. Again press Enter.

13sm
Select the Language you prefer. Press Enter for English. And again press Enter for the default video card settings.

14sm
GParted will automatically scan your virtual disks. /dev/hda should be the old one and /dev/hdb the new one. Right click on your first disk and select Copy.

15sm
Next select /dev/hdb from the drop down menu (1), right click on the unallocated space and select Paste (2).

16sm
Drag the right edge (1) like you see in the screenshot so as not to leave any unallocated space in the new disk. Next click the Paste button.

17sm
Now press Apply to apply the changes.

18sm
When all listed operations are applied click the Close button. Again right click on the new partition /dev/hdb and click Manage flags. Here you should tick the boot flag.

19sm

Gparted will scan all devices once more. When it's done close the program and shutdown the live cd from the exit button. It will prompt you to press Enter. Now return to the VirtualBox application, select the Windows XP virtual machine and click the settings button. In the General -> Advanced tab select Hard Disk as the first boot device.

20sm
In the Hard Disk settings use the delete button (1) to remove the IDE Primary Slave, leave just IDE Primary Master (2), and select the new .vdi (3).

21sm
In the CD/DVD-ROM settings tick the Host CD/DVD Drive.

22sm
Press the Ok button and start your Windows XP virtual machine. Windows might ask to check their filesystem. Just let them do it.

23sm
After they automatically reboot you will log into your new resized virtualbox disk without having lost any of your data. You can now just delete the old .vdi. Enjoy!

24sm

Method 2 :

Use Norton ghost bootable CD. See 賴榮樞的軟體資訊誌 直接擴充現有的VMWare虛擬磁碟容量

2012-09-03

用DD-WRT快速建立PPTP VPN Server

Source : 

蘇老在噗浪碎碎念

 

ddwrt
之前在部落格曾經寫過關於用Fortigate 建立VPN 的一系列文章,但這是因為公司申請中華電信資安艦隊方案所獲贈的機器(當然,羊毛還是出在羊身上...),一般小型企業或家庭不太可能花錢砸設備,那如果想要自建VPN Server 該怎麼辦?

還好,網路上有DD-WRT 這公開的軔體能刷在特定的IP 分享器使用,裡面提供的功能包羅萬象,就看分享器內建的ROM 有多大,能使用的功能就有多少。
注意!刷非原廠軔體不在保固範圍內,不過我好像買來第一天就都改刷了...

所以這次就是要用DD-WRT 內建PPTP Server 來完成任務。有支援的軔體版本請參考官方連結

設定方式非常簡單,兩張圖就講完。
進入分享器的頁面後,找 [伺服器] -> [VPN],然後點選啟用 [PPTP 伺服器]。

instvpn01

參考下面說明及圖片進行設定。
伺服器IP 欄位請輸入IP分享器的內部IP
以本文為例,則是 192.168.1.254,也就是指定IP分享器為Gateway。

用戶端IP 欄位請輸入希望給予的IP 範圍,建議設定為同網段範圍,格式如:

view sourceprint?

1.192.168.1.161-165

這部份在經過惡搞後發現,輸入跟分享器不同網段,VPN 還是會連接並取得設定的IP ,但你會發現就被關在那個網段裡面了,連Internet 都上不了。

CHAP-Secrets 欄位則是用來輸入相關的帳號密碼,格式為:

view sourceprint?

1.帳號1* 密碼 *

2.帳號2* 密碼 *

如果需要給予多筆帳號,可以分行建立。請注意密碼的前後務必給予一個空格,否則就會跟我當初測試時一樣鬼打牆。

instvpn02

最後請點選 [儲存重啟],使PPTP Server 功能生效,這樣就完成了伺服器端的設定。

接著在用戶端進行設定連線及測試。
到 [控制台] -> [網路及網際網路] -> [網路和共用中心],點選 [設定新的連線和網路]。

w7instvpn01

 

點選 [連線到工作地點]。

w7instvpn02

點選 [使用我的網際網路連線 (VPN) ]。

w7instvpn03

這部份的資訊在連線時很重要,請輸入該IP分享器的對外或網址。「目的地名稱」則是用來建立連線時的識別名稱。

w7instvpn04

輸入帳號密碼後即完成在用戶端的連線設定。

w7instvpn05

而在Windows 7 裡最快的連線步驟,就是用滑鼠左鍵點擊右下角的網路圖示,再依據指示就能成功連線。
圖中的「PPTP」就是當初建立的「目的地名稱」。

pptp_cont01pptp_cont02

 

最後要說的是,以台灣目前的網路環境,一般家用的ADSL/FTTB大都屬於浮動IP,所以在連線使用VPN 可能會有些不方便。如果像是使用中華電信的用戶,其實可以轉申請浮動轉固定的服務,或者可以申請Dyndns 的動態DNS 服務,然後在DD-WRT 上進行設定,這樣就會比較容易在外面連線到對外服務的IP 分享器,然後與內部網路進行連接。

另外特別提醒的是,如果有考慮開啟VPN Server,建議盡量將內部網路的網段設定至較為特別的位置,避開使用類似192.168.0.0/24或192.168.1.0/24等網段,因為這些網段都常在旅館或咖啡廳被使用,會導致兩端在建立VPN 連線後,都位在同樣網段時,很容易造成存取或連線上的錯誤。

用下面這幾張圖來說明會比較容易。
假設右端在企業外部的電腦與左端的分享器建立起PPTP VPN 後,取得的IP 為 192.168.1.162,那麼當他要存取左端192.168.1.1 或192.168.1.159 這兩台主機的資源時,會在右端尋找還是自動找到左端呢?

vpn_visio

取得的IP 狀態。

vpn_ipconfig

其實從路由表來看,會比較清楚些。在建立VPN 連線後,會以左端的企業內部環境為優先,右端的內部資源可能就無法正常存取了。

vpn_routeprint

以本文的環境範例來說,在 DD-WRT 的系統基本設定頁面,路由器的網路設定除了基本的 IP 必須設定外,也請務必輸入閘道(Gateway)的值,也就是路由器本身,否則將可能造成撥進 VPN 後,用戶端無法透過該路由器上網。

2012-2-1-21-47-48-550x510