web服务发布问题,高手来瞧瞧!

zhjzh_zjz 2003-11-24 10:12:30
怎么样把内部WEB SERVICE发布到外部网?比如,将企业内部ERP(intranet中)系统中订单生成功能封装成一个WEB服务,现在,在企业门户网站上希望用上这个服务,现在企业门户是对外的,在外部网上,怎么样能用上这个内部的WEB服务?

我现在要做企业集成,要在外网上用一些内部的功能,是不是实现的方法不对,我觉得这样没办法实现,请教大虾,有何良策????
...全文
88 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
OhSky 2003-11-28
  • 打赏
  • 举报
回复
学习
zhjzh_zjz 2003-11-28
  • 打赏
  • 举报
回复

首先解释一下 停火区:

为了在保护Web服务器和内部网络的安全,当前使用的更安全的做法是实现双层防火墙。外层防火墙实现包过滤功能,然而却允许外部网络访问其中的Web服务器,内部防火墙允许最中间的内部网络可以访问外部网络。在外部防火墙和内部防火墙之间称为停火区,提供外部网络访问的服务器就位于这个区域,表明即使攻击者通过外部防火墙进入这个区域,也无法攻入内部网络。双层防火墙通过设置了两层防火墙,使得内部网络更为安全。然而,它在保护Web服务器方面的作用,与单层防火墙相似。因为此时Web服务器仍然只受到一层防火墙的保护,同样也无法对外部隐藏防火墙内主机的各种信息,例如服务器的ip等。而且这层防火墙是对应用协议一无所知的包过滤防火墙,由于包过滤的方式不识别应用协议,通常为http协议,那么就无法正确识别外部的连接请求是否属于正常连接,通常也无法进行详尽的连接记录。为了更好的保护Web服务器不被外部攻击者破坏,就应该屏蔽内部服务器的IP地址等信息,并且防火墙能够识别连接协议,显然这是代理型防火墙的任务。



我的目的是这样的:

我已经建立好一个WEB SERVICE,按照上面两位的说的方法。现将此web 服务发布到放置在停火区 的那台对外的WEB服务器上,不光该web服务器可以使用,还希望外部用户也能使用该服务,这就要求将该服务发布到广域网上。在最外层防火墙和因特网之间需要建立一个访问代理才能让广域网上的应用调用到该服务,是不是这样的?在最外层防火墙和因特网之间 还必须有一个反向代理才能让对外WEB 服务器可用,不然因特网上的用户访问不了。我说得对吗?不知道我的理解是否正确,望指教,谢谢!

zhjzh_zjz 2003-11-27
  • 打赏
  • 举报
回复
网络迷失 大侠告诉我 可以这样:

最简单的做法就是直接把WebService放到网关中.
再不然在路由上把80端口影射到WebService的服务器中。
另外一个方法就是在Internet服务器上建一个WebService的代理.
做法如下
[WebMethod]
public int GetCount(int customerid)
{
return new IntranetWebService().GetCount(customerid);
}

------------
如果Internet服务器也不能直接访问Intranet的WebService
那么综合一点的做法,

在Internet服务器上做WebService的代理,Intranet方面也应该提供一个端口,例如888

Internet上的WebService代理如下:
[WebMethod]
public int GetCount(int customerid)
{
IntranetWebService truews=new IntranetWebService();
truews="http://xxx.xxx.xxx.xxx:888/TrueWebService.asmx";
return truews.GetCount(customerid);
}



感觉和 moonpiazza(月下小生) 说得差不多.我查过一些 反向代理我静态端口映射的资料.如果企业用双防火墙,将对外web服务器放在 停火区,在这上面做一个访问代理,应该就可以了。不知道是不是这样的,希望哪位大哥能把这个过程讲清楚一点,谢谢了!
swich 2003-11-27
  • 打赏
  • 举报
回复
学习
hover_online 2003-11-27
  • 打赏
  • 举报
回复
我不知道你要干什么,我想大概意思是要把一台内网的服务器放到公网,你可以把这台服务器放到防火墙的中立去(也就是你说的停火区,晕,头次听说还有人这么叫),再作一个NAT变换,具体讲是叫虚拟主机,就是针对80端口的目的地址变换,另外要加一条从外口到中立区通过的规则,这样以保护web服务器。
myand 2003-11-25
  • 打赏
  • 举报
回复
这是个如何架设网络的问题,可以用反向代理实现,简单说就是怎样在FIREWALL、NAT上进行静态端口映射的问题
lang11zi 2003-11-25
  • 打赏
  • 举报
回复
up
zhjzh_zjz 2003-11-25
  • 打赏
  • 举报
回复
请问这位高手--moonpiazza(月下小生):

新构建一新的WEB SERVICE,只封装了调用方式,数据逻辑调用内部WEB SERVICE实现


外网是独立的IP地址,全球唯一的,而内网是保留地址 192.168.*。*,数据逻辑调用内部WEB SERVICE 能调用得了吗???它(外部发布的新建的WEB SERVICE)怎么找到这个内部的WEB SERVICE???

我只知道内部访问外部可以通过代理实现,不知道外部怎么样能调用内部的(WEB SERVICE)??

望不吝赐教,解释一下原理,谢谢!


月光易水 2003-11-25
  • 打赏
  • 举报
回复
外部网服务器是否可以使用内部WEB SERVICE?
a. 可以
1. 新构建一新的WEB SERVICE,只封装了调用方式,数据逻辑调用内部WEB SERVICE实现
2. 将新的WEB SERVICE外部网发布

b.不可以
那就必须在外部网上发布类似的WEB SERVICE



:_)

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