22-HTTP proxy命令
本章节下载: 22-HTTP proxy命令 (601.08 KB)
目 录
1.1.8 display http-proxy monitor-info
1.1.9 display http-proxy server
1.1.10 display http-proxy statistics service
1.1.13 exclude-external-domain
1.1.14 extlink-encryption algorithm
1.1.17 failed-extlink redirect
1.1.18 http-proxy server-group
1.1.22 include-external-domain
1.1.23 include-redirect-domain
1.1.30 protocol-type (http-proxy service)
1.1.31 protocol-type (http-proxy server)
1.1.32 protocol-type (http-proxy server-group)
1.1.33 referer-protection domain
1.1.34 referer-protection enable
1.1.35 replace response-header
1.1.37 restore request-querystring
1.1.39 ssl certificate directory
1.1.40 ssl certificate domain-name file key-file
1.1.42 ssl certificate key-file
access-record enable命令用来开启HTTP proxy服务的代理信息记录功能,并配置记录文件路径。
undo access-record enable命令用来恢复缺省情况。
【命令】
access-record enable file-path path [ gzip ]
undo access-record enable
【缺省情况】
HTTP proxy服务的代理信息记录功能处于关闭状态。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
file-path path:HTTP proxy的代理信息文件路径。path参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为设备上拥有存储介质的板卡所在槽位号。(独立运行模式)
file-path path:HTTP proxy的代理信息文件路径。path参数必须携带chassis和slot编号用以指定存储介质所处的位置。存储介质位置的表示方式为:chassism#slotn#。其中m为设备的成员编号,n为成员设备上拥有存储介质的板卡所在槽位号。(IRF模式)
gzip:HTTP proxy服务的代理信息记录文件压缩功能,压缩格式为gzip。若不指定此参数,则设备不对代理信息记录文件进行压缩。
【使用指导】
用户HTTP proxy服务代理信息将会按照时间顺序记录在自定路径的文件中,具体信息如下所示:
[03/Dec/2019:16:11:35 +0800] Client=2001::1 URL=http://www.example.com/index.html Server=172.16.28.12:80
表1-1 access-record enable命令记录的代理信息字段描述表
字段 |
描述 |
用户访问时间 |
客户端的访问时间与访问时区,例如:[03/Dec/2019:16:11:35 +0800] |
客户端地址 |
客户端的IPv6地址,例如:2001::1 |
用户访问地址 |
客户端的请求地址,例如:http://www.example.com/index.html |
Web服务器地址 |
客户端实际访问到的后端服务器IPv4地址,例如:172.16.28.12:80 |
配置了本命令后,HTTP proxy会在指定的信息记录文件同一路径下创建一个其主文件名加“_history”后缀的目录,用以存放历史信息记录。例如:HTTP proxy指定的信息记录文件为flash:/httpproxy/record.log时,会自动在flash:/httpproxy/下创建一个名为record_history的文件夹,当record.log文件大小达到限度时(缺省为10MB),HTTP proxy会在flash:/httpproxy/record_history/下创建一个名为record_YYYYMMDDhhmm.log的文件(其中YYYY表示年,MM表示月,DD表示日,hh和mm分别表示时和分),并将record.log的记录内容转移至flash:/httpproxy/record_history/下创建的文件中,清空自身记录内容,以记录新的代理信息。
【举例】
# 开启名称为test的HTTP proxy服务的代理信息记录功能、并指定记录文件路径并以gzip格式压缩代理信息记录文件。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] access-record enable file-path slot1#flash:/httpproxy/20210111.log gzip
【相关命令】
· access-record max-size
access-record max-size命令用来用于配置HTTP proxy服务的代理信息记录文件空间总大小和单个代理信息记录文件大小。
undo access-record max-size命令用来恢复缺省情况。
【命令】
access-record max-size max-zone-size single-file-size single-file-size
undo access-record max-size
【缺省情况】
HTTP proxy服务的单个代理信息记录文件大小为10MB,代理信息记录文件空间总大小为4GB。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
max-zone-size:代理信息记录文件空间总大小,取值范围为500~20480,单位为MB。
single-file-size single-file-size:指定分配给单个的代理信息记录文件的存储空间大小,single-file-size取值范围为10~300,单位为MB。
【使用指导】
系统自动地将代理信息依次存入若干个代理信息记录文件,一个文件存满了指定大小后,新建另一个文件进行代理信息记录文件的存储。代理信息文件总大小超过配置的代理信息记录文件空间总大小时,后生成的代理信息记录文件会覆盖最先生成的代理信息记录文件。设备代理连接数较多时,建议指定较小的单个代理信息文件大小,文件空间存储满时新增的代理信息记录文件覆盖旧文件的粒度会更小,使代理信息记录保留尽量长的时间;设备代理连接数较小时,可以指定较大的单个代理信息文件大小,方便对代理信息记录的整体取出。
指定HTTP proxy服务的代理信息文件空间总大小必须小于工作路径中可存储数据的最大值。
【举例】
# 配置HTTP proxy服务的代理信息记录文件空间总大小为5120MB,单个代理信息记录文件大小为10MB。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] access-record max-size 5120 single-file-size 10
【相关命令】
· access-record enable
cache-data命令用来开启HTTP proxy服务的Web资源缓存功能,并指定缓存文件的路径。
undo cache-data命令用来关闭缓存服务。
【命令】
cache-data directory directory
undo cache-data
【缺省情况】
HTTP proxy服务的Web资源缓存功能处于关闭状态,未配置缓存文件的路径。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
directory directory:表示指定缓存文件所在目录路径。directory参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为设备上拥有存储介质的板卡所在槽位号。(独立运行模式)
directory directory:表示指定缓存文件所在目录路径。directory参数必须携带chassis和slot编号用以指定存储介质所处的位置。存储介质位置的表示方式为:chassism#slotn#。其中m为设备的成员编号,n为成员设备上拥有存储介质的板卡所在槽位号。(IRF模式)
【使用指导】
开启HTTP proxy服务代理的网站上文件缓存功能并设置缓存文件所在目录后,设备会将用户通过HTTP/HTTPS协议访问过的服务器的Web页面上的内容缓存在本地。用户后续访问相同内容时,设备直接从本地响应缓存文件,从而减少了设备到服务器的访问流量、降低了传输成本、缓解了目的端服务器压力,同时提高了用户访问网站的速度及响应时间,增强了用户体验。
集中式IRF设备/分布式设备/分布式IRF设备在配置本命令后,系统会检查主设备/主用主控板上是否存在指定的缓存文件所在目录。如果目录存在,则本命令配置恢复成功;如果目录不存在,则本命令配置失败。
在引用HTTP proxy server视图时,如果HTTP proxy server视图下配置了cache-data命令,则该命令指定的路径只能是引用该HTTP proxy server视图的HTTP proxy服务视图所在slot的路径,否则引用失败。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,修改缓存文件所在目录。
多次执行本命令,最后一次执行的命令生效。
目前HTTP proxy支持缓存的Web页面上的文件类型有:apk、bmp、doc、docx、gif、gzip、ipa、jar、jpg、jpeg、mp4、pdf、png、pptx、rar、swf、tar、txt、xls、xlsx、zip。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
【举例】
# 开启名称为test的HTTP proxy服务的缓存功能,并配置HTTP proxy服务代理的网站资源的缓存文件所在目录为本地Flash中cached文件夹。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] cache-data directory slot1#flash:/cached
# 在名称为test的HTTP porxy server视图下,开启HTTP proxy服务的缓存功能,并配置HTTP proxy服务代理的网站资源的缓存文件所在目录为本地Flash中cached文件夹。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] cache-data directory flash:/cached
【相关命令】
· http-proxy server
· include server
· service enable
config-file命令用来导入配置文件。
undo config-file命令用来取消导入配置文件。
【命令】
config-file filename
undo config-file
【缺省情况】
未导入配置文件。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
filename:配置文件的路径和名称,文件名称必须是nginx.conf,例如lash:/nginx.conf。(集中式设备)
filename:配置文件的路径和名称,文件名称必须是nginx.conf,且必须指定主设备/主用主控板上的存储介质,例如slot1#flash:/nginx.conf。(分布式设备-独立运行模式)(集中式IRF设备)
filename:配置文件的路径和名称,文件名称必须是nginx.conf,且必须指定主设备/主用主控板上的存储介质,例如chassis1#slot1#flash:/nginx.conf。(分布式设备-IRF模式)
【使用指导】
HTTP proxy的配置较为复杂,需要满足许多前提条件才能开启。为了快速开启HTTP proxy服务,网络管理员通过本命令导入配置文件后,无需通过命令行配置HTTP proxy参数就能开启HTTP proxy服务。
配置本命令后,执行service enable命令,可以使用配置文件中的配置信息开启HTTP proxy服务。
集中式IRF设备/分布式设备在配置本命令后,系统会检查主设备/主用主控板上是否存在指定的配置文件。如果文件存在,则本命令配置成功;如果文件不存在,则本命令配置失败。
本命令导入的配置文件的名称必须是nginx.conf。获取nginx.conf文件的方法包括:
· 开启HTTP proxy服务后,在文件系统的/var/http-proxy/路径下会生成nginx.conf文件,对应开启该HTTP proxy服务使用的配置。
· 手工创建编写nginx.conf文件。
除以下命令外,其他HTTP proxy命令均不允许与本命令同时配置:
· ip pool
· access-record max-size
多次执行本命令时,最后一次执行的命令生效。
HTTP proxy服务处于开启状态时,不允许修改本命令的配置。如需修改本命令的配置,请先执行undo service enable命令关闭HTTP proxy服务。
请在如下网站内,查找nginx.conf文件中开源内容的编写指导:http://nginx.org/en/docs/
以下为nginx.conf文件中,为实现H3C私有功能需要编写的内容指导:
· SSL证书相关内容加密功能:
编写格式为:ssl_cert_encrypt 路径/路径+文件名
此内容需要在nginx.conf文件中位于SSL证书相关内容之前,并且存在此内容时,文件内的SSL证书需要携带加密标志“.enc”。
示例:
对SSL证书相关文件所在目录进行加密:ssl_cert_encrypt /mnt/flash:/SslDir
对SSL证书文件和密钥文件进行加密:
ssl_cert_encrypt /mn/flash:/SslDir/www.aaa.com.crt
ssl_cert_encrypt /mnt/flash:/SslDir/www.aaa.com.key
设置加密后,实现的功能与ssl certificate file encryption、ssl certificate key-file encryption以及ssl certificate directory encryption命令相同。但是需要注意的是,通过上述格式编写的内容不能对变量形式的证书相关文件进行加密,且推荐将需要加密的文件存放在/mn/flash:/路径下。
· 指定HTTP proxy服务中不代理的外链域名功能:
编写格式为:internal_site 域名
此内容实现的功能与exclude-external-domain命令相同。
· 使用加密算法进行加密:
set_hash_x xxx:针对指定的内容进行检查并使用x算法进行加密。
set_hash_y xxx:针对指定的内容进行检查并使用y算法进行加密。
set_hash_z xxx:针对指定的内容进行检查并使用标准MD5算法进行加密。
proxy_redirect_hash_x 域名:对指定的重定向URL域名使用泛域名进行替换改造,并使用x算法加密。
proxy_redirect_hash_y 域名:对指定的重定向URL域名使用泛域名进行替换改造,并使用y算法加密。
proxy_redirect_hash_z 域名:对指定的重定向URL域名使用泛域名进行替换改造,并使用标准MD5算法加密。
subs_filter xxx irx:对subs_filter字段的xxx内容使用x算法加密。
subs_filter xxx iry:对subs_filter字段的xxx内容使用y算法加密。
subs_filter xxx irz:对subs_filter字段的xxx内容使用标准MD5算法加密。
· 为了保障HTTP proxy服务正常运行,nginx.conf文件内的client_body_temp_path取值需要为/var/http-proxy/HTTP proxy服务的名称/client/client_temp
【举例】
# 为HTTP proxy服务test导入配置文件nginx.conf。(集中式设备)
<Sysname> system-view
[Sysname] http-proxy service test
[Sysname-http-proxy-service-test] config-file flash:/nginx.conf
# 为HTTP proxy服务test导入配置文件nginx.conf。(分布式设备-独立运行设备)(集中式IRF设备)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] config-file slot1#flash:/nginx.conf
delete cookie-flag命令用来删除HTTP/HTTPS响应头中的Set-Cookie消息选项。
undo delete cookie-flag命令用来恢复缺省情况。
【命令】
delete cookie-flag { httponly | samesite | secure }
undo delete cookie-flag { httponly | samesite | secure }
【缺省情况】
不对HTTP/HTTPS响应头中的Set-Cookie消息选项进行修改。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
httponly:删除Set-Cookie消息中的HTTPOnly属性。
samesite:删除Set-Cookie消息中的SameSite属性。
secure:删除Set-Cookie消息中的Secure属性。
【使用指导】
在HTTP proxy server视图下开启了无限跳转功能后,设备会对Web服务器返回的响应体中的外链URL使用泛域名进行拼接,并且会将外链URL修改为HTTP形式。例如,设备将外链https://example.com修改为http://https-example-com.example.cn(example.cn为泛域名),用户客户端访问该外链时将向设备发送HTTP请求,设备接收到HTTP请求后将请求行中的外链URL进行还原为https://example.com,并通过HTTPS协议向Web服务器重新发送请求。
在上述过程中,由于Web服务器返回的是HTTPS响应报文,响应头中携带的Set-Cookie消息可能包含Secure属性。Secure属性只能用于HTTPS协议,用于确保Cookie进行了HTTPS加密,以提高Cookie的安全性。由于客户端请求外链资源使用的是HTTP协议,接收到了包含了Secure属性的Set-Cookie后,将不会保存该Cookie,这将导致用户访问外链资源时无法保持登录状态等问题。执行delete cookie-flag secure命令后,Web服务器返回的HTTPS响应头中Set-Cookie消息的Secure属性将会被删除,使得客户端可以保存该Cookie。
对于安全性较高的Web服务器,在返回HTTP/HTTPS响应报文时,响应头中携带的Set-Cookie消息将会包含SameSite属性。SameSite属性用来限制第三方Cookie,防止非法网站使用客户端的Cookie伪造HTTP/HTTPS请求。用户客户端保存了包含SameSite属性的Cookie后,认为开启了HTTP proxy服务的设备为第三方网站,这将导致客户端发送的HTTP/HTTPS请求将不会携带该Cookie。执行delete cookie-flag samesite命令后,Web服务器返回的HTTP/HTTPS响应头中Set-Cookie消息的SameSite属性将会被删除,使得客户端在发送HTTP/HTTPS请求时可以携带该Cookie。
设备请求Web服务器的资源时,Web服务器返回的HTTP/HTTPS响应报文中,响应头携带的Set-Cookie消息可能包含HTTPOnly属性(是否包含HTTPOnly属性取决于Web服务器)。保存了包含HTTPOnly属性的Cookie后,客户端在通过JavaScript方式请求Web资源时,HTTP/HTTPS请求头将不会携带Cookie,增加了Cookie的安全性。在一些通过JavaScript方式请求Web资源的场景中,需要HTTP/HTTPS请求头携带Cookie以维持用户状态,此时可以通过执行delete cookie-flag httponly命令,使设备删除Web服务器返回的HTTP/HTTPS响应头中Set-Cookie消息包含的HTTPOnly属性。
多次执行本命令,可以配置设备删除Set-Cookie消息中的多个属性。
请在当前HTTP proxy server视图未被引用时,修改HTTP/HTTPS响应头中的Set-Cookie消息选项。
【举例】
# 在名称为test的HTTP proxy server视图下,配置删除Set-Cookie消息中的Secure属性。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] delete cookie-flag secure
【相关命令】
· http-proxy server
· service enable
denylist-domain-name命令用来配置HTTP proxy服务的黑名单域名。
undo denylist-domain-name命令用来删除HTTP proxy服务的黑名单域名。
【命令】
denylist-domain-name domain-name
undo denylist-domain-name domain-name
【缺省情况】
未配置HTTP proxy服务的黑名单域名。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTP proxy服务的黑名单域名。其中,域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”、“.”或“*”。“*”字符用来匹配固定开头或结尾的一系列域名。例如,“www.example.*”表示所有开头为“www.example.”的域名均被匹配;“*.example.gov”表示所有结尾为“.example.gov”的域名均被匹配。
【使用指导】
当用户通过HTTP proxy服务访问网站时,如果网站的域名在黑名单域名中,则设备向用户返回错误页面。用户访问外链,如果外链所属域名在黑名单域名中,则设备向用户返回错误页面。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
在HTTP proxy服务的黑名单域名和白名单都未配置的情况下,设备可以代理所有域名;在配置了HTTP proxy服务的黑名单域名的情况下,若设备未配置HTTP proxy服务的白名单域名,则可以代理除黑名单域名以外的所有域名;若设备配置了HTTP proxy服务的白名单域名,则仅可以代理白名单内域名。
可通过多次执行本命令,配置多个HTTP proxy服务的黑名单域名,最多同时存在512个。
配置同一个域名时,domain-name命令与denylist-domain-name命令互斥。
请在HTTP proxy服务处于关闭状态时,配置HTTP proxy服务的黑名单域名。
【举例】
# 配置名称为test的HTTP proxy服务中的黑名单域名为test.example.cn。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] denylist-domain-name test.example.cn
【相关命令】
· domain-name
· service enable
display http-proxy命令用来显示HTTP proxy服务的相关信息。
【命令】
display http-proxy { server-group [ group-name ] | service [ service-name ] }
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
server-group:显示Web服务器组的相关信息。
group-name:Web服务器组的名称。为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。不指定本参数时,显示所有Web服务器组的相关信息。
service:显示HTTP proxy服务的相关信息。
service-name:HTTP proxy服务的名称。为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。不指定本参数时,显示所有HTTP proxy服务的相关信息。
【举例】
# 显示HTTP proxy服务名称为test的Web服务器组配置信息。
<Sysname> display http-proxy server-group test
Server group name: test
Protocol type: HTTP
Server IP addresses: 192.168.10.10
192.168.10.12
192.168.10.14:8080
表1-2 display http-proxy server-group命令显示信息描述表
字段 |
描述 |
Server group name |
Web服务器组名称 |
Protocol type |
Web服务器组的服务协议类型,未配置时显示N/A |
Server IP addresses |
Web服务器组的IPv4地址与端口信息,未配置时显示N/A |
# 显示名称为test的HTTP proxy服务的配置信息。
<Sysname> display http-proxy service test
Service name: test
IPv6 address: 2001::1
Config file: N/A
Allowlist domain names: www.aaa.example.com
www.bbb.example.com
www.ccc.example.com
Protocol types: HTTP at port 8000
HTTP [Server group: testa]
HTTP at port 8001 [Server group: testa]
HTTPS at port 8003
HTTPS [Server group: testb]
HTTPS at port 8002 [Server group: testb]
SSL certificate directory: flash:/
Domain name: www.aaa.example.com
SSL certificate file: aaa.cert
SSL key files: aaa.key
Domain name: www.bbb.example.com
SSL certificate file: bbb.cert
SSL key files: bbb.key
Hyperlink proxy strings: www.example.org
www.example.com
Failed extlink error codes: 404
502
DNS servers: 8.8.8.8
9.9.9.9
Denylist domain names: www.fff.example.com
www.eee.example.com
Monitored keyword: abc
Replaced by efg
Monitored keyword: def
Replaced by N/A
Excluded external domain name: www.abc.example.com
Include Server: server1
IP pools: 1.1.1.1 to 1.1.1.2 vpn1
2.2.2.1 to 2.2.3.1 vpn1
Wildcard domain name: extlink.example.cn
URL protection: Enabled
Referer protection: Enalbed
Extlink href: Enabled
Medialink proxy: Enabled
Failed extlink inform: Enabled
Cache data: Enabled
Cache file path: flash:/httpproxy
HTTP proxy operation recording: Enabled
Operation record file path: flash:/httpproxy/20210111.log gzip
Max zone size 4096MB
Single file size 10MB
Extlink encryption algorithm: algx
HTTP proxy status: Enabled
表1-3 display http-proxy service命令显示信息描述表
字段 |
描述 |
HTTP proxy name |
HTTP proxy服务名称 |
IPv6 address |
HTTP proxy服务配置的IPv6地址,与域名信息相对应,未配置时显示N/A |
Config file |
HTTP proxy服务导入的配置文件,未导入配置文件时显示N/A |
Allowlist domain names |
HTTP proxy服务配置的白名单域名信息,与IPv6地址相对应,未配置时显示N/A |
Protocol types |
HTTP proxy服务配置的代理服务类型、侦听端口号以及与服务类型绑定的Web服务器组,未配置时显示N/A |
SSL certificate file |
HTTP proxy服务配置的SSL证书文件,未配置时显示N/A |
SSL certificate key-file |
HTTP proxy服务配置的SSL密钥文件,未配置时显示N/A |
SSL certificate directory |
HTTP proxy服务配置的SSL证书文件与密钥文件所在的目录,未配置时显示N/A |
Domain name |
HTTP proxy服务配置的HTTPS类型Web请求的域名,未配置时显示N/A |
SSL key file |
HTTP proxy服务配置的SSL密钥文件,未配置时显示N/A |
Hyperlink proxy strings |
HTTP proxy服务配置的非本网站链接字符串,未配置时显示N/A |
Failed extlink error codes |
HTTP proxy服务配置的进行重定向对应的错误页面代码,未配置时显示N/A |
DNS servers |
DNS服务器地址,未配置时显示N/A |
Denylist domain names |
HTTP proxy服务配置的网站域名黑名单,未配置时显示N/A |
Monitored keyword |
HTTP proxy服务配置的网站监控关键字,未配置时显示N/A |
Replaced by |
网站监控关键字被替换成的字符串,未配置时显示N/A |
Excluded external domain name |
HTTP proxy服务配置的不进行代理的非本网站超级链接的域名,未配置时显示N/A |
Include Server |
HTTP proxy服务引用的HTTP proxy server视图,未配置时显示N/A |
IP pools |
HTTP proxy连接Web服务器时使用的源IP地址池,未配置时显示N/A |
Wildcard domain name |
HTTP proxy服务配置的泛域名 |
URL protection |
HTTP proxy服务配置的防盗链功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Referer protection |
HTTP proxy服务配置的防SQL、XSS注入功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Extlink href |
HTTP proxy服务配置的无限跳转功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Medialink proxy |
HTTP proxy服务是否开启非本网站媒体资源代理功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Failed extlink inform |
HTTP proxy服务是否开启外链URL信息提示功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Cache data |
HTTP proxy服务配置的Web资源缓存功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Cache file path |
HTTP proxy服务配置的Web资源缓存路径,未配置时显示N/A |
HTTP proxy operation recording |
HTTP proxy服务是否开启代理信息记录功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Operation record file path |
HTTP proxy服务配置的代理信息记录文件路径,未配置时显示N/A,对记录信息进行了压缩时,显示文件路径和压缩格式 |
Max zone size |
HTTP proxy服务配置的代理信息记录文件总空间大小,未配置时显示4096MB |
Single file size |
HTTP proxy服务配置的单个代理信息记录文件大小,未配置时显示10MB |
Extlink encryption algorithm |
HTTP proxy服务配置的泛域名加密功能使用的加密算法,未配置时显示N/A |
HTTP proxy status |
HTTP proxy服务是否处于开启状态: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
【相关命令】
· http-proxy server-group
· http-proxy service
display http-proxy monitor-info命令用来显示HTTP proxy服务的监控字信息。
【命令】
display http-proxy monitor-info service service-name [ keyword monitor-string ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
service service-name:表示显示指定HTTP proxy服务的监控字信息。service-name为HTTP proxy服务的名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
keyword monitor-string:表示显示指定关键字的监控替换信息。monitor-string为HTTP proxy服务代理的Web页面上被监控的关键字,为1~127个字符的字符串,可以支持UTF-8编码格式的中文字符。不指定本参数时,显示所有被监控的关键字信息。
【举例】
# 显示HTTP proxy服务监控和替换的关键字信息。
<Sysname> system-view
[Sysname]display http-proxy monitor-info service test
Monitored keyword: aabbcc
Time: 2021/01/11 20:39:38
URL: http://a.example.com/index.html
Replaced by: bbddcc
Monitored keyword: qqwwee
Time: 2021/01/11 20:39:38
URL: http://b.example.com/index.html
Replaced by: N/A
表1-4 display http-proxy monitor-info service keyword命令显示信息描述表
字段 |
描述 |
Monitored keyword |
受监控的关键字 |
Time |
受监控的关键字出现的时间 |
URL |
受监控关键字对应的URL |
Replaced by |
受监控的关键字被替换成的字符,未被替换则显示N/A |
display http-proxy server命令用来显示HTTP proxy server视图的配置信息。
【命令】
display http-proxy server server-name
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
server-name:HTTP proxy server视图的名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
【举例】
# 显示名称为test的HTTP proxy server视图下的相关配置信息。
[Sysname]display http-proxy server test
Server name: test
IPv6 address: 2001::1
Allowlist domain names: www.abcd.example.com
Protocol types: HTTP at port 8000
Failed extlink error codes: N/A
Excluded external domain name: N/A
Restore request header name: N/A
Replace response header name: N/A
Include external domain name: N/A
Include redirect domain name: N/A
Referer protection domain name: N/A
Allowlist: N/A
Delete cookie flag: secure
Restore request querystring: Disabled
Extlink href: Disabled
Failed extlink inform: Disabled
Cache data: Disabled
Cache file path: N/A
表1-5 display http-proxy server命令显示信息描述表
字段 |
描述 |
Server name |
HTTP proxy server视图的名称 |
IPv6 address |
HTTP proxy server视图下代理的Web服务器对用户呈现的IPv6地址,未配置时显示N/A |
Allowlist Domain name |
HTTP proxy server视图下配置的白名单域名,未配置时显示N/A |
Protocol types |
HTTP proxy server视图下配置的HTTP proxy服务使用的协议类型和侦听端口号,未配置时显示N/A |
Failed extlink error codes |
HTTP proxy server视图下配置的进行重定向对应的错误页面代码,未配置时显示N/A |
Excluded external domain name |
HTTP proxy server视图下配置的不进行代理的外链域名,未配置时显示N/A |
Restore request header name |
HTTP proxy server视图下配置的在请求头中进行还原的字段,未配置时显示N/A |
Replace response header name |
HTTP proxy server视图下配置的在响应头中进行替换的字段,未配置时显示N/A |
Include external domain name |
HTTP proxy server视图下配置的外链代理的域名,未配置时显示N/A |
Include redirect domain name |
HTTP proxy server视图下配置的允许替换的重定向URL域名,未配置时显示N/A |
Referer protection domain name |
HTTP proxy server视图下配置的开启了防盗链功能的代理域名,未配置时显示N/A |
Allowlist |
防盗链功能的白名单域名,未配置时显示N/A |
Delete cookie flag |
HTTP proxy server视图下配置的, HTTP/HTTPS响应头中需要删除的Set-Cookie消息选项的属性,未配置时显示N/A |
Restore request querystring |
HTTP proxy server视图下配置的querystring还原功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Extlink href |
HTTP proxy server视图下配置的无限跳转功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Failed extlink inform |
HTTP proxy server视图下配置的外链URL信息提示功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Cache data |
HTTP proxy server视图下配置的Web资源缓存功能: · Enabled:表示开启状态 · Disabled:表示关闭状态 |
Cache file path |
Web资源缓存路径,未配置时显示N/A |
display http-proxy statistics service命令用来显示HTTP proxy服务的统计信息。
【命令】
display http-proxy statistics service service-name
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
service-name:显示指定HTTP proxy服务的统计信息。service-name为HTTP proxy服务的名称,为1~63个字符的字符串,字符串可以包含数字、字母和“_”,区分大小写。
【举例】
# 显示HTTP proxy服务test1的统计信息。
<Sysname> display http-proxy statistics service test1
Service name: test1
Active connections: 2
Requests: 1
表1-6 display http-proxy statistics service命令显示信息描述表
字段 |
描述 |
Service name |
HTTP proxy服务名称 |
Active connections |
活跃的HTTP/HTTPS连接数量,包括正在访问的连接数量以及等待访问的连接数量 |
Requests |
设备请求Web资源的次数 |
dns-server命令用来配置DNS服务器的IPv4地址。
undo dns-server命令用来删除DNS服务器的IPv4地址。
【命令】
dns-server ip-address
undo dns-server ip-address
【缺省情况】
未配置DNS服务器的IPv4地址。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
ip-address:DNS服务器的IPv4地址。
【使用指导】
本命令配置的DNS服务器用于解析HTTP proxy服务代理的Web服务器域名对应的IP地址。如果在HTTP proxy服务中配置了外链代理功能或想代理多个域名的Web服务器,则至少需要配置一个DNS服务器。
请在HTTP proxy服务处于关闭状态时,配置DNS服务器的IPv4地址。
一个HTTP proxy服务视图下,最多可以配置2个DNS服务器的IPv4地址。
【举例】
# 配置HTTP proxy服务的DNS服务器地址为8.8.8.8。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] dns-server 8.8.8.8
【相关命令】
· hyperlink-proxy
· medialink-proxy enable
domain-name命令用来配置HTTP proxy服务的白名单域名。
undo domain-name命令用来删除指定的HTTP proxy服务的白名单域名。
【命令】
domain-name domain-name
undo domain-name domain-name
【缺省情况】
未配置HTTP proxy服务中的白名单域名。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTP proxy服务的白名单域名。其中,域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”、“.”或“*”。“*”字符用来匹配固定开头或结尾的一系列域名。例如,“www.example.*”表示所有开头为“www.example.”的域名均被匹配;“*.example.gov”表示所有结尾为“.example.gov”的域名均被匹配。
【使用指导】
配置了HTTP proxy服务的白名单域名后,当用户通过HTTP proxy服务视图或HTTP proxy server视图下配置的代理服务访问网站时,如果网站的域名不在白名单域名中,则返回错误页面。
当用户访问外链时,如果设备未配置HTTP proxy服务代理的泛域名并且未开启无限跳转功能,HTTP proxy服务将使用本命令配置的域名拼接所属域名的网站上的外链域名,使得用户访问的外链可以通过HTTP proxy服务指定的域名服务器进行地址解析。配置的域名必须与用户访问的Web服务器的域名一致。使用HTTP proxy server视图下的配置代理外链时,无法通过使用本命令配置的域名拼接外链域名的方式进行代理。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
可通过多次执行本命令,配置多个HTTP proxy服务的白名单域名,在同一视图下白名单域名最多同时存在512个。
配置同一个域名时,denylist-domain-name命令与domain-name命令互斥。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置HTTP proxy服务中的白名单域名。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
【举例】
# 配置名称为test的HTTP proxy服务中的域名为test.example.cn。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] domain-name test.example.cn
# 在名称为test的HTTP proxy server视图下,配置HTTP proxy服务的白名单域名为test.example.cn。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] domain-name test.example.cn
【相关命令】
· denylist-domain-name
· http-proxy server
· include server
· service enable
exclude-external-domain命令用来指定HTTP proxy服务中不代理的外链域名。
undo exclude-external-domain命令用来取消指定HTTP proxy服务中不代理的外链域名。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
【命令】
exclude-external-domain domain-name
undo exclude-external-domain domain-name
【缺省情况】
未配置HTTP proxy服务中不代理的外链域名。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTP proxy服务代理的Web页面内外链的域名,为1~253个字符的字符串,不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”。
【使用指导】
配置了不代理的外链域名后,设备不再为指定的外链域名添加HTTP proxy服务的域名信息,用户不再通过代理设备访问此外链。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置不代理的外链域名。
HTTP proxy服务开启后,用户请求的网页页面中包含指定域名的URL均不会被HTTP proxy服务代理,请谨慎使用。
可以通过多次执行本命令,配置多个HTTP proxy服务中不代理的外链域名,同一视图下最多同时存在512个不代理的域名。
配置同一个域名时,exclude-external-domain命令与hyperlink-proxy命令互斥。
【举例】
# 配置名称为test的HTTP proxy服务不代理的外链域名为test.example.cn。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] exclude-external-domain test.example.cn
# 在名称为test的HTTP proxy server视图下,配置HTTP proxy服务不代理的外链域名为test.example.cn。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] exclude-external-domain test.example.cn
【相关命令】
· http-proxy server
· hyperlink-proxy
· service enable
extlink-encryption algorithm命令用来开启HTTP proxy服务的泛域名加密功能。
undo extlink-encryption algorithm命令用来关闭HTTP proxy服务的泛域名加密功能。
【命令】
extlink-encryption algorithm { algx | algy | algz }
undo extlink-encryption algorithm { algx | algy | algz }
【缺省情况】
HTTP proxy服务的泛域名加密功能处于关闭状态。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
algx:加密算法为算法x。
algy:加密算法为算法y。
algz:加密算法为标准MD5算法。
【使用指导】
开启HTTP proxy服务的泛域名加密功能后,设备在进行外链代理时,会对使用泛域名拼接后的外链使用指定的算法进行加密。后续客户端在访问该外链时,发送的HTTP/HTTPS请求中携带的是加密的外链,此时设备会对其进行解密校验后再代理该资源,以防止非法用户冒用泛域名,使用代理设备访问外链资料,占用代理资源。
请在HTTP proxy服务处于关闭状态时,配置HTTP proxy服务的泛域名加密功能。
在HTTP proxy服务视图下,如果没有配置过include server命令,则无法执行extlink-encryption algorithm命令。反之,如果要取消对HTTP proxy server视图的引用,需要先关闭当前HTTP proxy服务视图下的泛域名加密功能。
【举例】
# 在slot 1上,使用算法x为HTTP proxy服务的泛域名进行加密。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] extlink-encryption algorithm algx
【相关命令】
· service enable
extlink-href enable命令用来开启HTTP proxy服务的无限跳转功能。
undo extlink-href enable命令用来关闭HTTP proxy服务的无限跳转功能。
【命令】
extlink-href enable
undo extlink-href enable
【缺省情况】
HTTP proxy服务的无限跳转功能处于关闭状态。
【视图】
HTTP proxy服务视图
HTTP porxy server视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
HTTP proxy服务的无限跳转功能可以允许用户访问所有Web页面上的任意外链。若有特殊情况,可用exclude-external-domain命令指定不进行代理的外链域名。
本功能需要与wildcard-domain-name命令配置HTTP proxy服务代理的泛域名配合使用。开启本功能后,设备将使用指定的泛域名拼接用户的外链请求中的域名,并在拼接的外链URL前添加“http://”字段。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置HTTP proxy服务的无限跳转功能。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
如果关闭本功能时,媒体资源外链代理功能及指定外链代理功能也处于关闭状态,则需要外链URL信息提示功能和HTTP proxy服务的外链重定向功能均处于关闭状态,才能成功关闭本功能。
【举例】
# 开启名称为test的HTTP proxy服务的无限跳转功能。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] extlink-href enable
# 在名称为test的HTTP proxy server视图下,开启HTTP proxy的无限跳转功能。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] extlink-href enable
【相关命令】
· exclude-external-domain
· failed-extlink inform
· failed-extlink redirect
· http-proxy server
· include server
· service enable
· wildcard-domain-name
failed-extlink inform命令用来开启HTTP proxy服务的外链URL信息提示功能。
undo failed-extlink inform命令用来关闭HTTP proxy服务的外链URL信息提示功能。
【命令】
failed-extlink inform
undo failed-extlink inform
【缺省情况】
HTTP proxy服务的外链URL信息提示功能处于关闭状态。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
用户通过代理服务器访问外链时,在某些情况下(如服务器不允许通过代理访问Web页面等),有可能存在访问外链Web页面异常的情况。外链URL信息提示功能会为用户访问异常页面提供可能的解决途径,在Web页面上为用户提供外链的URL,其显示内容为“Error on page. Please visit URL XXX.”,以引导用户不通过HTTP服务进行代理,而是尝试直接访问非本网资源所属的服务器。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置外链URL信息提示功能。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
要使本功能生效,请至少先配置以下任一命令:
· hyperlink-proxy
· medialink-proxy enable
· extlink-href enable
【举例】
# 开启名称为test的HTTP proxy服务的外链URL信息提示功能。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] failed-extlink inform
# 在名称为test的HTTP proxy server视图下,开启HTTP proxy服务的外链URL信息提示功能。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] failed-extlink inform
【相关命令】
· extlink-href enable
· http-proxy server
· hyperlink-proxy
· include server
· medialink-proxy enable
failed-extlink redirect命令用来配置HTTP proxy服务的外链重定向功能。
undo failed-extlink redirect命令用来取消配置HTTP proxy服务的外链重定向功能。
【命令】
failed-extlink redirect error-code
undo failed-extlink redirect error-code
【缺省情况】
未配置HTTP proxy服务的外链重定向功能。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
error-code:需要重定向的错误页面代码,当前支持设备仅支持对返回的错误代码为4xx(请求错误)或5xx(服务器错误)的外链资源进行重定向,不支持错误代码499。
【使用指导】
用户通过HTTP proxy服务访问外链时,可能由于设备代理外链服务器产生错误,导致设备请求部分或全部Web资源失败,用户无法获取所需的外链资源。为有效应对以上情况,可通过执行本命令,使设备引导用户客户端进行重定向,将携带指定错误码的Web资源重定向回外链服务器。此时用户客户端将不通过HTTP proxy服务的代理,而是尝试直接访问外链资源所属的服务器,以降低HTTP proxy服务对用户访问Web页面时因代理产生的负面影响。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置HTTP proxy服务需要重定向的错误页面代码。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
可通过多次执行本命令,配置多个可进行外链重定向对应的错误页面代码。
要使本功能生效,请至少先配置以下任一命令:
· hyperlink-proxy
· medialink-proxy enable
· extlink-href enable
【举例】
# 配置名称为test的HTTP proxy服务收到错误页面代码为502时进行外链重定向。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] failed-extlink redirect 502
# 在名称为test的HTTP proxy server视图下,配置HTTP proxy服务收到错误页面代码为502时进行外链重定向。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] failed-extlink redirect 502
【相关命令】
· extlink-href enable
· http-proxy server
· hyperlink-proxy
· include server
· medialink-proxy enable
http-proxy server-group命令用来创建HTTP proxy的Web服务器组,并进入Web服务器组视图。如果指定的Web服务器组已经存在,则直接进入Web服务器组视图。
undo http-proxy server-group命令用来删除指定的Web服务器组。
【命令】
http-proxy server-group group-name
undo http-proxy server-group group-name
【缺省情况】
不存在HTTP proxy的Web服务器组。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
group-name:Web服务器组的名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
【使用指导】
创建的Web服务器组关联HTTP proxy服务后,无论HTTP proxy服务是否处于开启状态,均无法删除该Web服务器组。
【举例】
# 创建名称为test的Web服务器组,并进入该视图。
<Sysname> system-view
[Sysname] http-proxy server-group test
[Sysname-http-proxy-server-group-test]
【相关命令】
· protocol-type (http-proxy service)
http-proxy server命令用来创建HTTP proxy server视图,并进入该视图。如果指定的视图已经存在,则直接进入该视图。
undo http-proxy server命令用来删除指定的HTTP proxy server视图及视图下的所有配置。
【命令】
http-proxy server server-name
undo http-proxy server server-name
【缺省情况】
不存在HTTP proxy server视图。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
server-name:HTTP proxy server视图的名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
【使用指导】
HTTP proxy服务视图和HTTP proxy server视图下都可以配置HTTP proxy服务的参数,用来控制HTTP proxy服务。两个视图的作用范围不同,使用HTTP proxy服务视图下的配置可以代理同一设备/成员设备/单板上的所有的Web服务器,只能使用一套配置;HTTP proxy server视图的粒度更小,对特定的Web服务器资源进行代理,但是可以针对不同Web服务器资源的代理,进行差异化配置,以满足不同用户或Web服务器对于代理的不同需求,具有更高的灵活性。
HTTP proxy服务视图下的配置对HTTP proxy server视图同样生效。server视图被引用后,不能直接通过undo http-proxy server命令删除该视图,需要先执行undo include server命令取消server视图的引用,再执行undo http-proxy server命令删除该视图。
【举例】
# 创建名称为test的HTTP proxy server视图,并进入该视图。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test]
【相关命令】
· domain-name
· include server
http-proxy service命令用来创建HTTP proxy服务,并进入HTTP proxy服务视图。如果指定的HTTP proxy服务已经存在,则直接进入HTTP proxy服务视图。
undo http-proxy service命令用来删除指定的HTTP proxy服务。
【命令】
(独立运行模式)
http-proxy service service-name slot slot-number
undo http-proxy service service-name slot
(IRF模式)
http-proxy service service-name chassis chassis-number slot slot-number
undo http-proxy service service-name chassis
【缺省情况】
不存在HTTP proxy服务。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
service service-name:HTTP proxy服务名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
slot slot-number:表示在指定单板上创建并进入HTTP proxy服务视图。slot-number为单板所在的槽位号。(独立运行模式)
chassis chassis-number slot slot-number:表示在指定单板上创建并进入HTTP proxy服务视图。chassis-number表示设备在IRF中的成员编号,slot-number表示单板所在的槽位号。(IRF模式)
【举例】
# 在指定单板上创建HTTP proxy服务test,并进入该HTTP proxy服务视图。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1]
【相关命令】
· service enable
hyperlink-proxy命令用来指定需要HTTP proxy服务代理的外链。
undo hyperlink-proxy命令用来取消指定HTTP proxy服务代理的外链。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
【命令】
hyperlink-proxy link-string
undo hyperlink-proxy link-string
【缺省情况】
未指定需要HTTP proxy服务代理的外链。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
link-string:外链的URL,为1~253个字符的字符串,字符串可以包含字母、数字、“-”、“_”、“/”、“.”,不区分大小写。
【使用指导】
缺省情况下,用户访问外链时无法得到代理服务,为了解决这个问题,可通过在HTTP proxy服务视图中指定代理的外链,保证访问该字符串的Web请求也能被代理。
请在HTTP proxy服务处于关闭状态时,指定HTTP proxy服务代理的外链。
HTTP proxy服务开启后,用户请求的网页页面中包含指定链接的URL均会被HTTP proxy服务代理,请谨慎使用。
使用本命令时,需要同时配置domain-name和dns-server命令。
如果关闭本功能时,无限跳转功能及媒体资源外链代理功能也处于关闭状态,则需要外链URL信息提示功能和HTTP proxy服务的外链重定向功能均处于关闭状态,才能成功关闭本功能。
如果当前HTTP proxy服务视图引用了HTTP proxy Server视图,则不能配置hyperlink-proxy命令。
【举例】
# 指定名称为test的HTTP proxy服务代理的外链为www.example.org。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] hyperlink-proxy www.example.org
【相关命令】
· dns-server
· domain-name
· exclude-external-domain
· failed-extlink inform
· failed-extlink redirect
include-external-domain命令用来配置server视图下外链代理的域名。
undo include-external-domain命令用来取消server视图下外链代理的域名配置。
【命令】
include-external-domain domain-name
undo include-external-domain [ domain-name ]
【缺省情况】
未配置server视图下外链代理的域名。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTP proxy server视图下外链代理的域名。在指定的域名前需要添加http://或https://。域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”和“.”。
【使用指导】
设备配置了HTTP proxy服务代理的泛域名时,如果在HTTP proxy server视图下未开启无限跳转功能,则缺省情况下,设备无法使用该HTTP proxy server视图下的配置对外链进行代理。配置了HTTP proxy server视图下外链代理的域名后,设备可以对Web服务器返回的HTTP/HTTPS响应体中,domain-name参数指定的外链域名进行替换,即使用泛域名对该域名进行拼接改造,以实现设备对于指定外链的代理。本命令应用于设备仅需代理部分外链资源的场景中。
如果HTTP proxy server视图下开启了无限跳转功能,则本命令的配置无效。
可通过多次执行本命令,配置多个HTTP proxy server视图下外链代理的域名,最多配置512个HTTP proxy server视图下外链代理的域名。
请在当前HTTP proxy server视图未被引用时,配置server视图下外链代理的域名。
【举例】
# 在名称为test的HTTP proxy server视图下,配置外链代理的域名为test.example.cn。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] include-external-domain http://test.example.cn
【相关命令】
· extlink-external-domain
· http-proxy server
· service enable
· wildcard-domain-name
include-redirect-domain命令用来配置允许替换的重定向URL域名。
undo include-redirect-domain命令用来取消允许替换的重定向URL配置。
【命令】
include-redirect-domain domain-name
undo include-redirect-domain [ domain-name ]
【缺省情况】
未配置重定向域名替换功能。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:进行替换的重定向URL域名。在指定的域名前需要添加http://或https://。域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”和“.”。
【使用指导】
设备配置了HTTP proxy服务代理的泛域名时,如果在HTTP proxy server视图下未开启无限跳转功能,则缺省情况下,设备无法使用该HTTP proxy server视图下的配置对重定向URL进行代理。配置了重定向域名替换功能后,设备可以对Web服务器返回的HTTP/HTTPS响应头中,domain-name参数指定的重定向URL的域名进行替换,即使用泛域名对该域名进行拼接改造,以实现设备对于重定向URL的代理。本命令应用于设备仅需代理部分外链资源的场景中。
如果HTTP proxy server视图下开启了无限跳转功能,则本命令的配置无效。
可以通过多次执行本命令,配置多个进行替换的重定向URL域名。
请在当前HTTP proxy server视图未被引用时,配置重定向域名替换功能。
【举例】
# 在名称为test的HTTP proxy server视图下,配置进行替换的重定向URL域名为tyrz.gxzf.example.cn。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] include-redirect-domain http://tyrz.gxzf.example.cn
【相关命令】
· extlink-external-domain
· http-proxy server
· service enable
· wildcard-domain-name
include server命令用来引用HTTP proxy server视图。
undo indlude server命令用来取消对HTTP proxy server视图的引用。
【命令】
include server server-name [ default ]
undo include server server-name
【缺省情况】
HTTP proxy服务未引用HTTP proxy server视图。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
server-name:HTTP proxy server视图的名称,为1~63个字符的字符串,字符串中可以包含数字、字母和“_”,区分大小写。
default:指定引用的HTTP proxy server视图为缺省HTTP proxy server视图。只能指定一个引用的HTTP proxy server视图为缺省HTTP proxy server视图。如果未指定本参数,则指定引用的HTTP proxy server视图为非缺省HTTP proxy server视图。
【使用指导】
在server视图下执行了domain-name命令,并且在HTTP proxy服务视图下执行了include server命令引用了该HTTP proxy server视图后,代理domain-name命令指定的域名Web资源时,设备将会采用该HTTP proxy server视图下的配置。
引用了缺省HTTP proxy server视图后,客户端请求的Web资源如果未匹配任何HTTP proxy server视图下指定的域名,则设备使用缺省HTTP proxy server视图下的配置进行代理。
请在HTTP proxy服务处于关闭状态时,配置引用HTTP proxy server视图。如果引用的HTTP proxy server视图中没有指定缺省HTTP proxy server视图,则HTTP proxy服务无法开启。
HTTP proxy服务视图下配置了cache-data、domain-name、extlink-href enable、failed-extlink inform、failed-extlink redirect、medialink-proxy enable、hyperlink-proxy、ipv6-address或protocol-type命令时,不能引用HTTP proxy server视图。
【举例】
# 在slot 1上,引用名称为server1的HTTP proxy server视图。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] include server server1
【相关命令】
· http-proxy server
· service enable
ip-address命令用来配置Web服务器的IP地址和端口号。
undo ip-address命令用来删除Web服务器的IP地址和端口号。
【命令】
ip-address ip-address [ port port-number ]
undo ip-address ip-address [ port port-number ]
【缺省情况】
未配置Web服务器的IP地址和端口号。
【视图】
Web服务器组视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
ip-address:Web服务所用的IPv4地址。
port port-number:Web服务所用的端口号,取值范围为1~65535。
【使用指导】
可通过多次执行本命令,配置多台Web服务器的IP地址和端口号。
当Web服务器组关联到HTTP proxy服务后,不能再次修改Web服务器的IP地址和端口号。
【举例】
# 在名称为test的Web服务器组中配置Web服务器的IP地址为10.1.1.10,端口号为8000。
<Sysname> system-view
[Sysname] http-proxy server-group test
[Sysname-http-proxy-server-group-test] ip-address 10.1.1.10 port 8000
ip-pool命令用来配置HTTP proxy连接Web服务器时使用的源IP地址池。
undo ip-pool命令用来删除HTTP proxy连接Web服务器时使用的源IP地址池。
【命令】
ip-pool start-address end-address [ vpn-instance vpn-instance-name ]
undo ip-pool [ start-address end-address [ vpn-instance vpn-instance-name ] ]
【缺省情况】
未配置HTTP proxy连接Web服务器时使用的源IP地址池。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
start-address end-address:表示源IP地址池的起始IP地址和结束IP地址。end-address必须大于或等于start-address,如果start-address和end-address相同,则表示只有一个地址。
vpn-instance vpn-instance-name:指定源IP地址池所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示指定公网IP地址池。
【使用指导】
HTTP proxy连接Web服务器时,缺省使用路由出接口的IP地址作为报文的源IP地址转发报文。每个源地址最多可建立65535个TCP链接。当设备和Web服务器间需要建立大量TCP连接时,可以配置HTTP proxy服务连接Web服务器的源IP地址池。设备使用源地址池中的IP地址作为报文的源IP地址从路由出接口将报文转发出去,最多可建立“地址个数×65535”个TCP链接。
多次执行本命令可配置多个源IP地址池。同一HTTP proxy服务视图下最多可配置64个IP地址池,所有地址池中包含的地址不能重叠,且每个地址池中IP地址数量不能超过512。
同一HTTP proxy服务视图下的地址池只能属于一个VPN实例,不同HTTP proxy服务视图地址池所属的VPN实例不能相同。
【举例】
# 配置名称为test的HTTP proxy服务连接Web服务器时使用的源IP地址池。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ip-pool 1.1.1.1 1.1.1.100 vpn-instance vpn1
ipv6-address命令用来配置HTTP proxy服务的IPv6地址。
undo ipv6-address命令用来删除HTTP proxy服务的IPv6地址。
【命令】
ipv6-address ipv6-address
undo ipv6-address
【缺省情况】
未配置HTTP proxy服务的IPv6地址。
【视图】
HTTP proxy服务视图
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
ipv6-address:HTTP proxy服务的IPv6地址。
【使用指导】
本命令配置的HTTP proxy服务的IPv6地址为HTTP proxy服务所代理的Web服务器对用户呈现的IPv6地址。
请在HTTP proxy服务处于关闭状态以及当前HTTP proxy server视图未被引用时,配置HTTP proxy服务的IPv6地址。
引用HTTP proxy server视图后,本命令不能在HTTP proxy服务视图下配置。
【举例】
# 配置名称为test的HTTP proxy服务的IPv6地址为2001::1。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ipv6-address 2001::1
# 在名称为test的HTTP proxy server视图下,配置HTTP proxy服务的IPv6地址为2001::1。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] ipv6-address 2001::1
【相关命令】
· http-proxy server
· include server
· service enable
keyword monitor命令用来指定HTTP proxy服务代理的Web页面内容要监控的关键字。
undo keyword命令用来取消对指定HTTP proxy服务代理的Web页面内容关键字的监控。
【命令】
keyword monitor keyword-string
undo keyword monitor monitor-string
【缺省情况】
未指定HTTP proxy服务代理的网站要监控的关键字。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
keword-string:要监控及要替换的关键字,为1~255个字符的字符串,且支持UTF-8编码格式的中文字符。需要注意的是,要监控的关键字和要替换的关键字需要依次输入,两者之间使用空格(可多个)分隔,例如“abc def”表示要监控的关键字为abc且需要替换为def。如果仅需要监控某关键字,不需要将其替换,则仅输入要监控的关键字即可。
【使用指导】
可以通过多次执行本命令,配置多个HTTP proxy服务代理的Web页面要监控的关键字,最多同时监控512个关键字。
设备通过配置监控关键字功能,对HTTP proxy服务代理的Web页面的内容进行监控,并可以将被监控的关键字替换成指定的字符串。监控替换信息可以通过display http-proxy命令及display http-proxy monitor-info命令进行查询。
请在HTTP proxy服务处于关闭状态时,修改网站要监控或者替换的关键字。
【举例】
# 配置名称为test的HTTP proxy服务代理的网站要监控的关键字为abc。
<Sysname> system-view
[Sysname] http-proxy service test
[Sysname-http-proxy-service-test] keyword monitor abc
# 配置名称为test的HTTP proxy服务代理的网站要替换的关键字为abc,并替换为def。
<Sysname> system-view
[Sysname] http-proxy service test
[Sysname-http-proxy-service-test] keyword monitor abc def
【相关命令】
· display http-proxy monitor-info
· service enable
medialink-proxy enable命令用来开启HTTP proxy服务的媒体资源外链代理功能。
undo medialink-proxy enable命令用来关闭HTTP proxy服务的媒体资源外链代理功能。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
【命令】
medialink-proxy enable
undo medialink-proxy enable
【缺省情况】
HTTP proxy服务的媒体资源外链代理功能处于关闭状态。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
如果用户访问HTTP proxy服务代理的Web服务器网站上存在非本网站的媒体资源文件(如网页中的视频或图片),为了保证用户可以正常获取这些媒体资源,需要开启本功能。
使用本功能时,需要同时配置domain-name和dns-server命令。
如果关闭本功能时,无限跳转功能及指定外链代理功能也处于关闭状态,则需要外链URL信息提示功能和HTTP proxy服务的外链重定向功能均处于关闭状态,才能成功关闭本功能。
如果当前HTTP proxy服务视图引用了HTTP proxy Server视图,则不能配置hyperlink-proxy命令。
【举例】
# 在名称为test的HTTP proxy服务中,开启HTTP proxy服务的媒体资源外链代理功能。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] medialink-proxy enable
【相关命令】
· dns-server
· domain-name
· failed-extlink inform
· failed-extlink redirect
protocol-type命令用来配置HTTP proxy服务代理的协议类型、侦听的端口号以及关联的Web服务器组。
undo protocol-type命令用来删除HTTP proxy服务的代理协议类型、侦听的端口号以及关联的Web服务器组。
【命令】
protocol-type { http | https } [ port port-number ] [ server-group group-name ]
undo protocol-type { http | https } [ port port-number ] [ server-group group-name ]
【缺省情况】
未配置HTTP proxy服务的代理协议类型、侦听的端口号以及关联的Web服务器组。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
http:当前HTTP proxy服务支持使用HTTP协议。
https:当前HTTP proxy服务支持使用HTTPS协议。
port port-number:HTTP proxy服务侦听的端口号,取值范围为1~65535。当前HTTP proxy服务使用HTTP协议时,缺省值为80;当前HTTP proxy服务使用HTTPS协议时,缺省值为443。
server-group group-name:Web服务器组的名称,为1~63个字符的字符串,不区分大小写,且仅能使用数字、字母和“_”。不指定本参数时,设备可以访问所有的Web服务器。
【使用指导】
配置本命令后,客户端使用指定的协议、端口号访问Web服务器时:
· 如果Web服务器地址是IPv6地址,设备直接转发收到的报文。
· 如果Web服务器地址是IPv4地址,设备将原始报文转换成IPv4报文,使用Web服务器组中指定的协议,发送给Web服务器组中指定的Web服务器。
可通过多次执行本命令,为HTTP proxy服务配置多个侦听端口号和关联的服务器组,用于实现访问不同Web服务器的需求。指定同一侦听端口号多次执行本命令时,以最后一次执行的命令为准。
不同的协议类型不建议关联同一个服务器组,同一个端口号只能关联一个服务器组,且该服务器组中必须已经配置了服务协议类型与Web服务器的IP地址。
HTTP proxy服务支持使用的协议和侦听的端口号,对应设备收到的HTTP/HTTPS请求报文中的协议类型和协议使用的端口号。
引用HTTP proxy server视图后,不能配置本命令。请在HTTP proxy服务处于关闭状态时,配置HTTP proxy服务代理的协议类型、侦听的端口号以及关联的Web服务器组。
【举例】
# 配置名称为test的HTTP proxy服务使用HTTP协议作为服务类型,侦听端口号为8000,并关联名为grouptest的Web服务器组。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] protocol-type http port 8000 server-group grouptest
protocol-type命令用来配置HTTP proxy服务代理的协议类型和侦听的端口号。
undo protocol-type命令用来删除HTTP proxy服务的代理协议类型和侦听的端口号。
【命令】
protocol-type { http | https } [ port port-number ]
undo protocol-type { http | https } [ port port-number ]
【缺省情况】
未配置HTTP proxy服务的代理协议类型和侦听的端口号。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
http:当前HTTP proxy服务支持使用HTTP协议。
https:当前HTTP proxy服务支持使用HTTPS协议。
port port-number:HTTP proxy服务侦听的端口号,取值范围为1~65535。当前HTTP proxy服务使用HTTP协议时,缺省值为80;当前HTTP proxy服务使用HTTPS协议时,缺省值为443。
【使用指导】
配置本命令后,客户端使用指定的协议、端口号访问Web服务器时:
· 如果Web服务器地址是IPv6地址,设备直接转发收到的报文。
· 如果Web服务器地址是IPv4地址,设备将原始报文转换成IPv4报文,使用本命令指定的协议,重新发送给Web服务器。
HTTP proxy服务使用的协议和侦听的端口号,对应设备收到的HTTP/HTTPS请求报文中的协议类型和协议使用的端口号。
可以多次执行本命令,为HTTP服务使用的协议配置多个侦听的端口号。指定同一个侦听的端口号多次执行本命令时,以最后一次执行的命令为准。
请在当前HTTP proxy server视图未被引用时,配置HTTP proxy服务代理的协议类型和侦听的端口号
【举例】
# 在名称为test的HTTP proxy server视图下,配置HTTP proxy服务使用HTTP协议作为服务类型,侦听端口号为8000。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] protocol-type http port 8000
【相关命令】
· http-proxy server
· include server
protocol-type命令用来配置Web服务器组的服务协议类型。
undo protocol-type命令用来删除Web服务器组的服务协议类型。
【命令】
protocol-type { http | https }
undo protocol-type
【缺省情况】
未配置Web服务器组的服务协议类型。
【视图】
Web服务器组视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
http:HTTP协议。
https:HTTPS协议。
【使用指导】
Web服务器组关联到HTTP proxy服务后,不能再次修改Web服务器组的服务协议类型。
Web服务器组的服务协议类型,对应设备重新封装后,发送给Web服务器的HTTP/HTTPS请求报文中使用的协议类型。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 在名称为test的Web服务器组中,配置HTTP proxy的Web服务器组使用HTTP协议作为服务协议类型。
<Sysname> system-view
[Sysname] http-proxy server-group test
[Sysname-http-proxy-server-group-test] protocol-type http
referer-protection domain命令用来配置指定代理域名的防盗链白名单域名。
undo referer-protection domain命令用来取消指定代理域名的防盗链白名单配置。
【命令】
referer-protection domain domain-name allowlist allowlist-domain-name
undo referer-protection domain domain-name [ allowlist allowlist-domain-name ]
【缺省情况】
未配置指定代理域名的防盗链白名单域名。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTP proxy服务代理的域名。其中,域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”。
allowlist-domain-name:防盗链功能的白名单域名。其中,域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串。本参数可以输入的总长度请以设备的实际情况为准,不区分大小写,字符串中可以包含字母、数字、“-”、“_”、“.”或“*”。“*”字符用来匹配固定开头或结尾的一系列域名。例如,“www.example.*”表示所有开头为“www.example.”的域名均为防盗链功能的白名单域名;“*.example.gov”表示所有结尾为“.example.gov”的域名均为防盗链功能的白名单域名。
【使用指导】
配置了防盗链白名单域名后,设备在代理域名domain-name时,将开启防盗链功能。用户客户端访问domain-name时,如果发送的HTTP/HTTPS请求报文中Referer字段不是allowlist-domain-name指定的白名单域名,则设备会拒绝该请求。防盗链功能有效防止了其他网站盗取代理网站上的资源,适合通过HTTP proxy server视图代理的网站上有较多资源地址时开启。
可以通过多次执行本命令,为指定同一个设备代理的域名配置多个防盗链功能的白名单域名。如果同时配置了本命令和referer-protection enable命令,则用户客户端发送的HTTP/HTTPS请求报文中Referer字段需要同时满足两条命令的要求,该请求才会被处理,否则请求被拒绝。
请在当前HTTP proxy server视图未被引用时,配置指定代理域名的防盗链白名单域名。
【举例】
# 在名称为test的HTTP proxy server视图下,开启域名为test.example.cn的防盗链功能,并指定防盗链功能的白名单域名为test1.example.cn。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] referer-protection domain test.example.cn whiltelist test1.example.cn
【相关命令】
· http-proxy server
· referer-protection enable
· service enable
referer-protection enable命令用来开启HTTP proxy服务的Referer防盗链功能。
undo referer-protection enable命令用来关闭HTTP proxy服务的Referer防盗链功能。
【命令】
referer-protection enable
undo referer-protection enable
【缺省情况】
HTTP proxy服务的Referer防盗链功能处于关闭状态。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
Referer防盗链功能会将用户HTTP请求中的Referer字段与设置的白名单域名进行匹配用于过滤访问网站资源的连接请求,能够防止其他网站盗取代理网站上的资源,适合HTTP proxy服务代理网站上有较多资源地址时开启。要使Referer防盗链功能生效,必须先通过domain-name命令配置HTTP proxy服务代理的白名单域名。
请在HTTP proxy服务处于关闭状态时,配置防盗链功能。
【举例】
# 开启名称为test的HTTP proxy服务的Referer防盗链功能。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] referer-protection enable
【相关命令】
· domain-name
· service enable
replace response-header命令用来开启HTTP/HTTPS响应头中指定字段的改造功能。
undo replace response-header命令用来关闭HTTP/HTTPS响应头中指定字段的改造功能。
【命令】
replace response-header { access-control-allow-origin | location | p3p | refresh | vary }
undo replace response-header { access-control-allow-origin | location | p3p | refresh | vary }
【缺省情况】
HTTP/HTTPS响应头中所有字段的改造功能均处于关闭状态。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
access-control-allow-origin:响应头中的access-control-allow-origin字段。
location:响应头中的Location字段。
p3p:响应头中的P3P字段。
refresh:响应头中的Refresh字段。
vary:响应头中的Vary字段。
【使用指导】
缺省情况下,设备不会对HTTP/HTTPS响应头中的字段进行修改,开启了无限跳转功能后,由于设备可以对任意的外链进行代理,在代理Web服务器上与服务器非同源的外链时,将需要用户客户端发起跨域请求。某些客户端不允许进行跨域请求,则无法访问与Web服务器非同源的外链。开启HTTP/HTTPS响应头中指定字段的改造功能后,设备将使用wildcard-domain-name命令配置的泛域名对响应头中的指定字段进行改造,例如,将Referer字段的内容“https://www.example.com”改造成“http://https-example-abc-com.example.cn”(example.cn为配置的泛域名),客户端接收到改造了响应头的HTTP/HTTPS应答后,对于响应体中外链的访问不再认为是跨域请求,后续能够进行正常的访问。
可以通过多次执行本命令,配置多个HTTP/HTTPS响应头中的改造字段。
请在当前HTTP proxy server视图未被引用时,配置HTTP/HTTPS响应头中的域名替换功能。
【举例】
# 在名称为test的HTTP proxy server视图下,开启HTTP/HTTPS响应头中的域名替换功能。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] restore response-header access-control-allow-origin
【相关命令】
· extlink-href enable
· http-proxy server
· service enable
· wildcard-domain-name
restore request-header命令用来开启HTTP/HTTPS请求头中字段的还原功能。
undo restore request-header命令用来关闭HTTP/HTTPS请求头中字段的还原功能。
【命令】
restore request-header { origin | referer | x-wap-profile }
undo restore request-header { origin | referer | x-wap-profile }
【缺省情况】
未配置HTTP/HTTPS请求头中任何字段的还原。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
origin:请求头中的Origin字段。
referer:请求头中的Referer字段。
x-wap-profile:请求头中的x-wap-profile字段。
【使用指导】
配置了replace response-header命令后,设备会对HTTP/HTTPS响应头中的指定字段使用泛域名进行改造。用户客户端根据该响应再次发送HTTP/HTTPS请求时,请求头中的相关字段为设备改造后的形式,如果不还原这些字段,设备无法通过改造后的HTTP/HTTPS请求头完成Web资源的代理。开启HTTP/HTTPS请求头中指定字段的还原功能后,设备会对请求头中使用指定泛域名改造过的指定字段进行还原,以保证客户端代理资源的正常访问。
可以通过多次执行本命令,配置多个HTTP/HTTPS请求头中的还原字段。
请在当前HTTP proxy server视图未被引用时,配置HTTP/HTTPS请求头中的域名还原功能。
【举例】
# 在名称为test的HTTP proxy server视图下,开启HTTP/HTTPS请求头中的域名还原功能。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] restore request-header origin
【相关命令】
· http-proxy server
· service enable
· wildcard-domain-name
restore request-querystring命令用来开启QueryString还原功能。
undo restore request-querystring命令用来关闭QueryString还原功能。
【命令】
restore request-querystring
undo restore request-querystring
【缺省情况】
QueryString还原功能处于关闭状态。
【视图】
HTTP proxy server视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
开启无限跳转功能后,用户客户端发送的HTTP/HTTPS请求报文的URL中,QueryString参数可能包含经过设备替换的域名。缺省情况下,设备不会对QueryString参数中经过替换的域名进行还原,客户端无法通过QueryString请求到相应的Web资源。开启QueryString还原功能后,设备会将QueryString参数中经过替换的域名还原为原域名,以保证客户端对QueryString中请求的资源的正常获取。
请在当前HTTP proxy server视图未被引用时,配置QueryString还原功能。
【举例】
# 在名称为test的HTTP proxy server视图下,开启QueryString还原功能。
<Sysname> system-view
[Sysname] http-proxy server test
[Sysname-http-proxy-server-test] restore request-querystring
【相关命令】
· extlink-href enable
· http-proxy server
· service enable
· wildcard-domain-name
service enable命令用来开启HTTP proxy服务。
undo service enable命令用来关闭HTTP proxy服务。
【命令】
service enable
undo service enable
【缺省情况】
HTTP proxy服务处于关闭状态。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
HTTP proxy功能需要安装License才能使用。有关License的详细介绍,请参见“基础配置指导”中的“License管理”。
开启HTTP proxy服务功能的前提条件包括:
· 配置HTTP proxy服务的代理协议类型并关联Web服务器组。
· 配置HTTP proxy服务的IPv6地址。
· 如果HTTP proxy服务指定的协议类型为HTTPS协议,必须通过ssl certificate file和ssl certificate key-file命令配置HTTP proxy服务的SSL证书与密钥文件。
· 如果HTTP proxy服务配置了hyperlink proxy或medialink-proxy enable命令,则需要配置dns-server命令。
开启HTTP proxy服务功能后,除access-record enable命令外,HTTP proxy服务视图下的命令均不能再做修改。
【举例】
# 开启名称为test的HTTP proxy服务。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] service enable
【相关命令】
· dns-server
· domain-name
· hyperlink-proxy
· ipv6-address
· medialink-proxy enable
· protocol-type (http-proxy service)
· ssl certificate file
· ssl certificate key-file
ssl certificate directory命令用来配置SSL证书相关文件所在目录。
undo ssl certificate directory命令用来取消配置SSL证书相关文件所在目录。
【命令】
ssl certificate directory directory [ encryption ]
undo ssl certificate directory
【缺省情况】
未配置SSL证书相关文件所在目录。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
directory:SSL证书相关文件所在目录。directory参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为设备上拥有存储介质的板卡所在槽位号。directory参数必须指定主设备/主用主控板上的存储介质。(独立运行模式)
directory:SSL证书相关文件所在目录。directory参数必须携带chassis和slot编号用以指定存储介质所处的位置。存储介质位置的表示方式为:chassism#slotn#。其中m为设备的成员编号,n为成员设备上拥有存储介质的板卡所在槽位号。directory参数必须指定主设备/主用主控板上的存储介质。(IRF模式)
encryption:使用国密算法加密指定目录下的所有SSL证书相关文件。如果未指定本参数,则不加密SSL证书相关文件。
【使用指导】
本命令用来配置HTTP proxy服务代理HTTPS类型的Web请求时,所需的SSL证书文件及证书的密钥文件所在目录。
执行本命令后,系统会检查指定的SSL证书文件所在目录是否存在。如果目录存在,则本命令配置成功;如果目录不存在,则本命令配置失败。
指定encryption参数后,设备在开启HTTP proxy服务时会对SSL证书文件进行加密,并且仅在需要使用SSL证书进行HTTPS访问时设备才会对SSL证书相关文件进行解密,以增加HTTP proxy服务的安全性。
加密后的文件为.enc后缀格式,所以无法对本命令指定的目录下原本就携带.enc后缀的文件进行加密。
设备在加密SSL证书相关文件时,会重新生成一个加密文件,并删除原文件。取消该配置时,被加密的文件不会被删除,原文件也不会恢复。所以在配置了加密文件并启动HTTP proxy服务后,如果想执行配置回退或取消该配置后重新配置不加密的文件,请重新将SSL证书相关文件上传至设备。
请在HTTP proxy服务处于关闭状态时,修改SSL证书相关文件所在目录。
多次执行本命令,最后一次的执行的命令生效。本命令配置的证书相关文件所在目录仅对ssl certificate domain-name file key-file命令配置的证书文件和密钥文件生效。
本命令和ssl certificate file命令及ssl certificate key-file命令互斥。
【举例】
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书相关文件所在目录为本地Flash中ssl-certificate文件夹。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate directory slot1#flash:/ssl-certificate
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书相关文件所在目录为本地Flash中ssl-certificate文件夹,并且使用国密算法加密该目录下的所有SSL证书相关文件。(发布式设备-独立运行模式)(集中式IRF设备)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate directory flash:/ssl-certificate encryption
【相关命令】
· protocol-type (http-proxy service)
· ssl certificate domain-name file key-file
· service enable
ssl certificate domain-name file key-file命令用来指定HTTP proxy服务代理HTTPS域名所需的SSL证书文件及对应的密钥文件。
undo ssl certificate domain-name命令用来删除指定HTTP proxy服务代理HTTPS域名所需的SSL证书文件及对应的密钥文件。
【命令】
ssl certificate domain-name domain-name file certificate-file key-file key-file
undo ssl certificate domain-name domain-name
【缺省情况】
未配置HTTP proxy服务代理HTTPS域名所需的SSL证书文件及对应的密钥文件。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
domain-name:HTTPS类型Web请求的域名。domain-name的域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”、“.”或“*”。“*”字符用来匹配固定开头或结尾的一系列域名。例如,“www.example.*”表示所有开头为“www.example.”的域名均被匹配;“*.example.gov”表示所有结尾为“.example.gov”的域名均被匹配。
certificate-file:SSL证书文件的名称。
key-file:SSL证书密钥文件的名称。
【使用指导】
本命令用来配置HTTP proxy服务代理HTTPS类型的Web请求时,HTTPS类型Web请求的域名对应的SSL证书文件和密钥文件,这些文件被保存在ssl certificate directory命令指定的路径中。
在配置本命令前,请确保ssl certificate directory命令指定的路径中已经存在指定的SSL证书文件和密钥文件,否则本命令将执行失败。
请在开启HTTP proxy功能前,完成SSL证书文件的配置。否则,HTTP proxy服务无法正常使用HTTPS协议做代理服务。
请在HTTP proxy服务处于关闭状态时,修改SSL证书文件。
可以通过多次执行本命令,配置多个HTTPS类型Web请求的域名对应的SSL证书文件和密钥文件,证书文件和密钥文件的组合最多存在128对。针对同一HTTPS类型Web请求的域名多次配置SSL证书文件和密钥文件时,最后一次的配置生效。
ssl certificate domain-name file key-file命令和ssl certificate file命令以及ssl certificate key-file命令互斥。
【举例】
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理访问test.example.cn时,所需的SSL证书文件cert.pem和密钥文件cert.key。
<Sysname> system-view
[Sysname] http-proxy service test
[Sysname-http-proxy-service-test] ssl certificate domain-name test.example.cn file cert.pem key-file cert.key
【相关命令】
· protocol-type (http-proxy service)
· ssl certificate directory
· service enable
ssl certificate file命令用来配置SSL证书文件。
undo ssl certificate file命令用来恢复缺省情况。
【命令】
ssl certificate file certificate-file [ encryption ]
undo ssl certificate file
【缺省情况】
未配置SSL证书文件。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
certificate-file:SSL证书文件的名称。certificate-file参数必须指定主用主控板/主设备的存储介质。(独立运行模式)
certificate-file:SSL证书文件的名称。certificate-file参数必须指定主用主控板的存储介质。(IRF模式)
encryption:使用国密算法加密SSL证书文件。如果未指定本参数,则不加密SSL证书文件。
【使用指导】
本命令用来配置HTTP proxy服务代理HTTPS类型的Web请求时,所需的SSL证书文件。
IRF模式设备在配置本命令后,系统会检查主设备/主用主控板上是否存在指定的SSL证书文件。如果文件存在,则本命令配置成功;如果文件不存在,则本命令配置失败。在执行本命令之前用户需要手动将SSL证书文件拷贝到所有备用设备/备用主控板的相同路径下,以便在发生主备倒换时顺利恢复HTTP proxy服务的配置。
指定encryption参数后,设备在开启HTTP proxy服务时会对SSL证书文件进行加密,并且仅在需要使用SSL证书进行HTTPS访问时设备才会对SSL证书文件进行解密,以增加HTTP proxy服务的安全性。
加密后的文件为.enc后缀格式,所以无法对原本就携带.enc后缀的文件进行加密。
设备在加密SSL证书文件时,会重新生成一个加密文件,并删除原文件。取消该配置时,被加密的文件不会被删除,原文件也不会恢复。所以在配置了加密文件并启动HTTP proxy服务后,如果想执行配置回退或取消该配置后重新配置不加密的文件,请重新将SSL证书文件上传至设备。
请确保通过ssl certificate file命令配置的SSL证书文件和通过ssl certificate key-file命令配置的密钥文件被同时加密或同时不被加密,否则这两条命令无法正常下发。
请在开启HTTP proxy开启前,完成SSL证书文件的配置。否则,HTTP proxy服务无法正常使用HTTPS协议做代理服务。
修改SSL证书文件前,首先需要关闭HTTP proxy功能,完成修改后再次开启。
【举例】
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书文件为cert.pem。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate file flash:/cert.pem
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书文件为cert.pem,并且使用国密算法加密证书文件。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate file flash:/cert.pem encryption
【相关命令】
· protocol-type (http-proxy service)
ssl certificate key-file命令用来指定SSL证书密钥文件。
undo ssl certificate key-file命令用来恢复缺省情况。
【命令】
ssl certificate key-file key-file [ encryption ]
undo ssl certificate key-file
【缺省情况】
未配置SSL证书密钥文件。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
key-file:SSL证书密钥文件的名称。key-file参数必须指定主用主控板/主设备上的存储介质。(独立运行模式)
key-file:SSL证书密钥文件的名称。key-file参数必须指定主用主控板的存储介质。(IRF模式)
encryption:使用国密算法加密SSL证书密钥文件。如果未指定本参数,则不加密SSL证书密钥文件。
【使用指导】
本命令用来配置HTTP proxy服务代理HTTPS类型的Web请求时,所需的SSL证书密钥文件。
IRF模式设备在配置本命令后,系统会检查主设备/主用主控板上是否存在指定的SSL证书密钥文件。如果文件存在,则本命令配置成功;如果文件不存在,则本命令配置失败。在执行本命令之前用户需要手动将SSL证书密钥文件拷贝到所有备用设备/备用主控板的相同路径下,以便在发生主备倒换时顺利恢复HTTP proxy服务的配置。
指定encryption参数后,设备在开启HTTP proxy服务时会对SSL证书密钥文件进行加密,并且仅在需要使用SSL证书密钥进行HTTPS访问时设备才会对SSL证书密钥文件进行解密,以增加HTTP proxy服务的安全性。
加密后的文件为.enc后缀格式,所以无法对原本就携带.enc后缀的文件进行加密。
设备在加密SSL证书密钥文件时,会重新生成一个加密文件,并删除原文件。取消该配置时,被加密的文件不会被删除,原文件也不会恢复。所以在配置了加密文件并启动HTTP proxy服务后,如果想执行配置回退或取消该配置后重新配置不加密的文件,请重新将SSL证书密钥文件上传至设备。
请确保通过ssl certificate file命令配置的SSL证书文件和通过ssl certificate key-file命令配置的密钥文件被同时加密或同时不被加密,否则这两条命令无法正常下发。
请在开启HTTP proxy开启前,完成SSL证书密钥文件的配置。否则,HTTP proxy服务无法正常使用HTTPS协议做代理服务。
修改SSL证书密钥文件前,首先需要关闭HTTP proxy功能,完成修改后再次开启。
【举例】
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书密钥文件cert.key。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate key-file flash:/cert.key
# 配置名称为test的HTTP proxy服务使用HTTPS协议做代理时,所需的SSL证书密钥文件为cert.key,并且使用国密算法加密证书密钥文件。(分布式设备-独立运行模式)(集中式IRF设备)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] ssl certificate key-file flash:/cert.key encryption
【相关命令】
· protocol-type (http-proxy service)
url-protection enable命令用来开启HTTP proxy服务的防SQL注入、防XSS注入功能。
undo url-protection enable命令用来关闭HTTP proxy服务的防SQL和XSS注入功能。
【命令】
url-protection enable
undo url-protection enable
【缺省情况】
HTTP proxy服务的防SQL和XSS注入功能未开启。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
防SQL和XSS注入功能能够阻止用户把SQL或XSS语句插入到Web页面请求中,以欺骗服务器执行恶意的SQL或XSS命令,建议代理含有数据库的网站时开启。
请在HTTP proxy服务处于关闭状态时,配置防SQL和XSS注入功能。
【举例】
# 开启名称为test的HTTP proxy服务的防SQL和XSS注入功能。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] url-protection enable
【相关命令】
· service enable
wildcard-domain-name命令用来配置HTTP proxy服务代理的泛域名。
undo wildcard-domain-name命令用来恢复缺省情况。
【命令】
wildcard-domain-name wildcard-domain-name
undo wildcard-domain-name
【缺省情况】
HTTP proxy服务代理的泛域名为extlink.cn。
【视图】
HTTP proxy服务视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
wildcard-domain-name:HTTP proxy服务代理的泛域名的名称。其中,域名后缀由“.”分隔的字符串组成(如example.com),每个字符串的长度不超过63个字符,最少输入2个这样的字符串,最多输入4个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”。
【使用指导】
HTTP proxy服务代理的泛域名用于配合无限跳转功能,它可以避免设备代理不同网站的外链时需要多次配置domain-name命令的繁琐操作。
当用户访问外链时,设备使用本命令配置的泛域名拼接外链的域名后返回给用户。设备收到携带泛域名信息的HTTP/HTTPS请求时,剥离泛域名并送至DNS服务器解析用户请求访问的外链域名。DNS服务提供商解将解析后的IP地址返回给设备,进而实现对外链的访问代理功能。
外链,即在本网站中导入的其他网站的链接,在本文中,所有“外链”描述均代指IPv6用户访问的IPv4服务器Web页面上存在的非本网站资源(超级链接)。
请在HTTP proxy服务处于关闭状态时,配置泛域名功能。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置名称为test的HTTP proxy服务代理的泛域名为example.cn。
<Sysname> system-view
[Sysname] http-proxy service test
[Sysname-http-proxy-service-test] wildcard-domain-name example.cn
# 配置名称为test的HTTP proxy服务代理的泛域名为example.cn。(独立运行模式)
<Sysname> system-view
[Sysname] http-proxy service test slot 1
[Sysname-http-proxy-service-test-slot1] wildcard-domain-name example.cn
【相关命令】
· extlink-href enable
· service enable
· dns-server
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!