实验环境拓扑:
在ISA Server 2006中发布安全的Web服务器和在ISA Server 2004中进行发布基本一致。在进行发布之前首先要确保ISA Server 2006服务器能够访问企业内部的安全Web服务器,并且不能出现任何错误提示。
如何使用ISA Server 2006发布一个安全的Web服务器呢?
我现在来到一台完全计算机名称(FQDN)叫做Denver.yejunsheng.com的计算机 它是森林中第一台域控制器 我已经在这台计算机上安装Exchange Server 2007和企业根CA服务了 通过开始--程序--管理工具--按Internet信息服务(IIS)管理器来打开它--展开网站--对着默认网站右键--选择属性--按目录安全性--在身份验证和访问控制里面按编辑--把启用匿名访问的沟去掉--把基本身份验证(以明文形式发送密码)沟上--在默认域里面选择yejunsheng.com(域名)--按确定
在目录安全性选项的安全通信里面按查看证书--可以看到我已经提前为默认网站申请一个叫做Denver.yejunsheng.com的Web服务器身份验证证书了
在目录安全性选项的安全通信里面按编辑--把要求安全通道(SSL)沟上--按确定
我现在来到一台完全计算机名称(FQDN)叫做Paris的计算机 它是第一台ISA Server 2006服务器同时是配置存储服务器 我已经把这台ISA Server 2006服务器加入yejunsheng.com这个域中了 注意: 在发布安全的Web服务器之前需要把CA服务器的根证书导入ISA Server 2006服务器的受信任的根证书颂发机构里面 通过开始--运行--输入mmc按确定来打开控制台--按文件--按添加/删除管理单元--在添加/删除管理单元里面按添加--在添加独立管理单元里面按证书--按添加--在该管理单元将始终为下列账户管理证书里面选择计算机账户--接着下一步--在这个管理单元将始终管理里面选择本地计算机(运行这个控制台的计算机) 按完成 展开证书(本地计算机)--受信任的根证书颁发机构--对着证书右键--选择所有任务--按导入--接着下一步--按浏览--找到CA服务器的根证书(Denver.yejunsheng.com_Denver CA.crt)--按打开--接着下一步 按完成就ok了 在受信任的根证书颁发机构里面可以看到我已经将CA的根证书导入受信任的根证书颁发机构里面了-->Denver CA
我已经在Paris这台计算机上新建一条访问规则允许来允许http https ping这三种协议从本机主机(ISA Server 2006服务器)到企业内部的访问了 打开IE浏览器--在地址里面输入https://Denver.yejunsheng.com/按回车键--输入用户名(yejunsheng\administrator)和密码--按确定--可以看到ISA Server 2006服务器能够访问到企业内部安全的Web服务器的内容了-->This is a secure web site!
在发布安全的Web服务器之前需要在ISA Server 2006服务器上绑定一个公共名称的证书--我现在为这台ISA服务器申请一个公共名称的证书--打开IE浏览器--在地址里面输入https://Denver.yejunsheng.com/certsrv/按回车键--输入用户名(yejunsheng\administrator)和密码--按确定--在申请证书的主页的选择一个任务里面按申请一个证书
在申请一个证书里面按高级证书申请--在高级证书申请里面按创建并向此CA提交一个申请。
在证书模板里面选择Web服务器--用于脱机模板的识别信息里面的姓名就叫做www.yejunsheng.com(公共名称)吧--把将证书保存在本地计算机存储中沟上
按提交 此时它提示此网站正在代表您请求一个新的证书。您应该只允许信任的网站为您请求证书。您想现在请求证书吗? 你按是
按安装此证书--此时它提示您想让此程序现在添加证书吗? 如果您信任此网站,请单击"是"。否则,请单击"否" 你按是就ok了 通过开始--运行--输入mmc按确定来打开控制台--按文件--按添加/删除管理单元--在添加/删除管理单元里面按添加--在添加独立管理单元里面按证书--按添加--在该管理单元将始终为下列账户管理证书里面选择计算机账户--接着下一步--在这个管理单元将始终管理里面选择本地计算机(运行这个控制台的计算机)--按完成--按闭关--按确定 展开证书(本地计算机)--个人--按证书--可以看到我刚才申请的公共名称(www.yejunsheng.com)的证书了 接下来就可以使用ISA Server 2006发布安全的Web服务器了
打开ISA Server 2006管理控制台--展开阵列--Paris--对着防火墙策略(Paris)右键--按新建--选择网站发布规则
Web发布规则名称就叫做Publish a secure web site吧 接着下一步
在符合规则条件时要执行的操作里面选择允许 接着下一步
在发布类型里面选择发布单个网站或负载平衡器 接着下一步
在服务器连接安全里面选择使用SSL连接到发布的Web服务器或服务器场(即使用HTTPS来连接被发布的安全Web服务器) 接着下一步
在内部发布详细信息里面输入内部站点名称(Denver.yejunsheng.com)--为了便于ISA Server 2006服务器连接到内部的安全Web服务器,建议你把使用计算机名称或IP地址连接到发布的服务器沟上,然后输入服务器的IP地址(10.1.1.5)--接着下一步
如果你想发布内部Web站点的路径的话就在路径里面输入相应的路径--在此我发布全部路径--接着一步
在公用名称里面输入在ISA Server 2006服务器上申请证书时候的名称(www.yejunsheng.com) 接着下一步
在选择Web侦听器里面按新建
Web侦听器名称就叫做TCP443吧 接着下一步
在客户端连接安全设置里面选择需要与客户端建立SSL安全连接 接着下一步
在侦听这些网络上的传入Web请求里面把外部沟上--按选择IP地址
在下列地址上侦听里面选择在此网络上选择的IP地址--把可用的IP地址(39.1.1.1)添加到选择的IP地址里面--按确定
接着下一步
在侦听器SSL证书里面选择为每个IP地址分配一个证书--按39.1.1.1这个IP地址--按选择证书
选定www.yejunsheng.com这张有效证书--按选择
接着下一步
在身份验证设置里面,设置 ISA Server 2006 是否对请求访问的客户进行身份验证。需要注意的是,此身份验证是由 ISA Server 要求客户进行,和被发布的Web服务器没有任何关系。不过在 ISA Server 2006 中增强了对于身份验证委派的支持,因此你可以设置 ISA Server 要求客户身份验证,然后 ISA Server 再将通过身份验证的客户所提交的身份验证凭据委派到被发布的Web服务器,从而避免客户端被提示要求进行多次身份验证。在此我不需要ISA Server 2006对客户端进行身份验证,因此选择没有身份验证,接着下一步
在单一登录设置里面 由于只有基于HTTP表单的身份验证才支持SSO 因此无法进行配置 接着下一步
按完成
接着下一步
在身份验证委派里面 由于被发布的安全Web 服务器可能会要求客户端进行身份验证 因此我选择无委派,但是客户端可以直接进行身份验证 接着下一步
接着下一步
按完成 在ISA Server 2006管理控制台里面按应用
我来到一台计算机名称叫做Istanbul的计算机 它是Internet上的一台计算机 通过开始--运行--输入mmc按确定来打开控制台--按文件--按添加/删除管理单元--在添加/删除管理单元里面按添加--在添加独立管理单元里面按证书--按添加--在该管理单元将始终为下列账户管理证书里面选择计算机账户--接着下一步--在这个管理单元将始终管理里面选择本地计算机(运行这个控制台的计算机) 按完成 展开证书(本地计算机)--受信任的根证书颁发机构--对着证书右键--选择所有任务--按导入--接着下一步--按浏览--找到CA服务器的根证书(Denver.yejunsheng.com_Denver CA.crt)--按打开--接着下一步 按完成就ok了 在受信任的根证书颁发机构里面可以看到我已经将CA的根证书导入受信任的根证书颁发机构里面了-->Denver CA 注意: 如果你想使用Istanbul这台Internet上的计算机来访问到企业内部安全的Web服务器的话是需要把Denver.yejunsheng.com这台CA服务器上的CA根证书导入本地计算机的受信任的根证书颁发机构里面 否则的话是不能访问到企业内部的那台安全的Web服务器
我在Istanbul这台计算机上打开IE浏览器--在地址里面输入https://www.yejunsheng.com/按回车键--输入用户名(yejunsheng\administrator)和密码--按确定 看到了吧? 可以看到企业内部那台安全Web服务器的网站内容了-->This is a secure web site! 说明Paris.yejunsheng.com这台计算机(ISA Server 2006服务器)已经成功把企业内部安全的Web服务器发布出去了 注意: 当你使用Istanbul这台计算机访问企业内部安全的Web服务器之前是需要把本地计算机上的hosts文件修改一下 让它能够解析到ISA Server 2006服务器外部网卡的公用名称才行的 否则的话你会发现不能访问的 从上图可以看到我已经在本地计算机上的hosts文件里面添加一条39.1.1.1 www.yejunsheng.com的记录了
如何使用ISA Server 2006发布Exchange Server 2007安全的OWA呢?
我来到Denver这台计算机 我已经在这台计算机上安装Exchange Server 2007客户端访问服务器角色、邮箱服务器角色和集线器传输服务器角色了 由于ISA Server 2006本身提供了基于表单的身份验证 所以我们不需要在客户端访问服务器上启用基于表单的身份验证功能了 打开Exchange管理控制台--展开服务器配置--按客户端访问--对着Exchange、Exchweb、owa和Public这4个目录右键--选择属性--然后把这4个目录的身份验证修改成基本身份验证--按确定
注意: 当你把这4个目录的身份验证修改成基本身份验证之后是需要重新启动IIS服务的 通过开始--运行--输入cmd按确定来打开命令提示符--在里面输入iisreset /noforce 按回车键
我来到Paris.yejunsheng.com这台ISA Server 2006服务器 打开ISA Server 2006管理控制台--展开阵列--Paris--按防火墙策略(Paris)--在右边按工具箱选项--按新建--选择Web侦听器
Web侦听器名称就叫做EX07 OWA吧 接着下一步
在客户端连接安全设置里面选择需要与客户端建立SSL安全连接 接着下一步
在侦听这些网络上的传入Web请求里面把外部沟上--按选择IP地址
在下列地址上侦听里面选择在此网络上选择的IP地址--把可用的IP地址(39.1.1.1)从可用的IP地址里面添加到选择的IP地址里面--按确定--接着下一步
在侦听器SSL证书里面选择为每个IP地址分配一个证书里面按39.1.1.1这个IP地址--按选择证书
在从可用证书列表中选择一个证书里面选定www.yejunsheng.com这张有效证书--按选择
接着下一步
在选择客户端将如何向ISA服务器提供凭据里面选择HTML窗体身份验证--在选择ISA服务器将如何验证客户端凭据里面选择Windows(Active Directory)--接着下一步 注意: 因为我已经把ISA Server 2006这台服务器加入yejunsheng.com这个域里面了 所以在选择ISA 服务器将如何验证客户端凭据里面选择Windows(Active Directory) 如果你没有把ISA Server 2006加入域的话就需要选择LDAP(Active Directory)这种方式来进行身份验证了 LDAP这种身份验证方式可以让ISA Server 2006在没有加入域的情况下依然可以找域控制器来进行身份验证 但是你要确保ISA Server 2006能够解析到域控制器 所以你需要把ISA Server 2006本地计算机上的hosts文件修改成DC的IP地址 DC的完全计算机名称(FQDN) 然后把它保存就ok了
在单一登录设置的SSO域名里面输入.yejunsheng.com 接着下一步 启用单一登录有什么好处呢? 就是说当你访问OWA的时候同时还访问一个portal 比如说这个portal是叫做portal.yejunsheng.com的话 此时登录portal.yejunsheng.com这个网站的时候就不需要再进行身份验证了
按完成 在ISA Server 2006管理控制台里面按应用 接下来就是使用ISA Server 2006来发布Exchange Server 2007的OWA了
展开阵列--Paris--按防火墙策略(Paris)--在右边的任务选项的防火墙策略任务里面按发布Exchange Web客户端访问
Exchange发布规则名称就叫做Publish EX07 OWA吧 接着下一步
在Exchange版本里面选择Exchange Server 2007--在Web客户端邮件服务里面把Outlook Web Access沟上--接着下一步
在发布类型里面选择发布单个网站或负载平衡器--接着下一步
在服务器连接安全里面选择使用SSL连接到发布的Web服务器或服务器场--接着下一步
输入内部站点名称(Denver.yejunsheng.com)--接着下一步 注意: 输入内部站点的名称一定要和企业内部Denver.yejunsheng.com这台计算机上的默认网站里面的证书名称一样 否则会发布失败的
输入公用名称(www.yejunsheng.com)--接着下一步 注意: 这个公用名称就是在ISA Server 2006这台服务器上申请证书时候的公用名称
在Web侦听器里面选择EX07 OWA这个侦听器 接着下一步
在选择ISA服务器对发布的Web服务器进行身份验证时使用的方法里面选择基本身份验证--接着下一步
接着下一步
按完成 在ISA Server 2006管理控制台里面按应用
我来到Istanbul这台计算机--打开IE浏览器--在地址里面输入https://www.yejunsheng.com/owa按回车键--输入域\用户名(yejunsheng\administrator)和密码 按登录
看到了吧? 可以看到能够访问到企业内部Denver.yejunsheng.com这台Exchange Server 2007服务器上的Administrator这个用户的邮箱了 说明Paris.yejunsheng.com这台ISA Server 2006服务器已经成功把企业内部的Exchange Server 2007服务器的OWA发布出去了
如何使用ISA Server 2006发布Exchange Server 2007的Outlook Anywhere呢?
我来到企业内部Denver这台Exchange Server 2007服务器 通过开始--设置--按控制面板来打开它--在控制面板里面双击添加或删除程序来打开它--按添加/删除Windows组件--按网络服务--按详细信息--把HTTP代理上的RPC沟上--按确定 接着下一步进行安装
打开Exchange管理控制台--展开服务器配置--按客户端访问--按DENVER 在右边按启用Outlook Anywhere
在外部主机名里面输入www.yejunsheng.com(公用名称)--在外部身份验证方法里面选择基本身份验证--按启用
按完成 接下来就是需要使用ISA Server 2006来发布Exchange Server 2007的Outlook Anywhere了
我来到Paris.yejunsheng.com这台ISA Server 2006服务器--在ISA Server 2006管理控制台里面展开阵列--Paris--按防火墙策略(Paris)--在右边任务选项的防火墙策略任务里面按发布Exchange Web客户端访问
Exchange发布规则名称就叫做Publish Outlook Anywhere吧--接着下一步
在Exchange版本里面选择Exchange Server 2007--在Web客户端邮件服务里面把Outlook Anywhere(RPC/HTTP(s))和为Outlook 2007客户端在Exchange服务器上发布附加文件夹沟上--接着下一步
在发布类型里面选择发布单个网站或负载平衡器--接着下一步
在服务器连接安全里面选择使用SSL连接到发布的Web服务器或服务器场--接着下一步
输入内部站点名称(Denver.yejunsheng.com)--接着下一步 注意: 输入内部站点的名称一定要和企业内部Denver.yejunsheng.com这台计算机上的默认网站里面的证书名称一样 否则会发布失败的
输入公用名称(www.yejunsheng.com)--接着下一步 注意: 这个公用名称就是在ISA Server 2006这台服务器上申请证书时候的公用名称
在Web侦听器里面选择EX07 OWA这个Web侦听器--接着下一步
在选择ISA服务器对发布的Web服务器进行身份验证时使用的方法里面选择基本身份验证--接着下一步
接着下一步
按完成
在ISA Server 2006管理控制台里面按应用
我来到Istanbul这台Internet上的计算机 通过开始--设置--按控制面板来打开它--在控制面板里面双击邮件来打开它--在邮件里面按添加--配置文件名称就叫做Outlook Anywhere吧--按确定
在选择电子邮件服务里面选择Microsoft Exchange、POP3、IMAP或HTTP 接着下一步
把手动配置服务器设置或其他服务器类型沟上--接着下一步
在选择电子邮件服务里面选择Microsoft Exchange 接着下一步
输入Microsoft Exchange服务器(www.yejunsheng.com或者Denver.yejunsheng.com)和用户名(administrator)--按其他设置
按连接--在Outlook无处不在里面把使用HTTP连接到Microsoft Exchange沟上--按Exchange代理服务器设置
在使用此URL连接到我的Exchange代理服务器里面输入www.yejunsheng.com--在仅连接到其证书中包含该主体名称的代理服务器里面输入msstd:www.yejunsheng.com--把在快速网络中和在低速网络中使用TCP/IP连接沟上--在连接到我的Exchange代理服务器时使用此验证里面选择基本身份验证 按确定
按确定 接着下一步
按完成
通过开始--程序--Microsoft Office--按Microsoft Office Outlook 2007来打开它--在选择配置文件里面选择Outlook Anywhere这个配置文件--按确定
输入用户名(yejunsheng\administrator)和密码--按确定
看到了吧? 现在我在Istanbul这台Internet的计算机上已经可以通过Outlook Anywhere这种方式来访问到企业内部Denver.yejunsheng.com这台Exchange Server 2007服务器上的Administrator这个用户的邮箱了 整个访问的过程就是使用HTTPS访问的 如何证明它是使用HTTPS这种加密的方式访问的呢? 其实也很简单的 按住Ctrl键不放--然后按一下右下角的那个Outlook 2007图标--选择连接状态--可以看到当前是使用HTTPS建立连接的 另外还有一种证明方法就是在命令提示符里面输入netstat -na | find ":443"按回车键-->可以看到从39.1.1.7到39.1.1.1之间都是使用443端口建立连接的 此时说明Paris.yejunsheng.com这台ISA Server 2006服务器已经成功把企业内部的Denver.yejunsheng.com这台Exchange Server 2007的Outlook Anywhere发布出去了
本文出自 51CTO.COM技术博客