最近完成了公司的准入项目,项目历时3个多月,部署点位将近上千个。在部署的过程中,也曾踩过各种各样的坑。公司采用某第三方软件系统作为准入控制平台。该套系统采用双机热备的方式部署。该系统功能丰富,除了采用802.1x认证外,该套系统还支持桌面管理、进程管理、非授权外连等功能。 802.1x协议的主要目的是为了解决局域网用户的接入认证问题。802.1x就是IEEE为了解决基于端口的接入控制而定义的一个标准。本文仅对此项目部署dot1x部分做一个详细的总结。
1、项目流程安排
在项目调研阶段,我们联系了原厂售前,进行软件平台、公司需求等信息的交流,在简单了解了该软件平台各模块功能后,我们选择了几个模块提出了测试需求。经过一到两周的搭建和测试后,厂商输出了以下测试表单。
在测试功能的过程中,我们感觉该厂商的产品性能稳定、功能丰富,满足公司的需求。因此,我们很快完成了立项、招投标等工作。在一次供应商的项目交流启动会后,该项目拉开了帷幕。于此同时,我担任该项目项目经理一职,负责整个项目的进度安排、资源协调和技术支持工作。
我司总部位于上海,有近二三十个分公司,各分公司遍布全国各个省市。在项目安排上,我们先部署的是总公司,因为办公点就在总公司,在项目实施的过程中,如果出现问题,可以尽快的解决。而且总部的部署,能够让我们尽快熟悉供应商的产品。同时,也便于我司与供应商人力上的交流和协同。在专业程度上,我们信任供应商;在公司架构熟悉程度上,供应商也信任我们。正是在这种相互信任的情况下,我们才能按时高效的完成项目施工。
总部在部署的过程中,遇到了话机、视频监控、打印机、扫描仪的功能失常问题,有些是在部署前没有考虑到,还有部分是终端自身的问题。经过2周左右的时间,我们把总部的有线无线准入都完成了。后绪我们选择了上海的一个营业部作为分公司的第一个站点。总部的架构毕竟与分公司不同。上海营业部作为分公司第一个站点,在我们部署准入项目的过程中,也是一个重点关注对象。只要能够顺利完成上海分部的项目部署,对于我们而言,其他分公司的部署只是上海分部的一个拷贝。
在上海分部,我们测试和部署大概花了2周时间,在踩了很多坑并确认系统运行正常后,我们对分公司的部署树立了极大的信心。在安排分公司的部署时,我以上海为核心,以上海分部为起点,从江浙地区辐射出去,由近及远的安排部署工作。主要是考虑到两方面,一是如果出现问题,我方技术人员能够第一时间赶赴现场。另外一个是设备调配的问题,准入的部署是基于交换机的,不是所有的交换机都能完全适配准入系统,需要前期对设备进行升级,升级的过程中可能会出现故障,分公司本地没有备机也没有专业的技术人员,因此从总部调配设备和人力就要求越快越好。
经统计,我司大概有30多台设备需要升级,这些设备被安排分为6个批次进行升级,一次升级多台,在升级过程中,如果有一台出现不可回退的故障,那么就终止整个升级流程。升级设备从网络接入层设备开始,防止汇聚设备在实施过程中产生的故障影响未实施的接入设备。从目前看来,这种策略还是挺明智的选择。
在实施的过程中,我们将遇到的问题集中起来,形成了一份表格文档。同时,也对一些无法解决的问题,做了记录,精确到各个设备和所有者。这些文档是我们以后排查故障的依据和经验,也是供应商最后需要提供的交付文档的一部分。
2、项目技术支持
安装客户端
因为客户端安装后,会生效一些终端软件策略,因此部署的时候,我采用的是按分站点部署,每安装一个站点,完成整个网络准入部署后,再进行下一个站点的部署。一般一个站点部署需要1周左右的时间准备,多个站点交叉并行部署,能够节省很多时间。由于没有使用策略推送,而是安排分公司当地IT人员手动下发安装,因此在后绪部署的时候,经常会遇到有没有安装的电脑没法上网。此外还有个别电脑因为系统本身的原因没有安装上,只能通过重装系统的方式重新部署。
升级交换机
使用命令copy结合tftp传送IOS,需要注意的是IOS的版本,还有交换机Flash的剩余空间,传送IOS完成后检查文件大小是否完整传送,升级完成后需要检查下客户端是否可以正常上网。
交换机准入配置
接口自动恢复
errdisable recovery cause all 自动恢复errdisable接口
errdisable recovery interval 30 每30秒执行自动恢复操作
启用 AAA
aaa new-model 开启AAA认证
aaa authentication login default line local none 配置AAA登陆策略
aaa authentication dot1x default group radius none 配置dot1x认证策略
aaa authorization network default group radius 配置dot1x授权策略
radius-server host 10.188.64.158 auth-port 1812 acct-port 1813 key abc123 配置radius认证服务器
radius-server retransmit 3 服务器尝试连接次数为3次
radius-server vsa send authentication 配置交换机发送厂商特别属性到AAA服务器,目的是要获取用户的VLAN信息
dot1x system-auth-control 全局开启dot1x认证
在端口下启用 802.1x
interface fastethernet 0/13
switchport mode access
switchport access vlan 10
authentication port-control auto
dot1x pae authenticator
spanning-tree portfast
authentication host-mode multi-auth 新版本功能多客户端认证,老版本如果交换机下面接了小交换机,其中一个客户端通过了,那其他客户端就不需要认证,这个功能就是可以让所有小交换机上的客户端都需要认证
mab eap
踩过的“坑”
error-disable状态的接口
第一次在总部测试部署时,没有配置error-disable命令。在部署后,发现绝大部分话机出现问题,取消接口准入配置也没有恢复,检查接口状态,发现接口处于error-disable状态。这个状态是思科交换机的自我保护机制,主要是为了防止问题的扩大,如接口反复的翻动消耗设备大量的资源等情况。解决这个问题有两种方式,一是手工重启下接口,这是临时的一种做法;另一种是通过命令配置自动恢复,当接口处于error-disable时,每过一段时间间隔,交换机自动重置接口,解除error-disable状态。因为在总部的准入部署经验,我们在后期部署时,都配置上了该命令。
遗漏的免检设备
项目的顺利与否往往取决于前期准备工作。准备的越充分,后面填的坑也就越小。网络作为七层模型的低层,往往涉及到很多业务系统。就像马路一样,上面来往的不止是小汽车、货车、大巴等,还有可能是滑板车、自行车、马车等千奇百怪的交通工具。在整个准入项目最前期需要做的就是统计资源。所谓的资源,不只是电脑和服务器,还有话机、AP、监控、门禁、视讯设备等。因为各分公司有各自的IT人员,但由于某些原因,统计设备不完全,导致一些设备在准入系统上线后没法正常使用。这时候就需要填坑了。
没有加域的电脑
我司的准入策略要求有两个,首先电脑要加域,其次电脑上要有准入客户端。同时满足这两个条件,那么设备才被允许入网。在部署完成后,我们发现有好多终端电脑都没有加域。主要原因还是由于某些分公司IT人员个人问题,做事敷衍了事导致的。在无法上网后,责令当地IT人员安装完客户端后,准入系统部署成功。
不兼容的IP话机
网络准入系统上线后,所有的有线无线接口都能受管控了,这是一个美好的理想状态。当然,这是不可能的。我们在部署的过程中,发现有部分型号的话机在接入交换机配置准入后,根本无法完成话机注册。除了换设备,没有特别好的方法。换设备的话,首先要考虑的是成本,包括时间和金钱。在考虑到成本后,我们决定退一步,解除了该上连设备的接口准入配置,并将设备记录在册。再下一次设备汰换时,这部分设备处于优先序列。
升不了级的交换机
除了以上问题,在升级交换机的过程中,我们也遇到了坑。升级的过程是成功的,结果是失败的。升级完成后,我们检查了接口都是正常的。设备运行也是稳定的,也成功运行了新版本。然后,我们美滋滋的下班了。第二天,就接到用户报障,检查后,在交换机上发现了以下日志信息:
日志信息显示思科不认为该设备是合法设备。目测该设备是以前维修过的,类似“组装机”一样。新版本的IOS可能有检查机制,因此不能正常使用。网上查阅后,找到一个解决方法,通过断电重启能够恢复。我们网内有两台设备遇到这个问题,其中只有一台通过这种操作恢复了正常。另外一台,只能通过换设备的方式完成部署。
3、一些项目心得
不要全部相信用户的话
在部署中,我们前一晚部署完成后,检查都是正常的。第二天早上,往往会有用户报障说整个站点全部故障。但仔细了解后,才会发现受影响范围没有那么夸张。从用户的角度看,故意夸大故障范围,提升故障等级,能够得到运维人员的重视和优先处理。作为一个专业的运维人员,首先不要因为用户的夸大而慌乱,然后像老医生一样,通过“望闻问切”的专业手法,自己判断缩小、定位、处理故障。
变革是需要流血的
通过历史,我们知道每次改朝换代都是需要流血的。同样,做项目也是这样的。一次次的失败迭代出了后来的成功。不要因为害怕流血而不去变革,变革流的血是暂时的,所有的一切都是为了未来的更好。只是在变革前,要做好充足的准备工作。
见过太多的IT职场员工,在工作中遇到了很多问题,这些问题都是可以反馈上去的,或者处理掉后可以提升一两倍的工作效率。但他们就是不会去做。在某些公司,提出问题的人,会被上级赋予额外的工作量。大家都没问题,就你有问题,那你自己解决,也就是说成功是你的,失败更是你的。最后,因为要担责任,导致了很多问题大家都在“忍”,而不是去处理。作为运维人员要明白“变革“和”流血”是伴生的,为了一劳永逸的付出是值得的。为了到达远方,行路中磕磕碰碰流点血擦破点皮,都是正常的。
让步也是前进
在人的一生中,总会遇到一些无法解决的问题。多年后,再次回想,当初纠结一时的问题,也就这样而已。所有的问题都是能够解决的。后退是为了跳的更远。暂时的退让,不死磕小问题,能够让项目更好更顺利的按计划推进。