<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title><![CDATA[RSS: 서버주무르기|팁앤테크]]></title>
    <link>http://www.wssplex.net/TipnTech.aspx</link>
    <image>
      <url>http://www.wssplex.net/images/serverinfo.gif</url>
      <title><![CDATA[서버주무르기]]></title>
      <link>http://www.wssplex.net/</link>
    </image>
    <language>ko-KO</language>
    <description><![CDATA[Windows Server, SQL Server, Exchange, IIS, MRTG, 서버관리, 서버운영 팁앤테크]]></description>
    <copyright>Copyleft(c) Serverinfo.pe.kr. All Rights Not Reserved.</copyright>
    <lastBuildDate>Fri, 14 Nov 2008 05:27:01 GMT</lastBuildDate>
    <pubDate>Fri, 14 Nov 2008 05:27:01 GMT</pubDate>
    <item>
      <title><![CDATA[ASP.NET, Sql Injection 필터 예제 코드]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=500</link>
      <description><![CDATA[<table><tr><td><a target=_blank href="http://forums.asp.net/t/1254125.aspx"><b><font color=#006bd4>http://forums.asp.net/t/1254125.aspx</font></b></a>&nbsp;포스트를 참고해 보면 좋을것 같음.  닷넷 프레임워크 2.0 이상에서는, HttpModule 을 등록하여 사용하는 방법에 대한 것이고, 닷넷 1.1 기반에서는 응용프로그램 시작 지점에 체크 루틴을 넣는 방법 입니다.  
<div class=code>public static string[] blackList =  &nbsp;{"--",";--",";","/*","*/","@@","@", &nbsp;&nbsp;&nbsp; "char","nchar","varchar","nvarchar", &nbsp;&nbsp;&nbsp; "alter","begin","cast","create","cursor","declare","delete","drop", &nbsp;&nbsp;&nbsp; "end","exec","execute", &nbsp;&nbsp;&nbsp; "fetch","insert","kill","open", &nbsp;&nbsp;&nbsp; "select", "sys","sysobjects","syscolumns", &nbsp;&nbsp;&nbsp; "table","update"};</div> Sql Injection 이 가능한 문자열을 배열로 지정을 해놓고, 웹서버에 요청되는 내용을 위 내용으로 필터링을 하는 것입니다.  특히 요즘에는,. 쿼리문을 바이너리 문자열로 인코딩하여 실제 SQL Server 에서는 실행시 정상적인 쿼리문으로 실행되도록 Cast 형변환,. 즉 Declare 와 Cast 를 많이 쓰는것 같습니다.  사이트의 개별 코드와는 상관없이 사이트 전역에 영향을 주는 방법이긴 합니다만, Form 값으로 들어오는 부분도 필터링을 하므로,. 보통 게시판을 글 내용에 있는 것도 필터가 될수도 있겠네요.  요즘,. Sql Injection 이 극성인데,..  조금이나마 도움이 될수도 있을것 같습니다.^^ </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=500" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=500</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>Asp.NET</category>
      <category>Sql Injection</category>
      <author>wssplex</author>
      <pubDate>Fri, 07 Nov 2008 05:18:26 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[C# TaskScheduler, 작업 스케쥴러]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=499</link>
      <description><![CDATA[<table><tr><td><div class=code><font color=#007b1d>//Interop.TaskScheduler 는  //Vista 또는 Windows Server 2008 의 예약작업 COM 개체를 참조해야 함. </font><font color=#007b1d>//TaskScheduler 1.1 Type Library, taskschd.dll</font>  TaskScheduler a = new TaskScheduler(); a.Connect(null, null, null, null);  StreamReader sr = new StreamReader("c:\\테스트작업.xml"); string aa = sr.ReadToEnd(); sr.Close();  ITaskDefinition task = a.NewTask(0); task.XmlText = aa;  ITaskFolder root = a.GetFolder("\\");  bool folderExist = false; foreach(ITaskFolder f in root.GetFolders(0)) { &nbsp;if (f.Name == "Wssplex") &nbsp;{ &nbsp;&nbsp;folderExist = true; &nbsp;} &nbsp;} if (!folderExist) { &nbsp;root.CreateFolder("Wssplex", null); &nbsp;root = a.GetFolder(<a href="file://wssplex/" target=_blank>\\Wssplex</a>); }  IRegisteredTask regTask = root.RegisterTaskDefinition("작업이름", task, (int)_TASK_CREATION.TASK_CREATE_OR_UPDATE, null, null, _TASK_LOGON_TYPE.TASK_LOGON_S4U, null);</div> 위의 예제 코드는 Wssplex 라는 폴더에, 테스트 작업 이라는 이름의 작업을 등록하는 것이며, 작업 설정 사항은 테스트작업.xml 에 있는 내용을 등록하는 것.  물론,. 예제에서는 xml 파일을 읽어서 넣었는데, task.XmlText&nbsp; 에 그냥&nbsp; xml 내용을 하드 코딩을 해줘도 상관없음.  xml 의 트리구조는 작업 스케쥴러&nbsp;UI 에서 특정 작업을 내보내기 하거나, C:\Windows\System32\Tasks 폴더의 작업 파일이 xml 이므로 텍스트 편집기에서 열어 보면 구조를 알수 있음.  또는, C:\&gt;schtasks /query /tn&nbsp;작업이름 /xml 처럼 하면 해당 작업에 대한 xml 을 볼수가 있음.  다음과 같이 각 항목을 코드상으로 구현도 가능  
<div class=code><font color=#007b1d>//생성</font> ITaskDefinition task = a.NewTask(0); task.RegistrationInfo.Author = "<a href="file://administrator/" target=_blank>Administrator</a>"; task.RegistrationInfo.Description = "테스트";&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;   <font color=#007b1d>//Principals</font> task.Principal.UserId = <a href="file://administrator/" target=_blank>Administrator</a>"; ; task.Principal.LogonType = _TASK_LOGON_TYPE.TASK_LOGON_S4U;  <font color=#007b1d>//트리거</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  IEventTrigger trigger = (IEventTrigger)task.Triggers.Create(_TASK_TRIGGER_TYPE2.TASK_TRIGGER_EVENT); trigger.Enabled = true; trigger.Subscription = "&lt;QueryList&gt;&lt;Query Id=\"0\" Path=\"System\"&gt;&lt;Select Path=\"System\"&gt;*[System[Provider[@Name='aaaaa'] and (Level=1 ) and (EventID=5847)]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;";  <font color=#007b1d>//Actions</font> IExecAction action = (IExecAction)task.Actions.Create(_TASK_ACTION_TYPE.TASK_ACTION_EXEC); action.Path = "C:\\Windows\\notepad.exe"; action.Arguments = "aaa";  <font color=#007b1d>//작업등록</font> ITaskFolder root = a.GetFolder("\\");  IRegisteredTask regTask = root.RegisterTaskDefinition("sss", task, (int)_TASK_CREATION.TASK_CREATE_OR_UPDATE, null, null, _TASK_LOGON_TYPE.TASK_LOGON_INTERACTIVE_TOKEN, null);</div> 위의 예제는, 특정 이벤트 로그에 대한 이벤트 트리거를 등록하는 것.  그외, 상세한 내용은 <a href="http://msdn.microsoft.com/en-us/library/aa383607(VS.85).aspx" target=_blank><font color=#006bd4>http://msdn.microsoft.com/en-us/library/aa383607(VS.85).aspx</font></a>&nbsp;참조하면 되며, 그냥 명령행으로는 schtasks.exe 에서 대부분의 작업이 가능 </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=499" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=499</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>TaskScheduler</category>
      <category>작업 스케쥴러</category>
      <category>schtasks</category>
      <author>wssplex</author>
      <pubDate>Thu, 23 Oct 2008 02:14:36 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[C# NetFwTypeLib, 고급 보안이 설정된 Windows 방화벽]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=498</link>
      <description><![CDATA[<table><tr><td><div class=code><font color=#007b1d>//Interop.NetFwTypeLib 는 FwPolicy2 가 구현된&nbsp;COM개체를 참조하고 있어야 함 //--&gt; Vista &amp; Windows Server 2008</font>  Type trule = Type.GetTypeFromProgID("<font color=#b31c00>HNetCfg.FWRule</font>");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Type tpol = Type.GetTypeFromProgID("<font color=#b31c00>HNetCfg.FwPolicy2</font>");&nbsp;&nbsp;&nbsp;  INetFwRule newRule; INetFwPolicy2 Policy2 = (INetFwPolicy2)Activator.CreateInstance(tpol);  <font color=#007b1d>//v2.0|Action=Allow|Active=TRUE|Dir=Out|Protocol=6|RPort=8530|Name=윈도우 업데이트 서버(TCP-Out)|Edge=FALSE|</font>  newRule = (INetFwRule)Activator.CreateInstance(trule); newRule.Name = "윈도우 업데이트 서버(TCP-Out)"; newRule.Protocol = 6; newRule.RemotePorts = "8530"; newRule.Enabled = true; newRule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_OUT; newRule.Action = NET_FW_ACTION_.NET_FW_ACTION_ALLOW; Policy2.Rules.Add(newRule);</div> 그외, 방법으로는 netsh 명령행을 이용하거나 Vbscript 를 이용  
<div class=code>netsh advfirewall firewall&gt;add rule name="윈도우 업데이트 서버(TCP-Out)" dir=out action=allow enable=yes remoteport=8530 protocol=tcp</div>  참고로,, 방화벽의 Outbound&nbsp;차단에 대한 이해에 도움이 될만한,..  테크넷 매거진 내용  보안: Windows Vista 방화벽 관리 <a href="http://technet.microsoft.com/ko-kr/magazine/cc510323.aspx" target=_blank><font color=#006bd4><a href="http://technet.microsoft.com/ko-kr/magazine/cc510323.aspx%3C/a%3E&nbsp;(캐시된문서" target=_blank>http://technet.microsoft.com/ko-kr/magazine/cc510323.aspx</font></a><font color=#595959>&nbsp;(</font><a href="http://cc.msnscache.com/cache.aspx?q=fwpolicy2&amp;d=74236107565257&amp;mkt=ko-KR&amp;setlang=ko-KR&amp;w=b958aecd,287fb9d0" target=_blank><font color=#595959>캐시된문서</font></a><font color=#595959>) </font> 의 내용중 마지막 단락의 "아웃바운드 필터링으로 가능한 보안 수준" 은 한번쯤 생각해 볼만한 부분인듯..^^ </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=498" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=498</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>Windows Advanced Firewall</category>
      <category>방화벽</category>
      <category>HNetCfg</category>
      <category>NetFwTypeLib</category>
      <category>FwPolicy2</category>
      <author>wssplex</author>
      <pubDate>Wed, 22 Oct 2008 01:58:06 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[openfiler iSCSI Storage - 3.Microsoft iSCSI Initiator]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=497</link>
      <description><![CDATA[<table><tr><td>Windows 에서 iSCSI 를 사용하기 위한 방법은 하드웨어 iSCSI 어댑터에서 지원하는 소프트웨나, Microsoft 에서 소소프트웨적인 방법으로 구현해 놓은&nbsp; <b><font color=#b31c00>Microsoft iSCSI Initiator</font></b> 를 이용하는 방법이 있습니다.  물론,. iSCSI 기술 자체가 TCP/IP 를 이용하므로, 어느정도 소프트웨적인 기술에 기반하기 때문에, 소프트웨적 으로만 구현이 된 Microsoft iSCSI Initiator 는 하드웨어 어댑터에 비해서 성능이 떨어지지만 보통의 환경에서는 크게 무리가 없어 보입니다. Initiator 보다는,. 이더넷의 성능과 회선 속도에 영향을 받이 받을것 같고 그래서 FC 이더넷이 추천 되기도 합니다.  Microsoft iSCSI Initiator 는 Vista 와 Windows Server 2008 에서는 iSCSI Initiator 가 기본으로 내장되어 있으나, 그외 하위 버젼에서는 다운로드 해서 설치 필요가 필요합니다.  현재 최신 버젼으로는, Microsoft iSCSI Software Initiator Version 2.07 입니다.  <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=12CB3C1A-15D6-4585-B385-BEFD1319F825&amp;displaylang=en" target=_blank><font color=#006bd4>http://www.microsoft.com/downloads/details.aspx?FamilyID=12CB3C1A-15D6-4585-B385-BEFD1319F825&amp;displaylang=en</font></a>  계속해서 버젼이 업데이트 되는것 같으므로, 항상 Microsoft Download 에서 검색해서 다운로드 하는것이 좋습니다.  
<div><img style="BORDER-RIGHT: #8c8c8c 1px solid; BORDER-TOP: #8c8c8c 1px solid; BORDER-LEFT: #8c8c8c 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid" src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Storage.gif" border=0 name=target_resize_image[] /></div> &lt;그림. Microsoft TechNet&gt;  Windows 에서 Microsoft iSCSI Initiator 를 이용해서 Sotrage 에 접근하는 전체적인 구성 입니다. 중간에 IP Switch 가 있지만 일반적인 Hub 입니다. 또는 Direct 연결도 상관이 없고요..^^   
<div><img style="BORDER-RIGHT: #8c8c8c 1px solid; BORDER-TOP: #8c8c8c 1px solid; BORDER-LEFT: #8c8c8c 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid" src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Cluster-Storage.gif" border=0 name=target_resize_image[] /></div> &lt;그림. Microsoft TechNet&gt;  SAN 특성상 공유 스토리지로의 사용이 가능합니다. 그래서 iSCSI 역시 Windows 에서는 MBR 형식의 디스크로 인식이 되므로 Windows Cluster 구성에 좋은 구성 방법 입니다. 꼭 Cluster 가 아니더라도 NLB 구성으로된 웹서버의 홈디렉토리로 이용에도 좋은 구성일것 입니다.   Microsoft iSCSI Initiator 에서의 설정은 특별히 복잡하지 않습니다.   다만,. 각 세부 설정의 용어와 그 기술에 대한 이해가 있으면 더 좋을것 같습니다. 제어판이나, 관리도구에서,,. 아무튼,. Microsoft iSCSI Initiator 를 찾습니다.  Discovery 에서,... Target Potals 추가,. iSCSI Target Server 로 구성되었던 openfiler 의 10.0.0.45 IP 주소를 추가해 줍니다. Port 및 Advanced 설정값등은 기본으로 해도 대부분 잘 설정 됩니다. (*iSCSI Network ACL 에 설정이 안되어 있으면 접근 불가)   Advanced Settings 에서 굳이 추가로 설정을 해준다면,.&nbsp; Local adaper 에:&nbsp; Microsoft iSCSI Initiator, Source IP 에는, 10.0.0.3 및 인증 정도 입니다.  <img src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Taeget-Portal-1.gif" />  Discovery 에서 Target 를 추가 했다면,. Targets 에서 "Refresh" 버튼을 클릭해서 openfiler 에서 호스트하는 LUN 파티션이 목록이 노출 되는지 확인 합니다. 이 목록에 나타나면 이제 iSCSI 디스크를 Windows 에서 사용할수 있다는 뜻 입니다.  <img src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Targets-2.gif" />  위 화면에서,&nbsp; "Log On..." 을 클릭해서 "Automatically restore this connection when the system boots" 를 체크해 줍니다. 이것은, Windows 가 부팅이 되더라도 iSCSI Initiator 서비스에서 부팅후 즉시 파티션에 접근이 가능하도록, 해당 Target 자동으로 연결을 한다는 내용 입니다.  <img src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Logon-Target-3.gif" />  이와 같이, iSCSI Initiator 설정이 완료되면,. 디스크 관리를 가면 새로운 디스크 추가 팝업이 뜨거나 추가가 되어 있을것 입니다.  <img src="/images/TipnTech/Storage/Microsoft-iSCSI-Initiator-Disk-Manager-4.gif" />  추가된 iSCSI 디스크는 이제 일반적인 로컬 디스크의 사용과 동일하게 사용이 가능한 상태가 되었습니다. 이렇게 해서 openfiler 를 통해서 iSCSI 이용하기 위한 구성 방법을 알아 봤습니다.   이를 이용해서, 앞서 얘기했던 Cluster 나 여러 서버에서의 Shared Storage 등의 구성과 운영은 한층 편리해 졌고 이를 이용한 다양한 형태의 서버/네트워크의 추가적인 구성이 가능할 것 같습니다.^^ </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=497" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=497</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>iSCSI</category>
      <category>SAN</category>
      <category>NAS</category>
      <category>DAS</category>
      <category>Storage</category>
      <category>Microsoft iSCSI Initiator</category>
      <author>wssplex</author>
      <pubDate>Wed, 15 Oct 2008 04:55:34 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[openfiler iSCSI Storage - 2.Configuration]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=496</link>
      <description><![CDATA[<table><tr><td>openfiler 를 설치완료 부팅이 완료되면 텀의 로그인이 아닌 웹 관리 콘솔에 접속을 합니다. 웹관리 콘솔 접속 주소는 부팅이 완료된후 첫 로그인 화면에 표시가 됩니다.  <b>Web administration GUI : </b><a href="https://10.0.0.45:446/" target=_blank><b><font color=#b31c00>https://10.0.0.45:446/</font></b></a>  이제 실제 중요한 iSCSI 타켓 설정 모두는 위 웹페이지에 접속하여 진행하게 됩니다. 웹관리 콘솔의 기본 접속 로그인 정보는 매뉴얼에 나온 것처럼 <font color=#006bd4>Username: openfiler Password: password</font>&nbsp; 입니다.  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-1.gif" />  로그인을 하고 나면,. 첫 Status 화면. iSCSI 와 관련된 사항외 나머지는 일반적인 Linux 설정 정보와 같습니다. 물론 iSCSI 설정도 텀에서 가능하겠지만,.. Web 에서 하는게 좋겠죠.^^  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-2.gif" />  <b> 1. iSCSI Target Server 서비스 활성화</b>  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-3.gif" />  Services 메뉴에서, iSCSI Target Server 서비스를 Enable 설정을 합니다. 텀상에서는 ietd 이름으로 작동하고요.  <font color=#595959>[root@iscsi ~]# service iscsi-target status ietd (pid 3212) is running...</font>  그 다음으로는,. 물리적인 볼륨생성 -&gt; 볼륨그룹 -&gt; iSCSI 논리 볼륨 생성 -&gt; Target 설정 순 입니다.  <b> 2. Volumes - Partition</b>  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-4.gif" />  다음으로,. 서버에 장착된 여유 파티션이나 별도의 디스크를 사용하기 위해서는 일단 물리적인 볼륨을 생성&nbsp; 합니다.  생성된 Volumes 그룹이 없으므로, 하단 경고 이미지가 있는 부분의 "Create a new volume group" 의 "create new physical volumes" 를 클릭하여 볼륨 생성.  위 이미지의, 현재 장착된 2개의 Disk 중, iscsi 파티션 용도로 사용할 디스크에 대해서,&nbsp; Edit Disk 에서 "/dev/sdb" 클릭, 다음 페이지에서, Create a partition in /dev/sdb 에서 파티션을 생성 합니다.  Mode: Primary Partition Type: Physical volume Starting Cylinder : 1 Ending Cylinder : 130  /dev/sdb 디스크 전체 용량에 대해서 새로운 파티션 생성 하였습니다. 물론 테스트 구성이므로,,.. 물론 필요한 만큼의 일부만 사용해도 상관없으며,. /dev/sda 의 남은 파티션을 사용해도 상관없습니다.  <b> 3. Volumes - Group</b>  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-6.gif" />  다음으로 볼륨 그룹을 생성 합니다. 오른쪽 사이드 Volumes section 메뉴의 Manage Volumes 에서&nbsp; 새로운 그룹을 생성을 클릭하고 설정화면에서&nbsp; volgrp(예제) 라는 그룹 이름을 사용하고, 앞서 생성된 파티션을 그룹 멤버로 체크 합니다.  이제 volgrp 라는 그룹 생성 되었습니다. 다음으로는 실제 iSCSI 타입 파일시스템을 갖는 논리적인 볼륨을 생성하는 과정 입니다.  <b> 4. Volumes - Logical Volume</b>  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-7.gif" />  앞서 생성된 volgrp 볼륨 그룹에 논리적 볼륨을 생성 합니다.  오른쪽 사이드 Volumes Section 메뉴의, "Add Volume" 메뉴에서, iSCSI 라는 파일시스템 타입의 논리적 볼륨을 앞서 생성된 물리적 파티션에 할당 합니다. 물론 여기서도 모두 할당하거나 일부만 할당할수 있습니다.  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-8.gif" />  완료후, 오른쪽 사이드 메뉴의 Manage Volumes 에서 볼륨 목록에 다음과 같이 앞서 생성했던, iSCSI 파일 시스템의 볼륨 목록이 나타 납니다. 이제 iSCSI 클라이언트에서 접속이 가능하도록 Target 설정이 필요 합니다.   <b>5. Volumes - iSCSI Targets</b>  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-9.gif" />  iSCSI Targets 에서,. Add new iSCSI Target 에서 IQN 을 추가. (*openfiler 버젼별로 화면 UI 가 조금씩 다릅니다.) 자동생성된: iqn.2006-01.com.openfiler:tsn.86ec439e42e9 그대로 추가하면 됩니다.  추가를 하고 나면,.&nbsp; "Settings for target: iqn.2006-01.com.openfiler:tsn.86ec439e42e9 " 에 대한 여러가지 설정이 나오는데,. 그냥 기본값으로 하면 되며 별도의 추가적인 설정은 필요 없습니다.  그 다음으로, Network ACL 에서는 iSCSI Target 접근을 제한하거나, 허용설정을 해줄수 있는데,. 이 부분은 꼭 설정을 해줘야 하도록 되어 있습니다. 해당 설정페이지의 설명글에도 나와 있지만,.Network 설정에서 IP 목록을 등록해 주고 그 IP 에 대해서 허용설정을 해주면 됩니다.  <img src="/images/TipnTech/Storage/Openfiler-WebAdmin-10.gif" />  그외, IP 제한과 더불어서 추가적인 인증이 필요한 경우 iSCSI 인증 방법중 하나인, CHAP Authentication 설정도 가능합니다. (특별한 경우가 아니라면, 그냥 IP 제한 정도로도 무리는 없을듯...);  마지막으로, LUN Mapping 에 LUN 추가하면 iSCSI Target 설정은 완료 됩니다. 그외,. 몇몇 iSCSI 관련 설정도 있으나 일반적인 경우엔 필요 없습니다.  <b> 6. Restart iSCSI Sevice</b>  앞서 설정한 볼륨에 관련된 내용이 적용 가능하도록 서비스를 재시작해 줍니다. Manage Servie 에서 iSCSI target server 서비스를 Disable 했다가 다시 Enable 해줍니다. 또는 다음과 같이 텀에서 재시작을 해주어도 상관없습니다.  <font color=#595959>[root@iscsi ~]# service iscsi-target restart Stopping iSCSI tagret service: [&nbsp; OK&nbsp; ] Starting iSCSI tagret service: [&nbsp; OK&nbsp; ]</font>   이제는,. Microsoft iSCSI Initiator 에서 Target 접속이 잘되는지와, LUN 을 잘 찾는지만 확인하면 됩니다. </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=496" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=496</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>iSCSI</category>
      <category>SAN</category>
      <category>NAS</category>
      <category>DAS</category>
      <category>Storage</category>
      <author>wssplex</author>
      <pubDate>Wed, 15 Oct 2008 04:52:22 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[openfiler iSCSI Storage - 1.Install]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=495</link>
      <description><![CDATA[<table><tr><td>Storage 기술에는 여러가지가 있죠. DAS, NAS, SAN 등등....;;  그런데,. 이런 장비들은 대체적으로 매우 고가 입니다. 일반적인 서버 환경에서는 비용문제로 구축하기가 어렵습니다. 특히 SAN 은..&nbsp; 그건 그렇다 치고,. 게중에 그래도 FC SAN 방식이 Shared Sotrage 환경을 구축하기에는 가장 좋은 대안 인것 같습니다.  하지만,. 이러한 SAN 방식은 별도의 어댑터를 갖춘 스토리지와 SAN 스위치가 있어야 합니다. 그래서 이러한 제한에서 벗어날뿐만 아니라 최근의 TCP/IP 네트워크를 이용한 방식,. IP SAN이 점차 부상하고 있는데요. iSCSI 입니다.  SAN :&nbsp;<a href="http://en.wikipedia.org/wiki/Storage_Area_Network" target=_blank><font color=#006bd4>http://en.wikipedia.org/wiki/Storage_Area_Network</font></a> iSCSI: <a title=http://en.wikipedia.org/wiki/Iscsi href="http://en.wikipedia.org/wiki/Iscsi" target=_blank><font color=#006bd4>http://en.wikipedia.org/wiki/Iscsi</font></a>  물론 iSCSI 도 성능상 제약점이 있습니다만,.   그러한 제한을 극복할 만큼의 잇점이 있는것이 사실이고 최근에는 iSCSI 환경의 스토리지 구축이 점점 늘어나고 있습니다. (iSCSI Target 구축을 위한 어댑터 단품으로는 약 1백만원선 인듯....)&nbsp; 각설하고.. iSCSI 에 대해서 더 궁금한 사항은 세계적으로 잘 알려진 스토리지 업체의 기술문서를 참고하시면 매우 자세하게 설명되어 있습니다.  이와 같이,. 하드웨어적인 구성이 아닌 소프트웨어적으로 iSCSI Target 구성이 가능하도록 Linux 기반의 Appliance Sofrware 가 나와 있습니다.&nbsp;<b><font color=#b31c00>openfiler</font></b>&nbsp;이며,&nbsp;Linux 기반이라서 GPL 라이센스 이고,. 무료 입니다. (매우 크리티컬한 환경에서 사용하는 것은 자제해야 겠지요.^^ 100% 성능과 안정성을 보장할수 없으므로..)  그러고 보면, 오픈소스 계열에서는,.. 상용이나, 하드웨어서 구현이 되는걸 소프트웨어 방식으로 구현해 놓은 프로젝트가 참 많죠.^^ iSCSI&nbsp;&nbsp; 솔루션 중에 몇개 있지만 게중에 그래도 개인적으로 가장 쓸만한게 openfiler 인것 같습니다. 오픈소스 기반 Storage 솔루션 부분에서는 잘 알려져 있는것 같기도 하고요.  다운로드: <a title=http://www.openfiler.com/products href="http://www.openfiler.com/products" target=_blank><font color=#006bd4><b>http://www.openfiler.com/products</b></font></a>  그외,. 솔루션 <a href="http://www.freenas.org/" target=_blank><font color=#006bd4>http://www.freenas.org/</font></a> <a href="http://www.open-iscsi.org/" target=_blank><font color=#006bd4>http://www.open-iscsi.org/</font></a>  그럼,. 간단한 설치 그리고 설정, Windows 에서의 이용방법등에 대해서 간략하게 스샷을 통해서 보면,. (각 부분에서 필요한 기술적인 설명은 제외.... 필요하면 검색하여 직접 찾아보는 노력을.....)   <b>1. Basic Install</b>   다운 받은 openfiler 를 넣고 설치를 시작 합니다.   Linux 기반이라서 기존 Linux 설치 방법과 거의 같고, 설치 과정에서 특별히 설정해 줄 부분은 그리 많치도, 어렵지도 않습니다. 모두 GUI 설치 화면이므로, Windows 유저들도 크게 거부감 없이 설치가 가능할것 같습니다.  <img src="/images/TipnTech/Storage/Openfiler-Setup-1.gif" />  <b> 2. Setup UI</b>  다음 화면에서 부터 본격적인 설치를 시작 합니다.  <img src="/images/TipnTech/Storage/Openfiler-Setup-2.gif" />  언어 선택 부분에서는 키보드-한국어가 없으므로 그냥,. U.S. English 선택을 하고 (한글을 쓸 이유가 없음....), 그외 뭐 특별하게 해줄건 없고, 그냥 "다음" 입니다.  <b> 3. Disk Partition  </b><img src="/images/TipnTech/Storage/Openfiler-Disk-Setup-3.gif" />  파티션 설정 부분인데, 이 화면 앞서서 자동으로 할것인지 아니면 Disk Druid 로 할것인지 나오는데요,. Disk Partitioning -&gt; Automatically partition or Manually partition with Disk Druid 자동 보다는 Disk Druid 로 설정하는 것을 권장 합니다.  왜냐면,. 장착된 디스크의 파티션을 효율적으로 사용할수 있기 때문입니다. Linux 를 설치해 보신 분들은 매우 잘알것 입니다. 기본으로 필요한 파티션은 / 와 /boot 그리고 swap 입니다.  <b> 4. Network Configuration</b>  <img src="/images/TipnTech/Storage/Openfiler-Setup-Network-Configuration-4.gif" />  네트워크 서비스를 해야 하므로, Network Configuration -&gt; 고정 IP 가 있는 경우 IP 할당. (ex, 10.0.0.45) 및 Gateway, DNS 등 기본적인 설정을 해줍니다. 물론 DHCP 도 가능하지만,. Storage 특성상 IP가 변경되면 문제가 있겠지요.^^  그다음으로,, Time Zone -&gt; Asia/Seoul (선택), Root Password 설정 (ex, -&gt; 1234567) 을 합니다. 설치가 완료된 후에는 일반적인 Linux 와 동일하므로 ssh, 방화벽 설정등은 접근 제한을 해주는 것이 좋습니다.  <b> 5. Install Application </b> <img src="/images/TipnTech/Storage/Openfiler-Setup-Install-Packages-5.gif" />  Openfiler NAS/SAN Appliance 설치 시작.   &lt;다음화면&gt; Installing Packages&nbsp; ,, 뭐 여러가지 페키지를 설치하느데,.. 정확한것은 모르겠습니다. 패키지 이름을 안다고 해도,.. 어떻게 작동하고 설정하고.. 이런것 까지 알아서 하기 보다는,. Linux 전문가 도움을 받는게 좋을것 같고요.^^  여기 까지는 그냥 기본적인 GUI 설치과 별반 다르지 않음...;;   <b>6. Complete Installation</b>  <img src="/images/TipnTech/Storage/Openfiler-Setup-install-Complete-6.gif" />  설치를 완료하고 리붓팅을 하고 나면, 일반적인 Linux 로그인 첫화면이 나옵니다. 앞서 설정했던 root 로그인이 잘되는지 확인도 해보시고요.&nbsp; 텀 환경이 불편하면, 추가적으로 KDE 나 GNOME 을 구성해서 기본적인 Linux 관리를 해도 크게 문제될 부분은 없을것 같습니다.  로그인 첫화면에 Web administration GUI : <a href="https://10.0.0.45:446/" target=_blank><font color=#b31c00>https://10.0.0.45:446/</font></a> 처럼 웹관리 콘솔 경로를 표시해 줍니다. 이제 부터 iSCSI 설정은 모두 웹에서 설정 및 관리가 가능 합니다.   여기까지 openfiler 를 설치한 이유는 뭘까요?..^^  당근,. Windows Server 에서 Shared Storage 로 이용하기 위해서 이죠.&nbsp; 설마 Linux 나 그와 관련된 사용법을 알려 드릴려고 하겠습니까. 그러고 싶지도 않고요.^^ </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=495" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=495</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>iSCSI</category>
      <category>SAN</category>
      <category>NAS</category>
      <category>DAS</category>
      <category>Storage</category>
      <author>wssplex</author>
      <pubDate>Wed, 15 Oct 2008 04:49:39 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[adsutil.vbs 를 이용한, IIS SMTP 서비스 메일 디렉토리 변경]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=494</link>
      <description><![CDATA[<table><tr><td><b>XIMS: Relocating the Directories Used by SMTP Service </b><a href="http://support.microsoft.com/kb/240917" target=_blank><b><font color=#006bd4>http://support.microsoft.com/kb/240917</font></b></a>  
<div class=code>adsutil.vbs set smtpsvc/1/dropdirectory&nbsp; dir adsutil.vbs set smtpsvc/1badmaildirectory&nbsp; dir adsutil.vbs set pickupdirectory&nbsp;dir adsutil.vbs set queuedirectory dir</div> 위에것 그대로 가져다가 안된다고 하는 사람들 많았을듯;;; 2006년에 검토를 했다는데 아직도 수정이 안됨. 검토를 한거는 한건지.... -_-;;;  위 내용중에,. 예제 명령행에 오타가 있음;;;; 다음 처럼....  
<div class=code>adsutil.vbs set smtpsvc/1/dropdirectory "d:\mailroot\drop"  adsutil.vbs set smtpsvc/1/badmaildirectory "d:\mailroot\badmail"  adsutil.vbs set smtpsvc/1/pickupdirectory "d:\mailroot\pickup"  adsutil.vbs set smtpsvc/1/queuedirectory "d:\mailroot\queue" </div> </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=494" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=494</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>adsutil.vbs</category>
      <category>smtpsvc</category>
      <category>dropdirectory</category>
      <category>badmaildirectory</category>
      <category>pickupdirectory</category>
      <category>queuedirectory</category>
      <author>wssplex</author>
      <pubDate>Fri, 10 Oct 2008 02:17:40 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[wmic nicconfig, 네트워크 인터페이스 정보 설정]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=493</link>
      <description><![CDATA[<table><tr><td>IP 주소를 설정하거나, 변경을 할려면 어떤 인터페이스에 어떤 IP 주소가 설정이 되어 있는지 확인을 먼저 해야 합니다. 다음과 같이 해당 컴퓨터의 모든 이더넷 인터페이스의 설정값을 확인할 수 있습니다.   
<div class=code><b><font color=#b31c00>wmic:root\cli&gt;nicconfig </font></b><font color=#595959>ArpAlwaysSourceRoute&nbsp; ArpUseEtherSNAP&nbsp; Caption &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [<b>00000001</b>] Intel(R) PRO/100 VE Network Connection &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000002] RAS 비동기 어댑터 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000003] WAN 미니 포트 (L2TP) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000004] WAN 미니 포트 (PPTP) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000005] WAN 미니 포트(PPPOE) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000006] 직접 병렬 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [00000007] WAN 미니 포트 (IP)</font></div>  위 처럼 하면,. <font color=#006bd4>Win32_NetworkAdapterConfiguration</font> 클래스의 정보를 나열하여 볼수 있습니다. Caption 목록이나,. IPAddress 속성 항목에서 배열값중 현재 컴퓨터의 IP 주소가 있으면 그것에 해당하는 인터페이스의 인덱스값이 순서 입니다.  이를테면,. 현재 내 컴퓨터가 IP 주소로 10.0.0.2 와 3번을 사용하고 있다면,. {"10.0.0.34", "10.0.0.35"} 로 값이 나오게 됩니다. 네트워크 설정에서 여러값 설정이 가능한 항목은 모두 위처럼 출력이 됩니다.   <b>IP 주소 설정</b>  사용하고자 하는 IP 정보가 10.0.0.35 라는 주소와 서브넷은 255.255.255.0, DNS 가 168.126.63.1, Gateway 가 10.0.0.1 이라면 다음과 같이 설정이 가능합니다.  
<div class=code><b><font color=#b31c00>wmic nicconfig where index=1 call enablestatic ("10.0.0.35"),("255.255.255.0") </font></b><font color=#595959>(\\WSSPLEX-VM2\ROOT\CIMV2:Win32_NetworkAdapterConfiguration.Index=1)-&gt;enablestatic() 실행 중 메서드를 실행했습니다. Out 매개 변수: instance of __PARAMETERS { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ReturnValue = 0; };</font> </div>  
<div class=code><b><font color=#b31c00>wmic nicconfig where index=1 call setgateways ("10.0.0.1") </font></b><font color=#595959>(\\WSSPLEX-VM2\ROOT\CIMV2:Win32_NetworkAdapterConfiguration.Index=1)-&gt;setgateways() 실행 중 메서드를 실행했습니다. Out 매개 변수: instance of __PARAMETERS { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ReturnValue = 0; };</font> </div>  
<div class=code><b><font color=#b31c00>wmic nicconfig where index=1 call SetDNSServerSearchOrder ("168.126.63.1")</font></b> <font color=#595959>(\\WSSPLEX-VM2\ROOT\CIMV2:Win32_NetworkAdapterConfiguration.Index=1)-&gt;SetDNSServerSearchOrder() 실행 중 메서드를 실행했습니다. Out 매개 변수: instance of __PARAMETERS { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ReturnValue = 0; };</font> </div>  정상적으로 잘 적용이 된것인지 확인은 ipconfig/all 을 통해서 확인하면 됩니다. 그리고 ping 등 작동을 잘하는지 추가로 확인을 하면 되겠습니다.  
<div class=code>Connection-specific DNS Suffix&nbsp; . : Description . . . . . . . . . . . : Intel(R) PRO/100 VE Network Connection Physical Address. . . . . . . . . : 00-0C-29-73-2D-28 DHCP Enabled. . . . . . . . . . . : No IP Address. . . . . . . . . . . . : <font style="BACKGROUND-COLOR: #000000" color=#ffff00>10.0.0.35 </font>Subnet Mask . . . . . . . . . . . : <font style="BACKGROUND-COLOR: #000000" color=#ffff00>255.255.255.0</font> Default Gateway . . . . . . . . . : <font style="BACKGROUND-COLOR: #000000" color=#ffff00>10.0.0.1 </font>DNS Servers . . . . . . . . . . . : <font style="BACKGROUND-COLOR: #000000" color=#ffff00>168.126.63.1 </font>NetBIOS over Tcpip. . . . . . . . : Disabled</div>  지금까지는,. IP 주소등을 적용하는 과정인데,. 기존의 IP 정보를 변경하는 것도 위와 동일 합니다. wmic 에서 위와 같은 설정이 가능한것은 WMI 에서 몇개의 메소드를 지원하기 때문 입니다.  어떤 메소드와 값,&nbsp; 또는 어떤 정보를 확인해 볼수 있는지는 <font color=#006bd4>wmic:root\cli&gt;nicconfig /?</font> 면 도움말 확인이 가능하며 메소드 실행은 <font color=#006bd4>wmic:root\cli&gt;nicconfig call /?</font> 를 통해서 지원되는 목록을 확인할수 있습니다.   물론,&nbsp; wmic 를 이용하지 않고 netsh 명령행을 이용해도 IP 주소의 설정이나 변경등이 가능 합니다.  netsh - 네트워크 인터페이스에 IP,DNS 설정 <a title=http://www.wssplex.net/TipnTech.aspx?Seq=380 href="http://www.wssplex.net/TipnTech.aspx?Seq=380" target=_blank><font color=#006bd4>http://www.wssplex.net/TipnTech.aspx?Seq=380</font></a>  netsh - 네트워크 인터페이스 설정 초기화 <a title=http://www.wssplex.net/TipnTech.aspx?Seq=382 href="http://www.wssplex.net/TipnTech.aspx?Seq=382netsh" target=_blank><font color=#006bd4>http://www.wssplex.net/TipnTech.aspx?Seq=382</font>  </a>netsh - 네트워크 인터페이스 Enable, Disable, 연결끊기, 이름 변경 <a title=http://www.wssplex.net/TipnTech.aspx?Seq=383 href="http://www.wssplex.net/TipnTech.aspx?Seq=383" target=_blank><font color=#006bd4>http://www.wssplex.net/TipnTech.aspx?Seq=383</font></a>  그외,. 레지스트리의 값을 변경하는 방법도 있습니다. </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=493" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=493</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>wmic</category>
      <category>WMI</category>
      <category>Win32_NetworkAdapterConfiguration</category>
      <author>wssplex</author>
      <pubDate>Tue, 07 Oct 2008 08:40:31 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[IIS 7.0 실패한 요청 추적 규칙 로깅 사용]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=492</link>
      <description><![CDATA[<table><tr><td>추적 규칙을 모두 설정해 놓았는데,.. <font color=#b31c00>%SystemDrive%\inetpub\logs\FailedReqLogFiles</font> 에 추적 xml 파일이 생성되지 않는 경우라면,.. "사용" 체크가 되어 있지 않기 때문 입니다.  기본값으로, 추척 규칙을 등록하더로 비활성화 되어 있죠... 요것 땜에 약간 헤맸음.... -_-;;  <img src="/images/TipnTech/IIS/7/Diagnostics/IIS7-Request-Error-Trace-2.png" />   <font style="BACKGROUND-COLOR: #000000" color=#ffff00>사이트 추적 편집</font> 에서 <font style="BACKGROUND-COLOR: #000000" color=#ffff00>사용</font> 체크를 해주어야 로깅이 시작 된다는... -_-;;  <img src="/images/TipnTech/IIS/7/Diagnostics/IIS7-Request-Error-Trace-3.png" />  요청 추적은,. 웹서버측에 요청되는 매 건마다 지정된 오류 코드에 대해서&nbsp;Tracing 을 하므로 매우 요청이 많은 서버에서는 부하가 있을수 있으므로 잘 판단해서 사용해야 겠지요.^^ </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=492" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=492</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>IIS 7</category>
      <category>요청추적</category>
      <category>오류코드</category>
      <author>wssplex</author>
      <pubDate>Fri, 26 Sep 2008 08:23:58 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[IIS 7 에서 FastCGI 를 이용한 PHP 구성]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=491</link>
      <description><![CDATA[<table><tr><td>Windows Server 2008 IIS 7 에서는 FastCgi 모듈이 내장 되어 있으며, 설정 또한 applicationHost.config 에서 설정하도록 되어 있으며 사이트 단위로도 설정이 가능합니다.  
<div class=code>&lt;fastCgi&gt; &nbsp;&nbsp; &lt;application fullPath="C:\inetpub\php-5.2.6-nts-Win32\php-cgi.exe" /&gt; &lt;/fastCgi&gt;  &lt;handlers accessPolicy="Read, Script"&gt; &nbsp;&nbsp; &lt;add name="PHPFastCgi" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\inetpub\php-5.2.6-nts-Win32\php-cgi.exe" resourceType="Unspecified" /&gt; &lt;/handlers&gt;</div> Vista 의 경우에는 Windows Server 2008 이 나오기전의 IIS 7 버젼이라서 FastCgi 모듈을 별도로 설치해 줘야 하는데, Service Pack 1를 설치하는 경우에는 내장되어 있습니다.   CGI 가속 기능을 지원하는 FastCgi 를 이용할려면 다음 처럼, CGI 구성요소가 설치가 되어야 합니다.  <img src="http://www.wssplex.net/images/TipnTech/IIS/7/cgi/iis7-php-fastcgi-1.png" />  IIS 의 CGI 모듈 설치가 완료가 되면, 그 다음으로 PHP 를 다운 받아서 설치를 합니다.   PHP 의 버젼은 Installer 버젼 보다는 zip 패키지 설치를 권장하고 있으며,.... 또한 쓸때없는 체크를 하지 않도록 Non-thread-safe 버젼을 설치하는 것이 좋습니다.  그외, php.ini 의 기본적인 설정은 보통의 php 구성과 같으며,. 다만 기존의 FastCgi 를 이용하지 않고 ISAPI 모드나 CGI 모드에처럼 dll 파일이나 ini 파일을 복사하는등의 과정은 필요 없습니다.  <img src="http://www.wssplex.net/images/TipnTech/IIS/7/cgi/iis7-php-fastcgi-2.png" />  PHP를 호스팅하기 위해서는 처리기 매핑 - 모듈 매핑 추가 에서 위와 같은 형식으로 추가를 해줍니다.&nbsp; 요청 제한 옵션중에는 동사부분에서 GET,POST,HAED,DEBUG 등 기본 동사만 허용하도록 해주는 것이 좋습니다.  그 다음으로, php 가 정상적으로 작동하는지 확인하기 위해서 웹사이트 폴더에 &lt;?php phpinfo(); ?&gt; 와 같은 내용이 들어간 .php 파일을 호출해서 다음과 같이 나오면 PHP가 FastCgi 를 이용하여 정상적으로 작동이 되는 것입니다.  <img src="http://www.wssplex.net/images/TipnTech/IIS/7/cgi/iis7-php-fastcgi-3.png" />  FastCgi 옵션에 따라서 다르지만,. 작업 관리자에 보면 php-cgi.exe가 설정값에 따라서 몇개가 실행중이고 어느정도 작동후 종료후 새로운 php-cgi.exe가 생성되는 재생도 작동 됩니다.   그외,. 재생 설정은 다음과 같이 appcmd 를 이용하여 설정이 가능합니다.  
<div class=code2>C:\&gt;%windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath='c:\{php_folder}\php-cgi.exe'].instanceMaxRequests:10000   C:\&gt;%windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /+[fullPath='c:\{php_folder}\php-cgi.exe'].environmentVariables.[name=’PHP_FCGI_MAX_REQUESTS’, value='10000']</div>  물론 applicationHost.config 파일을 열어서 직접 추가/수정을 해줘도 상관은 없습니다. FastCgi 노드에서의&nbsp;그외&nbsp;속성값은 iis 6에서 설치된 fcgiext.ini&nbsp;을 참고해 보시면 좋을것 같습니다.  <img src="/images/TipnTech/IIS/7/cgi/fastcgi-config-2.png" />  또는 위와 같이, Administration Pack for IIS 7.0 을 설치하면 FastCGI Settings 를 통해서도 GUI 상에서 설정이 가능합니다.  
<div class=code2>&lt;fastCgi&gt; &nbsp;&nbsp;&nbsp; &lt;application fullPath="C:\inetpub\php-5.2.6-nts-Win32\php-cgi.exe" maxInstances="4" instanceMaxRequests="10000"&gt; &nbsp;&lt;environmentVariables&gt; &nbsp;&nbsp;&nbsp;&nbsp; &lt;environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="10000" /&gt; &nbsp;&lt;/environmentVariables&gt; &nbsp;&nbsp;&nbsp; &lt;/application&gt; &lt;/fastCgi&gt;</div>  속성이름이 대부분 명시적이어서 무슨 의미인지 이해하는데 어렵지는 않을것 입니다.  ps,.   FastCgi 에서 호출되는 CGI 는 기본값으로는 Network Service 계정에서 호출을 합니다.   실행 CGI 가 있는 폴더는 Windows 기본값에서는 Users 그룹에 권한이 되어 있으므로 호출에는 문제가 없으나, 보안 강화를 위해서 Administrators 외 제외를 하였다면,. 적절한 권한 설정이 필요합니다. </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=491" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=491</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>FastCgi</category>
      <category>PHP</category>
      <category>IIS 7</category>
      <author>wssplex</author>
      <pubDate>Wed, 24 Sep 2008 06:24:47 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Windows 대화형 로그온 (Interactive Logon) 작동 과정]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=490</link>
      <description><![CDATA[<table><tr><td>Windows 에 로그온하는 형식은 여러가지가 있습니다. 그중에 일반적으로 <font color=#b31c00>CTRL+ALT+DEL</font> 로그온하는 방식을 <font color=#b31c00>대화형 로그온</font> 이라고 하는데요.  로그온 유형: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=328" target=_blank><font color=#006bd4>http://www.wssplex.net/TipnTech.aspx?Seq=328</font></a>   TechNet 문서중에 로컬 로그온과 도메인 로그온 형식에 대해서 잘 설명해 놓은 문서가 있네요.^^  <b>How Interactive Logon Works  </b><a href="http://technet.microsoft.com/en-us/library/cc780332.aspx" target=_blank><b><font color=#006bd4>http://technet.microsoft.com/en-us/library/cc780332.aspx</font></b></a>   &lt;로컬 로그온&gt;  <img src="/images/TipnTech/Security/Lsa/Interactive-Logon-Works-Local.gif" />   &lt;도메인 로그온&gt;  <img src="/images/TipnTech/Security/Lsa/Interactive-Logon-Works-Domain.gif" /> </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=490" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=490</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>Interactive Logon</category>
      <category>대화형 로그온</category>
      <category>GINA</category>
      <category>LSA</category>
      <category>Winlogon</category>
      <author>wssplex</author>
      <pubDate>Tue, 23 Sep 2008 08:24:46 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[ADO.NET, SQL 2005 미러링 Failover Partner SqlConnection]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=489</link>
      <description><![CDATA[<table><tr><td>닷넷 2.0 프레임워크 기반에서는, 미러링된 데이터베이스의 장애조치에 의해서 보조 서버로 연결이 전환되는 기능을 지원하는 SQL Native Client 프로바이더 기능을 System.Data.SqlClient 네임스페이스에서 알아서 해줍니다.  
<div class=code>SqlConnection Con = new SqlConnection("server=db1;<font style="BACKGROUND-COLOR: #000000" color=#ffff00>Failover Partner</font>=db2;database=wssplex.net;user id=wssplex;password=xxxxx"); SqlCommand Cmd = new SqlCommand(); Cmd.Connection = Con;</div> 그런데,. 종종 아래와 같이 역할 전환이 된 상태에서 보조서버로의 연결이 잘안되는 경우가 있습니다. 최근의 닷넷 프레임워크 업데이트라면 패치가 된 상태이지만,. 버그 입니다.  
<div class=code2>처리되지 않은 예외: System.Data.SqlClient.SqlException: 로그인에서 요청한 데이터베이스 "wssplex.net"을(를) 열 수 없습니다. 로그인이 실패했습니다. 사용자 'wssplex'이(가) 로그인하지 못했습니다. &nbsp; 위치: System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) &nbsp; 위치: System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) ............................</div> <a href="http://support.microsoft.com/kb/912151" target=_blank><font color=#006bd4>http://support.microsoft.com/kb/912151</font></a>  윈도우 업데이트를 통해서 닷넷 프레임워크 관련 모든 업데이트를 완료하였다면 위와 같은 문제는 발생하지 않습니다...&nbsp; 이미 버그픽스가 완료된 상태라....^^  </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=489" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=489</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>SQL Native Client</category>
      <category>데이터 베이스 미러링</category>
      <category>ADO.NET</category>
      <category>SqlConnection</category>
      <category>Failover Partner</category>
      <author>wssplex</author>
      <pubDate>Tue, 23 Sep 2008 04:58:34 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[myodbc3!LoadByOrdinal, 작업자 프로세스 재생시 COM+ 오류 이벤트]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=488</link>
      <description><![CDATA[<table><tr><td><div class=code>이벤트 형식:&nbsp;오류 이벤트 원본:&nbsp;COM+ 이벤트 범주:&nbsp;알 수 없음 이벤트 ID:&nbsp;4689 설명: 런타임 환경이 내부 상태에서 불일치를 감지했습니다. 이것은 프로세스가 잠재적으로 불안정함을 나타내며, COM+ 응용 프로그램에서 실행 중인 구성 요소, 이들 구성 요소에서 사용하는 구성 요소 또는 기타 요소가 그 원인이 될 수 있습니다. d:\nt\com\complus\src\comsvcs\threads\stawork.cpp(156)의 오류, hr = 80010108: Callback failure handled by IAsyncErrorNotify</div>  <font color=#b31c00>Windows Server 2003 Standard, Service Pack 1, IIS6</font>  작업자 프로세스(w3wp.exe) 에서의 지속적인 메모리 증가 및 응용프로그램 풀의 메모리 제한값에 도달하여 재생이 되는 과정에서의 오류  
<div class=code>'wssplex.net' 응용 프로그램 풀을 처리하는 '5320' 작업 ID인 작업자 프로세스가 메모리 제한에 도달했으므로 재생을 요청했습니다.</div> 
<div class=code>응용 프로그램 풀 'wssplex.net'을(를) 지원하는 프로세스를 종료하는 동안 제한 시간이 초과되었습니다. 프로세스 ID는 '5320'입니다. </div>  해당 작업자 프로세스를 디버깅 해보면 가장 메모리 소비가 많은 힙은 myodbc3!LoadByOrdinal 이며, 이 서버의 MySQL ODBC Driver 는 MySQL ODBC 3.51 Driver (3.51.12.0)   mysql.com 커뮤니티를 보면 해당 마이너 버젼에 문제가 있다고 여러건 올라오고 있는것 같으며, 현재 3.x 대의 가장 마지막으로 릴리즈된 버젼은 3.51.26  <a href="http://dev.mysql.com/downloads/connector/odbc/3.51.html" target=_blank><font color=#006bd4>http://dev.mysql.com/downloads/connector/odbc/3.51.html</font></a>  </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=488" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=488</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>작업자 프로세스</category>
      <category>w3wp</category>
      <category>응용프로그램 풀</category>
      <category>MySQL</category>
      <category>ODBC Driver</category>
      <category>COM+</category>
      <author>wssplex</author>
      <pubDate>Mon, 22 Sep 2008 05:22:11 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[OLE/DB 공급자 'SQLOLEDB'이(가) 분산 트랜잭션을 시작할 수 없음]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=487</link>
      <description><![CDATA[<table><tr><td>SQL Server 에서 종종 사용되는,. Linked-Server 를 사용하여 다른 SQL Server 에 접근을 하는 경우 종종 다음과 같은 오류 메시지가 나올수 있습니다.. 물론 웹서버에서도 특정 코드에서 SQL 쿼리시 Transaction 요구가 되도록 되어 있다면 이와 비슷한 오류 메시지가 나옵니다. -_-;;  ASP 페이지에서 데이터 트랜잭션을 처리하는 방법 <a title=http://support.microsoft.com/kb/299637/ko href="http://support.microsoft.com/kb/299637/ko" target=_blank>http://support.microsoft.com/kb/299637/ko</a>  
<div class=code><font color=#b31c00>OLE/DB 공급자 'SQLOLEDB'이(가) 분산 트랜잭션을 시작할 수 없으므로 작업을 수행할 수 없습니다. [OLE/DB provider returned message: 지정한 트랜잭션 코디네이터에 새 트랜잭션을 기록할 수 없습니다. ] OLE DB 오류 추적 [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a].</font></div>  위 오류는,. Linked-Server 로 구성된 A 서버에서 B 서버로 쿼리시,. A 서버에서는 특정 테이블에 Trigger 가 걸려있고 그 Trigger 코드내에 Linked-Server 에 Insert 를 하게 되어 있습니다. 분산쿼리시 JoinTransaction OLE DB 인터페이스를 사용 합니다.  <font color=#595959>(읽기(Select) 라면,. 상관없겠지만,..... 데이터가 변경되는 Insert, Update, Delete, alter, create, drop 등등 명시적으로 트랜잭션을 호출하지 않더라도 암시적 트랜잭션이 활성화 됩니다.) </font> 이러한 로컬 트랜잭션이 아닌 분산 Transaction 이 가능하게 해주는 것이 바로 MSDTC(Distributed Transaction Coordinator) 입니다. A 서버와 B서버 사이에의 트랜잭션 처리를 MSDTC가 모두 알아서 해주기 때문에 신경쓸 필요가 없는 것이죠. 위의 오류는 이와 같은 MSDTC 를 활성화 또는 엑세스에 문제가 있을때 발생 합니다.  <img src="/images/TipnTech/SQL%20Server/dtc/msdtc-net-config.gif" />   그래서 MSDTC 활성화가 필요한데,.. MSDTC&nbsp;활성화에 대한 자세한 설명이 있는 아티클이 있으므로&nbsp; 다음 포스트를 참조하는것이 더 이로울듯 싶습니다.^^  <b>MS-DTC Setting on Windows 2003 </b><a title=http://www.simpleisbest.net/archive/2005/07/04/173.aspx href="http://www.simpleisbest.net/archive/2005/07/04/173.aspx" target=_blank><b><font color=#006bd4>http://www.simpleisbest.net/archive/2005/07/04/173.aspx</font></b></a>  <font color=#595959>(*DTC 로그온 계정의 경우 다른 계정으로 설정을 했다가 원래 계정으로 복구를 할려면 굳이 msdtc 를 재설치 할필요까지는 없습니다. NT Authority\NetworkService 계정을 넣어주면 됩니다.&nbsp; 여기에서 설정한 계정은 서비스 관리자의 에서 Distributed Transaction Coordinator 의 실행 계정 입니다.)</font>  MSDTC 는,. 다른 호스트의 MSDTC 엑세스를 위해서 RPC 통신을 하게 됩니다.   Linked-Server 에서 라면,. 쿼리 업데이트를 위한 1433 말고도 MSDTC 를 위한 135 포트가 접근이 가능해야 하는데,. 인증을 하게 되어 있는 경우 컴퓨터 인증이므로 Active Directory 환경이 아니고서는 되지 않습니다.  
<div class=code>DCEPRC &nbsp;&nbsp;&nbsp;&nbsp; Auth type: NTLMSSP (10) &nbsp;&nbsp;&nbsp;&nbsp; Auth level: Packet integrity (5) &nbsp;&nbsp;&nbsp;&nbsp; NTLMSSP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NTLMSSP identifier: NTLMSSP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NTLM Message Type: NTLMSSP_NEGOTIATE (0x00000001)</div> 컴퓨터 인증이기 때문에,. 워크 그룹 환경에서는 인증을 이용할수 없고 다음과 같은 이벤트가 발생하게 되겠지요.  
<div class=code>로그온 시도: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0 로그온 계정: WSSPLEX-A2$ 워크스테이션: WSSPLEX-A2 오류 코드: 0xC0000064   로그온 실패: &nbsp; 원인:&nbsp; 알 수 없는 사용자 이름 또는 잘못된 암호 &nbsp; 사용자 이름: WSSPLEX-A2$ &nbsp; 도메인:&nbsp; WORKGROUP &nbsp; 로그온 유형: 3 &nbsp; 로그온 프로세스: NtLmSsp  &nbsp; 인증 패키지: NTLM &nbsp; 워크스테이션 이름: WSSPLEX-A  </div> 물론,.&nbsp; "인증 필요 없음" 이 체크되어 있더라도 Linked-Server 의 옵션에서 RPC 사용이 체크되어 있으면 RPC 로그온을 시도하게 됩니다.  <img src="/images/TipnTech/SQL%20Server/dtc/msdtc-rpc.gif" />  만약,. 한쪽에서만 허용이 되어 있다거나 접속이 가능한 조건이 라면,. 다음과 같은 이벤트가 발생 합니다.  
<div class=code>이벤트 형식: 경고 이벤트 원본: MSDTC MS DTC가 원격 시스템에 있는 MS DTC와 통신할 수 없습니다. 주 시스템에 있는 MS DTC가 보조 시스템에 있는 MS DTC와 RPC 바인딩을 만들었지만 시간을 초과하기 전에 보조 시스템이 주 MS DTC 시스템으로 역방향 RPC 바인딩을 만들지 못했습니다. 두 시스템 간에 네트워크 연결이 되어 있는지 확인하십시오. 오류 설명:d:\nt\com\complus\dtc\dtc\cm\src\iomgrsrv.cpp:1318, Pid: 2680 No Callstack, CmdLine: C:\WINDOWS\system32\msdtc.exe</div>  MSDTC 구성에 관련해서 위의 참조 링크를 통해서도 해결이 되지 않는다면 다음 링크를 통해서 트러블 슈팅을 해보면 도움이 될것 같습니다.  <b>Troubleshooting Problems with MSDTC </b><a title=http://msdn.microsoft.com/en-us/library/aa561924.aspx href="http://msdn.microsoft.com/en-us/library/aa561924.aspx" target=_blank><b><font color=#006bd4>http://msdn.microsoft.com/en-us/library/aa561924.aspx</font></b></a>  만약 오류에 의해서 트랜잭션이 실패하거나 중단되는 것은, MSTDC 트랜잭션 통계를 통해서 확인이 가능할텐데요.. 물론 이러한 통계는 msdtc 가 시작된 이후로의 통계 이므로 재시작 되면 없어 집니다.  <img src="/images/TipnTech/SQL%20Server/dtc/msdtc-transaction.gif" />  
<p></p></td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=487" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=487</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>MSDTC</category>
      <category>SQLOLEDB</category>
      <category>Linked-Server</category>
      <category>ITransactionJoin</category>
      <category>네트워크 DTC 엑세스</category>
      <category>분산 트랜잭션</category>
      <author>wssplex</author>
      <pubDate>Thu, 04 Sep 2008 01:55:45 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[ASP 에서 Socket 통신 코드 예제]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=486</link>
      <description><![CDATA[<table><tr><td>Asp 에서는 Socket 통신을 할려면 별도의 구성요소(컴포넌트)가 필요 합니다.   여타 웹 스크립트 언어 자체에서 모든 기능을 제공하는 대신 Asp 는 Server.CreateObject 라는 구조를 통해서 무한한 가능성을 열어주는 대신에,.. 직접 만들어야 하다는 단점.,.. 각설하고...  <a href="http://tech.dimac.net/" target=_blank><font color=#006bd4>http://tech.dimac.net/</font></a>&nbsp;에서,. Socket 통신이 가능한 간단한 컴포넌트를 배포하고 있습니다. 다운로드 할려면 이메일 쓰고 등록해야 하더군요. 뭐 간단하지만,.. 그래서 SkyDrive 에..  <iframe style="BORDER-RIGHT: #dde5e9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #dde5e9 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 3px; BORDER-LEFT: #dde5e9 1px solid; WIDTH: 240px; PADDING-TOP: 0px; BORDER-BOTTOM: #dde5e9 1px solid; HEIGHT: 66px; BACKGROUND-COLOR: #ffffff" marginWidth=0 marginHeight=0 src="http://cid-98a8c75a7f812262.skydrive.live.com/embedrowdetail.aspx/%ea%b3%b5%ec%9a%a9/IIS/%ec%bb%b4%ed%8f%ac%eb%84%8c%ed%8a%b8/w3Sockets.zip" frameBorder=0 scrolling=no></iframe>  물론 소스코드는 Microsoft 에서 배포하는 것을 참조하였으므로,. readme.txt 에서도 <a href="ftp://ftp.microsoft.com/bussys/winsock/winsock2/" target=_blank><font color=#006bd4>ftp://ftp.microsoft.com/bussys/winsock/winsock2/</font></a>&nbsp;에서도 가능하겠고요. ^^  - 닷넷이라면,.. System.Net 네임스페이스 에서 가능 -   예제 입니다. 간단 합니다.  아래 예제는 후이즈 서버에서 도메인 정보를 받아오는 것입니다.   
<div class=code2>&lt;%  Set Socket = Server.CreateObject("Socket.TCP")  Socket.host = "whois.internic.net:43" Socket.timeout = 2000 Socket.Open() Socket.sendLine( "wssplex.net"&amp;VbCrLf ) Socket.WaitForDisconnect()  Response.write Socket.buffer  Socket.close() Set Socket = Nothing  %&gt;</div> 소켓을 통해서 보내지는 데이터는 해당 프로토콜 형식에 맞게 전달되어야 겠고, 받아온 데이터 역시 해당 소켓 서버에서 평문이 아닌 특정 형식이라면 추가적인 데이터 조작이 필요할 것이고요...^^  사용은,. 해당 dll 을 regsvr32 를 통해서 레지스트리 클래스 항목에 등록을 하고,. 혹시 웹에서 객체 생성시 권한 오류가 발생 한다면 웹사이트 익명 계정에 적절한 권한을 설정해 주면 됩니다.  
<div><img style="BORDER-RIGHT: #8c8c8c 1px solid; BORDER-TOP: #8c8c8c 1px solid; BORDER-LEFT: #8c8c8c 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid" src="/images/TipnTech/OpenTip/Web/Socket.png" border=0 name=target_resize_image[] /></div> 해당 컴포넌트를 들여다 보면,. 구현된 Public 메소드와 속성은 위와 같습니다.  </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=486" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=486</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>Socket</category>
      <category>소켓</category>
      <category>구성요소</category>
      <category>컴포넌트</category>
      <author>wssplex</author>
      <pubDate>Mon, 25 Aug 2008 08:59:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[WinRM - Windows Remote Management 기능 활성화]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=485</link>
      <description><![CDATA[<table><tr><td><b><font color=#b31c00>WinRM(Windows Remote Management)</font></b> 은 Windows Server 2003 R2 부터 포함이 되기 시작한 윈도우 기반 관리를 위한 새로운 인터페이스 입니다. 이전 까지는 WMI 를 통해서 윈도우 리소스 접근이 되었는데,. 물론 매우 훌륭한 시스템 입니다. 그런데,. 이 WMI 는 DCOM 를 통해서 가능하기에 현재의 네트워크 보안 인프라에서는 제약이 많은게 사실 입니다.  이러한 제한을 뛰어 넘기 위한 것과,.. 그것도 그렇거니와, 하드웨어 및 운영체제 마다 각자의 독자적인 관리 인터페이스 때문에 다양한 인프라로 구축된 환경에서는 관리가 매우 까다로웠습니다.&nbsp;   이를 테면,. Windows 관리를 위한 System Center 제품도 기존에는 Microsoft 외 Linux 나 Oracle 등 다른 제품은 해당 벤더에서 System Center 용 관리팩을 별도로 제공을 해주었습니다. 그러나 이제는 표준 인터페이스가 마련이 되어 있으므로 Microsoft 에서 타사 제품에 대한 관리팩을 직접 제공을 해줄수가 있게 된것 이죠.  그래서,.&nbsp; AMD, DELL, Intel, Microsoft, Sun Microsystems 등 여러 하드웨어 및 운영체제 업체등 에서 업계 표준의 공통의 관리 인프라 인터페이스를 Http 기반의 Soap 메시지 형태의 WS-Management protocol 를 만들었습니다. 최근의 거의 대부분의 운영체제에서 지원하고 있으며, Windows 의 경우, XP 부터 별도의 WinRM 패키지를 설치하면 가능해 집니다.&nbsp;   물론 운영체제에 대한 것은 역시 WinRM 를 통해서 요청이 WMI 로 라우트 됩니다. 실제 정보는 계속해서 WMI 가 담당 합니다.하드웨어 관리도 가능하기는 한데,. 하드웨어 모듈인 BMC 컨트롤러가 있는 장비의 경우에는 하드웨어 관리까지 가능합니다.   <img src="/images/TipnTech/Management/WinRM/Windows-Remote-Management-Architecture.png" /> <font color=#595959>&lt;그림. TechNET&gt; </font> 
<div class=code>도움말: Windows Remote Management(WinRM) 서비스는 원격 관리를 위한 WS-Management 프로토콜을 구현합니다. WS-Management는 원격 소프트웨어 및 하드웨어 관리에 사용되는 표준 웹 서비스 프로토콜입니다. WinRM 서비스는 네트워크에서 WS-Management 요청을 수신하여 처리합니다. WinRM 서비스가 네트워크에서 요청을 수신하려면 winrm.cmd 명령줄 도구를 사용하거나 그룹 정책을 통해 수신기를 구성해야 합니다. WinRM 서비스는 WMI 데이터에 대한 액세스를 제공하고 이벤트를 수집할 수 있도록 합니다. 이벤트를 수집하고 이벤트에 가입하려면 이 서비스가 실행되고 있어야 합니다. WinRM 메시지는 HTTP 및 HTTPS를 전송 수단으로 사용합니다. WinRM 서비스는 IIS에 의존하지 않지만 동일한 컴퓨터에서 IIS와 포트를 공유하도록 미리 설정되어 있습니다. WinRM 서비스는 /wsman URL 접두사를 예약합니다. IIS와의 충돌을 방지하려면 관리자가 IIS에서 호스트되는 웹 사이트가 /wsman URL 접두사를 사용하지 않도록 해야 합니다.</div>  전체적인 WinRM 구조는 위 Diagram 을 보면 알수 있을것 같고,. 앞서 얘기한 것처럼 WinRM 은 Http 를 이용한다고 하였습니다. 그렇다면,. 해당 서버에 IIS 를 운영하는 경우에는 어떻게 되는 것이냐? 라는 자연스러운 궁금증이 있을것 같습니다.  이와 같은 궁금중은,. 지난 IIS 6 에서부터 IIS Core 가 변경되어 Http 요청을 커널모드에서 처리를 하는 Http.sys 에서 찾을수 있습니다. Http.sys 는 포트 공유를 통해서 Http를 통해서 들어온 요청을 구분하여 처리를 하게 됩니다. 아래 Diagram 을 보시면 훨씬더 쉽게 이해를 할수 있을것 같습니다. 
<p><img src="/images/TipnTech/Management/WinRM/WS-Man-Architecture.jpg" /></p>
<p><font color=#595959>&lt;그림. </font><a title=http://blogs.technet.com/otto/archive/2007/02/09/sample-vista-ws-man-winrm-commands.aspx href="http://blogs.technet.com/otto/archive/2007/02/09/sample-vista-ws-man-winrm-commands.aspx" target=_blank><font color=#595959>http://blogs.technet.com/otto/</font></a><font color=#595959>&nbsp;&gt;</font>  WinRM 에 대한 요약은 위 도움말을 참조하면 될것 같고, 주의 사항중에 IIS 에서 사이트 구성서 /wsman 만 사용하지 않으면 될것입니다. WS-Management protocol 에 대한 관련 상황 설명을 각설하고,.. 보다 자세한 사항은 다음 링크를 참조하시면 좋겠습니다.   <a href="http://www.dmtf.org/standards/wsman" target=_blank><font color=#006bd4><b>http://www.dmtf.org/standards/wsman</b></font></a><font color=#006bd4><b>  </b></font><a title=http://en.wikipedia.org/wiki/DMTF href="http://en.wikipedia.org/wiki/DMTF" target=_blank><font color=#006bd4><b>http://en.wikipedia.org/wiki/DMTF</b></font></a>  <font color=#595959>- 그렇고 보면,..&nbsp;RPC over Http/s 도 이와 흡사한 구조 입니다. 차이점 이라면,. Http 프록시 -특정 모듈(dll)- 웹주소에 직접 요청을 전달하고 받는 다는 것과 IIS 가 필수로 작동 되어야 한다는 점 일것 같습니다. -</font>   이 글을 쓰는 본인도,.. WMI 로만 서버관리를 하고 있는 중이라,.   새로운 인터페이스인 WinRM 에 대해서 알고 있는 지식이 현재 얕은지라.... -_-;; 솔직히 Windows Server 2003 R2에 포함이 되었을 때에도 별로 관심이 없었죠. 왜냐하면 Windows 만 운영을 하고 있으니깐,. 그리고 WMI 로도 충분 했으니깐요.^^;;;;  이제,. WinRM 을 서버(관리되는)측에 설치 및 구성하는 방법 입니다. 물론 이미 알려져 있는 내용이기는 합니다 만,. 스스로 한번더 되새겨볼 기회를 갖고자.....,  Windows 구성요소에는 2가지가 있습니다. 서버측 역할 도구와 클라이언트 역할 도구 입니다. 서버측 역할 도구는 <font color=#b31c00>Winrm.vbs</font> 이고, 클라이언트는 <font color=#b31c00>Windows Remote Shell(WinRS.exe)</font> 입니다.  
<div class=code2><font color=#006bd4>C:\&gt;winrm</font> Windows Remote Management 명령줄 도구   Windows Remote Management(WinRM)는 Microsoft가 구현한 WS-Management 프로토콜로서, 웹 서비스를 사용하여 로컬 및 원격 컴퓨터와 안전하게 통신할 수 있는 방법입니다.   사용: &nbsp; winrm OPERATION RESOURCE_URI [-SWITCH:VALUE [-SWITCH:VALUE] ...] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [@{KEY=VALUE[;KEY=VALUE]...}]</div> Winrm.vbs 는 서버측에서 요청된 응답을 하기 위해서 관련 환경을 구성하기 위한 도구 입니다. 서버측에서 응답해 줄수 있는 리소스를 구성하고,. 또한 리소스를 얻기 위해서 서버측에 접속할수 있도록 접속 환경을 구성 합니다.  <img src="/images/TipnTech/Management/WinRM/Windows-Service-Windows-Remote-Management-WinRM.png" />   명령행에서의 구성 도구인 Winrm 은 WSMAN COM API 개체(C:\Windows\system32\WSMAUTO.DLL)를 이용한 Vbscript 입니다. 이 말은,. 외부에서 해당 COM 개체를 이용해서 WSMAN 기반의 관리 도구를 따로 만들수 있다는 얘기가 될수 있겠지요.^^  
<div class=code2>Set Wsman = CreateObject("Wsman.Automation")  Set xmlFile = CreateObject( "MSxml.DOMDocument")  Set Session = Wsman.CreateSession Response = Session.Get("http://schemas.microsoft.com/wbem/wsman/" _ &amp; "1/wmi/root/cimv2/Win32_Service?Name=Spooler")  xmlFile.LoadXml(Response) xmlFile.Save( "c:\RawOutput.xml")</div> WsmCL.dll - C 에서 사용할수 있는 라이브러리 WsmSvc.dll - WinRM 리스너 서비스 WsmProv.dll - 공급자 하위시스템 WsmRes.dll - 리소스 파일 WsmWmPI.dll - WMI 플러그인   
<div class=code2><font color=#006bd4>C:\&gt;winrs -?</font>   사용법 ===== (모두 대문자인 텍스트 = 사용자가 제공해야 하는 값입니다.)   winrs [-/SWITCH[:VALUE]] COMMAND   COMMAND - cmd.exe 셸에서 명령으로 실행할 수 있는 문자열입니다. </div> WinRS.exe 는 클라이언측 에서 지정 대상(로컬 또는 원격)으로 WS-Management 를 통해서 접속후 지정된 장비의 리소스를 가져오기 위한 도구 이며,. Soap 메시지 특성상 구조적 데이터 형식의 XML로 반환을 받을수 있습니다.&nbsp; 이것은,. C# 이나 VB, C++&nbsp; 등 개발 언어에서 Soap 요청을 통해서 XML 을 반환받고 그 데이터를 다른 형식으로 또는 용도로 사용이 쉽다는 것입니다.  서버운영자에게는,. 강력한 쉘 도구인 PowerShell 을 이용하는 것도 매우 좋은 방법입니다. 특히 PowerShell V2 (현재 CTP)에서는 Remoting 을 지원하는데 이때 원격 호스트 접속 방법으로 WinRM 을 사용합니다.   간단한 예로 WinRS 클라이언트 에서의 요청 입니다.  
<div class=code><font color=#006bd4>C:\&gt;winrs -r:http://localhost "dir c:" </font>C 드라이브의 볼륨에는 이름이 없습니다. 볼륨 일련 번호: A036-5CE5   C:\Users\Administrator 디렉터리   2008-06-26&nbsp; 오후 05:31&nbsp;&nbsp;&nbsp; &lt;DIR&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; . 2008-06-26&nbsp; 오후 05:31&nbsp;&nbsp;&nbsp; &lt;DIR&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .. 2008-06-26&nbsp; 오후 05:10&nbsp;&nbsp;&nbsp; &lt;DIR&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Contacts 2008-08-19&nbsp; 오후 02:34&nbsp;&nbsp;&nbsp; &lt;DIR&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Desktop ................ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0개 파일&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0 바이트 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 13개 디렉터리&nbsp;&nbsp; 8,552,103,936 바이트 남음 </div> 위 예제는,. 로컬 호스트에 대한 쿼리 결과 입니다. 물론 원격지는 localhost 대신에 원격지 주소와 권한이 있는 인증 정보를 제공하면 동일한 결과를 받아 볼수 있습니다.  앞서 언급한 것처럼, Windows Server 2003 R2 에는 추가 구성요소로 내장되어 있고 -제어판의 프로그램 추가/삭제 에서 구성요소 설치 필요-, Windows Server 2008 은 추가 설치 없이 사용이 가능합니다. 그리고 그외 버젼의 경우에는 WinRM 패키지를 다운로드 받아서 설치가 가능합니다.   <font color=#595959>- Windows Server 2003 R2에 설치된 패키지 보다는 다운로드 해서 최신 버젼을 설치하는 것이 좋습니다. -</font> &nbsp; 다운로드:<b> </b><a href="http://www.microsoft.com/downloads/details.aspx?displaylang=ko&amp;FamilyID=845289ca-16cc-4c73-8934-dd46b5ed1d33" target=_blank><b><font color=#b03f21>WS-Management v1.1</font></b></a>   Windows Server 2008 은,. 기본값으로 WinRM 이 비활성화 되어 있습니다.   외부에서 접속이 가능하도록 리스너 설정을 해줘야 합니다. winrm quickconfig (또는 winrm qc ) 을 통해서 기본적인 작동이 가능할 정도는 쉽게&nbsp; 활성화가 가능 합니다.  <font color=#595959>(*참고로, Windows Server 2003 R2 에서는 quickconfig 스위치가 작동하지 않으며 각 설정을 개별적으로 해야 합니다.)</font>  
<div class=code2><font color=#006bd4>C:\Users\Administrator&gt;winrm quickconfig </font>WinRM이 이 컴퓨터에 관리를 위해 원격으로 액세스할 수 있도록 설정되지 않았습니다. 다음 사항을 변경해야 합니다.   이 컴퓨터에서 모든 IP 주소로 WS-Man 요청을 수락하려면&nbsp; <a href="HTTP://*에서" target=_blank>HTTP://*에서</a> WinRM 수신기를 만드십시오. WinRM 방화벽 예외를 사용합니다.   변경하시겠습니까[y/n]? y   원격 관리를 위한 WinRM이 업데이트되었습니다.   이 컴퓨터에서 모든 IP 주소로 WS-Man 요청을 수락하려면 <a href="HTTP://*에서" target=_blank>HTTP://*에서</a> WinRM 수신기를 만드십시오. WinRM 방화벽 예외를 사용합니다.   C:\Users\Administrator&gt;winrm enumerate winrm/config/listener Listener &nbsp;&nbsp;&nbsp; Address = * &nbsp;&nbsp;&nbsp; Transport = HTTP &nbsp;&nbsp;&nbsp; Port = 80 &nbsp;&nbsp;&nbsp; Hostname &nbsp;&nbsp;&nbsp; Enabled = true &nbsp;&nbsp;&nbsp; URLPrefix = wsman &nbsp;&nbsp;&nbsp; CertificateThumbprint &nbsp;&nbsp;&nbsp; ListeningOn = 10.0.0.17, 127.0.0.1, ::1, 2001:0:cf2e:308c:2c0e:d42:f5ff:ffee, fe80::5efe:10.0.0. 17%11, fe80::2c0e:d42:f5ff:ffee%12, fe80::34d9:7fb6:afa3:b046%10</div>  물론,. 지정된 IP 주소나 Http나 Https 같은 프로토콜, 인증서 등 해당 호스트에 맞는 설정을 해줘야 합니다. 기본으로 구성되는 것만 보면,. IP 제한이 없고,. Http(80)이며 인증서 설정이 되어 있지 않습니다.  각 설정방법은 도움말을 참고하시면 쉽게 설정이 가능합니다. 각 설정에 대한 자세한 정보는 도움말(WinRM 스위치 -?)을 참조하면 됩니다.  인증서 설정이 필요한 이유는, Http 프로토콜 특성상 ClearText 형태 이므로 실제 원격지에서의 리소스 요청시 리소스 접근이 가능한 계정 정보를 넘겨줘야 하는 경우와 받아온 리소스가 XML 이므로 쉽게 노출이 됩니다. 물론 인증이 기본 인증 이상인 경우 인증 정보는 암호화가 되지만....  인증 방법은, 다음과 같은 종류의 방식이 가능 합니다. 물론,. Clinet 측에서는 활성화되어 이용할 인증 방법이 Server 측에서 비활성화 되어 있으면 인증이 되지 않겠지요.^^  Basic Authentication Digest Authentication Negotiate Authentication Kerberos Authentication Client Certificate-based Authentication  시간이 된다면,. 다음번에는 WinRM 을 Windows Server 2003 R2에서 활성화 하는 방법과 WinRM 을 이용한 몇가지 활용법을 정리해볼 생각입니다. ^^;; </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=485" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=485</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>WinRM</category>
      <category>Windows Remote Management</category>
      <category>WinRS</category>
      <category>WMI</category>
      <category>DMTF</category>
      <category>wsman</category>
      <category>Windows Remote Shell</category>
      <author>wssplex</author>
      <pubDate>Mon, 25 Aug 2008 06:10:16 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[SQL Server 2008 의 새로운 기능]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=484</link>
      <description><![CDATA[<table><tr><td>SQL Server 2008&nbsp;은 기존의 SQL Server 2005 와의 외형적인 부분에서는 크게 변화된 부분이 없는 것 같습니다.   <img src="/images/News/Logo/sql-server-2008-logog.gif" />   새로운 버젼이 발표될 때마다 다양한 기능이 추가되고 성능향상이 이루어지는 것은 당연한것이겠지만,. SQL Server 2008 에서는 주로 관리자적 측면에서의 개선이 많이 되었다고 평가 되고 있습니다.   그렇지만,. 새로운 기능으로 정리된 내용을 보면,. 개발자 측면에서도 많이 있는 것 같습니다. 특히 요즘 개발자들 사이에서 이슈가 점점 되어 가고 있는 LINQ(Language Integrated Query) 일것 같습니다.  관리자 관점에서 보는 SQL Server 2008 의 새로운 기능 또는 향상된 기능의 항목만 간단하게 정리해 보았습니다.^^  <font color=#747474>참고해 볼만한.. </font><a href="http://www.microsoft.com/korea/sql/2008/default.mspx" target=_blank><font color=#006bd4>http://www.microsoft.com/korea/sql/2008/default.mspx</font></a> <a href="http://technet.microsoft.com/ko-kr/magazine/cc434690.aspx" target=_blank><font color=#006bd4>http://technet.microsoft.com/ko-kr/magazine/cc434690.aspx</font></a> <a href="http://technet.microsoft.com/ko-kr/library/bb543165.aspx" target=_blank><font color=#006bd4>http://technet.microsoft.com/ko-kr/library/bb543165.aspx</font></a>   <font color=#006bd4><b>데이터베이스 엔진 </b> </font>&nbsp; <font color=#b31c00>향상된 가용성 기능</font> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 데이터베이스 미러링의 로그 성능 향상, 손상된 페이지 자동 복구  &nbsp; <font color=#b31c00>향상된 관리 기능</font> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- 데이터베이스 관리 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 감사, 백업 압축, 변경 데이터 캡쳐, 변경 내용 추적, 데이터 수집기 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 버젼 관련 데이터베이스 마이그레이션 문제 검색, 이벤트및 성능 카운터, sp_configure 옵션 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- 서버관리 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 중앙 관리 서버, 동적 관리 뷰, Hot Add CPU, Optimize for ad hoc workloads 옵션 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 리소스 관리자,SQL Server 확장 이벤트 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- 정책 기반 관리 &nbsp;&nbsp; &nbsp; - Management Studio &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Transact-SQL 디버거, IntelliSense, 데이터베이스 엔진 오류 목록 창,개체 탐색기 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PowerShell 공급자 및 Cmdlet&nbsp;  &nbsp; <font color=#b31c00>향상된 프로그래밍 기능</font> &nbsp;&nbsp;&nbsp;&nbsp; - 데이터 저장소 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 테이블 및 인덱스의 압축된 저장소,FILESTREAM 저장소, 새로운 데이터 정렬, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 분할된 테이블 및 인덱스에 대한 파티션 전환,스파스 열 및 열 집합,공간 데이터 저장소,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 메서드 및 인덱싱, 넓은 테이블 &nbsp;&nbsp;&nbsp;&nbsp; - 데이터 형식 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 날짜 및 시간 데이터 형식,hierarchyid 데이터 형식,공간 데이터 형식, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 사용자 정의 테이블 형식,UDT(사용자 정의 형식) &nbsp;&nbsp;&nbsp;&nbsp; - 전체 텍스트 검색 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 파일 시스템에 저장되는 대신 데이터베이스에 통합 &nbsp;&nbsp;&nbsp;&nbsp; - Transact-SQL &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 호환성 수준, 복합 연산자, CONVERT 함수,날짜 및 시간 기능,GROUPING SETS,MERGE 문 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SQL 종속성 보고,테이블 반환 매개 변수,Transact-SQL 행 생성자  &nbsp; <font color=#b31c00>향상된 확장성 및 성능</font> &nbsp;&nbsp;&nbsp;&nbsp; - 필터링된 인덱스 및 통계 &nbsp;&nbsp;&nbsp;&nbsp; - 쿼리 및 테이블 힌트 &nbsp;&nbsp;&nbsp;&nbsp; - 쿼리 성능 및 처리 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 잠금 에스컬레이션 옵션,최적화된 비트맵 필터링,분할된 개체에 대한 병렬 쿼리 처리 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 비슷한 쿼리를 찾고 튜닝하기 위한 해시 값  &nbsp; <font color=#b31c00>향상된 보안 기능</font> &nbsp;&nbsp;&nbsp;&nbsp; - 암호화 함수 &nbsp;&nbsp;&nbsp;&nbsp; - 투명한 데이터 암호화 &nbsp;&nbsp;&nbsp;&nbsp; - 확장 가능 키 관리 &nbsp;&nbsp;&nbsp;&nbsp; - DES 알고리즘 관련 설명 <b> <font color=#006bd4> 복제</font></b>  &nbsp;&nbsp;&nbsp;&nbsp; - 피어 투 피어 트랜잭션 복제 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 동기화 중 충돌 검색 기능,토폴로지 정지 없이 복제 토폴로지에 노드를 추가하는 기능, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 피어 투 피어 토폴로지 구성 마법사에서 시각적으로 토폴로지를 구성하는 기능 &nbsp;&nbsp;&nbsp;&nbsp; - 복제 모니터 &nbsp;&nbsp;&nbsp;&nbsp; - 분할된 테이블에 대한 향상된 트랜잭션 복제 지원 <b> <font color=#006bd4> Service Broker</font></b>  &nbsp;&nbsp;&nbsp;&nbsp; - 대화 우선 순위에 대한 지원 &nbsp;&nbsp;&nbsp;&nbsp; - Service Broker 구성 및 대화를 진단하는 새 명령 프롬프트 유틸리티 &nbsp;&nbsp;&nbsp;&nbsp; - 새 시스템 모니터 개체 및 카운터&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; - 새로운 Service Broker 자습서   </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=484" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=484</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>SQL Server 2008</category>
      <author>wssplex</author>
      <pubDate>Tue, 19 Aug 2008 05:13:42 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[MEMORY.DMP - DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=483</link>
      <description><![CDATA[<table><tr><td><b>BugCheck D1, {38, 2, 0, fffffadf25414acd} </b> *** ERROR: Module load completed but symbols could not be loaded for yk51x64.sys  Probably caused by : <b><font color=#b31c00>yk51x64.sys</font></b> ( yk51x64+bacd )  Followup: MachineOwner ---------  <b>DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1) </b> An attempt was made to access a pageable (or completely invalid) address at an interrupt request level (IRQL) that is too high.&nbsp; This is usually caused by drivers using improper addresses. If kernel debugger is available get stack backtrace.  Arguments: Arg1: 0000000000000038, memory referenced Arg2: 0000000000000002, IRQL Arg3: 0000000000000000, value 0 = read operation, 1 = write operation Arg4: fffffadf25414acd, address which referenced memory  Debugging Details: ------------------  READ_ADDRESS:&nbsp; 0000000000000038   CURRENT_IRQL:&nbsp; 2  FAULTING_IP:  yk51x64+bacd fffffadf`25414acd 488b4838&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; rcx,qword ptr [rax+38h]  DEFAULT_BUCKET_ID:&nbsp; <font color=#006bd4>DRIVER_FAULT</font>  BUGCHECK_STR:&nbsp; 0xD1  PROCESS_NAME:&nbsp; System  TRAP_FRAME:&nbsp; fffffadf29c637f0 -- (.trap 0xfffffadf29c637f0) NOTE: The trap frame does not contain all registers. <font color=#006bd4>Some register values may be zeroed or incorrect.</font> rax=0000000000000000 rbx=fffffadf29c63998 rcx=0000000000000000 rdx=fffffadf368fefe0 rsi=fffffadf36b5e608 rdi=0000000000000000 rip=fffffadf25414acd rsp=fffffadf29c63980 rbp=fffffadf368fd008 &nbsp;r8=fffffadf368ff5e0&nbsp; r9=5be6d6653c000000 r10=5be6d6653d2d0010 r11=0000000000000080 r12=0000000000000000 r13=0000000000000000 r14=0000000000000000 r15=0000000000000000 iopl=0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nv up ei ng nz na po nc yk51x64+0xbacd: fffffadf`25414acd 488b4838&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; rcx,qword ptr [rax+38h] ds:e40c:0038=???????????????? Resetting default scope  LAST_CONTROL_TRANSFER:&nbsp; from fffff8000102e5b4 to fffff8000102e890  STACK_TEXT:&nbsp;  fffffadf`29c63668 fffff800`0102e5b4 : 00000000`0000000a 00000000`00000038 00000000`00000002 00000000`00000000 : nt!KeBugCheckEx fffffadf`29c63670 fffff800`0102d547 : fffffadf`3666f9f0 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiBugCheckDispatch+0x74 fffffadf`29c637f0 fffffadf`25414acd : 00000000`00000000 fffffadf`368fd008 fffffadf`37c3b020 fffffadf`368fd4b8 : nt!KiPageFault+0x207 fffffadf`29c63980 fffffadf`2541445f : 00000000`00000020 00000000`00000000 fffffadf`368fd008 00000000`00000000 : yk51x64+0xbacd fffffadf`29c639f0 fffffadf`25411341 : 00000000`00000000 00000000`fffff800 fffffadf`368fd008 00000000`00000000 : yk51x64+0xb45f fffffadf`29c63a20 fffffadf`2543b1c3 : fffffadf`37d2c100 fffffadf`36904528 fffffadf`36b5e608 fffff800`00000000 : yk51x64+0x8341 fffffadf`29c63a90 fffffadf`2540ea66 : 00000000`00000001 00000000`00000001 fffffadf`368fff7c fffffadf`368fd008 : yk51x64+0x321c3 fffffadf`29c63ad0 fffffadf`2541664e : fffffadf`368fd008 00000000`00020100 fffffadf`29c9bd00 fffffadf`368fd008 : yk51x64+0x5a66 fffffadf`29c63b50 fffffadf`2904f809 : fffffadf`37acb0b0 fffffadf`2902d270 fffffadf`2900e000 fffffadf`36b5e608 : yk51x64+0xd64e fffffadf`29c63bb0 fffffadf`2904f373 : fffffadf`37d2c120 00000000`00000000 fffffadf`36b5e608 fffffadf`37d2c120 : NDIS!ndisMDispatchRequest+0x1c2 fffffadf`29c63bf0 fffffadf`2904f5c4 : fffffadf`37acb0b0 00000000`00000000 00000000`00000000 fffffadf`36b5e608 : NDIS!ndisMQueryInformation+0x54e fffffadf`29c63c20 fffffadf`290581bf : fffffadf`36b5e608 fffffadf`36b5e608 fffffadf`37d2c120 fffffadf`37d2c120 : NDIS!ndisMDoRequests+0x53b fffffadf`29c63c80 fffffadf`2904f6ef : fffffadf`37fb3d20 fffffadf`36b5e608 fffffadf`37d2c120 fffffadf`37f24540 : NDIS!ndisMRequest+0xdb fffffadf`29c63cc0 fffff800`010375ca : fffffadf`37f24550 fffffadf`2904f620 fffffadf`387f8040 fffff800`011cd9c0 : NDIS!ndisMRundownRequests+0x44 fffffadf`29c63d00 fffff800`0124a972 : fffffadf`387f8040 00000000`00000080 fffffadf`387f8040 fffffadf`29893680 : nt!ExpWorkerThread+0x13b fffffadf`29c63d70 fffff800`01020226 : fffffadf`2988b180 fffffadf`387f8040 fffffadf`29893680 00000000`00000000 : nt!PspSystemThreadStartup+0x3e fffffadf`29c63dd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16  STACK_COMMAND:&nbsp; kb  FOLLOWUP_IP:  yk51x64+bacd fffffadf`25414acd 488b4838&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp; rcx,qword ptr [rax+38h]  SYMBOL_STACK_INDEX:&nbsp; 3  SYMBOL_NAME:&nbsp; yk51x64+bacd  FOLLOWUP_NAME:&nbsp; MachineOwner  MODULE_NAME: yk51x64  IMAGE_NAME:&nbsp; <b><font color=#b31c00>yk51x64.sys </font></b> DEBUG_FLR_IMAGE_TIMESTAMP:&nbsp; 4757f90e  FAILURE_BUCKET_ID:&nbsp; X64_0xD1_yk51x64+bacd  BUCKET_ID:&nbsp; X64_0xD1_yk51x64+bacd  Followup: MachineOwner ---------   Marvell 의 네트워크 이더넷 드라이버중, x64 드라이버가 문제가 있는 것 같습니다. 자주 그런것은 아니고 간헐적으로 그런것 같고,.&nbsp; 위 오류도 2007-12-28(10.51.3.3)&nbsp;드라이버에서 발생 하였습니다.  물론, 하드웨어 적인 이더넷 모듈 이나 메인보드에 문제가 있을수 있지만,. 문제가 Marvell 드라이버에서만 발생한다는 점이겠죠.? ^^  문제가 발생하였던 운영체제는, Windows Server 2003 Enterprise x64  이와 관련된, Marvell 드라이버와 관련된 오류중 하나도 있습니다. <a href="http://www.wssplex.net/QnA/EventId.aspx?No=219" target=_blank><font color=#006bd4>http://www.wssplex.net/QnA/EventId.aspx?No=219</font></a>  서버 메인보드에 주로 장착이 되어 있는, 이더넷 모듈인데,. INTEL 의 서버 메인보드는 몇년전에도 장착이 되어 있었고, 최근 2년전 보드중에는&nbsp;<a href="http://support.intel.com/support/motherboards/server/se7520bd2" target=_blank><font color=#006bd4>SE7520BD2</font></a>&nbsp;이고, 요즘 나오는 S5000V 는 2개 이더넷 모듈 모두 INTEL 것입니다. </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=483" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=483</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>MEMORY.DMP</category>
      <category>DRIVER_IRQL_NOT_LESS_OR_EQUAL</category>
      <category>yk51x64</category>
      <author>wssplex</author>
      <pubDate>Mon, 18 Aug 2008 01:11:12 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[RPC over Http/s - Exchange 와 Outlook 연결]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=481</link>
      <description><![CDATA[<table><tr><td><a href="http://www.wssplex.net/TipnTech.aspx?Seq=480" target=_blank><font color=#006bd4>RPC over Http/s - 서버를 RPC 프록시 서버로 구성</font></a>&nbsp;을 통해서 서버측의 구성은 모두 완료된 상태입니다. 이제 부터는 Exchange Server 와 Outlook 의 실제적인 연동 구성 방법 입니다.   <img src="http://www.wssplex.net/images/TipnTech/Exchange/exchange-rpc-over-http.gif" /> <font color=#747474>&lt;그림. TechNET&gt; </font>  Outlook 에서 Exchange Server&nbsp; 연결시 RPC Proxy 를 이용하여 상호 작동되는 전체적인 프로세스 입니다. 그림을 보면 쉽게 알수 있듯이, Outlook 사용자는 직접 적인&nbsp;글로벌&nbsp;카달로그 서버에 연결하여 인증을 받는게 아니라&nbsp;RPC Proxy&nbsp;에 Http 를 통해서 들어온 RPC 패킷을 Exchange Server 받아서 대신 인증절차를 완료하는 방법입니다.  좀더 자세한 사항은, 도움말이나 TechNET 을 참고해 보시기를 추천 드립니다. <a href="http://technet.microsoft.com/ko-kr/library/aa998950(EXCHG.65).aspx" target=_blank><font color=#006bd4>http://technet.microsoft.com/ko-kr/library/aa998950(EXCHG.65).aspx</font></a>  다음 부터는 Outlook 에서의 <font color=#b31c00>RPC over Http/s</font> 이용을 위한 구성 방법 입니다. 매우 쉽긴 하나 개념을 이해하고 있으면 더욱 좋겠죠?..^^   <b>1.</b> 다음 부터는 아웃룩 설정입니다. Active Directory 연동이고 Exchange 와 Outlook 의 모든 기능을 사용하기 위해서는 "<b>Microsoft Exchage Server</b>" 를 선택합니다. 당연히 내부 네트워크 에서는 이렇게 이용을 했겠지요... 내부 네트워크와 동일하게 외부 네트워크 에서도 Outlook 을 사용하기 위해서 RPC over Http/s 구성을 하는 것이니깐요.^^  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-6.gif" />   <b>2</b>. 다음 과정에서는 실제 Active Directory 에 사용자(사서함)이 있는지 확인하는 과정입니다. 아래 화면에서 서버이름과 사용자 이름을 넣은 다음에 "<b>이름 확인</b>" 을 하게 되면 보통 네부 네트워크를 이용한 것처럼 기본 연결이 됩니다. 즉 RPC 프록시를 통해서 인증이 된것이 아닙니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-7.gif" />  그래서,. RPC 프록시를 통해서 인증이 되기 위해서는 "이름 확인" 전에 "<b>기타 설정</b>" 에서 Http 를 이용하도록 사전에 설정을 해주어야 합니다. 다음과 같이 "연결" 탭에서 "<b><font color=#b31c00>인터넷에서 Exchange 사용</font></b>" 을 체크하고 "<b>Exchange 프록시 설정</b>" 에서 앞서 RPC 프록시가 IIS 에 구성된 정보를 설정해 주면 됩니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-9.gif" />  "Exchange 프록시 설정" 의 세부 등록 화면에서 다음과 같이, 익스체인지가 설치된 또는 RPC 프록시가 구성된 웹사이트 주소를 지정해 주면 됩니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-10.gif" />  "SSL만 사용하여 연결" 은 웹서버 SSL 인증서가 구성되어 있는 RPC 프록시인 경우에 체크를 해주면 됩니다. 보통 SSL 인증을 사용하라고 하는 이유는 Http 패킷(인증 및 메일등 전체 패킷)을 암호화 하기 위함 입니다.  "프록시 인증 설정" 은 기본값 그대로 "NTLM 인증" 을 사용하면 됩니다. 평문 인증을 사용하면 보안상 위험하기 때문이지요..^^   <b>3</b>. 위와 같은 구성이 끝났다면,. 다시 2번째 과정의 화면 처럼 "<b>이름 확인</b>" 을 하여 이름 확인이 완료되면 RPC over Http/s&nbsp;를 이용한&nbsp;Exchange 와 Outlook 연결 구성이 완료된 것입니다. </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=481" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=481</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>RPC</category>
      <category> RPC over Http/s</category>
      <category> 프록시</category>
      <category>Exchange</category>
      <category>Outlook</category>
      <category>Exchange 프록시 설정</category>
      <category>RPC-HTTP</category>
      <author>wssplex</author>
      <pubDate>Thu, 14 Aug 2008 02:05:15 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[RPC over Http/s - 서버를 RPC 프록시 서버로 구성]]></title>
      <link>http://www.wssplex.net/TipnTech.aspx?Seq=480</link>
      <description><![CDATA[<table><tr><td>우리나라 광대역(WAN) 인터넷망은 지난 인터넷 대란의 경험 때문에 Windows 에서 핵심으로 사용되는 포트중 몇개를 막아 놓은 ISP가 많습니다.  주로,. 135(RCP), 139(NetBIOS), 445(SMB) 등입니다.  이것 때문에 RPC over Http/s 기술이 나온것은 아니고,. 방화벽을 우회하기 위한 방법중 하나로 Http 프로토콜을 이용하기 위해서 Windows Server 2003 에서 지원하는 기술중 하나 입니다.  현재는 주로, Exchange Server 와 Outlook 과의 연동을 위한 방법으로 사용 되고 있습니다.  RPC over Http/s&nbsp;에 대한 기술 문서는 인터넷상에 매우 많으므로, 여기서 잡담은. 생략하고 간략하게 스샷을 기준으로 구성 방법 입니다.   <b>1</b>. RPC over Http/s 를 사용하기 위해서는 IIS가 사전에 설치되어 있어야 합니다. 그 다음으로 제어판/프로그램 추가 삭제에서 아래와 같은 "HTTP 프록시 RPC"&nbsp; 구성요소를 설치해 주어야 합니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-1.gif" />  RPC over Http/s 는 그 이름처럼, HTTP 프로토콜을 이용하기 때문에 HTTP 프로토콜을 처리하기 위해서는 IIS 설치가 필요합니다.   <b>2</b>. 뭐 없습니다. 그냥,. "HTTP 프록시 RPC" 구성 요소만 설치하면 끝 입니다. 구성요소를 설치하고 나면 다음과 같이 RPC 프록시 구성이 되어 있습니다.  
<div><img style="BORDER-RIGHT: #8c8c8c 1px solid; BORDER-TOP: #8c8c8c 1px solid; BORDER-LEFT: #8c8c8c 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid" src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-2.gif" border=0 name=target_resize_image[] /></div> RPC 패킷은,. 2가지를 제공하는데요. 보통의 Http 패킷과, SSL(인증서) 패킷 처리를 위한 2가지 프록시가 설정되어 있으며,. 다음과 같이 "웹 서비스 확장" 에도 추가 되어 있습니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-5.gif" />  위 2가지는 단순하게,. 라이브러리 dll 파일을 가상 폴더와, 웹서비스 확장에 추가한 정도 입니다. 혹시 삭제 되더라도 그냥 직접 등록해도 상관은 없습니다. 그리고, ISAPI 항목에도 추가되어 있습니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-11.png" />  RPC 등록정보의 보안-인증방법 에서, "기본 인증" 외 체크를 해제하면 됩니다. 물론 Windows 통합 인증도 가능하지만,. 실제로 Outlook 에서 SSL 인증을 하지 않으면 RPC Proxy 를 통해서 로그온이 되지 않습니다. 매뉴얼에는 SSL 이 절대적이지 않다고 하는데... -_-;;  
<div class=code>..).-...).....E. .y..@........~.. .l.P.s..*.....P. ..:...HTTP/1.0 4 01 Anonymous req uests or request s on <font color=#b31c00>unsecure ch annel are not al lowed..</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div> SSL 을 이용하면, 평문 형태로 인증을 하는 "기본 인증" 을 이용 Outlook 에서 설정이 가능하며,. 사용자 확인등 정상적인 과정이 문제 없이 진행 됩니다.  그래서,. 되도록이면 RPC Proxy 가 설정된 웹사이트 인스턴스에 SSL 을 설정해 주는 것이 좋습니다. SSL 는 정상적인 공용 SSL 말고, 그냥 사설 SSL 을 설정해도 상관 없으며,<font color=#006bd4> IIS Resources Kits 의 SelfSSL</font> 을 이용하면 됩니다.  이로서,. 서버에서의 RCP 프록시 구성은 끝났습니다. 위 RPC 프록시로의 전달된 Http 패킷의 내용에 따라서 RPC 프록시가 요청된 서비스 로의 요청을 전달하고 전달 받는 중계 역할을 하는 것입니다.  실제 패킷을 보면, 다음과 같이 클라이언트 측의 Outlook 에서 Exchange Server 측에 패킷을 전달 합니다.  
<div class=code>..).....).-...E..*5?@........l.. .~.s.P......*.P...e...<font color=#b31c00>RPC_IN_DAT A /rpc/rpcproxy.dll?wssplex-vm1. wssplex.net:6002</font> HTTP/1.1..Accep t: application/rpc..User-Agent:  MSRPC..Host: wssplex-vm1.wssplex .net..Connection: Keep-Alive..Ca che-Control: no-cache..Pragma: n o-cache..Authorization: NTLM TlR MTVNTUAADAAAAGAAYAI4AAAAYABgApgA AAA4ADgBIAAAAGgAaAFYAAAAeAB4AcAA AAAAAAAC+AAAABYKIogUBKAoAAAAPdwB zAHMAcABsAGUAeABhAGQAbQBpAG4AaQB zAHQAcgBhAHQAbwByAEcARwBHAEcARwA tADEAWgBYAEYASgBKADcATwBKAHjMj8t b5rV/AAAAAAAAAAAAAAAAAAAAAOexBsr j1KHZkBbl0wmIxiLeMKEtJpFZsw==..C ontent-Length: 4........ </div>  그 다음으로,.  Exchange Server 에 RPC-HTTP 탭이 있는지 부터 확인해 봐야 합니다. 없다면,. 서비스팩이 설치되어 있지 않으므로 서비스 팩을 설치해야 합니다. 서버 구성에 따라서 프런트 엔드 서버 또는 백 엔드 서버 지정을 할수 있습니다.  <img src="http://www.wssplex.net/images/TipnTech/Exchange/Exchange-Outlook-RPC-over-Http-3.gif" />  GUI 에서, RPC-HTTP 구성을 하지 않았다면,. 다음과 같이 레지스트리에 직접 등록해 줘도 상관 없습니다. GUI 에서 두가지 구성중에 하나라도 설정이 되어 있으면 자동으로 아래와 같이 레지스트리 값이 등록 됩니다.  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters] "NSPI interface protocol sequences"=hex(7):6e,00,63,00,61,00,63,00,6e,00,5f,00,\ &nbsp; 68,00,74,00,74,00,70,00,3a,00,36,00,30,00,30,00,34,00,00,00,00,00  그리고, RPC over HTTP validport (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy) 설정은 레지스트리를 직접 수정해도 상관없지만,. 리소스킷의 rpccfg 또는&nbsp;다음 유틸을 이용해도 좋습니다.  <iframe style="BORDER-RIGHT: #dde5e9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #dde5e9 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 3px; BORDER-LEFT: #dde5e9 1px solid; WIDTH: 240px; PADDING-TOP: 0px; BORDER-BOTTOM: #dde5e9 1px solid; HEIGHT: 66px; BACKGROUND-COLOR: #ffffff" marginWidth=0 marginHeight=0 src="http://cid-98a8c75a7f812262.skydrive.live.com/embedrowdetail.aspx/%ea%b3%b5%ec%9a%a9/Exchange/exchange-rpc-over-http-rpcnofrontend.zip" frameBorder=0 scrolling=no></iframe> </td></tr></table><br />[원본글전체: <a href="http://www.wssplex.net/TipnTech.aspx?Seq=480" target="_blank">http://www.wssplex.net/TipnTech.aspx?Seq=480</a>]<br />서버주무르기 <a href="http://www.wssplex.net/" target="_blank">http://www.wssplex.net/</a> - Windows-서버운영-서버관리-팁앤테크-Q&amp;A]]></description>
      <category>팁앤테크</category>
      <category>RPC</category>
      <category>RPC over Http/s</category>
      <category>프록시</category>
      <category>RPC Proxy Server Extension</category>
      <category>RpcWithCert</category>
      <author>wssplex</author>
      <pubDate>Thu, 14 Aug 2008 01:36:50 GMT</pubDate>
    </item>
  </channel>
</rss>