顯示具有 Windows Server 2008 標籤的文章。 顯示所有文章
顯示具有 Windows Server 2008 標籤的文章。 顯示所有文章

2011年2月1日 星期二

本機Windows驗證不通過?

這個很怪。剛開始完全弄不懂。

發生的是這樣子。我有一台伺服器,例如 serverA, FQDA 是 serverA.domainA。

為了作業方便,對內對外我希望是 serverB.domainB 都可以存取。在其他的伺服器都可以存取,但在這個伺服器,使用 http://serverB.domainB 時,會拋出 Windows 的驗證。而無論怎麼打帳密都不會過。此時,只要使用 http://localhost, http://serverA, http://serverA.domainA, 都會過,唯獨本機時不過.

在事件檢視器中會出現下面的錯誤

 

- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Microsoft-Windows-Security-Auditing" Guid="{54849625-5478-4994-A5BA-3E3B0328C30D}" /> 
  <EventID>4625</EventID> 
  <Version>0</Version> 
  <Level>0</Level> 
  <Task>12544</Task> 
  <Opcode>0</Opcode> 
  <Keywords>0x8010000000000000</Keywords> 
  <TimeCreated SystemTime="2011-02-01T02:13:08.330597300Z" /> 
  <EventRecordID>42135</EventRecordID> 
  <Correlation /> 
  <Execution ProcessID="528" ThreadID="580" /> 
  <Channel>Security</Channel> 
  <Computer>PTTFS.pt.bankpro</Computer> 
  <Security /> 
  </System>
- <EventData>
  <Data Name="SubjectUserSid">S-1-0-0</Data> 
  <Data Name="SubjectUserName">-</Data> 
  <Data Name="SubjectDomainName">-</Data> 
  <Data Name="SubjectLogonId">0x0</Data> 
  <Data Name="TargetUserSid">S-1-0-0</Data> 
  <Data Name="TargetUserName">administrator</Data> 
  <Data Name="TargetDomainName">PT</Data> 
  <Data Name="Status">0xc000006d</Data> 
  <Data Name="FailureReason">%%2304</Data> 
  <Data Name="SubStatus">0x0</Data> 
  <Data Name="LogonType">3</Data> 
  <Data Name="LogonProcessName" /> 
  <Data Name="AuthenticationPackageName">NTLM</Data> 
  <Data Name="WorkstationName">PTTFS</Data> 
  <Data Name="TransmittedServices">-</Data> 
  <Data Name="LmPackageName">-</Data> 
  <Data Name="KeyLength">0</Data> 
  <Data Name="ProcessId">0x0</Data> 
  <Data Name="ProcessName">-</Data> 
  <Data Name="IpAddress">172.18.1.31</Data> 
  <Data Name="IpPort">56489</Data> 
  </EventData>
  </Event>

原因

使用 0xc000006d 當關鍵用,到Bing 搜尋一下找到一篇

Account failed to log on (0xc000006d) – Unable to load website from local server

這裡寫出了解法,並且原是:防止 DoS 攻擊。很怪吧!

解法是,在 registry 中,在 增加

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 下新增一個名為 BackConnectionHostNames 的 MultiString,值就輸入 serverB.domainB。

這樣就解除了這個問題.

2010年12月29日 星期三

Windows Server 2008 常常 BSOD (藍色死機)

最近公司的一台伺服器,連續兩天建立 Hyper-V 的 Virtul Machine時,就會發生 Blue Screen Of Dead 的經典畫面。畫面中,出現了

IRQL_NOT_LESS_OR_EQUAL, 及

STOP: 0x0000000A (parameter1parameter2parameter3parameter4)


最後是找到了這個 KB979444,套上了 hotfix 才解決了問題。

2010年5月19日 星期三

Window Update KB967723 安裝失敗

這個問題已存在了一段時間了,一直略過不理。
這樣不是辦法。

問題

伺服器是 Windows Server 2008 x86,之前Windows Update 說有新的更新 KB967723,晚上自動更新時卻一直安裝不上去。

手動更新也是失敗。到 這裡 手動下載 patch 檔來更新,也不行。真糟。

今早下定決心,看一下 %Windows%\WindowsUpdate.log,發現了下面的錯誤記錄。

2010-04-02    00:01:09:384    1036    10a0    Report    REPORT EVENT: {DF07C317-A3F9-405F-BF9A-8EDDF5A65E44}    2010-04-02 00:00:38:397+0800    1    195    101    {8181567D-EC57-4B9C-A351-F48324C5D274}    103    80070490    AutomaticUpdates    Failure    Content Install    Installation Failure: Windows failed to install the following update with error 0x80070490: Security Update for Windows Server 2008 (KB967723).

