EdgeADC
Edgenexus ADC管理指南
×
Menu

认证

库 > 认证页面允许你设置认证服务器并创建认证规则,有客户端Basic或Forms和服务器端NTLM或BASIC选项。
设置认证--一个工作流程
请至少执行以下步骤,将认证应用于你的服务。
1.     创建一个认证服务器。
2.     创建一个使用认证服务器的认证规则。
3.     创建一个使用认证规则的flightPATH规则。
4.     将flightPATH规则应用于一个服务
认证服务器
为了建立一个有效的认证方法,我们必须首先建立一个认证服务器。
·     点击添加服务器按钮。
·     这个动作将产生一个空白行,准备完成。
选项
描述
命名
给你的服务器起个名字,以便于识别 - 这个名字在规则中使用
描述
添加描述
认证方法
选择一个认证方法
LDAP - 基本的LDAP,用户名和密码以明文形式发送到LDAP服务器。
LDAP-MD5 - 基本的LDAP,用户名为明文,密码为MD5散列以提高安全性。
LDAPS - LDAP over SSL。在ADC和LDAP服务器之间的加密隧道内,以明文形式发送密码。
LDAPS-MD5 - LDAP over SSL。在ADC和LDAP服务器之间的加密隧道中,密码是经过MD5散列的,以增加安全性。
领域
添加LDAP服务器的域名。
服务器地址
添加认证服务器的IP地址或主机名
LDAP - IPv4地址或主机名。
LDAP-MD5 - 仅限主机名(IPv4地址不工作)。
LDAPS - IPv4地址或主机名。
LDAPS-MD5 - 只有主机名(IPv4地址不起作用)。
港口
默认情况下,为LDAP使用389端口,为LDAPS使用636端口。不需要为LDAP和LDAPS添加端口号。当其他方法可用时,你将能够在这里配置它们
搜索条件
搜索条件必须符合RFC 4515的规定。例子。
(MemberOf=CN=Phon- VPN,CN=Users,DC=mycompany,DC=local)。
搜索基地
这个值是在LDAP数据库中搜索的起点。
例子 dc=mycompany,dc=local
登录格式
使用你需要的登录格式。
用户名 - 选择这种格式后,你只需要输入用户名。用户输入的任何用户和域名信息都会被删除,而使用来自服务器的域名信息。
用户名和域 - 用户必须输入整个域和用户名的语法。例如:mycompany\gchristie OR someone@mycompany。在服务器一级输入的域名信息被忽略。
空白 - ADC将接受用户输入的任何信息,并将其发送到认证服务器。这个选项在使用MD5时使用。
密码锁
在这个版本中没有使用这个选项。
死亡时间
本版本中未使用
 
认证规则
下一个阶段是创建认证规则,供服务器定义使用。
场地
描述
命名
为你的认证规则添加一个合适的名称。
描述
添加一个合适的描述。
根域
除非你需要跨子域的单点登录,否则这个选项必须留空。
认证服务器
这是一个下拉框,包含你已经配置的服务器。
客户端认证。
 
 
选择适合你的需求的价值。
基本(401)--该方法使用标准的401认证方法
表格 - 这将向用户展示ADC的默认表格。在表格中,你可以添加一条信息。你可以选择一个你已经上传的表格,使用下面的部分。
服务器认证
 
 
 
