公共场所WiFi验收,最容易卡住的不是信号而是合规

简介: 做了几个酒店和商场 WiFi 项目后复盘:验收最容易卡住的不是信号覆盖,而是实名认证和日志留存。本文从 Portal 认证 + 实名绑定的落地、180 天日志全量采集与加密留存、防护策略在线运行,到交付前自测清单,讲清楚这两块为什么设计阶段不规划、交付时必返工,以及怎么真的做扎实。

公共场所WiFi验收,最容易卡住的不是信号而是合规

做了几个酒店和商场的 WiFi 项目后复盘,真正让交付延期、迎检不通过的,往往不是覆盖和吞吐,而是实名认证和日志留存这两块。它们属于"设计阶段不规划、交付时必返工"的典型。

下面是我踩过的坑和落地时真正要盯住的点。各地网安对字段口径和留存周期会略有差异,最终以当地最新要求为准。

一、实名认证:核心是 Portal 认证 + 实名信息绑定

链路不复杂,但每一步都要落到实地:

flowchart LR
    A[用户连上WiFi] --> B[网关拦截未认证流量]
    B --> C[强制302跳转Portal认证页]
    C --> D{选择认证方式}
    D --> E[短信验证码]
    D --> F[微信一键登录]
    D --> G[身份证号+姓名核验]
    D --> H[酒店房号+姓名]
    E & F & G & H --> I[认证服务器校验]
    I --> J[绑定 身份↔IP↔MAC]
    J --> K[放行上网]
    K --> L[后续行为挂在该实名身份下]

用户连上 WiFi,网关把未认证流量拦下来,强制 302 跳到认证页;页面提供多种入口,用户完成一种认证后,网关把身份标识和 IP、MAC 的对应关系记下来,之后的上网行为全部挂在这个实名身份之下。

认证入口至少要做这几种,别只上一种:

  • 短信验证码:最通用,手机场、餐饮都吃得开。
  • 微信一键登录:OAuth 授权拿 openid,商场类场景转化率高。
  • 身份证号 + 姓名核验:对接实名核验接口,政务、酒店刚需。
  • 酒店房号 + 姓名:住客场景,和 PMS 联动最顺。

踩过的坑:某酒店项目上线时只做了短信验证码,验收前夜网安要求演示"非住客也能实名",房号核验还没接,连夜对接 PMS 接口,差点误了迎检窗口。建议进场就把客户能提供的实名维度列全,缺接口的提前排期。

认证服务器建议独立部署,和 Portal 页面解耦。页面要按不同客户品牌换皮,认证方式还得不断加,解耦之后改页面不动认证逻辑,扩展新方式时只动后端。

实名绑定关系落库的表结构,参考下面这个:

CREATE TABLE user_auth_session (
    id            BIGINT PRIMARY KEY AUTO_INCREMENT,
    identity_type VARCHAR(16)  NOT NULL COMMENT 'sms/wechat/idcard/room',
    identity_id   VARCHAR(64)  NOT NULL COMMENT '手机号/openid/身份证/房号',
    real_name     VARCHAR(32)  DEFAULT NULL,
    ip_addr       VARCHAR(64)  NOT NULL COMMENT '分配的上网IP',
    mac_addr      VARCHAR(32)  NOT NULL COMMENT '终端MAC',
    nas_ip        VARCHAR(64)  NOT NULL COMMENT '网关/AC地址',
    login_at      DATETIME     NOT NULL,
    logout_at     DATETIME     DEFAULT NULL,
    online_sec    INT          DEFAULT 0,
    KEY idx_ip (ip_addr),
    KEY idx_mac (mac_addr),
    KEY idx_login (login_at)
) COMMENT='实名认证与会话绑定';

二、日志留存是硬指标,不是可选项

按公安部 82 号令及公共场所无线上网安全管理要求,上网日志留存不少于 180 天,字段至少覆盖:实名信息、上下线时间、分配 IP、MAC、访问目标地址。

字段

说明

踩坑提醒

实名信息

手机号 / 身份证 / 微信 openid,至少一种

只存 openid 不关联实名也会被挑

上下线时间

登录与退出时间戳

异常掉线也要记,不能只记登录

分配 IP

本次会话上网 IP

同时存 IPv6 更稳

MAC 地址

终端 MAC

必须和 IP 成对

访问目标

域名或 IP:端口

纯粹只记认证成功绝对不够

会话时长

在线时长

用于异常长连接审计

设计时盯三点:

  1. 全量采集。别只记认证成功,上下线、掉线、分配回收都要进库,否则检查时调不出完整链路。
  2. 加密存储。日志库落盘加密,访问走最小权限,防止被篡改或泄露——这既是合规线也是安全底线。
  3. 能按标准格式导出。最好做成一键导出,检查时现场就能调出最近一段时间的记录,别临时写 SQL。

一键导出脚本参考(按公安常用 CSV 口径):

import csv, pymysql, datetime

