win 2008 server core 中配置远程管理iis

2012-5-3 王健宇 service

 从Win2000 Server到Win2003 Server,微软的Server系统已经用过了不少。2003界面好用了不少,AD的功能被增强,像森林级别,信任关系,身份验证等方面相对Win 2000 Server也有了增强。不过我感觉虽然增强的东西不少,还是没有太多新鲜的功能。去年开始用Windows Server 2008,感觉比Win 2003又要好的多。界面变化很大,虽然Vista风格的界面还不太适应,但是起码看上去漂亮了很多,比古板的Win2000和Win2003赏心悦目了不少。

  微软Server系统版本的升级照例要有很多的功能增强,像AD,尤其R2版本里面那个AD回收站功能非常的实用,这样免去了不少误删除的麻烦,给目录加了一重保险。另外,Win2008的确引入了很多之前从来没有的新东西,而并不仅仅是在原有基础上的升级。经历了5年的积累,Sever 08的变化相对之前的版本要明显的多。下面来谈谈新引入的几个功能:

  首先是虚拟化。微软的虚拟化软件大家应该并不陌生,像面向桌面端virtual PC,面向服务器虚拟化的virtual server。之前在为员工做培训的时候这些虚拟机用过了不少,说实话性能不敢恭维。虚拟机和物理机性能差距明显,系统资源占用也太大。而微软Server 08里面内置了一个全新的虚拟化软件Hyper-v,这让虚拟机的配置容易了很多。界面风格和一些功能虽然还能找到Virtual PC/Server的影子,不过功能很丰富,虚拟机的性能也提升了不少,是值得推荐的一个产品。

  另外Win Server 08增加了一个Server Core的安装模式,这是之前的Win Server都没有的,是一个全新的东西。安装好Server Core之后界面非常简洁,蓝色的背景、命令行窗口,其他一概精简。后来查阅了一下资料,原来Server Core是一个最小的系统安装模式,等于是去掉了几乎所有的应用界面,并且将支持的服务器角色降到最小,只能进行活动目录、DHCP、DNS、文件/打印、媒体、Web等几种服务器角色的安装。正因为只有很少的GUI和服务器角色,所有Server Core占用空间小,更加高效而且安全,降低了受攻击表面,不用安装不必要的补丁,对于应用简单追求安全的环境来说是个不错的好东西。

  虽然具有诸多优势,但是Win Server 2008的Server Core并不支持ASP.net,这对架设Web站点造成了限制,现在不用ASP的站点已经不多。而在R2中这种状况得到改观,R2中的Server Core提供了对部分.NET Framework子集和ASP.NET的支持,并且这些功能也是可选的,不需要的话不用安装,既能保证Server Core的精简,也使在Server Core中构架Web站点更加灵活。从微软网站上看,R2中的Server Core支持.NET Framework 3.5/3.0/2.0的子集,并且支持ASP.Net,除了没有IIS的GUI界面,其他功能基本都是完全的。

  但是,毕竟Server Core是一个最小的系统安装选项,虽然R2开始支持ASP.Net,但没有内置的管理控制台,配置和管理Server Core中的APS.NET站点需要在安装了IIS管理控制台的客户端计算机上远程进行,或者通过APPCMD工具,使用命令行控制台对IIS站点和应用进行管理。

  研究了一阵Server Core,也根据微软的文档在自己的R2上配置了一个简单的IIS站点,操作的感觉是并不是像想象的那么简单,如果让我选择的话,我还是更喜欢有GUI界面的配置过程…

  一、 网络拓扑

  首先我用R2自带的Hyper-v配置了两个虚拟机,拓扑图和服务器名称、IP地址、用户名和密码按照下图来配置:

