1、概述:
Fortinet网络接入及安由以下两类设备组成:
AC(接入控制器)及安全:FortiGate
AP(Wifi接入点):FortiAP
2、简要配置步骤
1、FortiGate 620B默认管理地址为https://192.168.1.99(Port1);
用户名:admin
密码:无
建议使用.0或Firefox 3.5及以上版本进行访问,其它可能不能完全兼容FortiGate V4.2以上版本的管理界面。
2、修改界面语言为中文
3、将系统时间和时区修改为正确值
这一点很重要,我遇到这种情况,FortiGate 51B主板电池没电了,断电后,时间就变成1999年,启动后,FortiAP就无法正常与FortiGate建立连接。
4、修改接口IP地址及允许的管理接口
5、修改默认路由,使FortiGate能正常访问网络
6、配置FortiGate的DHCP服务,为FortiAP分配IP地址,并指定AC地址。使用DHCP代码138为FortiAP指定AC地址,注意需要将AC地址翻译成十六进制形式(例如:192.168.118.113=C0A87671)
将FortiAP接入到FortiGate port10所在的VLAN,便可自动获得IP地址和AC地址,无需对FortiAP进行手工配置。
注:也可以通过console口手动配置FortiAP的IP地址和AC地址,命令如下:
cfg -a AP_IPADDR="192.168.118.10"
cfg -a AP_NETMASK="255.255.255.0"
cfg -a IPGW="192.168.118.230"
cfg -a AC_IPADDR_1="192.168.118.113"
cfg -a ADDR_MODE="STATIC"
cfg -c 保存配置
7、稍后可以在FortiGate管理界面上看到新加入的FortiAP。
点击该FortiAP,使用“Authorize”按钮批准其加入网络。
8、配置SSID(虚拟AP),配置SSID、虚拟接口地址,及该SSID的DHCP地址池
安全模式选择WPA2-Personal,使用预共享密钥认证方式。
可以选择屏蔽SSID内部流量,这样连接在同一SSID下的无线终端就无法互访了。
9、清空所有自定义AP profile
然后在命令行下(telnet 192.168.118.113)下将wifi的国家设置改成CN。
config wireless-controller setting
set country CN
end
10、新建AP profile
选择FortiAP的型号;
开启“无线资源提供”,FortiAP会自动选择最佳频道进行wifi;
选择本profile中使用的SSID。
11、编辑之前加入的FortiAP,选择接入点属性profile1。
12、配置过滤功能
config wireless-controller vap
edit "vap1"
set mac-filter enable //启用mac过滤功能
set mac-filter-policy-other deny //不在列表内的mac地址全禁止
config mac-filter- //编辑mac列表
edit 1
set mac 50:63:13:c1:a1:94
set mac-filter-policy allow
next
edit 2
set mac 00:09:13:e3:a1:66
set mac-filter-policy allow
next
end
end
删除MAC条目方法
config wireless-controller vap
config mac-filter-list
del 1
end
end
13、配置无线用户访问网络的防火墙策略
源接口:SSID产生的虚拟接口
目的接口:port10(所在接口)
可以修改源地址、目标地址、服务,对源IP、目标IP、源端口、目标端口进行控制,限制无线用户的访问范围。
如果不启用NAT,则FortiGate上联的路由设备(或三层)需要添加到无线终端所在网段(192.168.179.0/24)的路由,指向FortiGate的port10接口(192.168.118.113)。例如:
ip route 192.168.179.0 255.255.255.0 192.168.118.113
14、配置用户认证功能
添加用户账号
添加用户组
编辑之前添加的防火墙策略,选择允许使用的用户组。
修改用户认证超时时间
启用保持用户认证状态功能
config system global
set auth-keepalive enable
end
15、配置FortiGate的HA(高可用性)
将port2接口指定为心跳接口,监控port10接口的状态。
备机的设备优先级数字应该小于主机(例如:100),其余HA配置与主机完全相同。
先连接主机和备机的心跳接口(port2),等待约5分钟,备机会自动通过主机的所有配置(包括port10接口的IP地址)。
然后将备机的port10接口连接到主机port10所在vlan。HA构建完成。
16、常用监控及管理界面
系统状态监控,点击左上角的“+微件”还可增加更多监控控件(如接口流量)。
HA监控
FortiAP监控
用户监控
防火墙策略用户认证监控
17、FortiGate配置管理
点击“备份”可以备份文本文件至管理用PC,点击“还原”可以将PC上备份的配置恢复回FortiGate。
FortiGate也会配置至内置卡,点击“Revisions”可以选择存储在FortiGate上的历史版本配置进行恢复。
恢复后FortiGate会自动重启。
3、同一SSID内漫游
同一SSID可以跨越多个AP,无线客户端可以在同一SSID无缝地切换到不同的AP上,而会话不会中断。
测试可以采用关掉某个当前连接的AP方式来测试。如果跨区域来测试的话,需要的很大的空间:),信号降低得很弱的时候才能切换。
通过图形界面和命令行看到无线客户端所连接的FortiAP。
diag wireless-controller wlac -c sta
STA mac : 00:26:c6:76:54:44
authed : yes
wtp : 0-192.168.118.4:5246
rId : 0
aId : 1
wId : 0
bssid : 00:09:0f:d6:ba:92
cap : 0031
4、AC的冗余
4.1 基于防火墙的HA实现AC的冗余
利用FortiGate的HA功能来实现AC的冗余。FortiGate HA集群中的设备根据设备优先级的大小协商产生主机和备机,优先级高的设备成为HA组中的主机,优先级低的设备成为HA组中的备机。主机和备机具有完全相同的接口地址、完全相同的配置。
主机和备机的配置通过心跳线实时同步,管理员的配置针对整个HA集群,无需单独配置每一台设备。主机和备机的相应接口具有完全相同的IP地址,并使用同一个虚拟MAC地址,在发生故障切换时不会产生IP或问题。
当主机的任意接口或设备本身发生故障时,产生HA设备切换,主机变为standby状态,备机变为work状态,自动接替主机工作。由于会话状态均在主备机之间同步,因此所有访问自动切换到备机上进行,所有已建立会话无需重新连接。
注意事项:当两个FortiGate处于HA状态时,关于AP的配置信息是同步的,但是AP当前注册的状态是不同步的,也就是说,当AC切换时,AP需要重新注册。这个过程是自动完成的。当FortiGate发生切换后,虽然FortiGate很快就能切换完成,但是AP还是需要等很长时间才能注册到新的FortiGate上。另外客户端PC的连接信息也同样在FortiGate也是不同步的,也需要重新注册到新的FortiGate。客户端从切换开始到到正常工作需要几分钟。
如果要提高这个切换速度,可以采用以下步骤:
1、提高设置AC检测AP的频率,在FortiGate上设置:
config wireless-controller timers
set echo-interval 30 ------检测间隔
end
2、无线客户端设置为静态IP地址,免去了重新获得IP地址的过程。
3、如果主FortiGate切换到备设备,其原有的AP注册信息和无线终端信息仍旧可以保留一段时间,也就是说当备设备在短时间内切换回来的话,主设备很快就能正常工作,这个时间可以低于一分钟。
4.2 基于AP配置多个AC实现AC的冗余
AP可以配置多个AC ,当它无法正常连接第一个AC时,可以自动地连接第二个AC。
该功能需要在AP上指定:
cfg –a AC_DISCOVERY_TYPE=1
cfg -a AC_IPADDR_1="192.168.11.2"配置第一个AC
cfg -a AC_IPADDR_2="192.168.11.1"配置第二个AC
cfg –c 保存配置
这里值得注意的一点是,当以上完成一项配置后,会出现以下提示
restarting wtp daemon ...
Process '/sbin/cwWtpd' (pid 584) exited. Scheduling it for restart
如果没有出现restart的话,说明配置得不正确
注意事项:配置多个AC,AP也仅仅会在一个AC上注册,当AC发生切换的时候,AP也同样要在新的AC上注册,这个过程不比FortiGate做HA更为快捷。
5、非法AP检测与压制
FortiAP可以对非法的AP进行无线。进行无线压制最好是采用支持2.的Radio,并将其设置为“专属监测”
注意事项:一定要开启非法接入点扫描,否则就会压制不成功。
开启非法AP检测,如下图。
该图上有一个选项“开启有线接入点检测技术”(Enable On-Wire Rogue AP Detection Technique),它的目的是检测该AP有没有接入到该FortiGate所在的网络,检测方法是看无线空间AP的mac地址有没有出现在FortiGate的有线环境里。检测依据是只要在<无线mac-7>~~<无线mac+7>这个范围之内就可以了。这个规定并不奇怪,因为路由器的不同接口的mac地址应该是连续的几个MAC地址,比如FortiGate的不同接口mac地址就是连续的。
此时,监控所有无线AP,并且可以选择非法AP进行压制了
注意事项:也许是4.3.4版本的问题,一旦进行压制(禁止AP——Suppress AP),就无法通过取消压制(取消禁止压制——Unsuppress AP)来关闭压制。只能将进行压制的Radio设置回正常模式,才能取消掉AP压制。
6、基于频段的负载均衡
无线AP可以主动引导支持 2.4/5GHz 的无线终端优先采用 5Hz频段关联无线接入点。FortiOS 5.0GA可以支持该功能,也就是说当即支持2.4G又支持5G的客户端接入无线网时,自动地根据实际情况将其引导到5G。该选项是在命令行下设置的。
config wireless-controller wtp-profile
edit "FAP220A-default"
set handoff-rssi 25
set handoff-sta-thresh 30 ---设置引导的频段强度阈值
config radio-1
set frequency-handoff enable -----在2.4G和5G频段进行切换
set ap-handoff enable -----在AP之间进行切换
end
next
end
如果需要测出该效果的话,得具备多个条件,第一个条件是无线终端本身是支持2.4G和5G,第二个条件是无线终端本身缺省连接的是2.4G,因为现在很多新的电脑优先连接5G。
满足以上两个条件后,需要先调整handoff-sta-thresh调整很低,比如最小值为5。然后可以看启用handoff和不启用handoff的区别了。不启用handoff时,无线终端始终连接2.4G。启用handoff时,无线终端连接AP时,就会被推送到5G。这个推送过程是需要终端断开连接然后重连。
7、无线频段管理
在FortiGate中可以实现对Radio(频段)中的频道进行管理,以2.4G为例,可以选择1-11若干的频道。频段数量是按照美国标准的,如果按照中国标准,可以达到13个。
config wireless-controller setting
set country CN设置标准为中国
end
如果担心该频道被其他AP使用,也就是说频道冲突,可以选择“无线资源提供”——Radio Resource Provision,这样它可以自动地回避被其它AP使用的频道。
测试方法(举例):
1、 准备两个AP,将一个AP的2.4G频段设置只能使用6
2、 将另外一个AP设置为可以使用1,6,然后启用“无线资源提供”,这样观察该AP使用的频段,就会发现它只使用1频段
通过查看Managed FortiAP可以看到channel一列显示为Radio1:1,它表示用的是Radio1的第一个频段。
8、FortiAP获取FortiGate IP的多种方式
FortiAP可以通过多种方式获得AC的IP地址,广播方式、DHCP方式和手工配置。
8.1 广播方式
缺省状态下,FortiAP在获得IP地址后,会自动地发送广播方式,以寻找网络中的AC。如下图所示,192.168.118.4发送寻找AC的Request, 192.168.118.61作为AC给192.168.118.4发送Reponse。
也就是说,如果FortiAP和FortiGate在同一个网络中,根本就不要手工指定什么东西,它会自动地找到FortiGate。
下面的工作仅仅是在FortiGate上对FortiAP做一个认证:
8.2 DHCP方式
配置FortiGate的DHCP服务,为FortiAP分配IP地址,并指定AC地址。使用DHCP代码138为FortiAP指定AC地址,注意需要将AC地址翻译成十六进制形式(例如:192.168.118.113=C0A87671)
将FortiAP接入到FortiGate port10所在的VLAN,便可自动获得IP地址和AC地址,无需对FortiAP进行手工配置。
8.3 手工配置
注:也可以通过console口手动配置FortiAP的IP地址和AC地址,命令如下:
cfg -a AP_IPADDR="192.168.118.10"
cfg -a AP_NETMASK="255.255.255.0"
cfg -a IPGW="192.168.118.230"
cfg -a AC_IPADDR_1="192.168.118.113"
cfg -a ADDR_MODE="STATIC"
cfg -c 保存配置
9、空口抓包
9.1 wireless-controll抓包命令
通过diagnose wireless-controller抓包命令,直接将数据包直接发PC,PC需要启动抓包软件,并且关闭防火墙,才能对数据包进行抓取。该种抓包方式与Aruba方式相同。
diagnose wireless-controller wlac sniff-cfg <抓包pc的IP><端口>
<抓包pc的IP>是指运行抓包软件的PC,端口是随意指定的
diagnose wireless-controller wlac sniff 2
运行上面命令开始抓包。
但是我们目前对这种方式支持有限,转出来的数据包无法正确。以后在FortiOS 5.0会对此部分进行加强。
9.2 sniffer命令抓取与FortiAP通讯内容
WLAC命令不理想,可以采用diagnose sniffer命令来抓取FortiGate和FortiAP通讯内容。命令如下:
Diagnosis sniffer packet any ‘host FortiAP的IP地址’ 3
一样可以抓出802.11头,DTLS加密的数据包,但是无法看到Beacon头。如下图:
10、调整发射强度
发射强度很容易调整,如下图:
但是从客户端PC很难被观察到,需要在客户端安装专门的检测软件,比如inSSIDer可以观察到,如下图。如果你将TX Power调整到最低,观察到的信号并非一定是最低,会上下波动,波动的平均值是相对比较低的。
11、屏蔽SSID内部通讯
缺省状态同一SSID下的PC是可以相互通讯的。但如需要屏蔽通讯的话,也是很容易。
命令行下的操作:
config wireless-controller vap
edit "要编辑的SSID"
set intra-vap-privacy enable
next
end
10、通信加密和门户认证
Fortinet无线支持多种无线加密方式,包括:
开放模式(不加密,不建议使用);
WEP(64bit或128bit RC4加密);
WPA(256bit TKIP或AES加密);
WPA2(256bit TKIP或AES加密,在WPA的基础上支持802.11i标准的安全要求);
强制门户
开放方式和WEP放在命令行下,如下。
config wireless-controller vap
edit "ssidname"
set security
captive-portal captive-portal
open open
wep128 wep128
wep64 wep64
wpa-enterprise wpa/wpa2-enterprise
wpa-only-enterprise wpa-only-enterprise
wpa-only-personal wpa-only-personal
wpa-personal wpa/wpa2-personal
wpa2-only-enterprise wpa2-only-enterprise
wpa2-only-personal wpa2-only-personal
next
end
强制门户方式有点类似防火墙策略的用户认证,当通过浏览器访问Internet时会自动弹出认证界面。
配置界面如下:
认证界面如下:
认证成功后,可以在菜单项user\monitor\firewall里看到认证成功的用户。
11、关闭SSID广播
关闭SSID广播需要在命令行下进行,操作的命令如下:
config wireless-controller vap
edit "ssid-name"
set broadcast-ssid disable
next
end
12、MAC地址过滤
MAC地址过滤可以建立黑名单也可以建名单。所谓黑名单就是缺省状态下全部允许,但是部分MAC不允许,命令设置如下:
config wireless-controller vap
edit "ssid-name"
set mac-filter enable ------启动MAC地址过滤
set mac-filter-policy-other allow --------缺省的MAC地址是否允许通过
config mac-filter-list
edit 1
set mac 00:00:00:00:00:00 -------设置mac
set mac-filter-policy deny ------设置该mac是阻断还是允许
next
next
end
这里值得注意一点是,当某因mac被阻断时,其现象与无线WPA认证通不过的现象是一样的。
13、基于Radius认证
配置Radius认证有两种方法,一种是直接启用,如下图。这种方法是可以,但是需要修改客户端无线的认证参数,使用起来不方便。
如果要用这种方法的话,需要在客户端关闭CA证书的认证,这是因为我们测试使用的Radius本身提供的证书,不能为客户端所认可。如果Radius服务器的证书能够为客户端本身的Root证书所认可,则可以认证通过。可能是我是用的Radius服务器所使用证书有问题。
抓包文件如下:
抓图如下:
另外一种方法是建立一个用户组,将Radius引入到用户组里,如下图,然后在无线设置中调用。
该方法做EAP的时候,FortiGate所使用的证书不是来自Radius服务器,而是使用自身所带的证书,能够为客户端所认证通过。