• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

防火墙F1000-AK1150 文件过滤如何限制所有后缀?

10小时前提问
  • 0关注
  • 0收藏,39浏览
粉丝:0人 关注:2人

问题描述:

环境:A和B连接,通过FTP传文件

需求: 只允许传.deb和.dxd这两个后缀的文件

目前状况,我写策略,文件过滤,是可以实现只允许这两个过,在自定义里写这俩允许,但是我拒绝所有,如何写匹配除了这俩所有的后缀名?自带的预定义后缀名就常用的那些,例如员工自定义一个后缀为 .123456的,我这个123456也不再自定义规则内,岂不是限不住了?

3 个回答
粉丝:4人 关注:9人

配置步骤及关键命令
1. 备份当前配置(重要变更前必做):
save
2. 创建自定义允许的文件类型(包含.deb、.dxd后缀):

file-type custom type-name allow_deb_dxd
file-type custom allow_deb_dxd add suffix .deb .dxd

3. 创建文件过滤规则(规则顺序至关重要,先匹配允许项):

file-filter rule 10 permit file-type custom allow_deb_dxd
file-filter rule 20 deny file-type all

4. 将文件过滤规则绑定到对应FTP流量的安全策略(假设策略名为ftp_allow):

security-policy rule ftp_allow
action permit
file-filter apply rule all

5. 验证配置:
display file-filter rule all
display file-type custom allow_deb_dxd
说明
规则按顺序匹配,先放行.deb/.dxd文件,其余所有后缀(包括自定义的.123456等未预定义后缀)会被deny file-type all拦截,满足需求。

暂无评论

粉丝:10人 关注:2人

核心是:先放行明确允许的,再用一条 “匹配所有扩展名” 的规则全部拒绝。下面直接给 F1000-AK1150(V7)可落地配置。
一、原理(解决你的疑问)
你担心的:员工随便造一个后缀(.123456、.abcdef),不在预定义 / 自定义列表里,就漏了。正确做法不是 “把所有坏后缀加进去”,而是:
建一个允许组:只放 .deb、.dxd
建一个拒绝所有组:用正则匹配任意扩展名
规则顺序:先允许,后拒绝所有(顺序不能反)
设备支持正则表达式做文件后缀匹配,所以能拦截任意未知后缀。
二、Web 界面配置(推荐)
1. 新建 “允许” 文件类型组
对象 → 应用安全 → 文件过滤 → 文件类型组 → 新建
名称:Allow_deb_dxd
自定义扩展名:
deb
dxd
确定
2. 新建 “拒绝所有” 文件类型组(关键)
新建 → 名称:Deny_All_Others
选正则表达式(不是文本)
正则 pattern:.*
含义:匹配任意扩展名(包括任何自定义后缀)
确定
3. 新建文件过滤策略
策略 → 应用安全 → 文件过滤 → 新建策略
名称:FTP_Only_deb_dxd
规则 1(放行):
类型:允许
文件类型组:Allow_deb_dxd
应用:FTP
方向:双向(或上传 / 下载,按需)
日志:开启
规则 2(拒绝所有其他):
类型:拒绝
文件类型组:Deny_All_Others
应用:FTP
方向:双向
日志:开启
保存(规则顺序:允许在前,拒绝在后)
4. 绑定到安全策略
安全策略 → 找到 A→B 的 FTP 策略 → 内容安全 → 勾选 “文件过滤” → 选上面的 FTP_Only_deb_dxd → 提交并激活
三、CLI 配置(直接复制)
bash
运行
# 1. 自定义允许组
file-filter filetype-group Allow_deb_dxd
pattern 1 text deb
pattern 2 text dxd
quit

# 2. 正则拒绝所有
file-filter filetype-group Deny_All_Others
pattern 1 regex .*
quit

# 3. 文件过滤策略
file-filter policy FTP_Only_deb_dxd
rule 1 permit
filetype-group Allow_deb_dxd
application type ftp
direction both
logging enable
rule 2 deny
filetype-group Deny_All_Others
application type ftp
direction both
logging enable
quit

# 4. 应用到DPI profile并激活
app-profile FTP_Profile
file-filter apply policy FTP_Only_deb_dxd
quit

