2007년 12월 10일 월요일

NIC를 사용/사용안함 설정 #1

2007.12.10.nic

보안을 강화한다는 명목으로 PC 또는 서버의 랜카드(NIC)를 제어하는 아이디어 만큼 멍청한 짓은 없다고 생각합니다.  (오늘날과 같이 분산시스템 환경에서 이런 삽질은 운영의 복잡성만 높힐 뿐입니다.)

하지만, 이상과 현실은 항상 충돌합니다. 의외로 이런 아이디어 때문에 일정 시간마다 NIC를 "사용" 또는  "사용 안함" 으로 설정해야 하는 일은 IT  관리부서의 몫입니다.  (이런 아이디어를 생각하는 담당자들은 구체적인 작업을 구현하지 않는 패턴이 있습니다)

 

아무튼 수동으로 NIC를 사용/사용 안 함으로 설정하는 노가다를 할 필요는 없습니다.  WMI와 VBScript로 쉽게 구현할 수 있으니까요.

다음의 VBScript 예제를 봐주세요.

 

' Display NIC Name and Disable
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery _
    ("SELECT * FROM Win32_NetworkAdapter Where Name Like 'Intel%' ")
For Each objItem in colItems
    Wscript.Echo "Name: " & objItem.Name
    objItem.Disable()
Next

 

Win32_NetworkAdapter 에서 Enable() 과 Disable() 메서드를 지원합니다. 그러므로, 원하는 NIC를 WQL로 지정해서 (예제에서는 Intel 랜카드) Disable 시키면 끝입니다.

정말, 간단하지 않습니까?  그런데 문제가 있습니다. 

2007.12.10.disable.method.win32_networkadapter.class

Windows Vista / Windows Server 2008만 지원된다는 것이죠.  우리가 주로 사용하는 서버는 Windows 2000 또는 Windows Server 2003 인데요.....-.-;;

여기에 대한 꽁수는 다음 편에 다루도록 하겠습니다 :-)

 

관련  URL을 정리합니다.

댓글 없음:

댓글 쓰기