限制用户访问时间和应用
故障现象
        公司使用Cisco路由器实现Internet连接,由于有些员工每天占用大量的时间在网上聊天。所以,老总要求
通过设置,禁止员工在周一至周五的8:00~18:00使用QQ和MSN。
故障分析
       若欲实现对员工的限制,必须借助基于时间的访问列表,从而控制用户在某个时间段对访问的访问权限。
故障解决
具体的设置步骤如下:
(1) 进入全局配置模式。
Router# configure terminal
(2) 为指定的时间范围命名一个有意义的名称。名称不能包括空格和引号,并且必须以字母开头。
Router(config)# time-range time-range-name
(3) 指定时间范围。
Router(config-time-range)# absolute 
[start time date] [end time date]
或者
periodic day-of-the-week hh:mm to [day-of-the-week] hh:mm
或者
periodic {weekdays | weekend | daily} hh:mm to hh:mm
        absolute指定绝对时间范围。该关键字之后紧跟着start和end关键字。若欲使访问列表中相关的permit或deny
语句生效,则start和end之后应当紧跟开始和结束的时间。需要注意的是,时间用24小时格式表示,日期用"日/
月/年"格式表示。
periodic尽管每个时间范围只能有一个absolute语句,但是,却可以有多个periodic语句。另外,absolute语句只
拥有开始和结束时间,以及日期等少数几个参数,而periodic语句可以使用大量参数,范围可以是一星期中的某
一天或几天的组合,或者使用关键字daily、weekdays和weekend等。表3-3中列出了在语句中可以使用的每星期
天数中的参数。
 
表3-3  periodic语句中可以使用的每星期天数中的参数
   
   
Monday Tuesday Wednesday
Thursday Friday Saturday Sunday
某一天或某几天的组合
daily
从星期一至星期天
weekdays
从星期一至星期五
weekend
星期六和星期日
例如,若欲限制所有员工在周一至周五的8:00~18:00使用QQ和MSN聊天,可以在访问列表中添加下述语句:
time-range deny-qq
!---定义时间范围名称为"deny-qq"
periodic weekdays start 8:00 end 18:00
!---时间范围为周一至周五的8:00~18:00
ip access-list extend internet_limit
!---定义扩展IP访问列表,名称为"qq_limit"
deny tcp 10.1.0.0 0.0.255.255 any eq 1863 time-range deny-qq
deny tcp 10.1.0.0 0.0.255.255 any eq 8000 time-range deny-qq
deny udp 10.1.0.0 0.0.255.255 any eq 8000 time-range deny-qq
deny udp 10.1.0.0 0.0.255.255 any eq 4000 time-range deny-qq
!---定义QQ和MSN聊天使用的协议和端口号
permit ip any any
!---其余访问不予限制

需要注意的是,网络应用程序所使用的端口号,大多都可以在下述下文件中找到:
Win9x:%windir%\services
WinNT/2000/XP:%windir%\system32\drivers\etc\services
Linux:/etc/services
如果在services文件中找不到端口的应用,可以在运行程序前后,运行netstat -ap比较并找出应用所使用的端口号。
(4) 返回特权配置模式。
Router(config-time-range)# end
(5) 进入全局配置模式。
Router# configure terminal
(6) 指定欲应用该IP访问列表的接口。通常情况下,将该访问列表指定至连接局域网的LAN口即可。
Router(config)#interface interface-id
(7) 将访问控制应用到指定的接口。二层接口(端口访问列表)不支持out关键字。
Router(config-if)# ip access-group
{access-list-number | name} {in | out}
(8) 返回特权配置模式。
Router(config-if)# end

(9) 校验当前设置。
Router# show running-config
(10) 保存当前配置。
Router# copy running-config startup-config