【已评审】新增资源协作接口,支持禁止/允许远端IP访问特定端口

背景

BMC安全管理计划支持基于IP的登录防暴力破解能力,需要支持禁止/允许某个特定IP访问特定端口。

关联ISSUE

暂无ISSUE

整体方案

  1. 新增针对远端IP及目的端口设置iptables过滤规则的方法;
  2. 安全管理调用该方法,实现禁止/允许特定IP针对特定本地端口的访问;

评审点

  1. 新增资源;
  2. 新增资源协作接口方法,支持针对远端IP及目的端口设置过滤规则;

详细描述

  1. 新增资源
    资源Path:/bmc/kepler/Managers/:ManagerId/FilterConfig
    资源interface:bmc.kepler.Managers.FilterConfig

  2. 新增资源协作接口方法,支持针对远端IP及目的端口设置过滤规则;

方法名称 请求签名 请求参数描述 响应签名 响应参数描述 方法描述 访问权限
AddFilterRule a{ss} FilterType:Accept/Drop/Reject
ProtocolType:协议类型(例:tcp/udp)
SrcIpAddr:远端访问IP地址
DstPort:端口号(例:SSH服务使用22端口)
Usage:用途(支持按照用途添加/批量删除)
针对特定IP特定端口新增iptables filter规则 SecurityMgmt
DeleteFilterRule a{ss} FilterType:Accept/Drop/Reject
ProtocolType:协议类型(例:tcp/udp)
SrcIpAddr:远端访问IP地址
DstPort:端口号(例:SSH服务使用22端口)
Usage:用途(支持按照用途添加/批量删除)
针对特定IP特定端口删除iptables filter规则 SecurityMgmt

评审结论

  1. 同意新增资源,资源Path:/bmc/kepler/Managers/:ManagerId/FilterConfig,资源Interface:bmc.kepler.Managers.FilterConfig
  2. 同意新增资源协作接口方法AddFilterRule,权限为SecurityMgmt,请求签名为a{ss},参数范围如下表,无响应签名,用于针对特定IP特定端口新增iptables filter规则;
参数属性名称 参数属性取值 取值说明 可选/必选
FilterType Accepet/Drop/Reject Filter规则策略 必选
ProtocolType tcp/udp 协议类型 必选
SrcIpAddr IPv4/IPv6地址 远端IP地址 必选
DstPort - 端口号 必选
Usage - 规则用途 必选
  1. 同意新增资源协作接口方法DeleteFilterRule,权限为SecurityMgmt,请求签名为a{ss},参数范围如下表,无响应签名,用于删除iptables filter规则,参数选择模式支持仅指定Usage指定所有参数两种模式;
参数属性名称 参数属性取值 取值说明 可选/必选
FilterType Accepet/Drop/Reject Filter规则策略 可选
ProtocolType tcp/udp 协议类型 可选
SrcIpAddr IPv4/IPv6地址 远端IP地址 可选
DstPort - 端口号 可选
Usage - 规则用途 必选

遗留问题

  1. 添加规则数量上限:规则上限确认为64,调用方法时超出限制返回错误信息;
  2. 错误信息如下表所示:
场景 错误信息描述
参数校验失败 InvalidValue
添加已存在的规则/删除不存在的规则 OperationNotAllowed
添加规则失败/删除规则失败 OperationNotSupport
添加规则数超上限 CreateLimitReachedForResource