Microsoft 웹사이트에, "PC 자동 보안 업데이트 서비스" 란게 등록되었습니다.
http://www.microsoft.com/korea/security/patchservice/default.mspx
한국정보보호진흥원과 함께, PC 자동 보안 업데이트 서비스를 제공한다고 합니다..
작동은,. Active-X 형태이고, 이 Active-X 가 호출되는 웹페이지 접속시 다운르드 및 설치를 하게 된다고 합니다.
윈도우 자체의 자동업데이트 보다 장점이 더 많다고 하는데,.. 효과는 의문입니다..
2006/05/27
PC 자동 보안 업데이트 서비스..
2006/05/19
Windows 서버 시스템 개요 및 네트워크 포트
다음문서는, Microsoft 의 KB로, Windows Server를 운영하는데 필요한 각 서비스의 필요한 포트 , 프로토콜등 요구사항에 대해서 아주 잘 정리되어 있는 문서입니다.
Windows 서버 시스템의 서비스 개요 및 네트워크 포트 요구 사항
http://support.microsoft.com/kb/832017/ko
서버를 운영하시는 분이나,. 관련 프로그래머가 참조하면 도움이 될듯 합니다.^^
19-TechNetB_masthead_ltr.gif
DUMPEL 을 이용한 이벤트로그 저장
dumpel.exe 툴은,, 이벤트로그를 추출하는 유틸입니다.
Windows2000 리소스킷에 포함되어 있으며,. dumpel.exe은 이벤트로그를 텍스트 파일로 저장하는 기능을 제공합니다.
다음은 이를 이용한 vbscript로,. 예약 작업관리자에 등록하면 정기적으로 백업이 가능합니다.
Const strBackupPath = "C:\Temp\" '로그파일저장경로
On Error Resume Next
Dim wshShell
Set wshShell = WScript.CreateObject("WScript.Shell")
Dim intYear, intMonth, intDay
Dim dateToday
dateToday = now
intYear = Year(dateToday)
intMonth = Month(dateToday)
intDay = Day(dateToday)
Dim strToday
strToday = CStr(intYear)
If intMonth < 10 Then
strToday = strToday + "0"
End If
strToday = strToday + CStr(intMonth)
If intDay < 10 Then
strToday = strToday + "0"
End If
strToday = strToday + CStr(intDay) '오늘일자 파일명
Dim strArrayEvent
strArrayEvent = Array("system", "application", "security")
'이벤트로그파일 종류
Dim strBackupFile
Dim nI
For nI = LBound(strArrayEvent) To UBound(strArrayEvent)
strBackupFile = Left(strArrayEvent(nI), 3) & "_" & strToday & ".txt"
wshShell.Run "dumpel -f " & strBackupPath & strBackupFile & " -l " & _
strArrayEvent(nI) & " -t", 0
Next
물론,. 위 예제 스크립트에서는 dumpel.exe 를 이용했으나,. WMI가 가능하시면 WMI 쿼리를 통해서도 가능합니다.
여기에,. CDO.SYS를 이용해서 메일로도 받아볼수 있는 루틴을 추가할수도 있겠죠..
오래된 파일 삭제 vbscript
일정기간 이상 오래된 파일을 삭제하고자 할때,
다음 스크립트를 예약 작업관리자에 추가해 놓으면 정기적으로 삭제가 되는 스크립트 입니다.
Const strRootPath = "C:\Temp\"
Const nDays = 10 '초과일수
Dim oFSO
Set oFSO = CreateObject("Scripting.FileSystemObject")
Dim oFolder, oSubFolder
Set oFolder = oFSO.GetFolder(strRootPath)
Dim oFile
For Each oSubFolder In oFolder.SubFolders
For Each oFile In oSubFolder.Files
If Int(Now() - oFile.DateLastAccessed) >= nDays Then
oFile.Delete
End If
Next
Next
위 코드에서, boid 부분만 수정하면 됩니다.
여기에 코드를 더 추가한다면.. 특정 확장자만 지운다던가,.. 여러가지 파일속성에 따라서 삭제하는 루틴을 추가할수도 있겠죠.. 파일속성은 MSDN을 참조하시면 됩니다.
재귀호출을 통한 최하위 디렉토리까지도 가능하고..
가장 요긴하게 쓰일부분이 IIS 로그파일 관리인듯 싶습니다.
2006/05/13
IIS6 의 HTTP API의 오류 로깅
Microsoft KB 문서: http://support.microsoft.com/?id=820729
이 문서에서는 HTTP(하이퍼텍스트 전송 프로토콜) API의 오류 로깅 기능을 설명합니다.
HTTP 기반 응용 프로그램에서 발생하는 오류 중 일부는 처리를 위해 응용 프로그램으로 다시 전달되는 대신 HTTP API에서 자동으로 처리됩니다.
* 위 문서는 IIS6 으로 오면서, 이벤트로그에 기록하지 않는 별도의 오류를 C:\WINDOWS\system32\LogFiles\HTTPERR 에 기록하게 됩니다.
로깅되는 오류내용에 관련된 자세한 설명이 되어 있는 문서 입니다.오류로그 분석에 많은 도움이 될것으로 생각됩니다.^^ 웹서버 관리자에게는 정기적으로 오류 로그분석을 통해서 웹서버 상태를 관리하는데 도움이 될듯 합니다.
12-TechNetB_masthead_ltr.gif
IIS 6 웹사이트 식별자가 순차적으로 생성되도록 설정
IIS 의 버젼이 6으로 업데이트 되면서,. IIS 관리자에서 웹사이트를 생성하면서 외관적으로 한가지 달라진 점이 있습니다..
바로,. 웹사이트 식별자(인스턴스ID) 입니다. 기존 IIS5 에서는 신규로 생성하는 웹사이트에 대해서 기존번호에 순차적으로 증가된 번호를 이용합니다.
그러나,. IIS 6에서는 랜덤하게 생성을 하게 됩니다. 다음과 같이 형식입니다.
W3SVC/1 Default Web Site
W3SVC/1036328378 WebSite1
W3SVC/1816184000 WebSite2
W3SVC/1867813904 WebSite3
W3SVC/568530179 WebSite4
W3SVC/719499532 WebSite5
W3SVC/669732006 WebSite6
일부 MVP 전문가에 의하면,, 대략 다음과 같은 룰에 의해서 ID가 정해진다고 합니다..
Description | Instance ID | Comment |
A | 66 | ASCII character for B not A |
B | 67 | ASCII character for C not B |
AA | 6631 | No idea why 31 appears |
AB | 6632 | No idea why 32 appears |
AAA | 669696 | No idea why 96 appears |
물론,.. 이런 인스턴스ID를 유용하게 활용할곳은 그리 많지 않습니다.. 대부분의 관리자에게는 어떻게 생성되던 크게 불편함이 없을 것입니다. 다만, 생성된 웹사이트를 어떤 순서대로 생성을 했는지 알고 싶을때에는 유용할 것입니다.
그래도, 순차적은 ID 생성을 하고 싶다면 레지스트리에 키를 추가하면 됩니다.
키위치 : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetMgr\Parameters
12-IncrementalSiteIDCreation.png
2006/05/12
Microsoft SQL Server 2005용 기능 팩 - 2005년 11월
http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=d09c1d60-a13c-4479-9b91-9e8b9d835cdc
뭐, 기능팩이란 이름에, 날짜를 붙인거 보면,.. 지속적으로 패키지를 업데이트 해줄 모양입니다..
툴중에,, 특히 설치가 필요한 것은,. Microsoft SQL Server 네이티브 클라이언트 입니다
Native Client 는 DB서버를 SQL Server 2005 를 이용하는 웹서버는 필히 설치를 해주며, 응용프로그램에서의 드라이버를 Native Client를 이용하므로써 SQL 2005에서 제공하는 기술 및 성능을 이용할수가 있습니다.. ^^
IIS 7 관리 닷넷 Microsoft.Web.Administration 클래스
기존에는 ADSI 또는 WMI를 통해서만 가능했죠...
다음과 같이,,. Vbscript 에서 말이죠..
Set objIIS = GetObject _
("IIS://" & strComputer & "/W3SVC/AppPools/MSSharePointAppPool") objIIS.Recycle
또는,
strComputer = "."
Set objWMIService = GetObject _
("winmgmts:{authenticationLevel=pktPrivacy}\\" _
& strComputer & "\root\microsoftiisv2") Set colItems = objWMIService.ExecQuery _
("Select * From IIsApplicationPool Where Name = " & _
"'W3SVC/AppPools/MSSharePointAppPool'") For Each objItem in colItems
objItem.Recycle
Next
물론,. Microsoft.Web.Administration 클래스의 내부 아키텍쳐가 어떻게 되어 있는지는 아직은 알수 없으나,. WMI 리포지토리를 이용하는지도 모르겠네요..
글이 작성되는 현재시점 기준,. Vista 베타를 통해서 테스트를 해볼수 있다고 합니다.
어셈블리는 Microsoft.Web.Administration.dll 이며, 파일 위치는 %WinDir%\System32\InetSrv 에 있습니다.
닷넷을 하실줄 안다면,. VS에서 참조하여 다음과 같은 작업이 가능합니다. 다음 코드는 C# 기준 입니다.
웹사이트 생성
iisManager.Sites.Add("NewSite", "http", "*:8080:", "d:\\MySite");
iisManager.Update();
응용프로그램 디렉토리 생성
iisManager.Sites["NewSite"].Applications.Add("/Sales", "d:\\MyApp");
iisManager.Update();
가상디렉토리 생성
Application app = iisManager.Sites["NewSite"].Applications["/Sales"];
app.VirtualDirectories.Add("/VDir", "d:\\MyVDir");
iisManager.Update();
실행 상태 및 관리
iisManager.Sites["NewSite"].Stop();
응용프로그램풀 재생
iisManager.ApplicationPools["DefaultAppPool"].Recycle();
실행요청 목록
foreach(WorkerProcess w3wp in iisManager.WorkerProcesses) {
Console.WriteLine("W3WP ({0})", w3wp.ProcessId);
foreach (Request request in w3wp.GetRequests(0)) {
Console.WriteLine("{0} - {1},{2},{3}",
request.Url,
request.ClientIPAddr,
request.TimeElapsed,
request.TimeInState);
}
}
아뭏튼,, Windows 버젼이 올라갈수록 또는 제품이 버젼업 될수록 점점더 닷넷과 통합되어 나오고 있습니다. 최근에 발표된 SQL Server 2005의 경우 관리툴인 매니지먼트스튜디오도 닷넷2로 제작되고 있으니깐요.. 물론 핵심 코어는 네이티브 코드 이겠지만,, ^^
닷넷을 할줄알면 앞으로 관리가 점점 더,. 훨씬 쉬워지겠죠.^^
11-iis7-web.admin.png
Encrypting File System (EFS) 알고리즘 변경
XP 이후부터는, 레지스트리 수정을 통해서 알고리즘을 3DES 로 변경이 가능합니다.
위치 : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS
Value name: AlgorithmID
Data type: REG_DWORD
Radix: Hexadecimal
3DES: 0x6603
다른 알고리즘 헥사값., DESX: 0x6604 AES_256: 0x6610
XP SP1 이후부터는 DESX, 3DES, AES 알고리즘을 사용하여 암호화 및 복호화가 가능합니다.
각 암호화 기술에 대한것은,,. 다음 문서나, 다른 문서를 참고해 보세요..^^
http://cnscenter.future.co.kr/std-algorithm/block.html
11-TechNetB_masthead_ltr.gif
2006/05/09
TCP/IP 추적 읽기에 대한 기본 사항
다음 Microsoft KB를 참고해 보세요.
이 문서에서는 TCP/IP 추적을 읽는 데 필요한 기본 개념과 팁 몇 가지를 다룹니다.
TCP/IP 추적 읽기에 대한 기본 사항
http://support.microsoft.com/kb/169292/
Odbcping.exe를 사용하여 SQL Server에 대한 ODBC 연결을 확인
다음 문서는 Microsoft KB 입니다.
Odbcping.exe를 사용하여 SQL Server에 대한 ODBC 연결을 확인하는 방법
http://support.microsoft.com/kb/138541/ko
굳이 위 명령어를 이용하지 않더라도, udl 파일을 통해서도 충분히 테스트는 가능하죠..
udl 확장자를 가진 빈 파일을 만들면 ODBC 뿐만 아니라,.
OLE-DB등 여러 드라이버에 대한 연결 문자열을 만들수 있습니다.
09-odbc-conf.PNG
Windows의 64비트 버전에서 적절한 페이징 파일 크기
다음 Microsoft KB 문서를 참고해 보세요. 잘 설명되어 있습니다.
Windows Server 2003 또는 Windows XP의 64비트 버전에서 적절한 페이징 파일 크기를 결정하는 방법
http://support.microsoft.com/kb/889654/ko
가장 많이 본 글
-
구글... 도대체 뭐하는 짓인지......?? 뭐 내용상으로는,. 누군가 Spam 이라며 신고했다는 건데, 스팸 사이트도 아니고 그럴 내용도 없다. 누군가 악의적으로 신고한것인지 ? 아니면 구글 시스템 오류인건지? 특이한건,. 같은 구글 계정으로 생성...
-
업데이트 적용 환경 : Windows Server 2022 Std, 21H2 설치 실패: 0x8024200B 오류 때문에 Windows에서 다음 업데이트를 설치하지 못했습니다. 2024-01 x64 기반 시스템용 Microsoft server oper...
-
PostgreSQL 에서 처음 dblink 를 사용하는 경우에는 dblink 라이브러리를 확장모듈에 로딩을 해놔야 함. 안그러면 알수 없는 함수라는 오류가 표시됨. -- dblink 로딩 (최초1회 > PgAdmin 에서 해당 DB의 확장모듈에...