於是再使用 0x80070490 + KB967723 找 Google 大神幫忙。找到了這個解法

什麼是「系統更新整備工具」?

系統資源 (例如檔案資料、登錄資料,甚至是記憶體內部資料) 在作業系統存留期間可能會產生不一致。這些不一致可能是由各種硬體故障或軟體問題所造成的。在某些情況中,這些不一致會影響 Windows 服務存放區,並造成軟體更新無法運作。系統更新整備工具會嘗試解決這些不一致問題。(摘自 http://support.microsoft.com/kb/947821)

完工。

2010年3月30日 星期二

Ajax Enabled WCF Service on IIS 7 always return 404 error

最近 study 了 Ajax enabled WCF Service,覺的著實好用。於是想放到 MOSS 上。而 MOSS 是位於 Windows Server 2008 的 IIS 7 上。一試,就發現 IIS 7 執行 svc 時是正常的,但一執行 *.svc/js 就會回傳 404 (not found) 的錯誤。

然而,在 IIS 6 (windows 2003) 上不會發生這個問題。

花了一整天,都在處理這個 Issue。一度還以為是 moss 的問題。

現在終於找到了原因。在此將完整的步驟記錄下來。

  1. 建立一個 WCF Service. 並且記得要 加上[ServiceContract],[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
  2. 在 config 上,使用 webHttpBinding, 並啟用 <enableWebScript/> 的 endPoint behavior
  3. 部署程式到 Windows 2008 的 IIS 7 上。此以瀏覽器輸入網址 *.svc/js 會回傳 404 錯誤
  4. 這一步就是我漏掉的。打開 IIS 管理員,找到該網站(Site),於 "處理常式對應”(Handler Mappings)上,新增一個指令對應。

要求路徑:*.svc
執行檔:%SystemRoot%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
名稱:svc-ISAPI-2.0

       如下圖。

image

這樣一來就解決了問題。

2010年1月27日 星期三

使用 VSS (Volumn Shadow Copy Service) 備份 VM

在使用 Hyper-V 之前,最好先知道 VM 如何進行備份。如果沒有擬好策略,將來VM 要災難復原時,就求助無門了。

備份的方法分成四種,其中一個方法是使用 VSS (Volumn Shadow Copy Service) 備份 VM。也就是今天要介紹給大家的。

安裝 Windows Backup Features

目的,是在 Windows Backup 時,也能備份 VM。但,VM 在執行中時,VM 的檔案,如 *.vhd 是被 locked 住的,因此 windows 要如何進行備份呢?

首先,在 Hyper-V Host 上以 admin 權限執行 cmd,輸入

vssadmin list writers

結果會列出在該台機器上支援的 writer,也就是使用 vss 備份時可以不受限於lock 的方法。找到 Microsoft Hyper-V VSS Writer 的 Writer Id。如下資訊。
Writer name: 'Microsoft Hyper-V VSS Writer'
Writer Id: {66841cd4-6ded-4f4b-8f17-fd23f8ddc3de}
Writer Instance Id: {84261b8d-c19b-42f7-8463-c540d606495b}
State: [1] Stable
Last error: No error

寫機碼

沒錯,要自訂機碼。原來 Hyper-V VSS Writer 並不是預設啟用的。使用 regedit,在 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion 下新增一個名為 WindowsServerBackup 的 key。於 WindowsServerBackup 下再新增一個名為 Application Support 的 key。再於其下新增一個上個步驟的 Writer Id 的key,也就是 66841cd4-6ded-4f4b-8f17-fd23f8ddc3de。最後,再於其下新增一個 string value,名為 Application Identifier,值為 Hyper-V VSS Writer。

寫起來很複雜,其實就如下圖所示。

image

進行 Windows Server Backup

在 Administrative tools 下可找到 Windows Server Backup。這就是一般進行備份的工具。在此不多做介紹,坊間的書都有介紹。

附註說明的是,使用 Windows Server 2008 執行 Windows Server Backup,只能進行邏輯磁碟的備份,如 c, d, e 磁碟,並沒有辦法進行單一檔案的備份。因此,需要使用第三方軟體(也就是另外花$$買)。在 Windows Server 2008 R2,也增強了這方面的功能。

2009年6月11日 星期四

Asp.net 4.0 Whitepater

http://www.asp.net/learn/whitepapers/aspnet40/ 

隨手一看,有個新功能是 Auto-Start Web Applications

以往,無論是 jsp or aspx,特色是「第一個 Request」都是啟動程式的 reqeust,都跑的最慢。之後的 reqeust 就不會這麼慢了。

但真的很難說服客服這樣的行為是合理的。有時伺服器為了節省資源,也會自行 showdown application pool 的 process 。
如下圖,預設20分鐘沒有任何的新的 request 後,這個 application pool 的 process 就會被回收 (recyle)。

image

Auto-Start Web Applications 必須跑在 IIS 7.5 (Windows Server 2008 R2)上,可以不必收到第一個 request ,就會自行建立 Process。

這算是一個小的進步吧。

2009年6月7日 星期日

iis search engine optimization toolkit

還記得兩三年前,主管問我如何讓搜尋引擎找到我們公司的首頁,並且讓它排的前面一點?

當時記得有 SEO (Search Engine Optimization) 這件事,也看過了 Lynda 相關的課程。 但說實話,在asp.net 上還真的麻煩。

究竟要如何 SEO比較好呢?微軟出了這一個 toolkit,希望在IIS 7 上做 SEO 能更簡便一些。

詳請見 http://weblogs.asp.net/scottgu/archive/2009/06/03/iis-search-engine-optimization-toolkit.aspx

2009年1月14日 星期三

Hyper-V 下模擬 Windows Server 2008 的 NLB

Hyper-V 下模擬 Windows Server 2008 的 NLB,單張網卡,按照經驗,應該使用 unicast。

但不幸地,一直發生這樣的訊息

Error reading cluster configuration
Update failed with status code 8004100a00000000.

試了好久,也請來了專家,也試不出所以然。

最後,找到了一篇

Update failed with status code 0x8004100a in Windows Server 2008

也出現了同樣的問題,並改用 Multicast 即可。

2008年12月15日 星期一

Hyper-V MMC Snap-In

使用遠端桌面來操作 Hyper-V MMC Snap-In時,有個常見的問題。也就是使用 mouse 進入 guest 時,會發生 Mouse not captured in Remote Desktop session. 的警告,如下圖。

image

此時,按照說明來試著安裝 Integration service ,卻怎麼樣也行不通。看來是我的天份不足了。

不過, Virtual Server 2005 可使用 Internet Explorer 來模擬 Console,反而 Hyper-V不行?這說不通了。

原來,Hyper-V也有類似的功能,只不過不能使用 Internet Explorer 而已。

參考 Description of the Windows Vista Service Pack 1 Management Tools update for the release version of Hyper-V ,安裝後就可使用 Snap-In 來操作了。

2008年11月24日 星期一

Suggested Performance Counters to Watch (IIS 6.0)

客戶有交代一個需求

希望能撰寫類似 watch dog 功能的監看程式

安裝在每一台Web主機上

當發現IIS運作異常時,

自動Reset或Restart IIS

我目前是以網頁吐出為判斷依據

但希望能加強預警機制

藉進一步觀查某些指標 (ex: cpu, memory...etc)

來判斷IIS是否快當了...

問題是,要判斷那些指標;

或者是可以觀察那些行為

來達定預警的目的。

 

要看什麼東西呢?原來微軟早已有了答案。see Suggested Performance Counters to Watch (IIS 6.0)

2008年11月23日 星期日

遠端桌面

使用遠端桌面時,可直接輸入 mstsc 即可,不必點選一堆的 menu.

再來,如果不想使用新的 session,而是使用 console 登入,可使用 mstsc /v:172.16.1.2 /console

其中 172.16.1.2 是遠端電腦的 ip 啦

2007年10月3日 星期三

IIS 7 Modules

在看別人demo 時,總是可以在 IIS 7 上把一堆沒有用到的 modules 移除。 但我在操作時,總是出現 lock violation. 經查詢後,修改 \windows\system32\inetsrv\config\applicationHost.config 將 下所有的 element 之 lockItem 的屬性改成 false 這樣就可以移除不必要的模組了。 預設就要這麼多module,即使不使用。似乎違反 sceure by default rule

安裝 Windows Server 2008 RC0

安裝時,只輸入了 serial number 。 安裝完畢後,要登入時,被要求變更 administrator 的密碼。 就這樣安裝完成了。 微軟在安裝過程,也是極力的簡化。 安裝完畢後,沒有擔任任何的 server role。也就是說,當安裝完畢後,其可以做的事情比 windows vista 還少。 真的是 Secure by defult

Share with Facebook