在web farm中架设需要证书的wcf

makecert -r -pe -n "CN=颁发给" -ss My -sky exchange

此为证书的生成命令,其中“颁发给”需要替换成具体的机器。

 

颁发给谁,则要使用对应的方式来访问服务

如颁发给www.abc.com则在引用服务的web.config中address就应该是https://www.abc.com/service.svc

同样,机器名,公网ip和内网ip。

如果你办法给内网ip,而使用https://公网ip/service.svc来访问,他俩本来就是一台机器,但是因为证书不匹配,所以会包证书错误

image

 

对于一般的https网站,可选用域名,公网ip,内网ip,机器名等。

但是iis7上https默认不能指定主机名,所以域名不考虑

在web farm中加入机器时,只能使用ip,不能使用机器名,所以机器名也不考虑。

剩下2种选择,公网ip或内网ip。

 

一般来说,web farm服务器和具体的web服务器都是在同一个局域网的,所以web farm访问web服务器可用内网ip,也就是具体的web服务器的证书可颁发给内网ip

web farm本身,如果服务是对外开放的,则需要是公网ip,如果也是内部使用,则可以使用内网ip。

 

以web farm与web都是内网为例(2台web服务),

我们首先需要制作3个证书,分别颁发给3个服务器的内网ip。

在各自的机器上(Ctrl+R mmc 中)导入自己ip的证书到

image

导入到这里是为了建立https网站使用的

web服务器上分别建立ssl站点,承载wcf

image

绑定的使用,ssl证书选择自己的ip相同的证书

image

image

此处客户端证书一定要忽略。因为最终是web farm来访问这个的。如果不忽略,web farm 502。

 

在web farm服务器中

image

受信任的,导入2台web服务器的证书,因为web farm服务要调用具体的web服务器,所以需要加入到受信任的根

image

这里加入自己的,用于做https网站

 

建立一个https网站,设置与web服务器一直,证书选用web farm自己的。

这个网站是为了web farm负载用的,如果没有这个网站,web farm本根就负载不起来。

建立farm

image

servers在添加的时候,必须填web服务器的内网ip,相当于在web.config里填写的address的ip

image将默认建立的arr url重写规则修改,http改为https,可以进一步定义更多的条件。

 

web服务器上wcf的web.config每台都不太一样

image

此处配置需要与自己的内网ip一致,他其实找的是证书,因为证书颁发给的是内网ip,所以这里和内网ip一致。

 

调用wcf的web.config。

image

这里填写的是web farm的地址,如果web farm的https网站使用的内网证书则使用内网,外网则使用外网。

posted @ 2012-12-13 16:00  czcz1024  阅读(302)  评论(0编辑  收藏  举报