inspect activate
四、效果验证(你关心的场景)
传 xxx.deb → 放行
传 yyy.dxd → 放行
传 zzz.exe / aaa.123456 / bbb.abcdef → 全部拒绝
无后缀文件 → 也会被 .* 正则匹配拒绝(如需允许无后缀,可加一条规则)
五、常见坑
规则顺序反了:如果先拒绝所有,再允许 deb/dxd,会全部拦截。
正则写错:必须用 .*,不要用 * 或其他通配符。
没激活 DPI:配置后必须 inspect activate 或 Web 点 “激活”。

暂无评论

粉丝:13人 关注:1人

要精准拦截所有未授权的文件后缀,比如你担心的 .123456,最有效的办法不是一一列举,而是采用“白名单 + 正则表达式(贪婪匹配)”的组合策略。

这个方案的核心是:先允许想要的两个后缀,再用正则表达式 .*(匹配任意字符串)拦截所有其他后缀,实现无为而治的精准控制。



如果你习惯用命令行(CLI),可以按下面的步骤直接操作:

  1. 创建允许组:定义一个只包含 .deb 和 .dxd 的自定义文件类型。

    <H3C> system-view
    [H3C] file-filter filetype-group Allow_deb_dxd pattern 1 .deb
    [H3C] file-filter filetype-group Allow_deb_dxd pattern 2 .dxd
  2. 创建拒绝组:定义一个正则表达式 .* 来匹配任意字符串,作为拒绝组。通过 type regex 关键字将其识别为正则表达式匹配,以达到“禁止一切”的效果。
    [root@H3C entity] 
    注意:Comware V7 平台上需使用 type regex 关键字明确指定为正则表达式匹配。

    [H3C] file-filter filetype-group Deny_All type regex .*
  3. 创建文件过滤策略

    [H3C] file-filter policy FTP_Only_deb_dxd
    # 添加第一条规则:允许自定义的文件类型组通过
    [H3C-file-filter-policy-FTP_Only_deb_dxd] rule 10 permit filetype-group Allow_deb_dxd
    # 添加第二条规则:拒绝所有其他
    [H3C-file-filter-policy-FTP_Only_deb_dxd] rule 20 deny filetype-group Deny_All
    [H3C-file-filter-policy-FTP_Only_deb_dxd] quit规则优先级
     (rule numbers):数字越小,优先级越高,执行顺序是从小到大。因此 rule 10 会在 rule 20之前被匹配。
  4. 应用到安全策略:最后,将文件过滤策略绑定到处理 A 和 B 之间 FTP 流量的安全策略上。

    [H3C] security-policy ip
    [H3C-security-policy-ip] rule name FTP_Allow
    [H3C-security-policy-ip-rule-FTP_Allow] action pass
    [H3C-security-policy-ip-rule-FTP_Allow] source-zone trust
    [H3C-security-policy-ip-rule-FTP_Allow] destination-zone untrust
    [H3C-security-policy-ip-rule-FTP_Allow] service ftp
    [H3C-security-policy-ip-rule-FTP_Allow] content-security apply file-filter policy FTP_Only_deb_dxd



 配置验证

配置完成后,建议多测试一下,确保拦截效果符合预期。

  • 查看规则列表: 用 display file-filter rule all-1查看文件过滤规则的启用状态。

  • 监控在线会话: 用 display file-filter session table、[root@H3C entity]查看当前匹配文件过滤规则的会话。

配置是保障,日常维护也同样重要。

  • 定期审查日志: 别忘了给规则20开启日志,定期看看拦截日志,分析有没有意外的文件类型被阻断了。

  • 遇到特殊情况?: 如果将来有突发需求需要临时放行某些文件类型,但又不想大改配置,可以尝试在系统视图下使用 file-filter exception 命令(如果设备支持)临时添加例外列表。不过此命令是临时性的,设备重启后就会失效,只适合做紧急处理。

  • 规避真实类型检查: 如果防火墙检测到文件的“真实类型”与“扩展名”不符,而你的规则动作是丢弃,它会直接丢弃报文,不再进行文件过滤规则的匹配。需要注意这可能导致规则快速放行,因此建议在配置规则动作时务必明确规避风险。

暂无评论

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明