资源描述
Array SPX工程安装配置手册
认证授权配置部分
一、 SSL VPN门户Virtual Site认证配置 1
1. Radius 认证服务配置 3
2. LDAP认证服务配置 5
3. AD认证服务配置 8
4. SecurID动态口令认证配置 9
二、 SSL VPN门户Virtual Site授权配置 10
1. LocalDB授权 13
2. LDAP服务器授权 15
3. Radius服务器授权 17
4. Group Mapping 授权方法 19
SSL VPN门户Virtual Site认证配置
Array SSL VPN设备Virtual Site 接入支持多个认证方法,包含LocalDB、LDAP、AD、Radius、SecurID 等。门户认证也能够关掉,这时用户登陆就不需要认证了,当然,也丧失了很大安全性。每个Virtual Site 最多能够配置四种认证方法,用户登陆时,根据次序查找认证服务,当第一个认证方法失败会使用第二种认证方法,直到成功或完全失败为止。对于AD、LDAP、Radius认证,每种方法最多能够配置3个认证服务器。因为上一章已经介绍了LocalDB配置方法,假如您只使用LocalDB,能够越过本章。本章我们关键介绍其它多个认证方法配置。
Site Configuration->AAA->General
Site Configuration->AAA->Method
命令行为:
aaa method <authentication method> rank [authorization method]
Authentication Method:指采取认证方法
Rank:是 Virtual Site 第多个认证方法
Authorization Method:定义了使用这种认证方法时采取授权方法,下章祥述。
如:
SP-Demo (config)$aaa method localdb 1
第一个认证方法采取LocalDB,授权使用LocalDB。
SP-Demo (config)$aaa method ldap 2 ldap
第二种认证方法采取LDAP服务器,授权也使用LDAP服务器。
Radius认证服务配置
Radius认证是业界普遍采取认证协议,Virtual Site采取Radius 作认证服务器,需要配置对应参数及端口,当然在SPX 和Radius服务器中间通信要保持通畅,假如有防火墙需要打开对应端口。在配置Radius认证前,先要和用户管理员问询部分Radius服务器情况,包含:Radius 服务认证端口,通常采取UDP 1812或 是UDP1645,当然用户也可能使用别端口。另外还要问询服务器使用通信密钥。
命令行为:
aaa method radius <rank> [authorization method]
aaa radius host <ip> <port> <secret> <timeout> <retries>
IP:指Radius服务器IP地址
Port:Radius服务所使用端口
Secret:SPX和Radius服务器之间使用通信密钥
Timeout:超时设定
Retries:重试次数
如:
SP-Demo (config)$aaa method radius 2
SP-Demo (config)$aaa radius host 10.1.10.76 1812 "radius_secret" 20 3
Site Configuration->AAA->Authentication->RADIUS
LDAP认证服务配置
LDAP 是一个轻型目录访问协议,含有结构清楚,查找速度较快特点。Virtual Site 采取LDAP作认证,一样需要配置部分参数。所以在作此项配置之前,要先和用户LDAP 管理员作一下沟通,取得部分参数信息,并用LDAP Browser等用户端工具验证一下,把她LDAP结构清楚化。LDAP服务通常采取TCP 389端口,基于SSL 协议通常采取636 端口。
命令行为:
aaa method ldap <rank> [authorization method]
aaa ldap host <ip> <port> <user_name> <password> <”base”> <timeout> [tls]
IP:LDAP服务器IP地址。
Port :LDAP 服务端口
User Name:有对应LDAP Search权限用户名
Password:查找时上面用户口令
Base:从哪一级目录进行查找
aaa ldap search filter <filter>
LDAP查找Search 规则,如:某属性=<user>,其中<user>代表用户在登陆SSL VPN Virtual Site输入字符串,是参数传输。
接下来配置绑定规则,能够选择动态绑定,也能够选择静态绑定,bind是指用户DN组成规则。
1.动态绑定:
aaa ldap bind dynamic
LDAP查找时依据Complete Distinguished Name,Base 信息和search filter在上面命令种定义
2.静态绑定:
aaa ldap bind static <dn_prefix> <dn_suffix>
dn_prefix:前缀
dn_suffix:后缀
<dn_prefix> <user><dn_suffix>一起组成了用户DN
如:
SP-Demo (config)$aaa method ldap 4
SP-Demo (config)$aaa ldap host 10.1.10.76 389 "cn=manager,dc=arraytsd,dc=com" "secret" "dc=arraytsd,dc=com" 20
SP-Demo (config)$aaa ldap search filter "cn=<user> "
SP-Demo (config)$aaa ldap bind dynamic
Site Configuration->AAA->Authentication->LDAP
AD认证服务配置
采取Active Directory 作认证服务器,需要配置对应参数及TCP端口,当然在SPX和AD服务器中间通信要保持通畅,假如有防火墙需要打开对应端口。AD底层也是一个LDAP,所以也一样能够经过LDAP配置方法配置她。
命令行为:
aaa method ad <rank> [authorization method]
aaa ad host <ip> <port> <mail_domain_name>
如:
SP-Demo (config)$aaa method ad 2
SP-Demo (config)$aaa ad host 10.1.175.7 389 “@”
SecurID动态口令认证配置
Virtual Site 用securID认证,关键配置工作在SecurID服务器上,详见SPX手册,在SecurID服务器上生成一个文件,将这个文件导入SPX即可,另外,SecurID认证一定要选择rank1,而且是全局生效。
Ace Server和SPX主机名和IP地址对应关系一定要在两台设备上全部能够正确互访到。使用SPX默认路由所指向interface,作为ACE Server所指定primary interface.,假如其它端口也配置了IP地址,需要将其IP地址作为secondary interface,这么采取能够在SPX和Ace Server上正确加密数据流。
命令行为:
aaa securid import <url>
如:
SP-Demo (config)# aaa securid import
SP-Demo (config)$aaa method secured [authorization method]
通常SecurID服务器也一样支持Radius协议,假如那您把她看作Radius服务器,也能够根据Radius服务认证方法配置她,详见前面章节。
SSL VPN门户Virtual Site授权配置
授权是SSL VPN一个关键安全功效,Array授权机制是设置用户或组享受特定权限,授权是和认证方法高度相关,不一样认证采取不一样授权方法。如用LDAP 认证,能够经过LDAP服务器授权,也能够经过LocalDB 或是Radius服务器授权。
认证授权关系表
认证方法
可认证
可授权
LocalDB
Y
Y
Radius
Y
Y(需要扩展Dictionary)
LDAP
Y
Y(需要扩展Schema)
AD
Y
Group Mapping或LocalDB
SecurID
Y
N
Array SPX授权权限分为几类:
授权方法
授权内容
可授权
ACL
定义了用户或组享受权限列表
SourceNet
定义了登陆原地址范围
Y(需要扩展Dictionary)
NetPool
定义了L3VPN所使用地址池
Y(需要扩展Schema)
UID, GID
定义了用户使用NFS功效时用到UID和GID信息
Group Mapping或LocalDB
其中最关键授权方法是ACL。ACL分为两大类,一类要求了WRM、File Sharing控制规则,另一类定义了ClientApp和L3VPN控制规则。一个用户登陆SSL VPN时它权限能够经过ACL作具体授权。
Array SPX缺省是没有ACL配置,这时全部资源对全部用户开放,一旦对某个用户或组配置了一个ACL,则对她需要访问内容权限一定要显示配置成PERMIT,不然不许可访问。
对WRM 、File Sharing 生效ACL
命令行为:
<priority> <scheme>:<host><path> [ AND <virtual>] (PERMIT|DENY)
Priority:优先级
Scheme: 是针对HTTP还是 File Sharing
Host:目标服务器,支持通配符“*”。
Path:路径
AND virtual :在global mode配置时只关联到对应Virtual Site上,在Virtual Site Config 模式时,不需要此参数。
如:
0 http:10.1.175.7/exchange AND intra DENY
1 http:* AND intra PERMIT
2 file:10.1.175.7/demo AND intra DENY
3 file:* AND intra PERMIT
我们会在LocalDB授权时给出具体针对不一样用户配置方法。
2.针对ClientApp、L3VPNACL
命令行为:
<priority> ip <protocol>:<host_ip>[/<netmask>][:port] [AND <virtual_site_id>] {PERMIT|DENY}
Priority – 优先级
Protocol – 针对那种IP协议,能够时TCP、UDP或protocol number,*代表全部协议。
Host_IP:目标服务器
Netmask:掩码
Port:端口号
AND virtual :在global mode配置时只施加在那个virtuail site ,在virtual site config 模式时,不需要此参数
如:
0 ip *:10.1.175.0/255.255.255.0 AND partner PERMIT
1 ip *:0.0.0.0/0 AND partner DENY
一样,我们会在LocalDB授权时给出具体针对不一样用户配置方法。
LocalDB授权
用LocalDB授权比较简单,只需对对应用户或组配置对应ACL即可。
命令行为:
Global 模式:
localdb acl account <virtual_database_name> <account_name> <ACL>
localdb acl group <virtual_database_name> <group_name> <ACL>
Virtual Site 模式:
localdb acl account <account_name> <ACL>
localdb acl group <group_name> <ACL>
如:
用户策略
SP-Demo (config)$aaa on
SP-Demo (config)$aaa method localdb 1
SP-Demo (config)$localdb account "test" “pass“
SP-Demo (config)$localdb acl account "test" "0 http:10.1.175.7/exchange AND SP-Demo DENY"
SP-Demo (config)$localdb acl account "test" "1 http:* AND SP-Demo PERMIT"
SP-Demo (config)$localdb acl account "test" "0 file:10.1.175.7/demo AND SP-Demo DENY"
SP-Demo (config)$localdb acl account "test" "1 file:* AND SP-Demo PERMIT"
SP-Demo (config)$localdb acl account "test" "2 ip *:10.1.175.0/255.255.255.0 AND SP-Demo PERMIT"
SP-Demo (config)$localdb acl account "test" "3 ip *:0.0.0.0/0 AND SP-Demo DENY“
组策略:
localdb netpool group <group_name> <pool_id>
地址池分配
localdb sourcenet group <groupname> <ip> <netmask>
登陆原地址限制
很多个认证方法全部能够经过LocalDB授权,不过这时通常需要用户名一一对应。如采取LDAP认证,LocalDB授权,要求LDAP服务器上帐号和LocalDB上帐号对应,假如LocalDB上没有这个帐号,需要用Default Group 作在LocalDB上没有帐号授权。
如:
SP-Demo (config)$aaa on
SP-Demo (config)$aaa radius accounting off
SP-Demo (config)$aaa method ad 1 localdb
SP-Demo (config)$aaa ad host 10.1.10.31 389 "@"
SP-Demo (config)$aaa localdb group default "arraygroup"
SP-Demo (config)$aaa localdb authorization usedefault
LDAP服务器授权
假如您使用LDAP认证,缺省是采取LDAP服务器作授权,立即ACL作为LDAP服务器用户对应属性来进行授权,这时需要扩充LDAPschema。假如您认证服务器和LDAP授权服务器不是一台机器,那您需要单独配置LDAP授权服务器。
LDAP授权命令行为:
SP-Demo(config)$aaa method <authentication method> <rank> ldap
SP-Demo(config)$aaa ldap authorize host <ip> <port> <user_name> <password> <base> <timeout> [tls]
具体参数概念参见上一章中LDAP认证部分。
SP-Demo(config)$aaa ldap authorize search filter <filter>
具体参数概念参见上一章中LDAP认证部分。
然后关键任务是配置LDAP服务器,首先扩充LDAP服务器schema,然后配置需要授权用户ACL属性给予对应权限。
我们以OpenLDAP为例叙述过程,通常需要在slapd.conf中加入include文件:
include d:/openldap/etc/schema/core.schema
include d:/openldap/etc/schema/inetorgperson.schema
include d:/openldap/etc/schema/array.schema
然后在对应目录下放置array.shema文件,内容以下:
#Array extended schema ,added by wuyuepeng
# ArrayNetworks Schema
# case senstive url prefix ie *
attributetype ( 1.3.6.1.4.1.7564.1000.1
NAME 'accepturl'
DESC 'accept url exprerssion'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
# accepted source network addresses
# of the form network/mask eg 10.2.0.0/255.255.0.0
attributetype ( 1.3.6.1.4.1.7564.1000.2
NAME 'sourcenet'
DESC 'Source Network ip/mask'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
# case senstive network pool name
attributetype ( 1.3.6.1.4.1.7564.1000.3
NAME 'netpool'
DESC 'network pools for L3 VPN'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
#Array User inhearts from inetOrgPer
objectclass ( 1.3.6.1.4.1.7564.1000
NAME 'ArrayUser'
DESC 'Array Appliance Network User'
SUP top
AUXILIARY
MAY ( accepturl $ sourcenet )
)
# Borrow the accepturl and sourcenet from ArrayUser
objectclass ( 1.3.6.1.4.1.7564.1001
NAME 'ArrayGroup'
DESC 'Array Appliance Network Group'
SUP top
AUXILIARY
MAY ( accepturl $ sourcenet $ netpool )
)
然后在用户对应属性增加对应权限即可:
如:
在accepturl属性赋值为一个ACL:0 http:10.1.175.7/exchange AND SP-Demo DENY
Radius服务器授权
同LDAP授权一样,假如您使用Radius做认证,缺省是采取Radius服务器作授权,立即ACL作为Radius服务器用户对应属性来进行授权,这时需要扩充RadiusDictionary。假如您认证服务器和Radius授权服务器不是一台机器,那您需要单独配置Radius授权服务器。
Radius授权命令行为:
SP-Demo (config)$aaa method <authentication method> <rank> radius
Sp-Demo (config)$aaa ldap authorize host <ip> <port> <secret> <timeout> <retries>
具体参数概念参见上一章中Radius认证部分。
然后就是扩充Radius服务器Dictionary,将ACL属性定义加进去,进而配置用户对应属性进行ACL授权。扩充Dictionary文件内容以下:
#
#Array Networks
# borrowed from snmpd, may lead to trouble later
VENDOR Array-Networks 7564
# Array Netorks Extensions
ATTRIBUTE Accept-Acls 1 string Array-Networks
ATTRIBUTE SourceNets 2 string Array-Networks
ATTRIBUTE memberUid 3 integer Array-Networks
ATTRIBUTE memberGid 4 string Array-Networks
ATTRIBUTE NetPool 5 string Array-Networks
然后在用户对应属性增加对应权限即可:
如某用户对应属性:
Foo Auth-Type = Local, Password = “foobar”
Accept-Acls = "0 http:*/ AND all PERMIT",
SourceNets = “10.2.0.0/255.255.0.0”
uidNumber = 2063,
gidNumber = "1000 1020 2300"
Group Mapping 授权方法
有用户用Radius、AD、LDAP认证,她们又不想修改这些服务器,加上Array授权属性。这时我们能够抓取这些服务器组信息放到LocalDB上,将这些认证服务器组映射到LocalDB对应组进行授权。
首先要找到Radius、AD、LDAP那个属性是她组属性,然后当这个属性等于某个值时映射到LocalDB特定组上。如AD上这个属性就是memberOf属性。
命令行为:
aaa ldap group <attr>
若是LDAP,<attr>指代表组属性。
aaa radius group <attr>
若是Radius,<attr>指代表组属性。
aaa localdb group default <groupname>
若组映射不成功,这个用户所属缺省组。
aaa map group <external_group> <internal_group>
当某用户<attr>值为external_group时,我们将她映射到localdb internal_group 组进行授权。
以AD 举例:
我们将AD看成一个LDAP授权服务器来进行配置。
SP-Demo (config)$localdb group "group1"
SP-Demo (config)$localdb group "group2"
SP-Demo (config)$localdb acl group "group1" "0 http:10.1.10.55/ AND SP-Demo DENY"
SP-Demo (config)$aaa on
SP-Demo (config)$aaa method ad 2 ldap
SP-Demo (config)$aaa ldap authorize host 10.1.1033 389 "wuyp" " wuyppass" "dc=arraydemo,dc=com" 30
SP-Demo (config)$aaa ad host 10.1.10.33 389 "@"
SP-Demo (config)$aaa ldap bind dynamic
SP-Demo (config)$aaa ldap authorize search filter "sAMAccountName=<USER>"
SP-Demo (config)$aaa ldap group "memberOf"
SP-Demo (config)$aaa localdb group default "group2"
SP-Demo (config)$aaa map group "partner" "gruop1“
当某个用户属于partner这个组时则根据group1授权属性来进行控制,若不等于partner这个组则映射成缺省组group2来进行授权。
展开阅读全文