HEX
Server: nginx/1.28.3
System: Linux ip-172-31-12-242 6.17.0-1007-aws #7~24.04.1-Ubuntu SMP Thu Jan 22 21:04:49 UTC 2026 x86_64
User: root (0)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/server/panel/BTPanel/static/js/index-legacy51.js
!function(){function e(e){return function(e){if(Array.isArray(e))return t(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,n){if(e){if("string"==typeof e)return t(e,n);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function n(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,t,a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.toStringTag||"@@toStringTag";function l(n,a,o,s){var l=a&&a.prototype instanceof u?a:u,c=Object.create(l.prototype);return r(c,"_invoke",function(n,r,a){var o,s,l,u=0,c=a||[],d=!1,f={p:0,n:0,v:e,a:m,f:m.bind(e,4),d:function(t,n){return o=t,s=0,l=e,f.n=n,i}};function m(n,r){for(s=n,l=r,t=0;!d&&u&&!a&&t<c.length;t++){var a,o=c[t],m=f.p,v=o[2];n>3?(a=v===r)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=m&&((a=n<2&&m<o[1])?(s=0,f.v=r,f.n=o[1]):m<v&&(a=n<3||o[0]>r||r>v)&&(o[4]=n,o[5]=r,f.n=v,s=0))}if(a||n>1)return i;throw d=!0,r}return function(a,c,v){if(u>1)throw TypeError("Generator is already running");for(d&&1===c&&m(c,v),s=c,l=v;(t=s<2?e:l)||!d;){o||(s?s<3?(s>1&&(f.n=-1),m(s,l)):f.n=l:f.v=l);try{if(u=2,o){if(s||(a="next"),t=o[a]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+a+"' method"),s=1);o=e}else if((t=(d=f.n<0)?l:n.call(r,f))!==i)break}catch(t){o=e,s=1,l=t}finally{u=1}}return{value:t,done:d}}}(n,o,s),!0),c}var i={};function u(){}function c(){}function d(){}t=Object.getPrototypeOf;var f=[][o]?t(t([][o]())):(r(t={},o,function(){return this}),t),m=d.prototype=u.prototype=Object.create(f);function v(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,r(e,s,"GeneratorFunction")),e.prototype=Object.create(m),e}return c.prototype=d,r(m,"constructor",d),r(d,"constructor",c),c.displayName="GeneratorFunction",r(d,s,"GeneratorFunction"),r(m),r(m,s,"Generator"),r(m,o,function(){return this}),r(m,"toString",function(){return"[object Generator]"}),(n=function(){return{w:l,m:v}})()}function r(e,t,n,a){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}r=function(e,t,n,a){function s(t,n){r(e,t,function(e){return this._invoke(t,n,e)})}t?o?o(e,t,{value:n,enumerable:!a,configurable:!a,writable:!a}):e[t]=n:(s("next",0),s("throw",1),s("return",2))},r(e,t,n,a)}function a(e,t,n,r,a,o,s){try{var l=e[o](s),i=l.value}catch(e){return void n(e)}l.done?t(i):Promise.resolve(i).then(r,a)}function o(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var s=e.apply(t,n);function l(e){a(s,r,o,l,i,"next",e)}function i(e){a(s,r,o,l,i,"throw",e)}l(void 0)})}}System.register(["./base-lib-legacy.js?v=1777008528","./index-legacy404.js?v=1777008528","./utils-lib-legacy.js?v=1777008528","./firewall-legacy.js?v=1777008528","./config-legacy.js?v=1777008528","./index-legacy3.js?v=1777008528","./useStore-legacy9.js?v=1777008528","./useController-legacy6.js?v=1777008528"],function(t,r){"use strict";var a,s,l,i,u,c,d,f,m,v,p,y,b,_,g,h,k,x,w,S,j,T,P,C,H,I,L,O,q,A,B,E,D,N,F,R,G,M,z,J,V,Q,W,U,K,Y,Z,$,X,ee,te,ne,re,ae,oe,se,le,ie,ue,ce,de,fe,me,ve,pe,ye,be,_e,ge,he,ke;return{setters:[function(e){a=e.r,s=e.n,l=e.bY,i=e.c,u=e.o,c=e.p,d=e.j,f=e.k,m=e.q,v=e.e,p=e.Q,y=e.v,b=e.x,_=e.F,g=e.B,h=e.s,k=e.A,x=e.y,w=e.w,S=e.L,j=e.C,T=e.b4,P=e.bC,C=e.aL,H=e.i,I=e.g,L=e.H,O=e.J,q=e.K,A=e.M,B=e.bM,E=e.bk},function(e){D=e.S},function(e){N=e.k,F=e.e,R=e._,G=e.e8,M=e.Q,z=e.I,J=e.f,V=e.w,Q=e.d_,W=e.a,U=e.cZ,K=e.R,Y=e.b,Z=e.c,$=e.da,X=e.c7,ee=e.cT},function(e){te=e.bL,ne=e.bF,re=e.bJ,ae=e.bE,oe=e.bG,se=e.bM,le=e.C,ie=e.g,ue=e.bD,ce=e.bN},function(e){de=e.a4},function(e){fe=e.p,me=e.O,ve=e.aQ},function(e){pe=e.g,ye=e.b},function(e){be=e.o,_e=e.g,ge=e.a,he=e.b,ke=e.i}],execute:function(){t("u",function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.selector,r=void 0===t?".config-card":t,a=e.container,i=void 0===a?null:a,u=e.duration,c=void 0===u?2e3:u,d=e.scrollBehavior,f=void 0===d?"smooth":d,m=e.borderWidth,v=void 0===m?"2px":m,p=e.block,y=void 0===p?"center":p;function b(){return b=o(n().m(function e(t){var a,o,u;return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,s();case 1:if(a=Ue(r,t)){e.n=2;break}return e.a(2,!1);case 2:return Ke(a,{container:i,behavior:f,block:y}),a.style.setProperty("--blink-border-width",v),a.classList.add("__blink__"),o=l(function(){a.offsetHeight},250),u=o.pause,window.setTimeout(function(){a.classList.remove("__blink__"),u(),a.style.removeProperty("--blink-color"),a.style.removeProperty("--blink-border-width")},c),e.a(2,!0)}},e)})),b.apply(this,arguments)}return function(){if("undefined"==typeof document)return;if(document.getElementById(We))return;var e=document.createElement("style");e.id=We,e.textContent="\n  @keyframes config-card-blink-border {\n    0%, 100% { box-shadow: 0 0 0 var(--blink-border-width, 2px) var(--el-color-primary, #20a53a); }\n    50% { box-shadow: 0 0 0 var(--blink-border-width, 2px) transparent; }\n  }\n  .config-card.__blink__ {\n    position: relative;\n    animation: config-card-blink-border 550ms step-end infinite;\n    transition: box-shadow 150ms ease;\n  }",document.head.appendChild(e)}(),{scrollToIndex:function(e){return b.apply(this,arguments)}}});var xe=J(),we=a(!1),Se=a([]),je=a(100),Te=a(0),Pe=a(""),Ce=a({}),He=t("m",a(12)),Ie=t("e",a(4)),Le=t("a",a({})),Oe=t("b",a({})),qe=t("i",a(!1)),Ae=t("k",a(!1)),Be=t("p",a(!1)),Ee=t("c",a({})),De=(t("B",function(e){null!=e&&e.security_data&&e.security_data.forEach(function(e){switch(e.suggest&&(Ee.value[e.name]=e.suggest),e.name){case"SSH默认端口":e.value&&"number"==typeof e.value&&(Ge.value=e.value.toString());break;case"密码复杂度策略":e.value&&"number"==typeof e.value?Ie.value=e.value:e.status?Ie.value=4:Ie.value=1;break;case"密码长度限制":e.value&&"number"==typeof e.value&&(He.value=e.value);break;case"SSH登录告警":Oe.value=e;break;case"SSH防爆破":qe.value=Boolean(e.status);break;case"面板登录告警":Le.value=e;break;case"面板登录动态口令认证":Ae.value=Boolean(e.status);break;case"未登录响应状态码":e.value&&"number"==typeof e.value&&(Fe.value=e.value);break;case"面板开启SSL":Be.value=Boolean(e.status);break;case"root登录设置":e.value&&"string"==typeof e.value&&(Re.value=e.value)}})}),t("f",o(n().m(function e(){var t,r,a,o,s,l,i,u;return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,N({loading:we,request:te(),data:{data:Object}});case 1:l=e.v,i=null!==(t=null!==(r=null==l?void 0:l.data)&&void 0!==r?r:l)&&void 0!==t?t:{},u=i.security_data||[],Ce.value=i||{},Se.value=u.map(function(e,t){return{id:t+1,title:e.name,description:e.desc,enabled:Boolean(e.status)}}),je.value=null!==(a=i.total_score)&&void 0!==a?a:100,Te.value=null!==(o=i.score)&&void 0!==o?o:0,Pe.value=null!==(s=i.score_text)&&void 0!==s?s:"",u.length>0&&u.forEach(function(e){switch(e.name){case"SSH登录告警":Oe.value=e;break;case"面板登录告警":Le.value=e}});case 2:return e.a(2)}},e)})))),Ne=function(e){F({component:function(){return R(function(){return r.import("./setting-legacy4.js?v=1777008528")},void 0,r.meta.url)},title:"安全配置",area:[70,80],compData:{configData:Ce.value,scrollToIndex:(null==e?void 0:e.id)||0}})},Fe=(t("C",function(){return(Math.floor(64536*Math.random())+1e3).toString()}),t("l",a(404))),Re=(t("r",a([{key:403,title:"403-拒绝访问"},{key:404,title:"404-页面不存在"},{key:416,title:"416-无效的请求"},{key:408,title:"408-客户端超时"},{key:400,title:"400-客户端请求错误"},{key:401,title:"401-未授权访问"}])),t("n",o(n().m(function e(){return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,N({loading:"正在设置未认证响应状态,请稍候...",request:de({status_code:Fe.value}),message:!0,success:function(){De()}});case 1:return e.a(2)}},e)}))),t("t",a("without-password"))),Ge=(t("q",o(n().m(function e(){return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,N({loading:"正在设置root登录,请稍后...",request:ne({p_type:Re.value}),message:!0,success:function(){De()}});case 1:return e.a(2)}},e)}))),t("s",a(""))),Me=(t("d",o(n().m(function e(){return n().w(function(e){for(;;)switch(e.n){case 0:if(G(Ge.value)){e.n=1;break}return xe.error("端口格式错误,可用范围:1-65535"),e.a(2);case 1:return e.n=2,N({loading:"正在保存SSH端口,请稍后...",request:re(Number(Ge.value)),message:!0,success:function(){De()}});case 2:return e.a(2)}},e)}))),t("A",a(!1))),ze=t("w",a("")),Je=(t("v",function(){var e=o(n().m(function e(t){var r;return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,N({loading:"正在获取密钥信息,请稍后...",request:ae()});case 1:r=e.v,t&&r.status?(ze.value=r.msg,Me.value=!0):window.open("/ssh_security?action=download_key","_blank","noopener,noreferrer");case 2:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}()),t("x",function(e){M({value:e})}),t("y",function(){window.open("/ssh_security?action=download_key","_blank","noopener,noreferrer")}),t("z",o(n().m(function e(){var t;return n().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,N({loading:"正在重新生成SSH登录密钥,请稍后...",request:oe({ssh:"yes",type:"ed25519"}),message:!0});case 1:return e.n=2,N({loading:"正在获取密钥信息,请稍后...",request:ae()});case 2:if((t=e.v).msg){e.n=3;break}return e.a(2,xe.msg({type:"warning",message:"请重新开启SSH密钥登录再查看密钥!"}));case 3:ze.value=t.msg;case 4:return e.a(2)}},e)}))),t("g",function(){var e=o(n().m(function e(t){var r;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,N({loading:"正在设置密码长度限制,请稍候...",request:se({data:JSON.stringify({name:"密码长度限制",args:{len:Number(He.value)}})}),message:!0,success:function(){De()}});case 1:e.n=3;break;case 2:e.p=2,r=e.v,console.error("设置密码长度失败:",r);case 3:return e.a(2)}},e,null,[[0,2]])}));return function(t){return e.apply(this,arguments)}}()),function(){var e=o(n().m(function e(t){var r;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,N({loading:"正在设置密码复杂度策略,请稍候...",request:se({data:JSON.stringify({name:"密码复杂度策略",args:{minclass:t}})}),message:!0,success:function(){De()}});case 1:e.n=3;break;case 2:e.p=2,r=e.v,console.error("设置密码复杂度失败:",r);case 3:return e.a(2)}},e,null,[[0,2]])}));return function(t){return e.apply(this,arguments)}}()),Ve=null,Qe=(t("h",function(e){Ve&&clearTimeout(Ve),Ve=setTimeout(function(){Je(e)},500)}),t("o",function(e,t){var n,a="panel"===e?"8":"7",o=null==t||null===(n=t.value)||void 0===n?void 0:n.status;F({title:o?"编辑告警任务":"配置告警任务",component:function(){return R(function(){return r.import("./index-legacy538.js?v=1777008528")},void 0,r.meta.url)},area:80,showFooter:!0,compData:{onRefresh:function(){return function(e){De(),console.log(Le.value,"type"),"panel"===e?Le.value.status=!0:Oe.value.status=!0}(e)},diyProcessTemplate:!0,diyProcessTemplateTid:[a],isEdit:o,row:o?t.value:null},onConfirm:function(e){}})}),t("j",function(){var e=o(n().m(function e(t){var r;return n().w(function(e){for(;;)switch(e.n){case 0:return qe.value=!t,e.n=1,N({request:z({sName:"fail2ban"})});case 1:if((r=e.v).data.setup){e.n=2;break}return fe({name:r.data.name,type:"i",pluginInfo:r.data}),xe.warn("请先安装防暴破插件"),e.a(2);case 2:return e.n=3,N({loading:"正在"+(t?"开启":"关闭")+"防暴破,请稍后...",request:le({act:t}),message:!0});case 3:qe.value=t,De();case 4:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}()),function(e){e.enabled||Ne(e)}),We="__config_card_blink_style__";function Ue(e,t){var n;if("undefined"==typeof document)return null;var r=Array.from(document.querySelectorAll(e));return r.length&&null!==(n=r[t])&&void 0!==n?n:null}function Ke(e,t){var n=t.container,r=t.behavior,a=t.block;if(n&&n!==window&&n!==document.documentElement){var o=e.getBoundingClientRect(),s=n.getBoundingClientRect(),l=n.scrollTop+(o.top-s.top)-(s.height/2-o.height/2);n.scrollTo({top:l,behavior:r})}else e.scrollIntoView({behavior:r,block:a,inline:"nearest"})}var Ye={key:0,class:"prot-record"},Ze={class:"flex items-center mb-[14px]"},$e={class:"title-wrapper flex items-center"},Xe={class:"prot-record__stats-grid"},et={class:"font-bold text-large"},tt={class:"text-small text-tertiary mt-[.8rem]"},nt={key:1,class:"prot-record flex items-center"},rt={class:"btn ml-auto"},at=i({__name:"index",emits:["loaded"],setup:function(t,s){var l=s.emit,i=me(),x=i.install,w=i.init,S=ve().compData,j=a(!0),T=a(!1),P=a(!1),C=function(){P.value||(P.value=!0,l("loaded"))},H=a([{title:"封锁的IP总数",value:"total_banned",num:0},{title:"连接失败总数",value:"total_failed",num:0},{title:"当前封锁IP数",value:"currently_banned",num:0},{title:"当前连接失败次数",value:"currently_failed",num:0}]);u(function(){I()});var I=function(){var e=o(n().m(function e(){var t,r,a;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,ie();case 1:if(t=e.v,r=t.data,j.value=r.fail2ban.installed,qe.value=Boolean(r.fail2ban.status),!j.value){e.n=2;break}return e.n=2,L();case 2:e.n=4;break;case 3:e.p=3,a=e.v,console.log(a);case 4:return e.p=4,C(),e.f(4);case 5:return e.a(2)}},e,null,[[0,3,4,5]])}));return function(){return e.apply(this,arguments)}}(),L=function(){var e=o(n().m(function e(){var t,r;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,T.value=!0,e.n=1,ue();case 1:t=e.v,H.value.forEach(function(e){e.num=Number(t.data[e.value])||0}),e.n=3;break;case 2:e.p=2,r=e.v,console.error("获取防暴破日志失败:",r);case 3:return e.p=3,T.value=!1,e.f(3);case 4:return e.a(2)}},e,null,[[0,2,3,4]])}));return function(){return e.apply(this,arguments)}}(),O=function(){var e=o(n().m(function e(t){var r,a;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,z({sName:"fail2ban"});case 1:if(r=e.v,(a=r.data).setup){e.n=6;break}return e.n=2,V({title:"安装SSH防爆破插件",width:"35rem",content:"安装SSH防爆破插件后,可以有效防止恶意登录尝试,是否继续安装?"});case 2:return e.n=3,ce({sName:"fail2ban",version:"2",min_version:"2"});case 3:return S.value={name:a.name,type:"i",pluginInfo:a},e.n=4,w();case 4:return e.n=5,x();case 5:e.n=7;break;case 6:t&&t();case 7:e.n=9;break;case 8:e.p=8,e.v;case 9:return e.a(2)}},e,null,[[0,8]])}));return function(t){return e.apply(this,arguments)}}(),q=function(){var e=o(n().m(function e(){return n().w(function(e){for(;;)switch(e.n){case 0:O(function(){return F({title:"防暴破日志",area:60,compData:{type:"AntiBlast",requestFn:function(){return ue()}},component:function(){return R(function(){return r.import("./index-legacy323.js?v=1777008528")},void 0,r.meta.url)}})});case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),A=function(){var e=o(n().m(function e(t){return n().w(function(e){for(;;)switch(e.n){case 0:return qe.value=!t,e.n=1,N({loading:"正在"+(t?"开启":"关闭")+"防暴破,请稍后...",request:le({act:t}),message:!0});case 1:qe.value=t,De();case 2:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}(),B=function(){var e=o(n().m(function e(){return n().w(function(e){for(;;)switch(e.n){case 0:O(function(){return F({title:"配置SSH防暴破",area:40,component:function(){return R(function(){return r.import("./anti-blast-view-legacy.js?v=1777008528")},void 0,r.meta.url)},showFooter:!0})});case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return function(t,n){var r=Q,a=W;return c(j)?(d(),f("div",Ye,[m("div",Ze,[m("div",$e,[n[3]||(n[3]=m("span",{class:"primary text-medium font-600"},"SSH防护",-1)),v(r,{modelValue:c(qe),"onUpdate:modelValue":n[0]||(n[0]=function(e){return p(qe)?qe.value=e:null}),class:"ml-4",onChange:n[1]||(n[1]=function(e){return A(e)})},null,8,["modelValue"]),v(a,{class:"ml-4",type:"primary",size:"small",onClick:B},{default:y(function(){return e(n[2]||(n[2]=[b(" 配置 ",-1)]))}),_:1})]),m("div",{class:"btn ml-auto"},[m("span",{class:"bt-link",onClick:q},"查看详情")])]),m("div",Xe,[(d(!0),f(_,null,g(c(H),function(e,t){return d(),f("div",{key:t,class:"item-box flex flex-col items-center px-[.8rem] py-[1.2rem]"},[m("span",et,h(e.num||0),1),m("span",tt,h(e.title),1)])}),128))])])):(d(),f("div",nt,[n[5]||(n[5]=k('<div class="icon-wrapper mr-4 h-[4.8rem] leading-[4.8rem]" data-v-aeec989d><i class="svgtofont-el-warning text-warning !text-[4.8rem]" data-v-aeec989d></i></div><div class="title-wrapper flex flex-col" data-v-aeec989d><span class="primary text-medium font-600 mb-2" data-v-aeec989d>SSH防爆破功能未安装</span><span class="secondary text-secondary text-small" data-v-aeec989d>安装SSH防爆破功能后,可以有效防止恶意登录尝试</span></div>',2)),m("div",rt,[v(a,{type:"primary",onClick:O},{default:y(function(){return e(n[4]||(n[4]=[b("安装SSH防爆破",-1)]))}),_:1})])]))}}}),ot=U(at,[["__scopeId","data-v-aeec989d"]]),st={class:"last-login flex flex-col"},lt={class:"msg-section flex flex-col gap-[16px]"},it={class:"msg-item p-[2rem]"},ut={class:"msg-title flex justify-between items-center"},ct={key:0,class:"status text-primary"},dt={class:"msg-content mt-4"},ft={class:"content-item ip"},mt={class:"content-item time"},vt={class:"content-item port"},pt={class:"msg-item p-[2rem]"},yt={class:"msg-title flex justify-between items-center"},bt={key:0,class:"status text-primary"},_t={class:"msg-content mt-4"},gt={class:"content-item ip"},ht={class:"content-item time"},kt={class:"content-item port"},xt=i({__name:"index",emits:["loaded"],setup:function(e,t){var r=t.emit,s=a({}),l=a({}),i=a(!1),v=function(){i.value||(i.value=!0,r("loaded"))},p=function(){var e=o(n().m(function e(){var t;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,y();case 1:return s.value=e.v,e.n=2,b();case 2:l.value=e.v,e.n=4;break;case 3:e.p=3,t=e.v,console.error("获取登录信息失败:",t);case 4:return e.p=4,v(),e.f(4);case 5:return e.a(2)}},e,null,[[0,3,4,5]])}));return function(){return e.apply(this,arguments)}}(),y=function(){var e=o(n().m(function e(){var t,r,a;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,t={search:"",p:1,limit:1,select:"Accepted",historyType:"All"},e.n=1,N({request:pe({data:JSON.stringify(t)}),data:{data:Array}});case 1:return r=e.v,e.a(2,r.data[0]||{});case 2:return e.p=2,a=e.v,console.error("获取SSH登录信息失败:",a),e.a(2,{})}},e,null,[[0,2]])}));return function(){return e.apply(this,arguments)}}(),b=function(){var e=o(n().m(function e(){var t,r,a;return n().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,t={search:"",limit:5,login_type:"1",page:1},e.n=1,N({request:ye(t),data:{data:Array}});case 1:return r=e.v,e.a(2,r.data[0]||{});case 2:return e.p=2,a=e.v,console.error("获取面板登录信息失败:",a),e.a(2,{})}},e,null,[[0,2]])}));return function(){return e.apply(this,arguments)}}();return u(function(){p()}),function(e,t){return d(),f("div",st,[t[2]||(t[2]=m("span",{class:"primary text-medium font-600 mb-[16px]"},"最后登录信息",-1)),m("div",lt,[m("div",it,[m("div",ut,[t[0]||(t[0]=m("span",{class:"text-base font-600 text-secondary h-[2rem] leading-[2rem]"},"SSH登录",-1)),s.value.status?(d(),f("span",ct,"成功")):x("",!0)]),m("div",dt,[m("span",ft,"IP:"+h(s.value.address||"-"),1),m("span",mt,"时间:"+h(s.value.time||"-"),1),m("span",vt,"端口:"+h(s.value.port||"-"),1)])]),m("div",pt,[m("div",yt,[t[1]||(t[1]=m("span",{class:"text-base font-600 text-secondary h-[2rem] leading-[2rem]"},"面板登录",-1)),l.value.login_type?(d(),f("span",bt,"成功")):x("",!0)]),m("div",_t,[m("span",gt,"IP:"+h(l.value.remote_addr||"-"),1),m("span",ht,"时间:"+h(l.value.login_time?c(K)(l.value.login_time):"-"),1),m("span",kt,"端口:"+h(l.value.remote_port||"-"),1)])])])])}}}),wt=U(xt,[["__scopeId","data-v-e245b4e6"]]),St={class:"sec-detect"},jt={class:"sec-head flex items-center mb-[16px]"},Tt={class:"sec-text text-base text-secondary ml-4"},Pt={class:"item-header flex"},Ct={class:"flex-shrink-0"},Ht={class:"item-content ml-4"},It={class:"text-base font-600"},Lt={class:"sec-desc text-small text-secondary mt-4"},Ot=U(i({__name:"index",emits:["loaded"],setup:function(e,t){var n=t.emit,r=a(!1),o=function(e){return e<=50?"text-danger":e>50&&e<80?"text-warning":"text-primary"};return w(function(){return we.value},function(e){e||r.value||(r.value=!0,n("loaded"))}),u(De),function(e,t){var n=Y,r=W,a=T,s=P;return d(),f("div",St,[m("div",jt,[t[2]||(t[2]=m("span",{class:"text-medium font-600"},"安全评分:",-1)),m("span",{class:S(["sec-score ml-2 text-large font-600",o(c(Te))])},h(c(Te))+"/"+h(c(je)),3),m("span",Tt,h(c(Pe)),1),v(r,{class:"ml-auto",type:"primary",onClick:t[0]||(t[0]=function(e){return c(Ne)()})},{default:y(function(){return[v(n,{icon:"el-setting",size:16,color:"#ffffff"}),t[1]||(t[1]=m("span",{class:"ml-2"},"安全配置",-1))]}),_:1})]),m("div",{class:S(["sec-body",{"min-h-[10rem]":c(we)}])},[v(s,{class:"mt-[1.2rem]",gutter:16},{default:y(function(){return[(d(!0),f(_,null,g(c(Se),function(e){return d(),j(a,{key:e.id,lg:6,xl:6,class:S(["!flex mb-[16px]",{"cursor-pointer":!e.enabled}]),onClick:function(t){return c(Qe)(e)}},{default:y(function(){return[m("div",{class:S(["security-item p-[2rem]",{"item-disabled":!e.enabled}])},[m("div",Pt,[m("div",Ct,[e.enabled?(d(),j(n,{key:0,icon:"el-success-filled",size:16,color:"#20a53a"})):(d(),j(n,{key:1,icon:"el-circle-close-filled",size:16,color:"#ef0808"}))]),m("div",Ht,[m("h3",It,h(e.title),1),m("p",Lt,h(e.description),1)])])],2)]}),_:2},1032,["class","onClick"])}),128))]}),_:1})],2)])}}}),[["__scopeId","data-v-2b1bcfe8"]]),qt={class:"recent-records-panel"},At={class:"flex items-center primary text-medium font-600 mb-[2rem] mt-2"};var Bt=i({__name:"index",props:{recordType:{default:"ssh"}},emits:["loaded"],setup:function(e,t){var n=t.emit,r=e,o=Z().adHideInfo,s=n,l="ssh"===r.recordType,i=C(),u=a(!1),p=$({request:function(e){return _e(e,l)},columns:[{label:"IP地址",prop:l?"address":"remote_addr",minWidth:100,render:function(e){var t,n=l?e.address:e.remote_addr;return l?v(X,{class:e.deny_status?"line-through !text-tertiary":"",onClick:function(){return ge(e)}},"function"==typeof(t=n)||"[object Object]"===Object.prototype.toString.call(t)&&!H(t)?n:{default:function(){return[n]}}):v("span",null,[n])}},{label:"登录时间",prop:l?"time":"login_time",minWidth:100,render:function(e){return l?e.time:K(e.login_time)}},{label:"端口",prop:l?"port":"remote_port"},{label:"状态",prop:l?"status":"login_type",render:function(e){var t=l?e.status:e.login_type;return v("span",{class:t?"text-primary":"text-danger"},[t?"成功":"失败"])}},{label:l?"用户":"浏览器",prop:l?"user":"user_agent",render:function(e){return l?e.user:he(e.user_agent)}}],extension:[ee(ke)]}),y=p.BtTable,_=p.config;return w(function(){return _.loading},function(e){e||u.value||(u.value=!0,s("loaded"))}),function(e,t){return d(),f("div",qt,[m("div",At,[b(h("ssh"===r.recordType?"SSH":"宝塔面板")+"最近5条登录记录 ",1),"ssh"!==r.recordType||c(o).firewallServerSsh?x("",!0):(d(),f("span",{key:0,class:"bt-link ml-auto",onClick:t[0]||(t[0]=function(e){return c(be)(c(i))})},"查看更多"))]),v(c(y))])}}}),Et={class:"info-section"},Dt={class:"item flex-col"},Nt={class:"module-ui module-ui--with-skeleton"},Ft={class:"module-skeleton__row"},Rt={class:"module-skeleton__list"},Gt={class:"module-real"},Mt={class:"module-ui module-ui--with-skeleton flex flex-col justify-center"},zt={class:"module-skeleton__header"},Jt={class:"module-skeleton__title-group"},Vt={class:"module-skeleton__row !mt-[1.4rem]"},Qt={class:"module-real"},Wt={class:"item flex-col"},Ut={class:"module-ui module-ui--with-skeleton"},Kt={class:"module-skeleton__title-group mb-[1.6rem]"},Yt={class:"module-skeleton__card-stack pb-[1rem]"},Zt={class:"module-real"},$t={class:"info-section mt-[16px]"},Xt={class:"item flex-col"},en={class:"module-ui module-ui--with-skeleton !pb-4"},tn={class:"module-skeleton__header"},nn={class:"module-skeleton__title-group"},rn={class:"security-item p-[2rem] skeleton w-full"},an={class:"item-header flex"},on={class:"item-content ml-4 flex flex-col gap-[0.6rem] w-full"},sn={class:"module-real"},ln={class:"info-section mt-[16px]"},un={class:"item flex-col"},cn={class:"module-ui module-ui--with-skeleton"},dn={class:"module-skeleton__title-group !flex-row justify-between mb-[2rem] mt-[.5rem] !h-[1.6rem]"},fn={class:"module-skeleton__table"},mn={class:"h-[22.2rem]"},vn={class:"module-real"},pn={class:"item flex-col"},yn={class:"module-ui module-ui--with-skeleton"},bn={class:"module-skeleton__title-group mb-[2rem] mt-[.5rem] !h-[1.6rem]"},_n={class:"module-skeleton__table"},gn={class:"h-[22.2rem]"},hn={class:"module-real"},kn=U(i({__name:"index",setup:function(e){var t=Z().globalTheme,n=I(function(){return"100%"===t.value.interface.container_width}),r=L({sshLoginStats:!0,protRecord:!0,lastLogin:!0,secDetect:!0,recentSsh:!0,recentPanel:!0}),a=function(e){r[e]&&(r[e]=!1)};return function(e,o){var s=B,l=E,i=T,u=P;return d(),f("div",{class:S(["firewall-server-safe",{"is-default-width":c(n)}]),style:A({"max-width":c(n)?void 0:c(t).interface.container_width})},[m("div",Et,[m("div",Dt,[m("div",Nt,[c(r).sshLoginStats?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--ssh flex"},{template:y(function(){return[m("div",Ft,[(d(),f(_,null,g(2,function(e){return v(s,{key:"ssh-card-".concat(e),variant:"rect",class:"module-skeleton__ssh-card"})}),64))]),m("div",Rt,[(d(),f(_,null,g(3,function(e){return v(s,{key:"ssh-line-".concat(e),variant:"text",class:"module-skeleton__line"})}),64))])]}),_:1})):x("",!0),O(m("div",Gt,[v(D,{onLoaded:o[0]||(o[0]=function(e){return a("sshLoginStats")})})],512),[[q,!c(r).sshLoginStats]])]),m("div",Mt,[c(r).protRecord?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--prot"},{template:y(function(){return[m("div",zt,[m("div",Jt,[v(s,{variant:"text",class:"module-skeleton__title !h-[3.2rem]"})]),v(s,{variant:"button",class:"module-skeleton__action"})]),m("div",Vt,[(d(),f(_,null,g(4,function(e){return v(s,{key:"prot-stat-".concat(e),variant:"rect",class:"module-skeleton__stat"})}),64))])]}),_:1})):x("",!0),O(m("div",Qt,[v(ot,{onLoaded:o[1]||(o[1]=function(e){return a("protRecord")})})],512),[[q,!c(r).protRecord]])])]),m("div",Wt,[m("div",Ut,[c(r).lastLogin?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--last"},{template:y(function(){return[m("div",Kt,[v(s,{variant:"text",class:"module-skeleton__title"})]),m("div",Yt,[(d(),f(_,null,g(2,function(e){return m("div",{key:"login-card-".concat(e),class:"module-skeleton__card !p-[2rem]"},[v(s,{variant:"text",class:"module-skeleton__title mb-[1rem]"}),v(s,{variant:"text",class:"module-skeleton__line"})])}),64))])]}),_:1})):x("",!0),O(m("div",Zt,[v(wt,{onLoaded:o[2]||(o[2]=function(e){return a("lastLogin")})})],512),[[q,!c(r).lastLogin]])])])]),m("div",$t,[m("div",Xt,[m("div",en,[c(r).secDetect?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--sec"},{template:y(function(){return[m("div",tn,[m("div",nn,[v(s,{variant:"text",class:"module-skeleton__title"}),v(s,{variant:"text",class:"module-skeleton__subtitle"})]),v(s,{variant:"button",class:"module-skeleton__action !w-[10rem]"})]),v(u,{class:"mt-[2.8rem]",gutter:16},{default:y(function(){return[(d(),f(_,null,g(10,function(e){return v(i,{key:"sec-skeleton-".concat(e),lg:6,xl:6,class:"!flex mb-[16px]"},{default:y(function(){return[m("div",rn,[m("div",an,[v(s,{variant:"image",class:"sec-skeleton__icon"}),m("div",on,[v(s,{variant:"text",class:"sec-skeleton__title"}),v(s,{variant:"text",class:"sec-skeleton__desc mt-[1rem]"})])])])]}),_:1})}),64))]}),_:1})]}),_:1})):x("",!0),O(m("div",sn,[v(Ot,{onLoaded:o[3]||(o[3]=function(e){return a("secDetect")})})],512),[[q,!c(r).secDetect]])])])]),m("div",ln,[m("div",un,[m("div",cn,[c(r).recentSsh?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--table"},{template:y(function(){return[m("div",dn,[v(s,{variant:"text",class:"module-skeleton__title"}),v(s,{variant:"text",class:"module-skeleton__subtitle !w-[6rem]"})]),m("div",fn,[m("div",mn,[v(s,{variant:"text",class:"module-skeleton__table-cell !h-full"})])])]}),_:1})):x("",!0),O(m("div",vn,[v(Bt,{recordType:"ssh",onLoaded:o[4]||(o[4]=function(e){return a("recentSsh")})})],512),[[q,!c(r).recentSsh]])])]),m("div",pn,[m("div",yn,[c(r).recentPanel?(d(),j(l,{key:0,animated:"",class:"module-skeleton module-skeleton--table"},{template:y(function(){return[m("div",bn,[v(s,{variant:"text",class:"module-skeleton__title"})]),m("div",_n,[m("div",gn,[v(s,{variant:"text",class:"module-skeleton__table-cell !h-full"})])])]}),_:1})):x("",!0),O(m("div",hn,[v(Bt,{recordType:"panel",onLoaded:o[5]||(o[5]=function(e){return a("recentPanel")})})],512),[[q,!c(r).recentPanel]])])])])],6)}}}),[["__scopeId","data-v-6113f123"]]),xn=Object.freeze(Object.defineProperty({__proto__:null,default:kn},Symbol.toStringTag,{value:"Module"}));t("D",xn)}}})}();