概述
CITRIX NETSCALER常用的功能有:LB,CS,GSLB,SSL。LB实现的功能是服务器负载均衡,CS实现基于七层(域名,IP等)的负载均衡,GSLB实现的功能是全局负载均衡,SSL实现的功能是SSL加速。
配置步骤
系统配置
配置feature
如图:
进入system菜单,选择setting
点击 basic feature,选中一下feature,如图:选择需要的feature,不用的都关闭
点击advanced feature,选则需要的feature,不用的全部关闭
修改nsroot用户的密码
Netscaler默认用户名和密码均为nsroot,为了保证设备的安全性,需要修改密码,或建立新的用户。如图:
修改nsroot用户的密码,双击nsroot用户名,然后修改密码,如图:
配置mode
Netscaler默认是不启用2层转发的,如果需要启用2层功能,需要在mode中配置,如图:
进入setting菜单,点击mode,如图:
配置系统时间
用shell命令进入系统的操作系统,然后用date命令修改当前系统时间
输入tzsetup命令设置时区,输入date yymmddhhmm命令修改系统时间,格式为:年 月 天小时 分钟
配置时间同步
用文本编辑两个文件,ntp.conf和rc.conf,内容如下:
Ntp.conf:
# Netscaler NTP Configuration File
#
# Copy this file to /nsconfig, and make changes to /nsconfig/ntp.conf
# Changes in /etc/ntp.conf will be lost following a reboot.
#
# Add the following line in /nsconfig/rc.conf to enable ntpd:
#
# ntpd_enable="YES"
#
# The following addresses are example addresses. There should be a
# corresponding ‘restrict‘ entry for every ‘server‘ entry.
#
#example address
server 61.129.42.44 burst
restrict default ignore
restrict 127.0.0.1 mask 255.255.255.255
#corresponds to ‘server‘ entry above
restrict 61.129.42.44 mask 255.255.255.255
注:61.129.42.44为ntp服务器,此类服务器在互联网上可以搜到
Rc.conf:
ntpd_enable="YES"
编辑完两个文件后,用WinSCP3工具登陆Netscaler,然后将这两个文件拷贝到/nsconfig目录下。然后重启Netscaler
IP配置
配置NSIP
配置一个NSIP,保证这个IP不会和其他IP地址发生冲突,这个IP为设备的IP,可以用于管理系统。配置完NSIP后需要重启设备。
如:在命令行下输入set ns config -ipAddress 192.168.2.3 -netmask 255.255.255.0,然后输入save config来保存配置,最后输入reboot重启,设备重启后NSIP变为192.168.2.3
配置SNIP和路由
配置SNIP,即接口IP,然后在配置下联路由和默认路由。如图
进入菜单network,点击ips,再点击add来添加SNIP,如:IP地址为219.142.6.94,掩码为24位。如果希望通过这个IP里来管理Netscaler的话,在application access control下的方框打上勾。
进入network-routing-routes,点击add添加路由和默认网关,如:网关为219.142.6.93;到192.168.3.0网段的下一跳为192.168.2.1
配置HA
HA双机热备配置前提条件是两台设备的NSIP能够互相访问,进入如下菜单:
默认的Netscaler将自己做为一个节点(node)加入到HA中,只需要将另一台设备做为不同的节点加入到HA中即可,如图:
在这里需要注意的是ID必须不同,IP地址必须是NSIP。
在建立好HA后,需要将不使用的接口的状态disable,进入如下菜单:
单击一个接口,点击下方的DISABLE按钮,将这个接口的状态设置为disable状态。
然后在非流量接口的要关闭HA monitoring,双击一个非流量接口,如图:
将HA monitoring设置为off。所谓的流量接口是指业务的数据流经过的接口。例如:管理接口不属于流量接口。
配置Load Balance
配置servers
添加物理服务器的ip地址,如图:
配置services
添加应用,包括协议,应用端口,由哪个server提供的等信息。如图:
进入advanced,添加客户端IP到header中。
配置Vserver
添加Vserver,并将相关services加入到Vserver中,如图:如果只做四层负载均衡,则在IP address处添加VIP,port处添加应用端口,
如果需要做七层负载的话,就需要将directly addressable处将勾去掉
进入method and persistence菜单中,设置负载均衡方式和会话保持模式,如:负载方式为最小连接数;保持模式为cookie insert,时间可以随意调整
配置SSL
配置证书
将申请好的根证书和服务器证书导入到netscaler中,并安装这两个证书。如图:
进入ssl-sercificates,点击add。点击browse,选中一个证书,创建根证书不需要密钥。
制作服务器证书的时候需要证书和密钥绑定,如图:
配置CRL
1. 首先进入菜单ssl-crl,然后点击add,出现如下界面。
2. 然后将crl文件选中,这个文件事先已从cfca的ldap服务器下载完并copy到netscaler中3. 的/var/netscaler/ssl目录中。
4. 格式为der,ca证书选择这个crl列表的颁发者的证书。
5. 开启自动更新,模式为http,端口为80,url要写入下载crl的绝对url路径,时间间隔为每天,更新时间为3点50
创建如下图所示:
创建完毕后,刷新状态显示成功,使用状态显示为可用的。如下图
用命令行查看crl的状态如下:
配置SSL OFFLOAD
配置SSL OFFLOAD的server和service与Load Balance一样,并且在Load Balance中创建的server和service都可以在SSL OFFLOAD中使用,直接创建Vserver即可,进入如下菜单,如图:
然后进入SSL Setting菜单中,如图:
在这里服务器证书直接add即可,CA证书和根证书需要add as CA来添加,如图:
有时候用户会需要证书的双向认证,这时候需要点击展开SSL Parameters菜单,如图:
将客户端认证启用,并且选择强制(mandatory)认证
配置Content Switch
配置CS Vserver
创建Vserver,例如协议为SSL,并且配置VIP和端口号。如果只是http协议的话是不需要配置ssl选项的。
绑定创建号的证书,根证书作为CA添加,服务器证书直接添加即可
如果需要设置客户端证书的强制认证,则在ssl parameters中
创建HTTP协议的Vserver。创建方法和创建SSL协议的vserver一样,区别在于协议和端口号,如图:
配置policy
添加policy,如创建两中一种为基于域名+url(目录),如图:
先创建域名+目录的policy
起好名字,点击configure
点击add,创建一个域名的expressions
再创建一个URL的expressions
然后将匹配条件设置为match all expressions
然后点击create创建即可。
policy绑定
将创建好的policy绑定到CS Vserver上,并且指定target的Load Balance的Vserver,并设定好优先级,policy的优先级值越低越优先,如图
展开已创建的ssl协议的CS Vserver
配置GSLB
配置ADNS服务器
在Load Balance中的service,添加ADNS服务,如图:
ADNS使用了netscaler的接口地址。
配置site节点
创建local site,如图:
本地site要配置自己的ADNS地址。
创建remote site与创建本地site一样,区别就是site type为remote,同时site ip为remote端adns的公网地址。
如图:
配置GSLB location
配置location,将电信和网通的地址段分别写到不同的location中,在系统判断一个用户的local DNS的地址属于电信来访问还是网通的时候,先查找location表。这个表的作用就是静态就近性判断的依据。
事先写好一个location文本文件,然后将其传到netscaler的/var/netscaler/locdb/目录下,然后在web界面加载这个文件,如图:
在GSLB-location中的static database中添加
配置GSLB service
配置local service,将两个节点的Vserver配置到各自的service中。
在virtual server上选择在需要做GSLB的vserver。
配置remote service与local service一样,区别是需要预先在loadbalance中的servers中创建一个remote server,IP地址为remote端vserver的公网IP;site name要选择remote sit的name,virtual server中的server name要选择预先创建好的remote server。
如图:在loadbalance中创建remote server
如图:在GSLB中创建remote service
配置GSLB Vserver
配置GSLB Vserver,将GSLB service加入GSLB Vserver中,负载均衡算法为:静态就近性和动态就近性,当静态表location中没有用户local DNS的地址时,则采用动态就近性来判断用户该走哪条链路;然后在配置站点对外提供服务的域名。
如图:
协议选择ssl,并将所建立的service加入到GSLB Vserver中。
然后配置域名,点击domains,添加,如图:
然后配置GSLB Vserver的算法,采用静态就进性为第一算法,动态就进性为第二算法,当第一算法失败就会启用第二算法,如图: