目录
访问控制列表ACL是一种基于包过滤的访问控制技术,可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃,访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表可以有效地控制用户对网络的访问,从而最大程度地保障网络安全
源IP、目的IP、源端口、目的端口、协议
访问控制列表读取第三层(源IP、目的IP)、第四层包头(源端口和目的端口)的信息
根据预先定义好的规则对包进行过滤
目前所讲的是基于主机的访问控制。基于数据包的五元组进行过滤
出 out:已经经过了路由器处理,正要离开路由器接口的数据包
进 in:已经到达路由器接口的数据包,即将被路由器处理

一般情况在入口处做ACL策略,可以减少路由器路由的工作量
访问控制列表的处理过程

当数据包到达访问控制组接口时,进行ACL匹配,如果没有一条规则匹配的上,最终数据包将被丢弃。因为默认有一条隐藏拒绝deny any any
基于源IP地址过滤数据包
标准访问控制列表的表号为1~99
一般策略在靠近源
基于数据包五元组:源IP、目的IP、源端口、目的端口、协议来过滤数据包
扩展访问控制列表的表号为100~199
命名访问控制列表允许在标准和扩展访问控制列表中使用名称代替表号
没有表号,根据关键字区分是标准还是扩展的ACL
标准命名ACL是 standard
扩展命名ACL是 extended

要求PC0不能访问 PC2
PC1不能访问PC2
第一步:划分网段配置IP实现网络互通
PC0 Ping PC2

PC1 ping PC2

第二步:配置标准ACL
Router(config)#
Router(config)#access-list
Router(config)#access-list 88 ?
deny Specify packets to reject
permit Specify packets to forward
remark Access list entry comment
Router(config)#access-list 88 deny ?
A.B.C.D Address to match
any Any source host
host A single host address
Router(config)#access-list 88 deny host 192.168.10.2
/* Router(config)#access-list 88 deny 192.168.10.2 0.0.0.0 */
/* 先拒绝再配置允许,ACL是从上往下进行匹配,若没有允许命令会有一条隐藏的deny any阻挡PC0流量通过 */
Router(config)#access-list 88 permit any
将ACL应用在g0/0 in方向上
Router(config)#int g0/0
/* 88是前面创建ACL的表号 要一致 */
Router(config-if)#ip access-group 88 ?
in inbound packets
out outbound packets
Router(config-if)#ip access-group 88 in
查看效果


标识一个网段:192.168.10.0
255.255.255.0
标识单个主机:192.168.10.1
255.255.255.255 (32位子网)
ACL使用的是反掩码,因此标识一个IP地址是 A.B.C.D 0.0.0.0
Router(config)#access-list 表号(1~99)permit/deny host A.B.C.D
Router(config)#access-list 表号(1~99)permit/deny A.B.C.D 0.0.0.0
Router(config)#access-list 表号(1~99)permit any 允许所有IP访问
Router(config)#access-list 表号(1~99)deny any 拒绝所有IP访问
删除ACL
(在删除前要先在接口上取消ACL应用)
Router(config)#int g0/0
Router(config-if)#no ip access-group 表号(1~99)in
Router(config)#no access-list 表号(1~99)
查看ACL配置
show access-lists

Rails2.3可以选择随时使用RouteSet#add_configuration_file添加更多路由。是否可以在Rails3项目中做同样的事情? 最佳答案 在config/application.rb中:config.paths.config.routes在Rails3.2(也可能是Rails3.1)中,使用:config.paths["config/routes"] 关于ruby-on-rails-Rails3中的多个路由文件,我们在StackOverflow上找到一个类似的问题
我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file
我没有找到太多关于如何执行此操作的信息,尽管有很多关于如何使用像这样的redirect_to将参数传递给重定向的建议:action=>'something',:controller=>'something'在我的应用程序中,我在路由文件中有以下内容match'profile'=>'User#show'我的表演Action是这样的defshow@user=User.find(params[:user])@title=@user.first_nameend重定向发生在同一个用户Controller中,就像这样defregister@title="Registration"@user=Use
我真的为这个而疯狂。我一直在搜索答案并尝试我找到的所有内容,包括相关问题和stackoverflow上的答案,但仍然无法正常工作。我正在使用嵌套资源,但无法使表单正常工作。我总是遇到错误,例如没有路线匹配[PUT]"/galleries/1/photos"表格在这里:/galleries/1/photos/1/edit路线.rbresources:galleriesdoresources:photosendresources:galleriesresources:photos照片Controller.rbdefnew@gallery=Gallery.find(params[:galle
我想使用spawn(针对多个并发子进程)在Ruby中执行一个外部进程,并将标准输出或标准错误收集到一个字符串中,其方式类似于使用Python的子进程Popen.communicate()可以完成的操作。我尝试将:out/:err重定向到一个新的StringIO对象,但这会生成一个ArgumentError,并且临时重新定义$stdxxx会混淆子进程的输出。 最佳答案 如果你不喜欢popen,这是我的方法:r,w=IO.pipepid=Process.spawn(command,:out=>w,:err=>[:child,:out])
我正在尝试找到一种方法来规范化字符串以将其作为文件名传递。到目前为止我有这个:my_string.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').downcase.gsub(/[^a-z]/,'_')但第一个问题:-字符。我猜这个方法还有更多问题。我不控制名称,名称字符串可以有重音符、空格和特殊字符。我想删除所有这些,用相应的字母('é'=>'e')替换重音符号,并将其余的替换为'_'字符。名字是这样的:“Prélèvements-常规”“健康证”...我希望它们像一个没有空格/特殊字符的文件名:“prelevements_routin
?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO
1.在Python3中,下列关于数学运算结果正确的是:(B)a=10b=3print(a//b)print(a%b)print(a/b)A.3,3,3.3333...B.3,1,3.3333...C.3.3333...,3.3333...,3D.3.3333...,1,3.3333...解析: 在Python中,//表示地板除(向下取整),%表示取余,/表示除(Python2向下取整返回3)2.如下程序Python2会打印多少个数:(D)k=1000whilek>1: print(k)k=k/2A.1000 B.10C.11D.9解析: 按照题意每次循环K/2,直到K值小于等
Rails中有没有一种方法可以提取与路由关联的HTTP动词?例如,给定这样的路线:将“users”匹配到:“users#show”,通过:[:get,:post]我能实现这样的目标吗?users_path.respond_to?(:get)(显然#respond_to不是正确的方法)我最接近的是通过执行以下操作,但它似乎并不令人满意。Rails.application.routes.routes.named_routes["users"].constraints[:request_method]#=>/^GET$/对于上下文,我有一个设置cookie然后执行redirect_to:ba