{
  "levels": {
    "low": {
      "label": "正常",
      "verb": "系统平稳",
      "hint": "维持日常防护即可"
    },
    "elevated": {
      "label": "偏高",
      "verb": "有异常迹象",
      "hint": "建议切到「加固」并留意可疑 IP"
    },
    "under_attack": {
      "label": "受攻击",
      "verb": "疑似正在受攻击",
      "hint": "立即套用「受攻击」檔 + 批量封禁"
    },
    "critical": {
      "label": "危急",
      "verb": "威胁严重",
      "hint": "考虑紧急档；确认白名单有你"
    }
  },
  "presetsWhen": {
    "daily": "日常运营",
    "hardened": "扫描／暴力",
    "under_attack": "L7 爆量",
    "emergency": "最后手段"
  },
  "note": {
    "notApplied": "未套用到系统（需 root + YSK_EXECUTE=1）— 已记到管理设置",
    "nginxWritten": "已写入 Nginx 限速管理檔",
    "f2bWritten": "已写入 fail2ban 管理設定",
    "hintDropped": "已略过内部防护提示",
    "nginxLimits": "将写入 Nginx 限速片段"
  },
  "rel": {
    "justNow": "刚刚",
    "minutesAgo": "{{n}} 分钟前",
    "hoursAgo": "{{n}} 小时前"
  },
  "apiUnreachable": "无法连线 API（Web proxy／后端可能未启动）",
  "geoipLoadFailed": "加载 GeoIP 失敗",
  "loadFailed": "加载失敗",
  "previewDone": "预览完成（未写入）",
  "presetApplied": "已套用防护档",
  "manualBan": "手动封禁",
  "banSent": "已送出封禁 {{ip}}",
  "quickSelectBan": "快速选取封禁",
  "bulkBan": "批量封禁 {{count}} 個",
  "autoBanStatus": "自動 ban：{{onOff}} · {{mode}} · {{method}}",
  "autoBanUpdated": "已更新自動 ban",
  "automationMaster": "自动化主开关：{{onOff}}",
  "autoPresetStatus": "自動防护档：{{onOff}}",
  "autoBanAutomation": "自動 ban：{{onOff}}（{{mode}}）",
  "automationSaved": "已保存自动化设置",
  "statFirewall": "防火墙",
  "statSuspects": "可疑IP",
  "statSuspectsSplit": "可操作 {{actionable}}／全部 {{total}}",
  "suspectActionableCount": "可操作 IP {{count}}",
  "scoreBasisHint": "威胁评分使用防火墙、fail2ban 禁止量和请求率信号——与英特尔嫌疑人列表的计数不同。",
  "statAutoBan": "自動 ban",
  "statApply": "系统套用",
  "statActiveBans": "活跃封禁",
  "statPreset": "防护档",
  "threatPill": "威胁 {{label}} · {{score}} 分",
  "reprobed": "已重新探测",
  "loadingStatus": "加载防護狀態…",
  "tabs": {
    "command": "应变",
    "automation": "自动化",
    "bans": "封禁",
    "geo": "IP 准入",
    "stack": "底层",
    "intel": "情报",
    "about": "说明"
  },
  "reapply": "重新套用",
  "nginxLimits": "Nginx 限速",
  "notWritten": "未写",
  "modeValue": {
    "normal": "正常",
    "degraded": "降级",
    "ddos-protection": "DDoS 防护",
    "offline": "离线"
  },
  "mode": "模式",
  "controlPlane": "控制面",
  "canApply": "可套用",
  "needRoot": "需 root",
  "writeOnly": "只写文件",
  "autoRunning": "运行中 · 间隔 {{sec}}s · 本小时 ban {{n}}",
  "autoOffManual": "关闭 — 只人手操作",
  "lastTick": "· 上次 {{t}}",
  "nextTick": "· 下轮 {{t}}",
  "on": "开",
  "off": "关",
  "open": "开啟",
  "ranAutomationTick": "已跑一輪自动化",
  "escalateHardened": "加固 ≥ 分数",
  "escalateAttack": "受攻击 ≥ 分数",
  "deescalateDaily": "回落日常 < 分数",
  "zeroOff": "0 关",
  "holdAfterEscalate": "升档后最少维持",
  "min5": "5 分",
  "min15": "15 分",
  "min30": "30 分",
  "hour1": "1 时",
  "hour2": "2 时",
  "hour6": "6 时",
  "presetOrCustom": "预设档 / 自定义",
  "autoBanMode": "自动封禁模式",
  "soft": "宽松",
  "normal": "标准",
  "aggressive": "积极",
  "custom": "自定义",
  "method": "方式",
  "banMethod": "封禁方式",
  "both": "两者",
  "scoreGte": "分数 ≥",
  "hitsGte": "请求 hits ≥",
  "hits429Gte": "429 相关 hits ≥",
  "scanHitsGte": "扫描路径 hits ≥",
  "cooldown": "冷却",
  "maxPerHour": "每小时上限",
  "scanInterval": "掃描间隔",
  "schedulerDefault": "scheduler 默认 120s",
  "collapse": "收起",
  "expand": "展开",
  "step": "步骤",
  "mechanism": "机制",
  "youCanTune": "你可调",
  "probe": "探测",
  "probeSignals": "外網／请求率／TCP／f2b／UFW",
  "escalateThreshold": "升档门槛",
  "emergency": "紧急",
  "neverAuto": "永不自动",
  "manualEmergency": "人手 EMERGENCY",
  "signalNetworkDown": "外网断",
  "signalHighReq": "高请求率",
  "signalDdos": "DDoS 啟發式",
  "signalTcp": "TCP 连接",
  "signalUfwOff": "UFW 关閉",
  "signalF2bBans": "fail2ban 封禁数",
  "weightHint": "{{label}} 权重 0–3",
  "detected": "（已检测）",
  "notSet": "（未设置）",
  "zonesComma": "Zones（逗号分隔）",
  "underAttackRequested": "已请求 Under Attack",
  "underAttackCleared": "已请求解除 UA",
  "autoBanOpen": "已开 · {{mode}} · 本小时 {{n}}/{{max}}",
  "autoBanClosed": "关閉 — 只靠手动／列表",
  "pausedNoExecute": "· 暂停（無 EXECUTE）",
  "circuitOpen": "· 已熔断",
  "autoBanModeLabel": "自動 ban 模式",
  "scanned": "已扫描",
  "bulkOps": "批量操作",
  "fromAccessLog": "来自 access log · 一键或批量封禁",
  "noSuspectIps": "暫时無可疑 IP",
  "noSuspectDesc": "有扫描／429 流量时会自动出现。亦可展开手动封禁。",
  "whitelistPlus": "白名单 + {{ip}}",
  "whitelistAdded": "已加入白名单",
  "activeBansTitle": "活跃封禁 ({{count}})",
  "activeBansDesc": "防護中心汇总 · 解封经 defense API（同 fail2ban-client）",
  "source": "来源",
  "unbanned": "已解封",
  "noBans": "未有封禁",
  "noBansDesc": "封禁后显示于此",
  "collapseQuickAdd": "收起快加",
  "quickAddOne": "快加一条",
  "removeItem": "移除 {{w}}",
  "updated": "已更新",
  "ipOrCidr": "IPv4／IPv6 或 CIDR",
  "autoBanWhitelistAdded": "已加入 auto-ban 白名单",
  "added": "已加入",
  "banIpPlaceholder": "要封禁的 IPv4 或 IPv6",
  "reason": "原因",
  "scanBrute": "扫描 / 暴力",
  "noSignals": "尚无信号",
  "pressReprobe": "按重新探测",
  "points": "分",
  "noTopIps": "暂无 Top IP",
  "topIpsAfterLog": "有 log 后会显示",
  "noManagedVhost": "无 managed vhost",
  "afterPresetMarker": "套用防护档後会注入 marker",
  "injected": "已注入 YSK_DEFENSE",
  "notInjected": "未注入",
  "noEvents": "暂无事件",
  "eventsAfterOps": "套用／封禁后出现",
  "geoipUpdated": "GeoIP 库已更新",
  "dbReady": "库就绪",
  "stale": "过旧",
  "older7d": ">7 日",
  "freshnessNa": "不适用",
  "freshnessMissing": "无库",
  "freshnessStale": "过旧",
  "freshnessFresh": "最新",
  "lastSuccess": "上次成功",
  "downloaded": "已下载",
  "missing": "缺失",
  "geoMode": "Geo 准入模式",
  "denyList": "封锁名单",
  "allowListHighRisk": "允许名单 · 高危",
  "autoUpdateDb": "自动更新库",
  "countriesSelected": "国家（已选 {{n}}）",
  "searchCountry": "搜索中文名或 ISO",
  "countryPlaceholder": "中国 / CN",
  "regionsSelected": "省／州（已选 {{n}}）",
  "regionsHint": "依已选国家顯示；可自定义 CN-GD",
  "pickCountryFirst": "建議先選国家以收窄列表",
  "customRegion": "自定义，例 CN-GD",
  "regionPlaceholder": "广东 / CA / 东京",
  "continentsSelected": "大陆（已选 {{n}}）",
  "continentsHint": "洲际（可选）",
  "continentPlaceholder": "亚洲 / EU",
  "asnsSelected": "供应商 ASN（已选 {{n}}）",
  "asnsHint": "雲／ISP；可自定义 ASN",
  "customAsn": "自定义 ASN，例 13335",
  "asnPlaceholder": "Cloudflare / 电信",
  "cityExample": "例：CN|Shenzhen 或 US|Ashburn",
  "policySaved": "政策已保存 · 国 {{c}} · 省 {{r}} · ASN {{a}}",
  "ipPolicySaved": "IP 准入政策已保存",
  "nginxGeoWritten": "已写入 nginx geo 片段",
  "ipAddress": "IP 地址",
  "lookupPlaceholder": "要查询的 IPv4 或 IPv6",
  "wouldBlock": "会拦截 · {{reason}} · {{matched}}",
  "wouldAllow": "放行 · {{reason}}",
  "lookupDone": "Lookup 完成",
  "item": "项目",
  "value": "值",
  "country": "国家",
  "region": "省／州",
  "city": "城市",
  "continent": "大陆",
  "coords": "坐标",
  "provider": "供应商",
  "policy": "政策",
  "block": "拦截",
  "allow": "放行",
  "matched": "命中",
  "applyStricterTitle": "套用較嚴防护档？",
  "applyStricterDesc": "可能开啟自動 ban。請確認白名单有你的 IP。",
  "confirmEmergencyTitle": "確認紧急防护档",
  "confirmEmergencyDesc": "紧急檔會極度限速。請確認白名单有你的 IP，並輸入 EMERGENCY。",
  "confirmString": "确认字符串",
  "applyEmergency": "套用紧急檔",
  "sectionPreset": "防护档",
  "sectionAutoPreset": "① 自動防护档",
  "sectionAutoBan": "② 自動封禁",
  "unban": "解封",
  "ban": "封禁",
  "banConfirmTitle": "封禁 {{ip}}？",
  "banConfirmMethod": "方法：{{method}}",
  "banConfirmUntilUnban": "会一直维持，直至你解除封禁（或 fail2ban 到期）。",
  "banConfirmDesc": "此 IP 会在主机上被封锁。请确认不是目前面板或工作阶段来源。",
  "wlRemovedUndo": "已从白名单移除 {{ip}}。5 秒内可复原。",
  "undo": "复原",
  "banSelectedConfirmTitle": "封禁已选 {{count}} 个 IP？",
  "banSelectedConfirmDesc": "以下地址会在主机上被封锁：{{ips}}",
  "save": "保存",
  "yes": "是",
  "no": "否",
  "oneClickSuggested": "一键套用建议档",
  "stackApply": "套用防護組合（UFW、fail2ban、建議檔）",
  "stackApplyDone": "已要求套用防護組合",
  "stackApplyHint": "會啟用 UFW 並套用 fail2ban 與建議防護檔。遠端面板請先確認不會把自己鎖在外面。",
  "viewPresets": "检视防护档",
  "suspectIpsCount": "可疑 IP {{count}}",
  "goBans": "去封禁",
  "singleEntryPrefix": "单一入口：",
  "singleEntryBody": " ",
  "emergencyNeverAuto": "紧急档永不自动",
  "writeOnlyBanner": "只写模式：系统套用需 EXECUTE=1 与 root。",
  "readiness": "就绪探测",
  "goTo": "前往",
  "presetGuide": "",
  "active": "作用中",
  "recommended": "建议",
  "useCarefully": "慎用",
  "preview": "预览",
  "stackToolsSee": "底层工具见「底層」分页 ·",
  "readinessCheck": "就绪检查",
  "automationMasterLabel": "自动化主开关",
  "runOneTick": "立即执行一轮",
  "suggestEmergencyBanner": "分数极高 — 系統建议緊急檔，但不会自动套用。请到应变人手确认。",
  "autoPresetDesc": "依威胁分自动切 日常／加固／受攻擊。紧急档永不自动。",
  "allowDeescalate": "允许自动回落（降档）",
  "autoBanThresholdHint": "選 soft/normal/aggressive 会自动填阈值；選「自定义」先可改分数／hits。無 YSK_EXECUTE 時只会记录，不会真 ban。",
  "sectionMechanism": "③ 机制说明",
  "lastNotes": "上次：{{notes}}",
  "sectionWeights": "④ 信号权重（0–3）",
  "weightsDesc": "默认 1；加大会令该类信号更容易推高威胁分。细范围用单选，不用手填数字。",
  "needCfToken": "需环境变量 CF_API_TOKEN",
  "cfOnEscalate": "。升至「受攻擊」或人手套用該檔時可打 API。",
  "ufwOnlyCf": "受攻击时 UFW 只放 CF 网段（+SSH）",
  "ufwOnlyCfHint": "会重置 UFW 并只允许 Cloudflare IP；需系统变更权限。",
  "saveZones": "保存 zones",
  "uaNow": "立即 Under Attack",
  "uaClear": "解除（→ high）",
  "stackRoleNote": "UFW 與 fail2ban 是防护中心底下的工具页（不再占侧栏一级）。侧栏只保留本页。",
  "fwUfwTitle": "防火墙 UFW",
  "fwStats": "端口策略 · 永久 DENY · 允许 {{allow}} · 拒绝 {{deny}}",
  "fwRulesProfiles": "UFW 规则与配置档",
  "f2bStats": "日志临时 ban · {{jails}} jails · 封锁中 {{banned}}",
  "jailsWhitelistPolicy": "Jail · 白名单 · 策略",
  "divisionTitle": "分工一览",
  "divisionUfw": "UFW = 开哪个端口、永久拒哪个 IP",
  "divisionF2b": "fail2ban = 扫 log 之后临时 ban",
  "divisionDefense": "本页应变／自動化 = 攻击时总控（限速档 + 自動 ban + 可疑列表）",
  "autoBanLabel": "自動 ban",
  "scanOnce": "扫一次",
  "selectedIps": "已选 {{count}} 個 IP",
  "banSelected": "封禁已选",
  "suspectIps": "可疑 IP",
  "selectAll": "全选",
  "alreadyBanned": "已封",
  "whitelist": "白名单",
  "bansWorkflow": "攻击应变：可疑列表 → 封禁／解封。Jail 策略、ignoreip、服務生命周期见",
  "f2bTool": "fail2ban 工具",
  "noSecondJail": "（不在这里再做第二套 jail 編輯）。",
  "autoBanWhitelistTitle": "自動 ban 白名单",
  "autoBanWhitelistDesc": "防護中心 auto-ban 豁免（会同步 fail2ban ignoreip.txt）。完整 ignoreip 在 fail2ban 工具 → 白名单。",
  "ufwOff": "UFW（未启用）",
  "ufwOffHint": "UFW 未运行 — 可用目标是 fail2ban。",
  "whitelistSyncHint": "面板 {{n}} 条 · fail2ban ignoreip 同步：{{sync}}",
  "whitelistSyncOn": "开",
  "whitelistSyncOff": "关（两边清单可能不一致）",
  "ignoreipWhitelist": "ignoreip 白名单",
  "notSetSuggestAdmin": "未设置（建议加入你的管理 IP）",
  "moreItems": "… 还有 {{n}} 项 · 見 fail2ban 白名单",
  "add": "加入",
  "manualBanTitle": "手动封禁",
  "methodFollows": "方式沿用上方选择（fail2ban / UFW）",
  "preferSuspectList": "多数情况用可疑列表即可。",
  "threatSignals": "威胁信号",
  "scoreSource": "分数來源 · 權重可調",
  "accessAuthSample": "access + auth 样本",
  "fullLogsAt": "完整 nginx／auth log 请到",
  "logCenter": "日志中心",
  "colScore": "分",
  "colHits": "次数",
  "col429": "429",
  "topIpsTitle": "热点 IP",
  "hitsCount": "{{n}} 次",
  "sampleWindowHint": "计数来自当前 access 与 auth 样本窗口，不是完整日志文件。",
  "banShort": "封",
  "vhostLimits": "Vhost 限速",
  "eventStream": "事件流",
  "eventKind": {
    "preset": "防护档",
    "auto_preset": "自动切档",
    "cloudflare_ua": "Cloudflare",
    "ban": "封禁",
    "unban": "解封"
  },
  "hours48": "48 小时",
  "geoipDb": "GeoIP 数据库",
  "refreshStatus": "刷新状态",
  "updateDbNow": "立即更新库",
  "geoipSourceHint": "默认本机 GeoIP 数据库；可选 IPinfo token。",
  "retry": "重试",
  "loadingGeoip": "加载 GeoIP 状态…",
  "nextScheduledUpdate": "调度下次更新：{{at}}",
  "statusNotLoaded": "尚未加载状态",
  "load": "加载",
  "accessPolicy": "准入政策",
  "enable": "启用",
  "freeGranularity": "免费最高细分：国家 + 省／州 + ASN；城市可选政策（默认关，准确率较低）。供應商 = ASN。Whitelist 永远豁免。点 chip 移除。",
  "allowListDanger": "允许名單模式高危：不在名單的公網 IP（含未知 geo）會被擋。請確認管理端 IP 已加入封禁頁 whitelist。",
  "dailySchedule": "每日调度",
  "cityPolicy": "城市政策（低置信 · 可选）",
  "useCityAccess": "用城市做准入",
  "cityPolicyHint": "免费库城市准确率有限。格式 CN|Guangzhou；未勾选时城市只作查询展示。",
  "noCitiesYet": "尚未加入城市",
  "savePolicy": "保存政策",
  "applyNginxSnippet": "套用 Nginx 片段",
  "nginxSnippetHint": "需 nginx geoip2 模块才可在 HTTP 层拦截。",
  "testIp": "测试 IP",
  "lookup": "查询",
  "plusCountry": "+ 国家 {{v}}",
  "plusRegion": "+ 省 {{v}}",
  "plusCity": "+ 城市 {{v}}",
  "lastTickPrefix": "· 上次 {{t}}",
  "nextTickPrefix": "· 下轮 {{t}}",
  "cannotBanSelf": "不可封锁 {{ip}} — 这是本机、你的登录 IP 或 ignoreip",
  "selfIp": "本主机",
  "selfHostIp": "主机IP",
  "selfLoginIp": "您的登录IP",
  "showZeroScore": "显示 0 分",
  "hideZeroScore": "隐藏 0 分",
  "geoDraftOnly": "政策未启用 — 保存只写草稿，Nginx 不会执行，直到你勾选启用。",
  "geoNeedDb": "GeoIP 数据库丢失 - 首先更新 MMDB 文件",
  "uaNeedZones": "请先设定 Cloudflare zone",
  "selectAllCountriesWarn": "封锁名单模式下全选全部国家？这可能把本机与你的登录所在地一并封锁。",
  "badgeRecommendPreset": "以目前威胁水平，建议改用更强预设",
  "badgeAutomationOn": "自动化已开启",
  "badgeBanCount": "目前封锁数",
  "badgeGeoOn": "Geo 准入政策已启用",
  "badgeGeoNotReady": "GeoIP 数据库尚未就绪",
  "badgeIntelSignals": "目前计分的信号数",
  "signalActive": "运行中",
  "signalInactive": "未启用",
  "signalJails": "{{n}} 个 jail",
  "dbReadyHint": "已有 MMDB 文件",
  "dbNotReadyHint": "请先下载 GeoIP 数据库",
  "staleHint": "上次成功更新是否已超过 7 日",
  "draftBadge": "草稿",
  "banIsSelf": "此 IP 是目前面板来源或本机。",
  "banNotSelf": "此 IP 不是目前面板来源。",
  "geoSourceLocal": "本机 GeoIP 库（sapics + DB-IP）",
  "nginxPreviewHint": "此预设会写入的 Nginx 片段（仅预览）："
}