def export_recent(days=7, out=None):
    conn = pymysql.connect(host='auth-db', user='audit', password='***',
                           db='wifi_portal', ssl={'ca': '/etc/ssl/ca.pem'})
    sql = """SELECT identity_id, ip_addr, mac_addr, nas_ip, login_at, logout_at, online_sec
             FROM user_auth_session
             WHERE login_at >= DATE_SUB(NOW(), INTERVAL %s DAY)"""
    with conn.cursor() as cur:
        cur.execute(sql, (days,))
        rows = cur.fetchall()
    out = out or f"audit_{datetime.date.today()}.csv"
    with open(out, 'w', newline='', encoding='utf-8-sig') as f:
        w = csv.writer(f)
        w.writerow(['实名标识','IP','MAC','网关IP','上线','下线','时长(秒)'])
        w.writerows(rows)
    print(f"exported {len(rows)} rows -> {out}")

三、安全防护要在线跑,不是摆设

网关得具备入侵防御、恶意 URL 过滤、异常流量监测,并且规则库持续更新。这部分在迎检时会被核实是否真的在线运行,关着或没更新都算不达标。

建议把规则库版本和最后更新时间也写进巡检记录,检查时直接翻。

四、交付前自测清单

四点全过,迎检才有底气:

  • 实名方式覆盖多种(短信 / 微信 / 身份证 / 房号至少两种以上)
  • 日志能留存满 180 天,且一键导出可用
  • 防护策略处于在线运行状态,规则库为近期版本
  • 有值班响应机制,异常能及时处置

五、如果认证服务上云,几个能省事的点

落到阿里云上,认证服务器用 ECS 独立部署,日志归档进 OSS 并开启服务端加密,检索和夜间巡检可用日志服务(SLS)接一份;入口防护可叠加云防火墙做 URL 过滤和异常流量识别。这套组合省掉了自己维护加密存储和备份的活,但要确认留存周期和导出格式仍满足当地网安口径,别因为上云反而丢了字段。



相关文章
|
7天前
|
存储 安全
上网日志留存不达标怎么整改?字段、留存期与导出验证清单
东创伟业聚焦公共场所无线日志合规,提炼“采得全、存得住、对得上、导得出”四大技术核心,覆盖实名溯源、NAT端口留存、180天容量规划、全设备NTP时间同步及标准格式导出,助力迎检一次通过。(239字)
|
存储
ASCII码可以表示汉字吗?
ASCII码可以表示汉字吗?
5723 0
|
1月前
|
人工智能 编解码 并行计算
AI 漫剧本地制作实践:Wan Animate + ComfyUI 8G 显存动作迁移工作流调优
本文详解如何在本地ComfyUI部署轻量版Wan Animate模型,实现AI漫剧静态原画到连贯动画的高效转化。涵盖姿态引导原理、8G显卡显存优化(FP8量化+CUDA分片)、工作流配置及参数调优,解决帧闪烁、角色崩坏等痛点,支持离线批量生产无水印短视频。(239字)
|
1月前
|
数据采集 监控 API
淘宝店铺所有商品 API 怎么拿?一文讲透官方接口 + 第三方接口
本文详解淘宝商品数据合规获取方案:官方TOP接口(需店铺授权,仅限自身店铺)与第三方接口(支持竞品监控)。强调分页拉取、字段精简、频率控制三大要点,避开爬虫封禁风险,附完整接入步骤与避坑指南。
288 0
|
2月前
|
人工智能 运维 API
Token Plan个人版全解:39元起包月算力与Qwen3.8-Max-Preview实操指南
在大模型调用普及之后,大量独立开发者、在校学生、单人智能体运维从业者长期面临按量计费的痛点:批量代码重构、全天候数字员工挂机、多模态素材批量生成场景下月度算力账单波动剧烈,无法提前规划预算;同时不同AI工具、不同大模型需要单独配置计费凭证,切换基座时流程繁琐,多套密钥难以统一管理。Token Plan个人版包月算力订阅服务针对单人使用场景打造,以预付费包月、统一Credits积分计量为核心,彻底解决算力成本不可控、多工具适配繁琐两大行业难题。
591 1
|
3月前
|
云安全 运维 安全
阿里云国际站:AccessKey泄露风险检测与应急处置指南(云安全中心)
AccessKey 泄露已经成为云上安全事故中响应最急迫的一类——攻击者拿到凭证后,不消半小时就能遍历资源、窃取数据或植入后门。没有一套可落地的阿里云 AccessKey 泄露检测与应急处理指南,多数团队往往在账单爆表或业务中断后才开始被动处置。以下从根因与影响入手,把这条最常见的攻击链拆开来看。
308 0
|
9月前
|
数据采集
静态IP个人用户如何选择?
静态IP助力远程办公、海外学习等场景,但个人用户易陷低价陷阱。本文教你按需选择,避开脏IP、地域虚假、售后缺失等坑,聚焦纯度、真实性和服务保障,选对高性价比、合规可靠的静态IP方案。
|
网络协议 Linux 网络安全
CentOS7增加或修改SSH端口号
CentOS7增加或修改SSH端口号
1412 1
|
IDE 物联网 Unix
Linux上应用竟然可以轻松的移植到RTOS上
Linux上应用竟然可以轻松的移植到RTOS上
Linux上应用竟然可以轻松的移植到RTOS上
|
缓存 运维 Linux
深入解析:一步步掌握 CentOS 7 安装全流程及运维实战技巧
深入解析:一步步掌握 CentOS 7 安装全流程及运维实战技巧

热门文章

最新文章