公共场所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 过滤和异常流量识别。这套组合省掉了自己维护加密存储和备份的活,但要确认留存周期和导出格式仍满足当地网安口径,别因为上云反而丢了字段。



相关文章
|
9天前
|
存储 安全
上网日志留存不达标怎么整改?字段、留存期与导出验证清单
东创伟业聚焦公共场所无线日志合规,提炼“采得全、存得住、对得上、导得出”四大技术核心,覆盖实名溯源、NAT端口留存、180天容量规划、全设备NTP时间同步及标准格式导出,助力迎检一次通过。(239字)
|
1月前
|
人工智能 API 开发者
刚刚 DeepSeek V4.1 Flash 中间版本开启内测,1 分钟教你用上!
大模型迭代速度持续加快,在V4‑Pro与V4‑Flash广泛落地之后,DeepSeek放出全新中间版本**DeepSeek‑V4.1‑Flash**开启内测。该版本采用全新Causal‑Encoder‑Decoder非对称MoE架构,原生内置多模态视觉理解能力,推理吞吐速度大幅提升,同时延续和V4‑Flash完全一致的计费标准,让开发者可以用原有成本体验更强的综合能力。
521 1
|
4月前
|
人工智能 安全 IDE
斯坦福大学竟然开了个 AI 编程课?!我已经学上了
大家好,我是程序员鱼皮。最近刷到一个让我挺震撼的消息,斯坦福大学竟然开了一门正儿八经的课,专门教 Vibe Coding。 课程编号 CS146S,全名叫《The Modern Software Developer》(现代软件开发者),2025 年秋季学期首次开课,PPT、阅读材料、作业全部公开可用! 课程官网指路:https://themodernsoftware.dev 名校的课程,咱也能免费
292 0
|
4月前
|
监控 安全 前端开发
构建坚不可摧的防线:全方位保障 API 接口数据安全
本文系统拆解企业级API安全防护体系,涵盖鉴权、传输加密、防篡改、防重放、限流熔断、参数校验、日志监控与合规风控八大维度,提供JWT/OAuth2/HMAC等实战方案,强调HTTPS为底线、签名+幂等为关键、监控巡检为长效保障,助力开发者构建稳定、安全、可追溯的生产级接口防线。
659 0
|
6月前
|
自然语言处理 运维 算法
BM25 + Vectors:为什么真实 RAG 系统通常两者都需要
RAG系统先检索文本块(chunks)再生成答案。Chunk质量与检索策略直接影响效果:结构感知切分保语义完整;BM25擅精确标识符匹配,向量检索强于语义理解;混合检索(Hybrid+RRF融合+元数据过滤+重排序)可兼顾精度与泛化,适配多样技术查询。
341 0
|
4月前
|
机器学习/深度学习 算法 vr&ar
图解强化学习 |手算Actor-Critic
Actor-Critic是一种融合策略优化(Actor)与价值评估(Critic)的强化学习算法:Actor负责选动作,Critic实时打分(如TD误差),实现单步更新、低方差、高效率,兼顾离散/连续动作空间。(239字)
693 0
|
5月前
|
安全 数据安全/隐私保护
统一终端管理系统中如何实现禁止终端设备安装软件:从安装行为识别到终端侧策略执行
企业在统一终端管理中,常困于“能否随意安装软件”这一难题。取消管理员权限仅治标,无法覆盖脚本、浏览器插件、免安装程序等多路径风险。Ping64 以终端行为治理为核心,通过安装行为识别、可信判定、分级审批、白名单联动与全链路审计,实现“未授权软件无法落地运行”的闭环管控。(239字)
381 0
|
7月前
|
弹性计算 缓存 编解码
阿里云九代ECS云服务器c9i、g9i和r9i性能、使用场景及CPU型号全解析
阿里云第九代ECS(c9i/g9i/r9i)搭载英特尔®至强®6处理器,性能全面升级。三款实例核心差异在于CPU:内存配比(1:2/1:4/1:8),分别面向计算密集、通用均衡、内存密集型场景,助力企业精准选型降本增效。(239字)
801 6
|
8月前
|
人工智能 自然语言处理 搜索推荐
大模型微调应用:解锁垂直场景的无限可能
大语言模型微调,是让通用AI精准适配垂直场景的关键技术:低成本、高效率、保通用、可定制。本文详解其在智能客服、内容创作、专业问答、代码生成等领域的落地实践与核心要点,助力企业将AI转化为真实生产力。(239字)
|
网络协议 Linux 网络安全
CentOS7增加或修改SSH端口号
CentOS7增加或修改SSH端口号
1413 1

热门文章

最新文章