点击查看原图

  Client VM: Win2K8R2Dev,安装Win2008, 作为客户端,IP=10.0.0.1

  Server VM: Win2K8R2Core,安装Server Core, 作为Web服务器,IP=10.0.0.3

  用户1: Administrator, p@ssw0rd

  用户2: student1, p@ssw0rd

  二、安装Web服务器角色

  1、用student1帐户登录安装Serve Core的Win2K8R2Core服务器。

  2、在命令行窗口中输入下述命令,察看已经启动和关闭的可选特性:

  dism /online /get-features /format:table

  需要注意的是Deployment Image Servicing and Management (DISM)工具是修改Server Core安装的首要工具。

  3、应用下述命令明确ASP.NET功能的配置状态:

  dism /online /get-features /format:table | find /I “ASP”

  4、DISM提供了一个额外的需要事先启用的功能列表:

  dism /online /enable-feature /featurename:IIS-ASPNET

  5、在安装Web Server角色、IIS和相关功能之前,需要确定.NET Framework是否已经被安装,应用DISM工具可以安装.NET Framework 2.0/3.0,可以通过下述命令安装:

  dism /online /enable-feature /featurename:NetFx2-ServerCore

  dism /online /enable-feature /featurename:NetFx3-ServerCore

  注意featurename参数是对大小写敏感的。

  6、之后我们要为服务器配置Web服务器角色,可以通过下述命令实现:

  dism /online /enable-feature /featurename:IIS-WebServerRole

  随后需要在IIS 7上启用ASP.NET,这就需要为服务器安装IIS-ASPNET角色,这一步是非常重要的,安装成功才能启用ASP.NET。但在安装IIS-ASPNET角色之前需要安装三个附加的角色:IIS-ISAPIFilter、IIS-ISAPIExtensions和IIS-NetFxExtensibility,可以通过下述命令安装:

  dism /online /enable-feature /featurename:IIS-ISAPIFilter

  dism /online /enable-feature /featurename:IIS-ISAPIExtensions

  dism /online /enable-feature /featurename:IIS-NetFxExtensibility

  三个附加角色安装成功后,才能安装IIS-ASPNET,还是通过dism命令:

  dism /online /enable-feature /featurename:IIS-ASPNET

  7、验证IIS服务是否已经开始运行:

  sc query w3svc

  三、安装IIS管理服务

  至此, Server Core服务器已经可以支持ASP.NET,但是,现在Server Core中并没有Win2008那样具有GUI的IIS管理控制台,这时候如果用户需要创建Web站点和Web应用,有两种方法可以实现:第一种是采用appcmd.exe命令行工具,在Windows系统文件夹中可以找到;或者开启IIS管理服务,通过IIS远程客户端的IIS管理控制台来创建。

  相比之下采用远程IIS控制台的方法要更加简单容易操作,下面我们来看看如何实现:

  1、选择远程管理控制台选项,并安装IIS管理服务:

  dism /online /enable-feature /featurename:IIS-ManagementService

  2、需要安装WAS-WindowsActivationService和WAS-ConfigurationAPI:

  dism /online /enable-feature /featurename:WAS-WindowsActivationService

  dism /online /enable-feature /featurename:WAS-ConfigurationAPI

  3、安装成功后,还需要更改一些注册表键值来激活管理服务:

  Reg Add HKLM\Software\Microsoft\WebManagement\Server /V EnableRemoteManagement /T REG_DWORD /D 1

  4、至此IIS管理服务已经安装好,但是需要注意的是默认情况下服务是处于停止状态的,如果需要IIS管理服务进入开启状态,需要通过net start命令启用,这点非常重要:

  net start wmsvc

  5、检查IIS管理服务是否已经正常启动:

  sc query wmsvc

  至此,在Win 2008 R2 Server Core中安装ASP.NET和IIS管理服务就完成了,现在的工作为在Server Core中发布Web站点做好了准备,

  四、配置Web站点

  1、首先需要做的是在Server Core Web服务器上c:\inetpub目录下创建文件夹,如\test\website,并将在客户端Win2K8R2Dev上创建好的Web站点拷贝到这里。

  mkdir c:\inetpub\test

  mkdir c:\inetpub\test\website

  xcopy \10.0.0.1SCRATCHwebsite*.* c:\inetpub\test\website\*.* /S

  2、在Server Core服务器上启用TCP 81端口,使我们可以通过http://10.0.0.3:81/website访问这个Web站点,我们可以通过命令行来实现,当然,也可以通过远程客户端的管理工具中Windows防火墙工具来实现。

  Netsh advfirewall firewall add rule name=“Port81” dir=in action=allow protocol=TCP localport=81

  3、如果Server Core服务器已经配置好允许远程管理,那么下面的工作我们就可以通过客户端安装的IIS管理控制台来操作了,非常简便。使用student1帐户登陆客户端Win2K8R2Dev,通过开始菜单--管理工具,打开IIS管理控制台,选择“Connect to a Server...”,如下图:

点击查看原图

  4、在下一个窗口中输入需要连接的Server Core服务器的计算机名:

点击查看原图

  5、输入Server Core服务器的帐号和密码,如student1, p@ssw0rd

点击查看原图

  6、最后一个步骤是创建一个连接,输入创建连接的名称:

点击查看原图

  连接成功后的Server Core服务器会被列在管理控制台的“Connection”面板中,可以用来管理Web站点和ASP.NET应用。

点击查看原图

  五、添加新的Web站点

  当和Server Core服务器连接成功后,现在需要来添加新的Web站点。在IIS管理控制台左边的树状管理结构中,右键点击Win2K8R2Core节点,选择“Add Web Site…”,在下面的窗口中添加新站点,将信息填充完全,包括站点名称“test”,物理路径、站点类型、IP地址和端口,主机名称等。

点击查看原图

  六、添加新的Web应用

  添加新的“test”Web站点后,在树状管理结构中展开“site”节点,显示出“test”节点,右键点击“test”选择“Add Application”,将下面的窗口信息填充完全:

点击查看原图

  七、开启匿名用户授权

  然后为“test”站点开启匿名用户的访问权限,在右面窗口中的“.NET Authorization Rules”选项中为“test”站点开启所有匿名用户的访问权限,如下图:

点击查看原图

点击查看原图

  八、验证访问

  配置好权限后,“test”站点就配置成功了,我们可以在客户端Win2K8R2Dev上通过http://10.0.0.3:81/website地址访问Server Core服务器上的站点是否发布成功:

点击查看原图

  至此,在Windows Server 2008 R2的Server Core中配置一个简单的IIS Web站点就完成了。整个过程感觉在Server Core上用命令行配置的过程比较麻烦,参数很容易出错,命令不太好记。后面通过远程客户端的管理控制台操作的过程就简单多了,图形界面一目了然。总体而言,Server Core还是适合比较有经验的IT用户。

标签: Server core中配置远程管理iis

评论:

liubingshao
2012-05-08 01:22
你好,由于某种原因,我不得不于六一儿童节前对贵站进行DDOS.....    .
时间: 上面说了  
事件: 上面也说了    
结果: 高流量,D死为止..    
      
请届时做好相关准备
王健宇
2012-05-08 18:44
@liubingshao:呵呵。为什么?

发表评论:

Powered by emlog sitemap