选择适当的值。
无 - 如果你的服务器没有任何现有的认证,选择此设置。这个设置意味着你可以向以前没有的服务器添加认证能力。
基本 - 如果你的服务器启用了基本认证(401),那么选择基本。
NTLM - 如果你的服务器启用了NTLM认证,那么选择NTLM。
形状
 
 
选择适当的值
默认 - 选择该选项将导致ADC使用其内置形式。
自定义 - 你可以添加一个你所设计的表格,并在这里选择它。
留言
在表格中添加一条个人信息。
超时
在规则中添加一个超时,超时后用户需要再次进行认证。注意超时设置只对基于表单的认证有效。
单点登录
如果你希望为用户提供单点登录,请在根域名一栏中填写你的域名。在这个例子中,我们使用了edgenexus.io。我们现在可以有多个服务将使用edgenexus.io作为根域,而你只需要登录一次。如果我们考虑以下服务。
·     分享点.mycompany.com
·     usercentral.mycompany.com
·     appstore.mycompany.com
这些服务可以驻留在一个VIP上,也可以分布在三个VIP上。用户第一次访问usercentral. mycompany.com时,会看到一个表格,要求他们根据使用的认证规则登录。然后,同一个用户可以连接到appstore.mycompany.com,并将被ADC自动认证。你可以设置超时,一旦达到这个非活动期,将强制认证。
表格
本节将使你能够上传一个自定义表单。
如何创建你的自定义表格
尽管ADC提供的基本表格足以满足大多数目的,但在某些情况下,公司希望向用户展示自己的身份。你可以创建你的自定义表格,在这种情况下,用户将被要求填写。这个表格必须是HTM或HTML格式。
选项
描述
命名
表单名称 = loginform
行动=%JNURL%
方法 = POST
帐号
语法:name = "JNUSER"
密码。
名称="JNPASS"
可选信息1。
%JNMESSAGE%。
可选信息2。
%jnauthmessage%。
图片
如果你想添加图片,那么请使用Base64编码在行内添加它。
一个非常基本和简单的表格的HTML代码示例
<HTML>
<开头>
<title>示例认证表格</title>。
</HEAD>
<BODY>
%JNMESSAGE%[br>
<form name="loginform" action="%JNURL%" method="post"> USER: <input type="text" name="JNUSER" size="20" value="" ></br>
密码:<input type="password" name="JNPASS" size="20" value=""></br>
<input type="submit" name="submit" value="OK">。
</form>
</BODY>
</HTML>
添加一个自定义表单
一旦你创建了一个自定义表单,你可以使用表单部分来添加它。
1.     为你的表格选择一个名称
2.     在本地浏览您的表格
3.     点击上传
 
预览你的自定义表格
要查看你刚上传的自定义表格,你要选择它并点击预览。你也可以用这个部分来删除不再需要的表格。
缓存
ADC能够在其内部存储器中缓存数据,并定期将此缓存刷新到ADC的内部存储器中。管理这一功能的设置在本节中提供。
全局缓存设置
最大缓存大小(MB
这个值决定了Cache可以消耗的最大RAM。ADC缓存是一个内存中的缓存,也会定期刷新到存储介质中,以保持重启、重启和关机操作后的缓存持久性。这种功能意味着最大的缓存大小必须适合设备的内存空间(而不是磁盘空间),并且不应超过可用内存的一半。
希望的缓存大小(MB
这个值表示最佳的RAM,Cache将被修剪到这个值。虽然最大的缓存容量代表了缓存的绝对上界,但期望的缓存容量是指每当自动或手动检查缓存容量时,缓存应该尝试达到的最佳容量。最大缓存大小和期望缓存大小之间的差距是为了适应在定期检查缓存大小以裁减过期内容之间新内容的到来和重叠。再一次,接受默认值(30MB)并定期检查 "监控->统计 "下的缓存大小以确定适当的大小可能会更有效。
默认缓存时间(D/HH:MM)。
这里输入的值代表没有明确过期值的内容的寿命。默认的缓存时间是指在流量头中没有 "不存储 "指令或明确过期时间的内容被存储的时间。
该字段的输入形式为 "D/HH:MM" - 所以输入 "1/01:01"(默认为1/00:00)意味着存储ADC将保持一天的内容,"01:00 "为一小时,"00:01 "为一分钟。
可缓存的HTTP响应代码
缓存的数据集之一是HTTP响应。缓存的HTTP响应代码是:。
·     200 - 成功的HTTP请求的标准响应
·     203 - 标题不是确定的,而是从本地或第三方的副本中收集的。
·     301 - 所请求的资源已经被分配了一个新的永久URL
·     304 - 自上次请求后未修改,应使用本地缓存的副本。
·     410 - 资源在服务器上不再可用,并且没有转发地址。
这个字段应该谨慎编辑,因为最常见的可缓存的响应代码已经被列出。
缓存检查时间(D/HH:MM)。
这个设置决定了缓存修剪操作的时间间隔。
缓存填充计数
这个设置是一个辅助工具,当检测到一定数量的304时,帮助填充缓存。
应用缓存规则
本节允许你对一个域应用缓存规则。
·     用 "添加记录 "按钮手动添加域名。你必须使用一个完全合格的域名或一个点阵十进制的IP地址。例如www. mycompany.com或192.168.3.1:80
·     点击下拉箭头,从列表中选择你的域名。
·     只要流量通过了虚拟服务,并且缓存策略已经应用于虚拟服务,该列表就会被填充。
·     通过双击缓存规则库列并从列表中选择你的缓存规则
创建缓存规则
这一部分允许你创建几个不同的缓存规则,然后可以应用于一个域。
·     点击添加记录,给你的规则一个名称和描述
·     你可以手动键入你的条件,或者使用 "添加条件"。
要使用选择规则库添加一个条件。
·     选择包括或不包括
·     选择所有JPEG图像
·     点击+添加符号
·     你会看到,"包括*.jpg "现在已经被添加到条件中。
·     你可以添加更多的条件。如果你选择手动操作,你需要在新的一行中添加每个条件。请注意,你的规则将显示在同一行,直到你点击条件框,然后它们将显示在一个单独的行中。
飞行路线
flightPATH是ADC内置的流量管理技术。flightPATH允许你实时检查HTTP和HTTPS流量,并根据条件执行行动。
在规则中使用IP对象时,flightPATH规则必须应用于VIP。
一个飞行路径规则由四个要素组成。
1.     详细信息,在这里你可以定义flightPATH名称和它所连接的服务。
2.     可以定义的导致规则被触发的条件。
3.     评价,允许定义可在行动中使用的变量。
4.     用于管理满足条件时应发生的事情的行动
详细内容
细节部分显示了可用的flightPATH规则。你可以在这部分添加新的flightPATH规则和删除已定义的规则。
添加一个新的flightPATH规则
场地
描述
飞行路线名称
这个字段是为flightPATH规则命名的。你在这里提供的名称会出现在ADC的其他部分并被引用。
适用于VS
这一栏是只读的,显示应用flightPATH规则的VIP。
描述
代表为可读性而提供的描述的值。
添加flightPATH规则的步骤
1.     首先,点击位于细节部分的添加新按钮。
2.     为你的规则输入一个名称。例子 Auth2
3.     输入对你的规则的描述
4.     一旦规则被应用到一个服务上,你会看到应用到一栏自动填充了一个IP地址和端口值
5.     不要忘记点击 "更新 "按钮来保存你的变化,如果你犯了一个错误,只需点击 "取消 "即可恢复到以前的状态。
状况
一个flightPATH规则可以有任何数量的条件。这些条件在AND的基础上工作,允许你设置触发行动的条件。如果你想使用OR条件,创建一个额外的flightPATH规则,并以正确的顺序将其应用于VIP。
你也可以通过在Check字段选择Match RegEx,在Value字段选择RegEx值来使用RegEx。RegEx评估的加入极大地扩展了flightPATH的能力。
创建一个新的flightPATH条件
状况
我们在下拉菜单中提供了几个预定义的条件,涵盖了所有可预见的情况。当新的条件被添加时,这些条件将通过Jetpack的更新来提供。
可供选择的是。
状况
描述
例子
<表格>
HTML表格是用来向服务器传递数据的
例子 "表格没有长度0"
GEO位置
将源IP地址与ISO 3166国家代码相比较
GEO位置等于GB,或GEO位置等于德国
宿主
从URL中提取的主机
www.mywebsite.com 或 192.168.1.1
语言
从HTTP头的语言中提取的语言
这个条件将产生一个带有语言列表的下拉菜单
方法
HTTP方法的下拉菜单
下拉式,包括GET、POST等
原产地IP
如果上游代理支持X-Forwarded-for(XFF),它将使用真正的Origin地址。
客户端IP。它也可以使用多个IP或子网。
10.1\.2.*是10.1.2.0 /24子网
10.1\.2.3|10.1\.2.4使用|为多个IP的。
路径
网站的路径
/mywebsite/index.asp
帖文
POST请求方法
检查正在上传到网站的数据
查询
查询的名称和值,可以接受查询名称,也可以接受一个值
"Best=jetNEXUS",其中匹配的是Best,值是edgeNEXUS。
查询字符串
在? 字符之后的整个查询字符串
 
索取饼干
客户端要求的一个cookie的名称
MS-WSMAN=afYfn1CDqqCDqUD::
请求标题
任何HTTP标头
Referrer, User-Agent, From, Date
要求版本
HTTP版本
http/1.0或http/1.1
回应机构
响应体中的一个用户定义的字符串
服务器升级
响应代码
响应的HTTP代码
200 OK, 304 Not Modified
回应饼干
服务器发送的一个cookie的名称
MS-WSMAN=afYfn1CDqqCDqUD::
响应头
任何HTTP标头
Referrer, User-Agent, From, Date
回复版本
服务器发送的HTTP版本
http/1.0或http/1.1
来源于IP
起源IP,代理服务器IP,或其他一些聚合的IP地址
客户端
IP、代理IP、防火墙IP。也可以使用多个IP和子网。你必须转义点,因为这些是RegEX。例如10\.1\.2\.3是10.1.2.3
 
匹配
匹配字段可以是下拉式或文本值,可根据条件字段的值来定义。例如,如果Condition被设置为Host,Match字段就不可用。如果条件设置为<form>,则匹配字段显示为文本字段,如果条件为POST,则匹配字段显示为一个包含相关值的下拉式。
可供选择的是。
匹配
描述
例子
接受
可接受的内容类型
接受: text/plain
接受-编码
可接受的编码
Accept-Encoding: <compress | gzip | deflate | sdch | identity >。
接受语言
可接受的回应语言
Accept-Language: en-US
接受范围
该服务器支持哪些部分内容范围类型
接受-范围: bytes
授权书
用于HTTP认证的认证凭证
授权。Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
收费-目的
包含应用所申请方法的费用的账户信息
 
内容-编码
使用的编码类型
Content-Encoding: gzip
内容-长度
响应体的长度,单位是八位数(8位字节)。
内容-长度: 348
内容-类型
请求正文的mime类型(用于POST和PUT请求)。
Content-Type: application/x-www-form-urlencoded
饼干
服务器之前用Set-Cookie发送的一个HTTP cookie(如下)。
Cookie: $Version=1; Skin=new;
日期
信息发出的日期和时间
Date = "Date" ":" HTTP-date
ETag
一个资源的特定版本的标识符,通常是一个消息摘要
ETag。"aed6bdb8e090cd1:0"
来自
提出请求的用户的电子邮件地址
来自: user@example.com
如果修改过-自
如果内容没有变化,允许返回304未修改。
If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
最后修改时间
请求对象的最后修改日期,格式为RFC 2822
最后修改的。Tue, 15 Nov 1994 12:45:26 GMT
プラグマ
实施。具体的标头,在请求-响应链的任何地方都可能产生各种影响。
Pragma: no-cache
推荐人
前一个网页的地址,从该网页链接到当前请求的页面。
推荐人: HTTP://www.edgenexus.io
服务器
服务器的一个名称
服务器。Apache/2.4.1 (Unix)
设置参数
一个HTTP cookie
Set-Cookie:UserID=JohnDoe; Max-Age=3600; Version=1
用户代理
用户代理的用户代理字符串
用户代理。Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
不尽相同
告诉下游代理如何匹配未来的请求头,以决定
是否可以使用缓存的响应,而不是
从源服务器
请求一个新的响应。
变化。用户代理
X-Powered-By
指定支持网络应用的技术(如ASP.NET、PHP、JBoss)。
X-Powered-By:PHP/5.4.0
 
感知
意义字段是一个下拉布尔字段,包含有 "有 "或 "无 "的选择。
检查
检查字段允许设置针对条件的检查值。
可用的选择是。包含, 结束, 平等, 存在, 有长度, 匹配RegEx, 匹配列表, 开始, 超过长度
检查
描述
例子
存在的
这不关心条件的细节,只关心它的存在/不存在。
宿主 - 确实 - 存在
开始
该字符串以 "值 "开始
路径 - Does - Start - /secure
结束
字符串以 "值 "结束。
Path - Does - End - .jpg
包含
该字符串确实包含了价值
请求头 - 接受 - 是否 - 包含 - 图像
平等
字符串确实等于值
主持人--是否--平等--www.jetnexus.com
有长度
该字符串确实有一个长度的值
主机 - 是否 - 有长度 - 16
www.jetnexus.com = TRUE
www.jetnexus.co.uk = FALSE
匹配RegEx
使你能够输入一个完整的与Perl兼容的正则表达式
起始IP - 是否 - 匹配Regex - 10\.* | 11\.*
 
添加一个条件的步骤
添加一个新的flightPATH条件是非常容易的。上面是一个例子。
1.     点击条件区域内的添加新按钮。
2.     从下拉框中选择一个条件。让我们以主机为例。你也可以在该字段中输入,ADC会在下拉框中显示该值。
3.     选择一种感觉。例如,是否
4.     选择一个检查。例如,包含
5.     选择一个值。例如,mycompany.com
上面的例子表明,有两个条件必须都是 "真",才能完成规则
·     首先是检查所请求的对象是否是一个图像
·     第二个检查URL中的主机是否为www.imagepool.com
评价
添加可定义变量的能力是一种引人注目的能力。普通的ADC使用脚本或命令行选项来提供这种能力,这对任何人来说都不理想。ADC允许你使用一个易于使用的GUI来定义任何数量的变量,如下所示和描述。
flightPATH变量定义包括四个需要输入的条目。
·     变量 - 这是变量的名称
·     来源 - 可能的来源点的下拉列表
·     细节--从下拉菜单中选择数值或手动输入。
·     Value - 变量持有的值,可以是一个字母数字值或用于微调的RegEx。
内置变量。
内置变量已经被硬编码,所以你不需要为这些变量创建一个评估条目。
你可以在行动部分使用下面列出的任何变量。
每个变量的解释都在上面的 "条件 "表中。
·     方法=$method$
·     路径 = $path$
·     Querystring = $querystring$
·     Sourceip = $sourceip$
·     响应代码(文本也包括 "200 OK")= $resp$
·     主机=$host$
·     版本 = $version$
·     客户端口 = $clientport$
·     Clientip = $clientip$
·     地理定位=$geolocation$"
行动
目标
行动 = 重定向 302
目标 = HTTPs://$host$/404.html
行动=记录
目标 = 一个来自$sourceip$:$sourceport$的客户刚刚提出了一个$path$页面请求
 
解释一下。
·     客户在访问不存在的页面时,通常会看到浏览器的404错误页面。
·     相反,用户被重定向到他们使用的原始主机名,但错误的路径被替换为404.html
·     一个条目被添加到Syslog中说:"一个来自154.3.22.14:3454的客户刚刚请求了错误的.html页面"。
行动
这个过程的下一个阶段是添加一个与flightPATH规则和条件相关的行动。
在这个例子中,我们要重写URL的路径部分,以反映用户输入的URL。
·     点击添加新的
·     从行动下拉菜单中选择重写路径
·     在目标字段中,键入$path$/myimages
·     点击更新
这个动作将在路径中加入/myimages,所以最终的URL变成了www.imagepool.com/myimages
应用flightPATH规则
任何flightPATH规则的应用都是在每个VIP/VS的flightPATH标签中进行的。
·     导航到服务 > IP服务,并选择你想分配flightPATH规则的VIP。
·     你将看到如下所示的真实服务器列表
·     点击flightPATH标签
·     选择你已经配置的flightPATH规则或支持的预建规则之一。如果需要,你可以选择多个flightPATH规则。
·     将所选的集子拖放到Applied flightPATHs部分或点击>>箭头按钮。
·     该规则将被移至右侧并自动应用。