分类目录归档:环境构建

12个强大的Web服务测试工具

1.SoapUI (https://www.soapui.org/)

SoapUI是一个开源的,跨平台的测试工具。它可以自动操作功能、回归、合规以及SOAP和REST web服务的负载测试。它配备了一个易于使用的图形界面,并支持行业领先的技术和标准,以模拟和鼓励web服务的行为。

主要特征

  • 以一种Project、TestSuite、TestCase或LoadTest水平提供可打印,可导出,和基于HTML的报告。
  • 自带集成Hudson、Bamboo、Maven、ANT和JUnit。
  • 允许开发自己的一套功能作为SoapUI插件。
  • 记录、监视和显示所有数据。
  • 支持WS-Security和SSL解密。

2.TestingWhiz (http://www.testing-whiz.com/)

TestingWhiz是一种无编码测试自动化工具,自带API / web服务测试能力。它可以让你执行功能、回归、合规,以及基于HTTP和FTP通过WSDL接口的REST和SOAP web服务的负载测试和模拟。它也允许我们进行拒绝服务和渗透检查,以确保web服务的整体健康。此外,它还可以让你执行从端到端的测试,从Web UI,业务逻辑,到数据库和ETL,而无需编码。

  • 支持字符串比较来验证API响应。
  • 通过集成的bug跟踪工具,如JIRA,Mantis和FogBugz来帮助记录API缺陷。
  • 用一个收发邮件设施生成可视化的日志和测试执行报告。
  • 允许跨越多台机器和节点的分布式并行执行。
  • 用Jenkins、Bamboo & Hudson提供持续集成。
  • 支持数据驱动和关键字驱动测试。

3.SOAPSonar (http://www.crosschecknet.com/products/soapsonar.php)

SOAPSonar为HTML、XML、SOAP、REST和JSON提供了全面的web服务测试。它通过对OASIS和W3C标准的开箱即用提供了功能、性能、合规性、互操作性和安全测试。

  • 用XSD-mutation支持漏洞测试。
  • 提供全面的WSDL和Schema解析。
  • 用行为建模和多路同时负载事务来执行负载测试。
  • 提供XML,DOC,XLS,PDF,RTF和RPT格式的报告。
  • 与HP质量中心集成。

4.SOAtest (https://www.parasoft.com/product/soatest/)

SOAtest是利用Parasoft测试验证API和API驱动应用程序的一个企业级工具。它对功能单元,集成,安全性,仿真,模拟,合规以及技术,如REST、JSON、MQ、JMS、TIBCO、HTTP和XML的负载测试提供了强健的支持。

  • 提供端到端的测试。
  • 支持120+协议/消息类型。
  • 自带一个易于使用的界面。
  • 帮助创建复杂,可扩展和可重用的测试,而无需编码。
  • 支持连续集成测试。

5.TestMaker (http://www.pushtotest.com/testmaker-open-source-testing)

TestMaker是一个开源工具,通过PushToTest来测试和监测web,web服务和SOA应用程序的性能。它运行在Jython(用Java编写的Python)上。TestMaker可以重用Selenium测试,SoapUI测试,Sahi公司测试或任何用Groovy,Java,Python,PHP,Ruby和Perl写的测试到功能,负载和性能测试中。

  • 对于功能、负载和性能测试使用命令行提示。
  • 用标准的多窗口IDE提供一种直观的外观和感受。
  • 提供一个监测仪表板来运行测试,并显示实时结果。
  • 归功于Jython语言,因此允许访问所有的Java库和类。

6.Postman (https://www.getpostman.com/)

Postman是另一个API / web服务测试工具,它自带功能强大的HTTP客户端支持。它有一个易于使用的请求构建器,允许你编写测试用例和管理响应数据和响应时间,以便于API测试用例的高效测试和管理。

  • 允许在一个叫Postman Collections的功能中收集和组织API。
  • 促进协作和API数据以及团队控制的共享。
  • 自带粘贴文本的功能,用于在命令行窗口创建无障碍测试。
  • 允许在Postman界面内编写Boolean测试。

7.vRest (https://vrest.io/)

vRest是一个专门用于测试,模拟,以及REST API和Web服务验证的工具。它还支持与第三方API或HTTP服务交互的web,移动和桌面应用程序的测试。

  • 自带一个模拟服务器功能,可用于在几分钟内创建API模拟。
  • 提供了一个Chrome扩展来录制和播放测试案例。
  • 支持与用于服务器整合的Jenkins整合,以及与用于bug跟踪的Jira整合。
  • 有利于角色和权限管理。
  • 允许导出和引入测试用例和来自于外部工具,如Postman Collections、Swagger 2等的报告。

8.HttpMaster (http://www.httpmaster.net/)

HttpMaster是另一个用于REST web服务测试的专用工具。它可以帮助测试人员测试REST API的行为,并验证以如XML、JSON和HTML格式输出的数据。凭借其通用的HTTP工具,HttpMaster也可以帮助开发人员模拟客户活动和API应用程序的响应行为。

  • 自带一个易于使用和优雅的用户界面,不需要高级技术技能。
  • 使用如GET,POST,DELETE等的HTTP方法。
  • 提供不同的验证类型和表达式来缓解测试。
  • 对测试创建和执行使用命令行界面。
  • 允许存储所有信息——API调用和项目数据到一个独立的空间。

9.Runscope (https://www.runscope.com/)

Runscope是一个简单的工具,用来测试和监控API的性能。它可以帮助你验证是web服务还是API返回了正确的数据,同时当API出问题时给出提示。Runscope还支持API和移动app的后端服务测试。

  • 允许用动态数据为甚至更复杂的情况创建测试。
  • 显示视觉效果丰富的指标和分析来发现问题。
  • 集成如HipChat,Webhooks,Slack和PagerDuty的工具,以便于当API坏掉时发出通知。
  • 允许重用和执行跨多个地点的测试。
  • 方便在中心管理测试促进更好的团队协作。

10.Rapise (https://www.inflectra.com/Rapise/)

Rapise是一个健壮的自动化工具,有着强大和可扩展的功能。它基于一个开放和灵活的用于REST / SOAP网络服务的快速功能测试的体系结构。 Rapise还提供对web应用程序的支持,web应用程序用用Java,.NET,AJAX,Silverlight和Flash内置。

  • 使用HTTP标准方法,如POST,GET,PUT和DELETE。
  • 允许存储针对特定网络服务的原型请求。
  • 包含内置REST定义的生成器和对象库。
  • 自带强大的集成报告功能。
  • 支持跨浏览器测试和并行执行。

11.WebInject (http://www.webinject.org/)

WebInject是一款用于自动化功能,验收和回归web和web服务测试的免费工具。它是一个命令行工具,基于Perl,简化了测试的执行,因为它不需要在命令提示符上花时间。此外,它没有类似用户接口的IDE,这意味着,测试是在WebInject UI之外写入的。它可以在有Perl解释器的平台上运行。

  • 提供实时结果显示。
  • 监视系统响应时间。
  • 支持不同的用处——作为一个完整的测试框架,或作为一个独立的测试运行器。
  • 生成HTML和XML格式的报告。
  • 允许与其他系统集成,作为外部监督的插件。

12.Storm (http://storm.codeplex.com/)

最后,Storm是另一个CodePlex的开源工具,用来测试用Java或.NET编写的web服务。目前,它仅支持SOAP web服务。

  • 允许测试来自于独立UI的多个web服务。
  • 帮助编辑原始的SOAP请求。
  • 允许调用包含复杂数据类型的web服务方法。
  • 支持WCF app的测试。

以上来源码农网,并稍加处理。

DNS查询过程

DNS的查询过程是指在客户端通过DNS服务器将一个IP地址转换为一个FQDN(Fully Qualified Domain Name,完全合格的域名),或将一个FQDN转化为一个IP地址,或查询一个区域的邮件服务器的过程。

DNS查询分类

1)按查询方式:

(1)递归查询。 当DNS服务器接收到查询请求时,不论成功或失败,都会做出对应的响应。(发生在DNS客户端与DNS服务器之间)

(2)迭代查询。 DNS服务器根据自己的高速缓存或区域的数据,以最佳结果响应。如果DNS服务器无法解析,它可能返回一个指针。指针指向下级域名的DNS服务器,继续该过程,直到找到拥有所查询名字的DNS服务器,或知道出错、超时为止。(发生在DNS服务器之间)

2)按内容分类

(1)正向查询: 由域名查找IP地址。

(2)反向查询: 有IP地址查找域名。

 

DNS查询过程实例

1)客户端将www.redhat.com的查询提交给本地DNS服务器(递归查询)。

2)本地DNS服务器检查区域数据库,由于该服务器没有redhat.com的授权,它将查询传递到根服务器(“.”DNS服务器),请求解析主机名称。根名称服务器把“com”DNS服务器IP地址返回给本地DNS服务器(迭代查询)。

3)本地DNS服务器将请求发给“com”DNS服务器,该服务器根据请求将“redhat.com”DNS服务器IP地址返回给本地DNS服务器(迭代查询)。

4)本地DNS服务器向“redhat.com”DNS服务器发送请求,由于该服务器具有“www.redhat.com”记录,它将www.redhat.com的IP地址返回给本地DNS服务器。

5)本地DNS服务器将www.redhat.com的IP地址发送给客户端。

——————————————-

以上摘自《Linux服务器配置全程实录》一书

中小型企业网络设计详细建议书

一、客户需求分析:

1、公司共有员工100人左右,人员分布在三个楼层,每楼层最多人数不超过40人;

2、公司分财务、人资、总经三个科室;分内、外两个服务器区:其中内服务器区有FTP服务,外服务器区有DNS和WEB网站服务;

要求:

(1)用户安全可靠得访问互联网;

(2)外服务区被互联网用户安全访问;

(3)内网服务器不能被互联网用户访问,但需向内网用户提供可靠的服务

(4)服务器安全可靠得为网络用户提供服务。

 

二、设备选型: (为什么选4506?)

网络设备:

1、接入层用三台Cisco Catalyst  2960交换机;

2、核心用两台4506R+E;

3、核心之上用两台Cisco ASA 5510;

4、网络边界选用两台Cisco 2811路由器;

线缆:

1、两台核心之间用两根光纤;

2、FTP服务器与核心之间用六类双绞线;(Web、DNS与核心之间是否需要用六类线?)

3、防火墙与核心之间用六类线?边界路由器上全部用六类线?

4、其余用五类非屏蔽双绞线;

 

三、拓扑规划

1、两台核心交换机互做备份,三台接入层交换机分别于与两台核心直连以给网络提供可靠性;

2、采用双ISP出口,为防止ISP内部出现问题造成网络故障在网络边界放置两台路由器,两台路由器互联;并且在此假设ISP1的出口带宽为40M,ISP2的出口带宽为80M;

3、在边界路由器与核心交换机之间各加一台防火墙;

4、一般服务器都要连接到核心交换机上,为节省开支,在两台交换机上分别给两个服务器区单独划分一个VALN;

 

四、IP规划

1、各VLAN划分:

 

2、一些设备的指定地址:

 

3、各设备管理地址:

 

 

五、交换规划

1、人资、财务、领导分处在不同VLAN,取VLAN1为管理VLAN;

2、SW4和SW5为核心交换机,中间用两根光纤启Channel,并封为Trunk;

3、在SW4和SW5上启用HSRP,为人资、财务、领导三个网段分别提供网关备份;(因为ISP1的出口带宽为40M,ISP2的出口带宽为80M,因此取VLAN1以SW4为主,以SW5为备;VLAN2、VLAN3以SW5为主,以SW4为备;)

4、交换区域启用MST:VLAN10为事例1 ;VLAN20、VLAN30为事例2;(可否将VLAN40、VLAN50、VLAN60划为一个MST事例????)

5、如图所示,将为两台核心上用于为用户提供Internet服务的链路划为同一个VALN60;DMZ区域服务器为外网提供服务的两条链路划为VLAN50;

并且在两台防火墙上启用VRRP(在两台防火墙DMZ区域的接口E0/1上启用VRRP),对服务器区提供网关备份;

((在两台核心上已经配置了通向外网的默认路由,是否还可以对VLAN60配置VRRP,来作网关备份???还是可以在FW1和FW2之间也启用OSPF,使用五类默认路由来作冗余?)

在两台防火墙上为连接VLAN60的接口启用VRRP,为默认路由ip 0.0.0.0 0.0.0.0 10.0.6.254提供网关备份,并设定追踪其上联接口事件;从而可以为FW1—R1、FW2—R2互做备份;

6、在两台核心交换机上配置DHCP,为人资、财务、领导三个网段自动分配IP地址;

 

六、路由规划

1、在两台核心交换机上启用OSPF,并将VLAN1、2、3、4、5、6的网段宣告进OSPF进程;在两台核心上都启一条指向防火墙的默认路由,为需要访问Internet的用户提供路由;

并且在两台核心交换机上,都用default-information originate命令,将默认路由宣告进OSPF区域;(这样还可以为VLAN6的两条上联链路提供双重保险;)

在SW4、SW5上分别启一条去往NULL0口的路由,以防止对未知IP的路由环路:ip route 10.0.0.0 255.0.0.0 NULL;

2、在两台防火墙上,启一条到达外网的默认路由;并启一条通往内网(非服务器区)的静态路由和一条通往DNS/WEB服务器区的静态路由;

在两台防火墙上做NAT:(1)为DNS和WEB做静态NAT;(2)为内网其他的网段做PAT;

3、在两台边界路由器R1、R2上各启一条通往ISP的默认路由,并在两台路由器之间启用OSPF(area0),使用default- information originate命令将缺省路由通告进OSPF区域;(不必在R1、R2上启到达内网的静态路由,因为已经在防火墙上做了NAT,R1、R2与NAT网 段直连;)(但是,网段FW1—R1、FW2—R2都是公网地址,R1—R2网段则可以是私有地址;)(当然,网段R1—ISP1、 R2—ISP2也是公网地址;)

4、ISP路由

ISP1路由:指向网段FW1—R1、FW2—R2的静态路由;

ISP2路由:指向网段FW1—R1、FW2—R2的静态路由;

 

七、网络安全

1、两台防火墙将网络分为inside、outside和DMZ区域。

Inside区域的安全性是最高的,Outside的用户不能访问Inside,Inside的用户可以可安全可靠得访问服务器和Internet。 Outside区域可安全的访问位于DMZ区域的DNS、WEB服务器;同时,Outside的用户不可以通过DMZ区域访问到Inside区域;

2、防火墙以内的区域都是使用私有地址,避免了内部区域网络的暴露,增加了安全性;

3、在Inside区域,将不同的部分划分在不同的VLAN,一方面避免了广播风暴、ARP攻击等对网络的破坏,同时避免的不同部门间信息的泄露;

4、对于区域中一些具有特殊安全需求的部分用访问控制列表加以限制权限,这样也提高了整个网络的权限;

 

八、网络管理

网络中的设备都是可管理的,可以通过telnet的方式对网络进行监控和管理;

 

九、网络综合评价:

1、可靠性原则:
(1)整个网络采用双交换核心为三台接入层交换机提供HSRP网关备份;

(2)两台核心交换机之间采用启用Channel,增加了互联带宽,同时其中一条链路Down不影响另一条链路通信;

(3)将核心上的两条默认理由通告进OSPF,为核心的上行链路提供冗余,即使一条链路Down掉,用户还是可以通过另一条上行链路访问Internet;

(4)两台核心交换机均采用双引擎工作模式,增加了单台核心交换机的可靠性;

(5)在两台防火墙上为DMZ区域服务器启用VRRP,做网关备份,保证了服务器为互联网用户提供可靠的服务;(此处只是保证了服务器向外部的发送数据的 可靠性,但是不能保证互联网用户访问服务器的可靠性!!!如果要保证,该怎么配置???)同时在两台防火墙上为VLAN60启用VRRP,一方面为两个 FW的上行链路提供备份,另一方面也为VLAN60 的两条链路提供了双重保险;

(6)两台边界路由器互联,利用OSPF五类缺省路由,为网络出口提供冗余;

(7)使用双ISP出口,提高了网络内外互访的可靠性;

2、可扩展原则:

核心交换机采用模块化的Cisco Catalyst 4506交换机,无论是引擎、板卡,还是电源都可以进一步扩展升级;

每个网段都分了一个C的地址,而目前每个楼层的员工数都不到40人,因此具有很高的可扩展性;

3、安全性原则:

对于这样一个有100人左右的网络,采用两台 Cisco ASA 5510提供安全策略;

两台防火墙将网络分为inside、outside和DMZ区域。

Inside区域的安全性是最高的,Outside的用户不能访问Inside,Inside的用户可以可安全可靠得访问服务器和Internet。 Outside区域可安全的访问位于DMZ区域的DNS、WEB服务器;同时,Outside的用户不可以通过DMZ区域访问到Inside区域;

防火墙以内的区域都是使用私有地址,避免了内部区域网络的暴露,增加了安全性;

在Inside区域,将不同的部分划分在不同的VLAN,一方面避免了广播风暴、ARP攻击等对网络的破坏,同时避免的不同部门间信息的泄露;

对于区域中一些具有特殊安全需求的部分用访问控制列表加以限制权限,这样也提高了整个网络的权限;

4、可管理性原则:

网络中的设备都是可管理的,可以通过telnet的方式对网络进行监控和管理;

5、追求最佳性能价格比

 

————————————————————–

本文出自 “无名网络” 博客http://19891002.blog.51cto.com/1125176/731515

同一台服务器使用IIS和Apache

让IIS和Apache共同使用80端口,访问时候不需要加端口号的方法:

一,多个IP的情况 (假设有192.168.0.1和192.168.0.2两个IP)

1)IIS默认的情况下会占用所有IP的80端口,在cmd输入此命令:netsh http add iplisten ipaddress=192.168.0.1,让IIS只监听192.168.0.1的IP (针对IIS7版本,对于较低版本的IIS可以搜索其绑定的方法)

2)Apache监听指定的IP,在httpd.conf设置Listen 192.168.0.2:80

二,一个IP的情况

使用Apache的代理功能(效率低),先设置Apache监听80端口,IIS监听其他端口,如8080,然后在Apache的httpd.conf取消以下注释:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

然后建立一个虚拟主机,将该域名的所有访问转向8080端口。

<VirtualHost *:80>
ServerName www.test.com
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>

Apache 多端口配置

Apache的“虚拟主机”,能够很好的支持多域名,绑定同一IP的某端口。

假设需要把一下两个域名指向不同的目录:

1)www.domain_01.com 指向 /home/webroot_01

2)www.domain_02.com 指向/home/webroot_02

在httpd.conf找到

#NameVirtualHost *:80
# <VirtualHost *:80>
……
# </VirtualHost>

之后添加如下配置:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.domain_01.com
DocumentRoot “/home/webroot_01”
</VirtualHost>

<VirtualHost *:80>
ServerName www.domain_02.com
DocumentRoot “/home/webroot_02”
</VirtualHost>

重启Apache,配置便完成。

IIS6.0中设置404错误提示页面

我们知道,一些网站输入不存在的页面,有以下白页黑字写着:

HTTP Error 404 – File or directory not found.
Internet Information Services (IIS)

多糟糕,恶心哦,而一些网站却可以跳转到漂亮的提示页面。咱也漂亮一下(IIS6.0设置):

打开IIS管理器 –> 右键点击要设置的网站,然后选择“Properties(属性)” –>  点击“Custom Errors” –>  选中404页 –>  然后点击“Edith”按钮 –> “Message Type”设置成URL(也可以选择File,要求写上404.htm的路径:如:D:\www\yoursite\wwwroot\404.htm)  –> URL/404.htm –> 按确定保存退出,再把 404.htm 放在网站根目录下(你就可以做个漂亮的404.htm)

Vista下IIS7.0的安装和设置

Windows Vista下面IIS7的安装方法如下:

第一步: 进入Vista的控制面板,选择“程序和功能”,选择左侧的“打开或关闭Windows功能”。

第二步:安装IIS7的选项设置。单击后会出现安装Windows功能的选项菜单,选择Internet 信息服务,注意选择的项目,Vista的IIS7的默认安装选项中是不支持ASP和ASP.NET的,因此在安装的时候必须手动选择。

第三步:安装完成后,再次进入控制面板,选择管理工具,点击“Internet 信息服务(IIS)管理器”。

第四步:设置IIS7。选择Default Web Site,并双击ASP的选项(IIS7中ASP父路径默认没有启用),在启用启父路径,选择True。

还有主目录,访问的端口等设置,可以一一对应操作。

 

以上设置步骤只能调试ASP的程序,还无法调试ASP+数据库或其他应用文件的程序,这是因为windows vista的目录权限问题,下面设置目录的权限。

第一步:需要设置权限的目录路径如下:系统安装盘符:\Windows\ServiceProfiles\NetworkService\AppData\Local,注意Appdata的文件是隐藏的。右键单击Temp文件夹,选择属性。

第二步:选择安全选项,单击编辑按钮,进入编辑权限的对话框。

 第三步:选择添加按钮,添加用户。

第四步:在选择用户或组的对话框中,在输入对象名称来选择的表单中,输入大写字幕A后,单击确定,系统会自动显示所有带有字幕A的系统用户。

第五步:在系统列出的用户中,选择Authenticated Users这个用户,并单击确定。

第六步:选择该用户,单击完全控制,然后确定,这样,Temp的访问权限搞定了,即可调试ASP+数据库或其他应用文件的程序。