From ec8d1cf8ead09d4d95482fff4550635f0f587da8 Mon Sep 17 00:00:00 2001 From: annlev <71260515+annlev@users.noreply.github.com> Date: Thu, 16 May 2024 10:51:26 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20=20@=2094685?= =?UTF-8?q?a9f1bde97f5ab72e2456c84507fbe29ab74=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 4 ++-- assets/{app-99227ba7.js => app-c42bba2f.js} | 2 +- assets/index.html-1b0d342c.js | 1 + ...html-e8bc6294.js => index.html-6fcdce25.js} | 12 ++---------- assets/index.html-7c83ba27.js | 1 + assets/index.html-c0adceea.js | 1 - assets/index.html-c2cc080f.js | 1 - .../fips/index.html | 4 ++-- enterprise-support-for-almalinux/index.html | 14 +++----------- eportal-api/index.html | 4 ++-- eportal/index.html | 4 ++-- .../index.html | 4 ++-- extended-lifecycle-support/index.html | 4 ++-- images/esu_lifecycle_graph2.png | Bin 0 -> 207684 bytes index.html | 4 ++-- jp/eportal-api/index.html | 4 ++-- jp/eportal/index.html | 4 ++-- .../index.html | 4 ++-- jp/extended-lifecycle-support/index.html | 4 ++-- jp/index.html | 4 ++-- jp/linux-support-services/index.html | 4 ++-- jp/live-patching-services/index.html | 4 ++-- jp/tuxcare-cln/index.html | 4 ++-- jp/tuxcare/index.html | 4 ++-- kernelcare-for-iot/index.html | 4 ++-- live-patching-services/index.html | 4 ++-- local-mirror-els/index.html | 4 ++-- service-descriptions/index.html | 4 ++-- tuxcare-cln/index.html | 4 ++-- tuxcare/index.html | 6 +++--- 30 files changed, 53 insertions(+), 69 deletions(-) rename assets/{app-99227ba7.js => app-c42bba2f.js} (99%) create mode 100644 assets/index.html-1b0d342c.js rename assets/{index.html-e8bc6294.js => index.html-6fcdce25.js} (62%) create mode 100644 assets/index.html-7c83ba27.js delete mode 100644 assets/index.html-c0adceea.js delete mode 100644 assets/index.html-c2cc080f.js create mode 100644 images/esu_lifecycle_graph2.png diff --git a/404.html b/404.html index 0ef9e264..dbe7115f 100644 --- a/404.html +++ b/404.html @@ -39,10 +39,10 @@ })(); - +
- + diff --git a/assets/app-99227ba7.js b/assets/app-c42bba2f.js similarity index 99% rename from assets/app-99227ba7.js rename to assets/app-c42bba2f.js index 70928d4a..958458e7 100644 --- a/assets/app-99227ba7.js +++ b/assets/app-c42bba2f.js @@ -1,3 +1,3 @@ -import{d as T,r as k,a as at,b as rt,i as se,c as it,e as lt,f as nt,g as ve,h as ct,j as ut,o as J,k as E,l as z,m as C,_ as A,n,p as d,q as p,u as w,t as V,F as I,s as B,v as L,w as j,x as me,y as _e,R as dt,z as O,A as W,B as D,T as de,C as S,D as re,E as ie,G as pt,H as N,I as q,J as M,K as ue,L as ye,M as ht,N as Y,O as Q,P,Q as ft,S as G,U as Be,V as oe,W as vt,X as mt,Y as _t,Z as gt,$ as He,a0 as bt,a1 as yt,a2 as wt,a3 as St,a4 as Lt,a5 as Ot,a6 as Et}from"./framework-0ba8e1ea.js";const Dt="modulepreload",$t=function(e){return"/"+e},Ve={},b=function(t,s,o){if(!s||s.length===0)return t();const a=document.getElementsByTagName("link");return Promise.all(s.map(r=>{if(r=$t(r),r in Ve)return;Ve[r]=!0;const i=r.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(!!o)for(let f=a.length-1;f>=0;f--){const _=a[f];if(_.href===r&&(!i||_.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${r}"]${l}`))return;const u=document.createElement("link");if(u.rel=i?"stylesheet":Dt,i||(u.as="script",u.crossOrigin=""),u.href=r,document.head.appendChild(u),i)return new Promise((f,_)=>{u.addEventListener("load",f),u.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${r}`)))})})).then(()=>t())},Le={"v-8daa1a0e":()=>b(()=>import("./index.html-e8171bcc.js"),[]).then(({data:e})=>e),"v-b0d2ea62":()=>b(()=>import("./index.html-c0adceea.js"),[]).then(({data:e})=>e),"v-89bfb992":()=>b(()=>import("./index.html-1599dadb.js"),[]).then(({data:e})=>e),"v-1b6f4a0a":()=>b(()=>import("./index.html-ae0b2092.js"),[]).then(({data:e})=>e),"v-6c1fb884":()=>b(()=>import("./index.html-c9ed8c01.js"),[]).then(({data:e})=>e),"v-cadd6498":()=>b(()=>import("./index.html-3b4a4f38.js"),[]).then(({data:e})=>e),"v-2d0a9a10":()=>b(()=>import("./index.html-092f14d9.js"),[]).then(({data:e})=>e),"v-33720eeb":()=>b(()=>import("./index.html-e1c111f0.js"),[]).then(({data:e})=>e),"v-37e5fb86":()=>b(()=>import("./index.html-c3221071.js"),[]).then(({data:e})=>e),"v-534e2916":()=>b(()=>import("./index.html-5fda4ef8.js"),[]).then(({data:e})=>e),"v-c271a6b2":()=>b(()=>import("./index.html-448a5efa.js"),[]).then(({data:e})=>e),"v-2f5e7500":()=>b(()=>import("./index.html-6c9650cc.js"),[]).then(({data:e})=>e),"v-1f847a28":()=>b(()=>import("./index.html-55653af3.js"),[]).then(({data:e})=>e),"v-ec0cad0c":()=>b(()=>import("./index.html-d924646e.js"),[]).then(({data:e})=>e),"v-52e27964":()=>b(()=>import("./index.html-71fb4d10.js"),[]).then(({data:e})=>e),"v-c05bf2be":()=>b(()=>import("./index.html-bfb306f5.js"),[]).then(({data:e})=>e),"v-3d707372":()=>b(()=>import("./index.html-04265117.js"),[]).then(({data:e})=>e),"v-7d514c7d":()=>b(()=>import("./index.html-c09eba5b.js"),[]).then(({data:e})=>e),"v-50c7132c":()=>b(()=>import("./index.html-45ca0bbf.js"),[]).then(({data:e})=>e),"v-fd036ae2":()=>b(()=>import("./index.html-070c63b3.js"),[]).then(({data:e})=>e),"v-03bf6597":()=>b(()=>import("./index.html-270136ce.js"),[]).then(({data:e})=>e),"v-b8319282":()=>b(()=>import("./index.html-e424f433.js"),[]).then(({data:e})=>e),"v-3706649a":()=>b(()=>import("./404.html-e0575d4e.js"),[]).then(({data:e})=>e)},Vt=JSON.parse(`{"base":"/","lang":"en-US","title":"","description":"","head":[["script",{"type":"text/javascript","charset":"UTF-8","src":"//cdn.cookie-script.com/s/c9f81de32507a4fec1eb03ee80d0f0ed.js"}],["script",{"type":"text/javascript","id":"hs-script-loader","async":true,"defer":true,"src":"//js.hs-scripts.com/5408110.js"}],["script",{},"\\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\\n })(window,document,'script','dataLayer','GTM-5BSW555');\\n "],["script",{},"\\n (function() {\\n var routes = {\\"/almacare/\\":\\"/enterprise-support-for-almalinux/\\",\\"/service-descriptions/#almacare\\":\\"/enterprise-support-for-almalinux/#essential-and-enhanced-support\\",\\"/eportal/#almacare-cybersecurity-patch-management\\":\\"/eportal/#live-patching-for-almalinux-kernelcare-and-libcare-management\\",\\"/eportal/#deploying-almacare-almacare-cybersecurity\\":\\"/eportal/#deploying-essential-support-live-patching-for-almalinux\\"};\\n \\n for (var route_url in routes) {\\n if (window.location.href.indexOf(route_url) !== -1) {\\n window.location.href = routes[route_url];\\n }\\n }\\n })();\\n "],["script",{},"\\n (function() {\\n // Trigger the scroll event without actually scrolling\\n function triggerScrollEvent() {\\n const targetElement = window;\\n const scrollEvent = new Event('scroll', {\\n bubbles: true,\\n cancelable: true,\\n });\\n targetElement.dispatchEvent(scrollEvent);\\n }\\n \\n // Call the triggerScrollEvent and scrollBodyDown functions after the page is fully loaded\\n window.addEventListener('load', () => {\\n triggerScrollEvent();\\n });\\n })();\\n "]],"locales":{}}`),je={"v-8daa1a0e":T(()=>b(()=>import("./index.html-84b523eb.js"),["assets/index.html-84b523eb.js","assets/framework-0ba8e1ea.js"])),"v-b0d2ea62":T(()=>b(()=>import("./index.html-e8bc6294.js"),["assets/index.html-e8bc6294.js","assets/framework-0ba8e1ea.js"])),"v-89bfb992":T(()=>b(()=>import("./index.html-a34e31de.js"),["assets/index.html-a34e31de.js","assets/sso_eportal-cc19d109.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-1b6f4a0a":T(()=>b(()=>import("./index.html-246fd2e4.js"),["assets/index.html-246fd2e4.js","assets/framework-0ba8e1ea.js"])),"v-6c1fb884":T(()=>b(()=>import("./index.html-0274d014.js"),["assets/index.html-0274d014.js","assets/framework-0ba8e1ea.js"])),"v-cadd6498":T(()=>b(()=>import("./index.html-9231bd6d.js"),["assets/index.html-9231bd6d.js","assets/framework-0ba8e1ea.js"])),"v-2d0a9a10":T(()=>b(()=>import("./index.html-5be4a58a.js"),["assets/index.html-5be4a58a.js","assets/framework-0ba8e1ea.js"])),"v-33720eeb":T(()=>b(()=>import("./index.html-f8b8c896.js"),["assets/index.html-f8b8c896.js","assets/framework-0ba8e1ea.js"])),"v-37e5fb86":T(()=>b(()=>import("./index.html-1674ce5b.js"),["assets/index.html-1674ce5b.js","assets/uchecker-1c1dd1d7.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-534e2916":T(()=>b(()=>import("./index.html-777885c8.js"),["assets/index.html-777885c8.js","assets/framework-0ba8e1ea.js"])),"v-c271a6b2":T(()=>b(()=>import("./index.html-822dc78a.js"),["assets/index.html-822dc78a.js","assets/framework-0ba8e1ea.js"])),"v-2f5e7500":T(()=>b(()=>import("./index.html-c2cc080f.js"),["assets/index.html-c2cc080f.js","assets/framework-0ba8e1ea.js"])),"v-1f847a28":T(()=>b(()=>import("./index.html-f2b36c2b.js"),["assets/index.html-f2b36c2b.js","assets/reports-c7f76afe.js","assets/framework-0ba8e1ea.js"])),"v-ec0cad0c":T(()=>b(()=>import("./index.html-ace5d406.js"),["assets/index.html-ace5d406.js","assets/framework-0ba8e1ea.js"])),"v-52e27964":T(()=>b(()=>import("./index.html-8d266c0b.js"),["assets/index.html-8d266c0b.js","assets/sso_eportal-cc19d109.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-c05bf2be":T(()=>b(()=>import("./index.html-9421a492.js"),["assets/index.html-9421a492.js","assets/framework-0ba8e1ea.js"])),"v-3d707372":T(()=>b(()=>import("./index.html-3e49682f.js"),["assets/index.html-3e49682f.js","assets/framework-0ba8e1ea.js"])),"v-7d514c7d":T(()=>b(()=>import("./index.html-63522f32.js"),["assets/index.html-63522f32.js","assets/framework-0ba8e1ea.js"])),"v-50c7132c":T(()=>b(()=>import("./index.html-84c31207.js"),["assets/index.html-84c31207.js","assets/framework-0ba8e1ea.js"])),"v-fd036ae2":T(()=>b(()=>import("./index.html-08a78871.js"),["assets/index.html-08a78871.js","assets/uchecker-1c1dd1d7.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-03bf6597":T(()=>b(()=>import("./index.html-9a9ef1ef.js"),["assets/index.html-9a9ef1ef.js","assets/framework-0ba8e1ea.js"])),"v-b8319282":T(()=>b(()=>import("./index.html-c0147096.js"),["assets/index.html-c0147096.js","assets/reports-c7f76afe.js","assets/framework-0ba8e1ea.js"])),"v-3706649a":T(()=>b(()=>import("./404.html-3b82156f.js"),["assets/404.html-3b82156f.js","assets/framework-0ba8e1ea.js"]))};var kt=Symbol(""),xt=k(Le),Fe=at({key:"",path:"",title:"",lang:"",frontmatter:{},headers:[]}),X=k(Fe),Z=()=>X,We=Symbol(""),ne=()=>{const e=C(We);if(!e)throw new Error("usePageFrontmatter() is called without provider.");return e},Ne=Symbol(""),At=()=>{const e=C(Ne);if(!e)throw new Error("usePageHead() is called without provider.");return e},Tt=Symbol(""),Ge=Symbol(""),Ke=()=>{const e=C(Ge);if(!e)throw new Error("usePageLang() is called without provider.");return e},qe=Symbol(""),Pt=()=>{const e=C(qe);if(!e)throw new Error("usePageLayout() is called without provider.");return e},Ue=Symbol(""),ze=()=>{const e=C(Ue);if(!e)throw new Error("useRouteLocale() is called without provider.");return e},le=k(Vt),Ct=Symbol(""),Rt=Symbol(""),It="Layout",Mt="NotFound",U=rt({resolveLayouts:e=>e.reduce((t,s)=>({...t,...s.layouts}),{}),resolvePageData:async e=>{const t=xt.value[e];return await(t==null?void 0:t())??Fe},resolvePageFrontmatter:e=>e.frontmatter,resolvePageHead:(e,t,s)=>{const o=se(t.description)?t.description:s.description,a=[...it(t.head)?t.head:[],...s.head,["title",{},e],["meta",{name:"description",content:o}]];return lt(a)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(s=>!!s).join(" | "),resolvePageLang:e=>e.lang||"en",resolvePageLayout:(e,t)=>{let s;if(e.path){const o=e.frontmatter.layout;se(o)?s=o:s=It}else s=Mt;return t[s]},resolveRouteLocale:(e,t)=>nt(e,t),resolveSiteLocaleData:(e,t)=>({...e,...e.locales[t]})}),Bt=ve({name:"ClientOnly",setup(e,t){const s=k(!1);return J(()=>{s.value=!0}),()=>{var o,a;return s.value?(a=(o=t.slots).default)==null?void 0:a.call(o):null}}}),Ht=ve({name:"Content",props:{pageKey:{type:String,required:!1,default:""}},setup(e){const t=Z(),s=E(()=>je[e.pageKey||t.value.key]);return()=>s.value?z(s.value):z("div","404 Not Found")}}),jt=(e={})=>e,F=e=>ct(e)?e:`/${ut(e)}`;const Ft={enhance:({app:e})=>{}};function Wt(e){return{all:e=e||new Map,on:function(t,s){var o=e.get(t);o?o.push(s):e.set(t,[s])},off:function(t,s){var o=e.get(t);o&&(s?o.splice(o.indexOf(s)>>>0,1):e.set(t,[]))},emit:function(t,s){var o=e.get(t);o&&o.slice().map(function(a){a(s)}),(o=e.get("*"))&&o.slice().map(function(a){a(t,s)})}}}const Nt={class:"footer__img"},Gt=["href"],Kt=["src","alt"],qt={class:"footer-company-title"},Ut={class:"social"},zt={class:"social_links"},Jt=["href"],Xt={class:"footer-social-text"},Yt={class:"social-icons-wrapper"},Qt=["href"],Zt=["src"],es={__name:"Footer",setup(e){const{social:t,cloudlinuxSite:s,footerCustomLogo:o,footerCustomAltText:a,locales:r}=C("themeConfig"),i=ne(),l=E(()=>new Date().getFullYear()),c=E(()=>i.value.layout==="HomeLayout");return(u,f)=>(n(),d("div",{class:j(["footer",{"footer-default-layout":!c.value}])},[p("div",Nt,[p("a",{href:w(s)},[p("img",{src:w(F)(w(o)),alt:w(a)},null,8,Kt)],8,Gt)]),p("div",qt,V(l.value)+". CloudLinux Inc ",1),p("div",Ut,[p("div",zt,[(n(!0),d(I,null,B(w(r).bottomLinks,_=>(n(),d("a",{href:_.url,target:"_blank"},V(_.text),9,Jt))),256))]),p("span",Xt,V(w(r).stayInTouch),1),p("div",Yt,[(n(!0),d(I,null,B(w(t),_=>(n(),d("a",{class:"social-icons-link",href:_==null?void 0:_.url,target:"_blank"},[_.icon?(n(),d("img",{key:0,class:"social-icons-link-img",src:w(F)(_==null?void 0:_.icon),alt:"footer logo"},null,8,Zt)):L("v-if",!0)],8,Qt))),256))])])],2))}},pe=A(es,[["__scopeId","data-v-0190e83e"],["__file","Footer.vue"]]),Je={"/enterprise-support-for-almalinux/":[{collapsable:!1,children:["/enterprise-support-for-almalinux/","/enterprise-support-for-almalinux/fips/"]}],"/eportal/":[{collapsable:!1,children:["/eportal/","/eportal/general"]}],"/eportal-api/":[{collapsable:!1,children:["/eportal-api/"]}],"/extended-lifecycle-support/":[{collapsable:!1,children:["/extended-lifecycle-support/"]}],"/extended-lifecycle-support-for-languages/":[{collapsable:!1,children:["/extended-lifecycle-support-for-languages/"]}],"/jp/":[{collapsable:!1,children:["/jp/","/jp/eportal","/jp/eportal-api","/jp/extended-lifecycle-support","/jp/extended-lifecycle-support-for-languages","/jp/linux-support-services","/jp/live-patching-services","/jp/tuxcare","/jp/tuxcare-cln"]}],"/kernelcare-for-iot/":[{collapsable:!1,children:["/kernelcare-for-iot/"]}],"/live-patching-services/":[{collapsable:!1,children:["/live-patching-services/"]}],"/service-descriptions/":[{collapsable:!1,children:["/service-descriptions/"]}],"/tuxcare/":[{collapsable:!1,children:["/tuxcare/"]}],"/tuxcare-cln/":[{collapsable:!1,children:["/tuxcare-cln/"]}]},Oe=/#.*$/,ts=/\.(md|html)$/,te=/\/$/,we=/^(https?:|mailto:|tel:)/;function ae(e){return decodeURI(e).replace(Oe,"").replace(ts,"")}function ss(e){const t=e==null?void 0:e.match(Oe);if(t)return t[0]}function os(e){return we.test(e)}function as(e){if(os(e))return e;const t=e==null?void 0:e.match(Oe),s=t?t[0]:"",o=ae(e);return te.test(o)?e:o+".html"+s}function he(e,t){const s=e.hash,o=ss(t);if(o&&s!==o)return!1;const a=ae(e.path),r=ae(t);return a===r}function fe(e,t,s){s&&(t=rs(t,s));const o=ae(t);for(let a=0;aYe(r,s,o)):[]}function is(e){e=e.map(s=>Object.assign({},JSON.parse(JSON.stringify(s))));let t;return e.forEach(s=>{s.level!==1?t=s:t&&(t.children||(t.children=[])).push(s)}),e.filter(s=>s.level!==1)}function ls(e,t){if(Array.isArray(t))return{base:"/",config:t};for(const s in t)if(ns(e.path).indexOf(s)===0)return{base:s,config:t[s]};return null}function ns(e){return/(\.html|\/)$/.test(e)?e:e+"/"}function Ye(e,t,s,o){if(typeof e=="string")return fe(t,e,s);if(Array.isArray(e))return Object.assign(fe(t,e[0],s),{title:e[1]});{o&&console.error("[vuepress] Nested sidebar groups are not supported. Consider using navbar + categories instead.");const a=e.children||[];return{type:"group",title:e.title,children:a.map(r=>Ye(r,t,s,!0)),collapsable:e.collapsable!==!1}}}const cs={functional:!0,props:["item","closeSidebarDrawer"],render({item:e,closeSidebarDrawer:t}){var f,_;if(!e)return;const s=Z(),o=me(),a=_e(),r=he(o,e==null?void 0:e.path),i=(e==null?void 0:e.type)==="auto"?r||e.children.some(g=>he(o,e.basePath+"#"+g.slug)):r,l=us(z,e==null?void 0:e.path,e.title||(e==null?void 0:e.path),i,e.headers,t,a),c=((f=s.value.frontmatter)==null?void 0:f.sidebarDepth)!=null?(_=s.value.frontmatter)==null?void 0:_.sidebarDepth:5,u=c??1;if((e==null?void 0:e.type)==="auto")return[l,Se(z,e.children,e.basePath,o,u,1,t)];if(e.headers&&e.headers.length){const g=is(e.headers);return[l,Se(z,g,e==null?void 0:e.path,o,u,1,t)]}return Ee(z,e==null?void 0:e.path,e.title||(e==null?void 0:e.path),i,e.children,0,t)}};function Ee(e,t,s,o,a,r=0,i){const l=e(dt,{"data-anchor":t,to:t,activeClass:"",exactActiveClass:"",class:{active:o,"sidebar-link":!0,["link-depth-level-"+r]:!0}},()=>[s]);return e("div",{class:{active:o,collapsed:!0,"sidebar-link-container":!!(a!=null&&a.length)},onClick:c=>{c.target.classList.toggle("collapsed"),c.target.tagName!=="DIV"&&i()}},[l])}function us(e,t,s,o,a,r,i){const l=!!a&&a.some(c=>c.level!==1);return e("div",{class:{active:o,collapsed:o,"sidebar-header":!0,"sidebar-link":!0,"sidebar-header--empty":!l},onClick:c=>{const u=c.target.classList,f=c.target.querySelector("a");u.toggle("collapsed"),f&&i.push(f.getAttribute("href"))}},[Ee(e,t,s,o,null,0,r)])}function Se(e,t,s,o,a,r=1,i){return!t||r>a?null:e("ul",{class:"sidebar-sub-headers"},t.map(l=>{const c=he(o,s+"#"+l.slug);return e("li",{class:{collapsible:r<3,"sidebar-sub-header":!0}},[Ee(e,s+"#"+l.slug,l.title,c,l.children,r,i),Se(e,l.children,s,o,a,r+1,i)])}))}const Qe=A(cs,[["__file","SidebarLink.vue"]]);const ds={__name:"DropdownTransition",setup(e){const t=o=>{o.style.height=o.scrollHeight+"px"},s=o=>{o.style.height=""};return(o,a)=>(n(),O(de,{name:"dropdown",onEnter:t,onAfterEnter:s,onBeforeLeave:t},{default:W(()=>[D(o.$slots,"default")]),_:3}))}},ps=A(ds,[["__file","DropdownTransition.vue"]]);const hs={key:0,ref:"items",class:"sidebar-group-items"},fs={__name:"SidebarGroup",props:{item:{type:Object,required:!0},first:{type:Boolean,required:!0},open:{type:Boolean,required:!0},collapsable:{type:Boolean,required:!0},closeSidebarDrawer:{type:Function,default:()=>{}}},setup(e){return(t,s)=>(n(),d("div",{class:j(["sidebar-group",{first:e.first,collapsable:e.collapsable}])},[S(ps,null,{default:W(()=>{var o;return[e.open||!e.collapsable?(n(),d("ul",hs,[(n(!0),d(I,null,B((o=e.item)==null?void 0:o.children,a=>(n(),d("li",null,[S(Qe,{closeSidebarDrawer:e.closeSidebarDrawer,item:a},null,8,["closeSidebarDrawer","item"])]))),256))],512)):L("v-if",!0)]}),_:1})],2))}},vs=A(fs,[["__file","SidebarGroup.vue"]]);const ms={class:"sidebar"},_s={key:0,class:"sidebar-links"},gs={__name:"Sidebar",props:{items:{type:Array,required:!0},closeSidebarDrawer:{type:Function,default:()=>{}},isMobileWidth:{type:Boolean}},setup(e){const t=e,s=E(()=>t.items),o=me(),a=Z(),r=E(()=>Xe(a.value,o,s.value)),i=k(0),l=()=>{const h=_(o,t.items);h>-1&&(i.value=h)},c=h=>{i.value=h===i.value?-1:h},u=h=>{const v=h.getBoundingClientRect();return v.top>=0&&v.left>=0&&v.bottom<=(window.innerHeight/2||document.documentElement.clientHeight/2)&&v.right<=(window.innerWidth||document.documentElement.clientWidth)};re(()=>o,l);const f=()=>{const h=document.querySelectorAll(".header-anchor"),v=document.querySelector(".sidebar"),m=v.querySelectorAll("a"),y=v.querySelectorAll(".collapsible.sidebar-sub-header"),x=Array.from(m).map($=>$.getAttribute("data-anchor"));h.forEach($=>{$.getAttribute("data-anchor")||$.setAttribute("data-anchor",a.value.path+$.hash)}),h.forEach($=>{if(u($)){const H=x.find(R=>R===$.getAttribute("data-anchor"));y.forEach(R=>{R.querySelectorAll(".sidebar-link-container").forEach(K=>{R.querySelector(`a[data-anchor="${H}"]`)?K.classList.remove("collapsed"):K.classList.add("collapsed")})}),v.querySelector(`a[data-anchor="${H}"]`)&&(m.forEach(R=>R.classList.remove("active")),v.querySelector(`a[data-anchor="${H}"]`).classList.add("active"))}})},_=(h,v)=>{for(let m=0;mhe(h,x.path)))return m}return-1},g=()=>{const h=window.location.hash,v=document.querySelectorAll(".sidebar a");v.forEach(m=>{if(m.getAttribute("data-anchor")===h){v.forEach(x=>x.classList.remove("active")),m.classList.add("active");const y=m.closest(".collapsible");y&&y.classList.remove("collapsed")}})};return J(()=>{l(),t.isMobileWidth||window.addEventListener("scroll",f),t.isMobileWidth||window.addEventListener("resize",f),window.addEventListener("hashchange",g)}),ie(()=>{window.removeEventListener("scroll",f),window.removeEventListener("resize",f),window.removeEventListener("hashchange",g)}),(h,v)=>(n(),d("div",ms,[D(h.$slots,"top"),r.value.length?(n(),d("ul",_s,[(n(!0),d(I,null,B(r.value,(m,y)=>(n(),d("li",{key:y},[m.type==="group"?(n(),O(vs,{key:0,item:m,first:y===0,open:y===i.value,closeSidebarDrawer:e.closeSidebarDrawer,collapsable:!!(m.collapsable||m.collapsible),onToggle:x=>c(y)},null,8,["item","first","open","closeSidebarDrawer","collapsable","onToggle"])):(n(),O(Qe,{key:1,closeSidebarDrawer:e.closeSidebarDrawer,item:m},null,8,["closeSidebarDrawer","item"]))]))),128))])):L("v-if",!0),D(h.$slots,"bottom")]))}},Ze=A(gs,[["__file","Sidebar.vue"]]);var bs=Object.defineProperty,ys=Object.defineProperties,ws=Object.getOwnPropertyDescriptors,ke=Object.getOwnPropertySymbols,Ss=Object.prototype.hasOwnProperty,Ls=Object.prototype.propertyIsEnumerable,xe=(e,t,s)=>t in e?bs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,ee=(e,t)=>{for(var s in t||(t={}))Ss.call(t,s)&&xe(e,s,t[s]);if(ke)for(var s of ke(t))Ls.call(t,s)&&xe(e,s,t[s]);return e},Ae=(e,t)=>ys(e,ws(t));const Os={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer(){this.autoscroll&&this.maybeAdjustScroll()},open(e){this.autoscroll&&e&&this.$nextTick(()=>this.maybeAdjustScroll())}},methods:{maybeAdjustScroll(){var e;const t=((e=this.$refs.dropdownMenu)==null?void 0:e.children[this.typeAheadPointer])||!1;if(t){const s=this.getDropdownViewport(),{top:o,bottom:a,height:r}=t.getBoundingClientRect();if(os.bottom)return this.$refs.dropdownMenu.scrollTop=t.offsetTop-(s.height-r)}},getDropdownViewport(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},Es={data(){return{typeAheadPointer:-1}},watch:{filteredOptions(){for(let e=0;e=0;e--)if(this.selectable(this.filteredOptions[e])){this.typeAheadPointer=e;break}},typeAheadDown(){for(let e=this.typeAheadPointer+1;e{const s=e.__vccOpts||e;for(const[o,a]of t)s[o]=a;return s},$s={},Vs={xmlns:"http://www.w3.org/2000/svg",width:"10",height:"10"},ks=p("path",{d:"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z"},null,-1),xs=[ks];function As(e,t){return n(),d("svg",Vs,xs)}const Ts=De($s,[["render",As]]),Ps={},Cs={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"10"},Rs=p("path",{d:"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z"},null,-1),Is=[Rs];function Ms(e,t){return n(),d("svg",Cs,Is)}const Bs=De(Ps,[["render",Ms]]),Te={Deselect:Ts,OpenIndicator:Bs},Hs={mounted(e,{instance:t}){if(t.appendToBody){const{height:s,top:o,left:a,width:r}=t.$refs.toggle.getBoundingClientRect();let i=window.scrollX||window.pageXOffset,l=window.scrollY||window.pageYOffset;e.unbindPosition=t.calculatePosition(e,t,{width:r+"px",left:i+a+"px",top:l+o+s+"px"}),document.body.appendChild(e)}},unmounted(e,{instance:t}){t.appendToBody&&(e.unbindPosition&&typeof e.unbindPosition=="function"&&e.unbindPosition(),e.parentNode&&e.parentNode.removeChild(e))}};function js(e){const t={};return Object.keys(e).sort().forEach(s=>{t[s]=e[s]}),JSON.stringify(t)}let Fs=0;function Ws(){return++Fs}const Ns={components:ee({},Te),directives:{appendToBody:Hs},mixins:[Os,Es,Ds],compatConfig:{MODE:3},emits:["open","close","update:modelValue","search","search:compositionstart","search:compositionend","search:keydown","search:blur","search:focus","search:input","option:created","option:selecting","option:selected","option:deselecting","option:deselected"],props:{modelValue:{},components:{type:Object,default:()=>({})},options:{type:Array,default(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},deselectFromDropdown:{type:Boolean,default:!1},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:""},transition:{type:String,default:"vs__fade"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:"label"},autocomplete:{type:String,default:"off"},reduce:{type:Function,default:e=>e},selectable:{type:Function,default:e=>!0},getOptionLabel:{type:Function,default(e){return typeof e=="object"?e.hasOwnProperty(this.label)?e[this.label]:console.warn(`[vue-select warn]: Label key "option.${this.label}" does not exist in options object ${JSON.stringify(e)}. +import{d as T,r as k,a as at,b as rt,i as se,c as it,e as lt,f as nt,g as ve,h as ct,j as ut,o as J,k as E,l as z,m as C,_ as A,n,p as d,q as p,u as w,t as V,F as I,s as B,v as L,w as j,x as me,y as _e,R as dt,z as O,A as W,B as D,T as de,C as S,D as re,E as ie,G as pt,H as N,I as q,J as M,K as ue,L as ye,M as ht,N as Y,O as Q,P,Q as ft,S as G,U as Be,V as oe,W as vt,X as mt,Y as _t,Z as gt,$ as He,a0 as bt,a1 as yt,a2 as wt,a3 as St,a4 as Lt,a5 as Ot,a6 as Et}from"./framework-0ba8e1ea.js";const Dt="modulepreload",$t=function(e){return"/"+e},Ve={},b=function(t,s,o){if(!s||s.length===0)return t();const a=document.getElementsByTagName("link");return Promise.all(s.map(r=>{if(r=$t(r),r in Ve)return;Ve[r]=!0;const i=r.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(!!o)for(let f=a.length-1;f>=0;f--){const _=a[f];if(_.href===r&&(!i||_.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${r}"]${l}`))return;const u=document.createElement("link");if(u.rel=i?"stylesheet":Dt,i||(u.as="script",u.crossOrigin=""),u.href=r,document.head.appendChild(u),i)return new Promise((f,_)=>{u.addEventListener("load",f),u.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${r}`)))})})).then(()=>t())},Le={"v-8daa1a0e":()=>b(()=>import("./index.html-e8171bcc.js"),[]).then(({data:e})=>e),"v-b0d2ea62":()=>b(()=>import("./index.html-1b0d342c.js"),[]).then(({data:e})=>e),"v-89bfb992":()=>b(()=>import("./index.html-1599dadb.js"),[]).then(({data:e})=>e),"v-1b6f4a0a":()=>b(()=>import("./index.html-ae0b2092.js"),[]).then(({data:e})=>e),"v-6c1fb884":()=>b(()=>import("./index.html-c9ed8c01.js"),[]).then(({data:e})=>e),"v-cadd6498":()=>b(()=>import("./index.html-3b4a4f38.js"),[]).then(({data:e})=>e),"v-2d0a9a10":()=>b(()=>import("./index.html-092f14d9.js"),[]).then(({data:e})=>e),"v-33720eeb":()=>b(()=>import("./index.html-e1c111f0.js"),[]).then(({data:e})=>e),"v-37e5fb86":()=>b(()=>import("./index.html-c3221071.js"),[]).then(({data:e})=>e),"v-534e2916":()=>b(()=>import("./index.html-5fda4ef8.js"),[]).then(({data:e})=>e),"v-c271a6b2":()=>b(()=>import("./index.html-448a5efa.js"),[]).then(({data:e})=>e),"v-2f5e7500":()=>b(()=>import("./index.html-6c9650cc.js"),[]).then(({data:e})=>e),"v-1f847a28":()=>b(()=>import("./index.html-55653af3.js"),[]).then(({data:e})=>e),"v-ec0cad0c":()=>b(()=>import("./index.html-d924646e.js"),[]).then(({data:e})=>e),"v-52e27964":()=>b(()=>import("./index.html-71fb4d10.js"),[]).then(({data:e})=>e),"v-c05bf2be":()=>b(()=>import("./index.html-bfb306f5.js"),[]).then(({data:e})=>e),"v-3d707372":()=>b(()=>import("./index.html-04265117.js"),[]).then(({data:e})=>e),"v-7d514c7d":()=>b(()=>import("./index.html-c09eba5b.js"),[]).then(({data:e})=>e),"v-50c7132c":()=>b(()=>import("./index.html-45ca0bbf.js"),[]).then(({data:e})=>e),"v-fd036ae2":()=>b(()=>import("./index.html-070c63b3.js"),[]).then(({data:e})=>e),"v-03bf6597":()=>b(()=>import("./index.html-270136ce.js"),[]).then(({data:e})=>e),"v-b8319282":()=>b(()=>import("./index.html-e424f433.js"),[]).then(({data:e})=>e),"v-3706649a":()=>b(()=>import("./404.html-e0575d4e.js"),[]).then(({data:e})=>e)},Vt=JSON.parse(`{"base":"/","lang":"en-US","title":"","description":"","head":[["script",{"type":"text/javascript","charset":"UTF-8","src":"//cdn.cookie-script.com/s/c9f81de32507a4fec1eb03ee80d0f0ed.js"}],["script",{"type":"text/javascript","id":"hs-script-loader","async":true,"defer":true,"src":"//js.hs-scripts.com/5408110.js"}],["script",{},"\\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\\n })(window,document,'script','dataLayer','GTM-5BSW555');\\n "],["script",{},"\\n (function() {\\n var routes = {\\"/almacare/\\":\\"/enterprise-support-for-almalinux/\\",\\"/service-descriptions/#almacare\\":\\"/enterprise-support-for-almalinux/#essential-and-enhanced-support\\",\\"/eportal/#almacare-cybersecurity-patch-management\\":\\"/eportal/#live-patching-for-almalinux-kernelcare-and-libcare-management\\",\\"/eportal/#deploying-almacare-almacare-cybersecurity\\":\\"/eportal/#deploying-essential-support-live-patching-for-almalinux\\"};\\n \\n for (var route_url in routes) {\\n if (window.location.href.indexOf(route_url) !== -1) {\\n window.location.href = routes[route_url];\\n }\\n }\\n })();\\n "],["script",{},"\\n (function() {\\n // Trigger the scroll event without actually scrolling\\n function triggerScrollEvent() {\\n const targetElement = window;\\n const scrollEvent = new Event('scroll', {\\n bubbles: true,\\n cancelable: true,\\n });\\n targetElement.dispatchEvent(scrollEvent);\\n }\\n \\n // Call the triggerScrollEvent and scrollBodyDown functions after the page is fully loaded\\n window.addEventListener('load', () => {\\n triggerScrollEvent();\\n });\\n })();\\n "]],"locales":{}}`),je={"v-8daa1a0e":T(()=>b(()=>import("./index.html-5be4a58a.js"),["assets/index.html-5be4a58a.js","assets/framework-0ba8e1ea.js"])),"v-b0d2ea62":T(()=>b(()=>import("./index.html-6fcdce25.js"),["assets/index.html-6fcdce25.js","assets/framework-0ba8e1ea.js"])),"v-89bfb992":T(()=>b(()=>import("./index.html-a34e31de.js"),["assets/index.html-a34e31de.js","assets/sso_eportal-cc19d109.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-1b6f4a0a":T(()=>b(()=>import("./index.html-246fd2e4.js"),["assets/index.html-246fd2e4.js","assets/framework-0ba8e1ea.js"])),"v-6c1fb884":T(()=>b(()=>import("./index.html-0274d014.js"),["assets/index.html-0274d014.js","assets/framework-0ba8e1ea.js"])),"v-cadd6498":T(()=>b(()=>import("./index.html-9231bd6d.js"),["assets/index.html-9231bd6d.js","assets/framework-0ba8e1ea.js"])),"v-2d0a9a10":T(()=>b(()=>import("./index.html-84b523eb.js"),["assets/index.html-84b523eb.js","assets/framework-0ba8e1ea.js"])),"v-33720eeb":T(()=>b(()=>import("./index.html-f8b8c896.js"),["assets/index.html-f8b8c896.js","assets/framework-0ba8e1ea.js"])),"v-37e5fb86":T(()=>b(()=>import("./index.html-1674ce5b.js"),["assets/index.html-1674ce5b.js","assets/uchecker-1c1dd1d7.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-534e2916":T(()=>b(()=>import("./index.html-777885c8.js"),["assets/index.html-777885c8.js","assets/framework-0ba8e1ea.js"])),"v-c271a6b2":T(()=>b(()=>import("./index.html-822dc78a.js"),["assets/index.html-822dc78a.js","assets/framework-0ba8e1ea.js"])),"v-2f5e7500":T(()=>b(()=>import("./index.html-7c83ba27.js"),["assets/index.html-7c83ba27.js","assets/framework-0ba8e1ea.js"])),"v-1f847a28":T(()=>b(()=>import("./index.html-f2b36c2b.js"),["assets/index.html-f2b36c2b.js","assets/reports-c7f76afe.js","assets/framework-0ba8e1ea.js"])),"v-ec0cad0c":T(()=>b(()=>import("./index.html-ace5d406.js"),["assets/index.html-ace5d406.js","assets/framework-0ba8e1ea.js"])),"v-52e27964":T(()=>b(()=>import("./index.html-8d266c0b.js"),["assets/index.html-8d266c0b.js","assets/sso_eportal-cc19d109.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-c05bf2be":T(()=>b(()=>import("./index.html-9421a492.js"),["assets/index.html-9421a492.js","assets/framework-0ba8e1ea.js"])),"v-3d707372":T(()=>b(()=>import("./index.html-3e49682f.js"),["assets/index.html-3e49682f.js","assets/framework-0ba8e1ea.js"])),"v-7d514c7d":T(()=>b(()=>import("./index.html-63522f32.js"),["assets/index.html-63522f32.js","assets/framework-0ba8e1ea.js"])),"v-50c7132c":T(()=>b(()=>import("./index.html-84c31207.js"),["assets/index.html-84c31207.js","assets/framework-0ba8e1ea.js"])),"v-fd036ae2":T(()=>b(()=>import("./index.html-08a78871.js"),["assets/index.html-08a78871.js","assets/uchecker-1c1dd1d7.js","assets/eportal-qemu-feed-7c9efdb9.js","assets/framework-0ba8e1ea.js"])),"v-03bf6597":T(()=>b(()=>import("./index.html-9a9ef1ef.js"),["assets/index.html-9a9ef1ef.js","assets/framework-0ba8e1ea.js"])),"v-b8319282":T(()=>b(()=>import("./index.html-c0147096.js"),["assets/index.html-c0147096.js","assets/reports-c7f76afe.js","assets/framework-0ba8e1ea.js"])),"v-3706649a":T(()=>b(()=>import("./404.html-3b82156f.js"),["assets/404.html-3b82156f.js","assets/framework-0ba8e1ea.js"]))};var kt=Symbol(""),xt=k(Le),Fe=at({key:"",path:"",title:"",lang:"",frontmatter:{},headers:[]}),X=k(Fe),Z=()=>X,We=Symbol(""),ne=()=>{const e=C(We);if(!e)throw new Error("usePageFrontmatter() is called without provider.");return e},Ne=Symbol(""),At=()=>{const e=C(Ne);if(!e)throw new Error("usePageHead() is called without provider.");return e},Tt=Symbol(""),Ge=Symbol(""),Ke=()=>{const e=C(Ge);if(!e)throw new Error("usePageLang() is called without provider.");return e},qe=Symbol(""),Pt=()=>{const e=C(qe);if(!e)throw new Error("usePageLayout() is called without provider.");return e},Ue=Symbol(""),ze=()=>{const e=C(Ue);if(!e)throw new Error("useRouteLocale() is called without provider.");return e},le=k(Vt),Ct=Symbol(""),Rt=Symbol(""),It="Layout",Mt="NotFound",U=rt({resolveLayouts:e=>e.reduce((t,s)=>({...t,...s.layouts}),{}),resolvePageData:async e=>{const t=xt.value[e];return await(t==null?void 0:t())??Fe},resolvePageFrontmatter:e=>e.frontmatter,resolvePageHead:(e,t,s)=>{const o=se(t.description)?t.description:s.description,a=[...it(t.head)?t.head:[],...s.head,["title",{},e],["meta",{name:"description",content:o}]];return lt(a)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(s=>!!s).join(" | "),resolvePageLang:e=>e.lang||"en",resolvePageLayout:(e,t)=>{let s;if(e.path){const o=e.frontmatter.layout;se(o)?s=o:s=It}else s=Mt;return t[s]},resolveRouteLocale:(e,t)=>nt(e,t),resolveSiteLocaleData:(e,t)=>({...e,...e.locales[t]})}),Bt=ve({name:"ClientOnly",setup(e,t){const s=k(!1);return J(()=>{s.value=!0}),()=>{var o,a;return s.value?(a=(o=t.slots).default)==null?void 0:a.call(o):null}}}),Ht=ve({name:"Content",props:{pageKey:{type:String,required:!1,default:""}},setup(e){const t=Z(),s=E(()=>je[e.pageKey||t.value.key]);return()=>s.value?z(s.value):z("div","404 Not Found")}}),jt=(e={})=>e,F=e=>ct(e)?e:`/${ut(e)}`;const Ft={enhance:({app:e})=>{}};function Wt(e){return{all:e=e||new Map,on:function(t,s){var o=e.get(t);o?o.push(s):e.set(t,[s])},off:function(t,s){var o=e.get(t);o&&(s?o.splice(o.indexOf(s)>>>0,1):e.set(t,[]))},emit:function(t,s){var o=e.get(t);o&&o.slice().map(function(a){a(s)}),(o=e.get("*"))&&o.slice().map(function(a){a(t,s)})}}}const Nt={class:"footer__img"},Gt=["href"],Kt=["src","alt"],qt={class:"footer-company-title"},Ut={class:"social"},zt={class:"social_links"},Jt=["href"],Xt={class:"footer-social-text"},Yt={class:"social-icons-wrapper"},Qt=["href"],Zt=["src"],es={__name:"Footer",setup(e){const{social:t,cloudlinuxSite:s,footerCustomLogo:o,footerCustomAltText:a,locales:r}=C("themeConfig"),i=ne(),l=E(()=>new Date().getFullYear()),c=E(()=>i.value.layout==="HomeLayout");return(u,f)=>(n(),d("div",{class:j(["footer",{"footer-default-layout":!c.value}])},[p("div",Nt,[p("a",{href:w(s)},[p("img",{src:w(F)(w(o)),alt:w(a)},null,8,Kt)],8,Gt)]),p("div",qt,V(l.value)+". CloudLinux Inc ",1),p("div",Ut,[p("div",zt,[(n(!0),d(I,null,B(w(r).bottomLinks,_=>(n(),d("a",{href:_.url,target:"_blank"},V(_.text),9,Jt))),256))]),p("span",Xt,V(w(r).stayInTouch),1),p("div",Yt,[(n(!0),d(I,null,B(w(t),_=>(n(),d("a",{class:"social-icons-link",href:_==null?void 0:_.url,target:"_blank"},[_.icon?(n(),d("img",{key:0,class:"social-icons-link-img",src:w(F)(_==null?void 0:_.icon),alt:"footer logo"},null,8,Zt)):L("v-if",!0)],8,Qt))),256))])])],2))}},pe=A(es,[["__scopeId","data-v-0190e83e"],["__file","Footer.vue"]]),Je={"/enterprise-support-for-almalinux/":[{collapsable:!1,children:["/enterprise-support-for-almalinux/","/enterprise-support-for-almalinux/fips/"]}],"/eportal/":[{collapsable:!1,children:["/eportal/","/eportal/general"]}],"/eportal-api/":[{collapsable:!1,children:["/eportal-api/"]}],"/extended-lifecycle-support/":[{collapsable:!1,children:["/extended-lifecycle-support/"]}],"/extended-lifecycle-support-for-languages/":[{collapsable:!1,children:["/extended-lifecycle-support-for-languages/"]}],"/jp/":[{collapsable:!1,children:["/jp/","/jp/eportal","/jp/eportal-api","/jp/extended-lifecycle-support","/jp/extended-lifecycle-support-for-languages","/jp/linux-support-services","/jp/live-patching-services","/jp/tuxcare","/jp/tuxcare-cln"]}],"/kernelcare-for-iot/":[{collapsable:!1,children:["/kernelcare-for-iot/"]}],"/live-patching-services/":[{collapsable:!1,children:["/live-patching-services/"]}],"/service-descriptions/":[{collapsable:!1,children:["/service-descriptions/"]}],"/tuxcare/":[{collapsable:!1,children:["/tuxcare/"]}],"/tuxcare-cln/":[{collapsable:!1,children:["/tuxcare-cln/"]}]},Oe=/#.*$/,ts=/\.(md|html)$/,te=/\/$/,we=/^(https?:|mailto:|tel:)/;function ae(e){return decodeURI(e).replace(Oe,"").replace(ts,"")}function ss(e){const t=e==null?void 0:e.match(Oe);if(t)return t[0]}function os(e){return we.test(e)}function as(e){if(os(e))return e;const t=e==null?void 0:e.match(Oe),s=t?t[0]:"",o=ae(e);return te.test(o)?e:o+".html"+s}function he(e,t){const s=e.hash,o=ss(t);if(o&&s!==o)return!1;const a=ae(e.path),r=ae(t);return a===r}function fe(e,t,s){s&&(t=rs(t,s));const o=ae(t);for(let a=0;aYe(r,s,o)):[]}function is(e){e=e.map(s=>Object.assign({},JSON.parse(JSON.stringify(s))));let t;return e.forEach(s=>{s.level!==1?t=s:t&&(t.children||(t.children=[])).push(s)}),e.filter(s=>s.level!==1)}function ls(e,t){if(Array.isArray(t))return{base:"/",config:t};for(const s in t)if(ns(e.path).indexOf(s)===0)return{base:s,config:t[s]};return null}function ns(e){return/(\.html|\/)$/.test(e)?e:e+"/"}function Ye(e,t,s,o){if(typeof e=="string")return fe(t,e,s);if(Array.isArray(e))return Object.assign(fe(t,e[0],s),{title:e[1]});{o&&console.error("[vuepress] Nested sidebar groups are not supported. Consider using navbar + categories instead.");const a=e.children||[];return{type:"group",title:e.title,children:a.map(r=>Ye(r,t,s,!0)),collapsable:e.collapsable!==!1}}}const cs={functional:!0,props:["item","closeSidebarDrawer"],render({item:e,closeSidebarDrawer:t}){var f,_;if(!e)return;const s=Z(),o=me(),a=_e(),r=he(o,e==null?void 0:e.path),i=(e==null?void 0:e.type)==="auto"?r||e.children.some(g=>he(o,e.basePath+"#"+g.slug)):r,l=us(z,e==null?void 0:e.path,e.title||(e==null?void 0:e.path),i,e.headers,t,a),c=((f=s.value.frontmatter)==null?void 0:f.sidebarDepth)!=null?(_=s.value.frontmatter)==null?void 0:_.sidebarDepth:5,u=c??1;if((e==null?void 0:e.type)==="auto")return[l,Se(z,e.children,e.basePath,o,u,1,t)];if(e.headers&&e.headers.length){const g=is(e.headers);return[l,Se(z,g,e==null?void 0:e.path,o,u,1,t)]}return Ee(z,e==null?void 0:e.path,e.title||(e==null?void 0:e.path),i,e.children,0,t)}};function Ee(e,t,s,o,a,r=0,i){const l=e(dt,{"data-anchor":t,to:t,activeClass:"",exactActiveClass:"",class:{active:o,"sidebar-link":!0,["link-depth-level-"+r]:!0}},()=>[s]);return e("div",{class:{active:o,collapsed:!0,"sidebar-link-container":!!(a!=null&&a.length)},onClick:c=>{c.target.classList.toggle("collapsed"),c.target.tagName!=="DIV"&&i()}},[l])}function us(e,t,s,o,a,r,i){const l=!!a&&a.some(c=>c.level!==1);return e("div",{class:{active:o,collapsed:o,"sidebar-header":!0,"sidebar-link":!0,"sidebar-header--empty":!l},onClick:c=>{const u=c.target.classList,f=c.target.querySelector("a");u.toggle("collapsed"),f&&i.push(f.getAttribute("href"))}},[Ee(e,t,s,o,null,0,r)])}function Se(e,t,s,o,a,r=1,i){return!t||r>a?null:e("ul",{class:"sidebar-sub-headers"},t.map(l=>{const c=he(o,s+"#"+l.slug);return e("li",{class:{collapsible:r<3,"sidebar-sub-header":!0}},[Ee(e,s+"#"+l.slug,l.title,c,l.children,r,i),Se(e,l.children,s,o,a,r+1,i)])}))}const Qe=A(cs,[["__file","SidebarLink.vue"]]);const ds={__name:"DropdownTransition",setup(e){const t=o=>{o.style.height=o.scrollHeight+"px"},s=o=>{o.style.height=""};return(o,a)=>(n(),O(de,{name:"dropdown",onEnter:t,onAfterEnter:s,onBeforeLeave:t},{default:W(()=>[D(o.$slots,"default")]),_:3}))}},ps=A(ds,[["__file","DropdownTransition.vue"]]);const hs={key:0,ref:"items",class:"sidebar-group-items"},fs={__name:"SidebarGroup",props:{item:{type:Object,required:!0},first:{type:Boolean,required:!0},open:{type:Boolean,required:!0},collapsable:{type:Boolean,required:!0},closeSidebarDrawer:{type:Function,default:()=>{}}},setup(e){return(t,s)=>(n(),d("div",{class:j(["sidebar-group",{first:e.first,collapsable:e.collapsable}])},[S(ps,null,{default:W(()=>{var o;return[e.open||!e.collapsable?(n(),d("ul",hs,[(n(!0),d(I,null,B((o=e.item)==null?void 0:o.children,a=>(n(),d("li",null,[S(Qe,{closeSidebarDrawer:e.closeSidebarDrawer,item:a},null,8,["closeSidebarDrawer","item"])]))),256))],512)):L("v-if",!0)]}),_:1})],2))}},vs=A(fs,[["__file","SidebarGroup.vue"]]);const ms={class:"sidebar"},_s={key:0,class:"sidebar-links"},gs={__name:"Sidebar",props:{items:{type:Array,required:!0},closeSidebarDrawer:{type:Function,default:()=>{}},isMobileWidth:{type:Boolean}},setup(e){const t=e,s=E(()=>t.items),o=me(),a=Z(),r=E(()=>Xe(a.value,o,s.value)),i=k(0),l=()=>{const h=_(o,t.items);h>-1&&(i.value=h)},c=h=>{i.value=h===i.value?-1:h},u=h=>{const v=h.getBoundingClientRect();return v.top>=0&&v.left>=0&&v.bottom<=(window.innerHeight/2||document.documentElement.clientHeight/2)&&v.right<=(window.innerWidth||document.documentElement.clientWidth)};re(()=>o,l);const f=()=>{const h=document.querySelectorAll(".header-anchor"),v=document.querySelector(".sidebar"),m=v.querySelectorAll("a"),y=v.querySelectorAll(".collapsible.sidebar-sub-header"),x=Array.from(m).map($=>$.getAttribute("data-anchor"));h.forEach($=>{$.getAttribute("data-anchor")||$.setAttribute("data-anchor",a.value.path+$.hash)}),h.forEach($=>{if(u($)){const H=x.find(R=>R===$.getAttribute("data-anchor"));y.forEach(R=>{R.querySelectorAll(".sidebar-link-container").forEach(K=>{R.querySelector(`a[data-anchor="${H}"]`)?K.classList.remove("collapsed"):K.classList.add("collapsed")})}),v.querySelector(`a[data-anchor="${H}"]`)&&(m.forEach(R=>R.classList.remove("active")),v.querySelector(`a[data-anchor="${H}"]`).classList.add("active"))}})},_=(h,v)=>{for(let m=0;mhe(h,x.path)))return m}return-1},g=()=>{const h=window.location.hash,v=document.querySelectorAll(".sidebar a");v.forEach(m=>{if(m.getAttribute("data-anchor")===h){v.forEach(x=>x.classList.remove("active")),m.classList.add("active");const y=m.closest(".collapsible");y&&y.classList.remove("collapsed")}})};return J(()=>{l(),t.isMobileWidth||window.addEventListener("scroll",f),t.isMobileWidth||window.addEventListener("resize",f),window.addEventListener("hashchange",g)}),ie(()=>{window.removeEventListener("scroll",f),window.removeEventListener("resize",f),window.removeEventListener("hashchange",g)}),(h,v)=>(n(),d("div",ms,[D(h.$slots,"top"),r.value.length?(n(),d("ul",_s,[(n(!0),d(I,null,B(r.value,(m,y)=>(n(),d("li",{key:y},[m.type==="group"?(n(),O(vs,{key:0,item:m,first:y===0,open:y===i.value,closeSidebarDrawer:e.closeSidebarDrawer,collapsable:!!(m.collapsable||m.collapsible),onToggle:x=>c(y)},null,8,["item","first","open","closeSidebarDrawer","collapsable","onToggle"])):(n(),O(Qe,{key:1,closeSidebarDrawer:e.closeSidebarDrawer,item:m},null,8,["closeSidebarDrawer","item"]))]))),128))])):L("v-if",!0),D(h.$slots,"bottom")]))}},Ze=A(gs,[["__file","Sidebar.vue"]]);var bs=Object.defineProperty,ys=Object.defineProperties,ws=Object.getOwnPropertyDescriptors,ke=Object.getOwnPropertySymbols,Ss=Object.prototype.hasOwnProperty,Ls=Object.prototype.propertyIsEnumerable,xe=(e,t,s)=>t in e?bs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,ee=(e,t)=>{for(var s in t||(t={}))Ss.call(t,s)&&xe(e,s,t[s]);if(ke)for(var s of ke(t))Ls.call(t,s)&&xe(e,s,t[s]);return e},Ae=(e,t)=>ys(e,ws(t));const Os={props:{autoscroll:{type:Boolean,default:!0}},watch:{typeAheadPointer(){this.autoscroll&&this.maybeAdjustScroll()},open(e){this.autoscroll&&e&&this.$nextTick(()=>this.maybeAdjustScroll())}},methods:{maybeAdjustScroll(){var e;const t=((e=this.$refs.dropdownMenu)==null?void 0:e.children[this.typeAheadPointer])||!1;if(t){const s=this.getDropdownViewport(),{top:o,bottom:a,height:r}=t.getBoundingClientRect();if(os.bottom)return this.$refs.dropdownMenu.scrollTop=t.offsetTop-(s.height-r)}},getDropdownViewport(){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.getBoundingClientRect():{height:0,top:0,bottom:0}}}},Es={data(){return{typeAheadPointer:-1}},watch:{filteredOptions(){for(let e=0;e=0;e--)if(this.selectable(this.filteredOptions[e])){this.typeAheadPointer=e;break}},typeAheadDown(){for(let e=this.typeAheadPointer+1;e{const s=e.__vccOpts||e;for(const[o,a]of t)s[o]=a;return s},$s={},Vs={xmlns:"http://www.w3.org/2000/svg",width:"10",height:"10"},ks=p("path",{d:"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z"},null,-1),xs=[ks];function As(e,t){return n(),d("svg",Vs,xs)}const Ts=De($s,[["render",As]]),Ps={},Cs={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"10"},Rs=p("path",{d:"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z"},null,-1),Is=[Rs];function Ms(e,t){return n(),d("svg",Cs,Is)}const Bs=De(Ps,[["render",Ms]]),Te={Deselect:Ts,OpenIndicator:Bs},Hs={mounted(e,{instance:t}){if(t.appendToBody){const{height:s,top:o,left:a,width:r}=t.$refs.toggle.getBoundingClientRect();let i=window.scrollX||window.pageXOffset,l=window.scrollY||window.pageYOffset;e.unbindPosition=t.calculatePosition(e,t,{width:r+"px",left:i+a+"px",top:l+o+s+"px"}),document.body.appendChild(e)}},unmounted(e,{instance:t}){t.appendToBody&&(e.unbindPosition&&typeof e.unbindPosition=="function"&&e.unbindPosition(),e.parentNode&&e.parentNode.removeChild(e))}};function js(e){const t={};return Object.keys(e).sort().forEach(s=>{t[s]=e[s]}),JSON.stringify(t)}let Fs=0;function Ws(){return++Fs}const Ns={components:ee({},Te),directives:{appendToBody:Hs},mixins:[Os,Es,Ds],compatConfig:{MODE:3},emits:["open","close","update:modelValue","search","search:compositionstart","search:compositionend","search:keydown","search:blur","search:focus","search:input","option:created","option:selecting","option:selected","option:deselecting","option:deselected"],props:{modelValue:{},components:{type:Object,default:()=>({})},options:{type:Array,default(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},deselectFromDropdown:{type:Boolean,default:!1},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:""},transition:{type:String,default:"vs__fade"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:"label"},autocomplete:{type:String,default:"off"},reduce:{type:Function,default:e=>e},selectable:{type:Function,default:e=>!0},getOptionLabel:{type:Function,default(e){return typeof e=="object"?e.hasOwnProperty(this.label)?e[this.label]:console.warn(`[vue-select warn]: Label key "option.${this.label}" does not exist in options object ${JSON.stringify(e)}. https://vue-select.org/api/props.html#getoptionlabel`):e}},getOptionKey:{type:Function,default(e){if(typeof e!="object")return e;try{return e.hasOwnProperty("id")?e.id:js(e)}catch(t){return console.warn(`[vue-select warn]: Could not stringify this option to generate unique key. Please provide'getOptionKey' prop to return a unique key for each option. https://vue-select.org/api/props.html#getoptionkey`,e,t)}}},onTab:{type:Function,default:function(){this.selectOnTab&&!this.isComposing&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default(e,t,s){return(t||"").toLocaleLowerCase().indexOf(s.toLocaleLowerCase())>-1}},filter:{type:Function,default(e,t){return e.filter(s=>{let o=this.getOptionLabel(s);return typeof o=="number"&&(o=o.toString()),this.filterBy(s,o,t)})}},createOption:{type:Function,default(e){return typeof this.optionList[0]=="object"?{[this.label]:e}:e}},resetOnOptionsChange:{default:!1,validator:e=>["function","boolean"].includes(typeof e)},clearSearchOnBlur:{type:Function,default:function({clearSearchOnSelect:e,multiple:t}){return e&&!t}},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1},selectOnKeyCodes:{type:Array,default:()=>[13]},searchInputQuerySelector:{type:String,default:"[type=search]"},mapKeydown:{type:Function,default:(e,t)=>e},appendToBody:{type:Boolean,default:!1},calculatePosition:{type:Function,default(e,t,{width:s,top:o,left:a}){e.style.top=o,e.style.left=a,e.style.width=s}},dropdownShouldOpen:{type:Function,default({noDrop:e,open:t,mutableLoading:s}){return e?!1:t&&!s}},uid:{type:[String,Number],default:()=>Ws()}},data(){return{search:"",open:!1,isComposing:!1,pushedTags:[],_value:[],deselectButtons:[]}},computed:{isReducingValues(){return this.$props.reduce!==this.$options.props.reduce.default},isTrackingValues(){return typeof this.modelValue>"u"||this.isReducingValues},selectedValue(){let e=this.modelValue;return this.isTrackingValues&&(e=this.$data._value),e!=null&&e!==""?[].concat(e):[]},optionList(){return this.options.concat(this.pushTags?this.pushedTags:[])},searchEl(){return this.$slots.search?this.$refs.selectedOptions.querySelector(this.searchInputQuerySelector):this.$refs.search},scope(){const e={search:this.search,loading:this.loading,searching:this.searching,filteredOptions:this.filteredOptions};return{search:{attributes:ee({disabled:this.disabled,placeholder:this.searchPlaceholder,tabindex:this.tabindex,readonly:!this.searchable,id:this.inputId,"aria-autocomplete":"list","aria-labelledby":`vs${this.uid}__combobox`,"aria-controls":`vs${this.uid}__listbox`,ref:"search",type:"search",autocomplete:this.autocomplete,value:this.search},this.dropdownOpen&&this.filteredOptions[this.typeAheadPointer]?{"aria-activedescendant":`vs${this.uid}__option-${this.typeAheadPointer}`}:{}),events:{compositionstart:()=>this.isComposing=!0,compositionend:()=>this.isComposing=!1,keydown:this.onSearchKeyDown,blur:this.onSearchBlur,focus:this.onSearchFocus,input:t=>this.search=t.target.value}},spinner:{loading:this.mutableLoading},noOptions:{search:this.search,loading:this.mutableLoading,searching:this.searching},openIndicator:{attributes:{ref:"openIndicator",role:"presentation",class:"vs__open-indicator"}},listHeader:e,listFooter:e,header:Ae(ee({},e),{deselect:this.deselect}),footer:Ae(ee({},e),{deselect:this.deselect})}},childComponents(){return ee(ee({},Te),this.components)},stateClasses(){return{"vs--open":this.dropdownOpen,"vs--single":!this.multiple,"vs--multiple":this.multiple,"vs--searching":this.searching&&!this.noDrop,"vs--searchable":this.searchable&&!this.noDrop,"vs--unsearchable":!this.searchable,"vs--loading":this.mutableLoading,"vs--disabled":this.disabled}},searching(){return!!this.search},dropdownOpen(){return this.dropdownShouldOpen(this)},searchPlaceholder(){return this.isValueEmpty&&this.placeholder?this.placeholder:void 0},filteredOptions(){const e=[].concat(this.optionList);if(!this.filterable&&!this.taggable)return e;const t=this.search.length?this.filter(e,this.search,this):e;if(this.taggable&&this.search.length){const s=this.createOption(this.search);this.optionExists(s)||t.unshift(s)}return t},isValueEmpty(){return this.selectedValue.length===0},showClearButton(){return!this.multiple&&this.clearable&&!this.open&&!this.isValueEmpty}},watch:{options(e,t){const s=()=>typeof this.resetOnOptionsChange=="function"?this.resetOnOptionsChange(e,t,this.selectedValue):this.resetOnOptionsChange;!this.taggable&&s()&&this.clearSelection(),this.modelValue&&this.isTrackingValues&&this.setInternalValueFromOptions(this.modelValue)},modelValue:{immediate:!0,handler(e){this.isTrackingValues&&this.setInternalValueFromOptions(e)}},multiple(){this.clearSelection()},open(e){this.$emit(e?"open":"close")}},created(){this.mutableLoading=this.loading},methods:{setInternalValueFromOptions(e){Array.isArray(e)?this.$data._value=e.map(t=>this.findOptionFromReducedValue(t)):this.$data._value=this.findOptionFromReducedValue(e)},select(e){this.$emit("option:selecting",e),this.isOptionSelected(e)?this.deselectFromDropdown&&(this.clearable||this.multiple&&this.selectedValue.length>1)&&this.deselect(e):(this.taggable&&!this.optionExists(e)&&(this.$emit("option:created",e),this.pushTag(e)),this.multiple&&(e=this.selectedValue.concat(e)),this.updateValue(e),this.$emit("option:selected",e)),this.onAfterSelect(e)},deselect(e){this.$emit("option:deselecting",e),this.updateValue(this.selectedValue.filter(t=>!this.optionComparator(t,e))),this.$emit("option:deselected",e)},clearSelection(){this.updateValue(this.multiple?[]:null)},onAfterSelect(e){this.closeOnSelect&&(this.open=!this.open,this.searchEl.blur()),this.clearSearchOnSelect&&(this.search="")},updateValue(e){typeof this.modelValue>"u"&&(this.$data._value=e),e!==null&&(Array.isArray(e)?e=e.map(t=>this.reduce(t)):e=this.reduce(e)),this.$emit("update:modelValue",e)},toggleDropdown(e){const t=e.target!==this.searchEl;t&&e.preventDefault();const s=[...this.deselectButtons||[],this.$refs.clearButton];if(this.searchEl===void 0||s.filter(Boolean).some(o=>o.contains(e.target)||o===e.target)){e.preventDefault();return}this.open&&t?this.searchEl.blur():this.disabled||(this.open=!0,this.searchEl.focus())},isOptionSelected(e){return this.selectedValue.some(t=>this.optionComparator(t,e))},isOptionDeselectable(e){return this.isOptionSelected(e)&&this.deselectFromDropdown},optionComparator(e,t){return this.getOptionKey(e)===this.getOptionKey(t)},findOptionFromReducedValue(e){const t=o=>JSON.stringify(this.reduce(o))===JSON.stringify(e),s=[...this.options,...this.pushedTags].filter(t);return s.length===1?s[0]:s.find(o=>this.optionComparator(o,this.$data._value))||e},closeSearchOptions(){this.open=!1,this.$emit("search:blur")},maybeDeleteValue(){if(!this.searchEl.value.length&&this.selectedValue&&this.selectedValue.length&&this.clearable){let e=null;this.multiple&&(e=[...this.selectedValue.slice(0,this.selectedValue.length-1)]),this.updateValue(e)}},optionExists(e){return this.optionList.some(t=>this.optionComparator(t,e))},normalizeOptionForSlot(e){return typeof e=="object"?e:{[this.label]:e}},pushTag(e){this.pushedTags.push(e)},onEscape(){this.search.length?this.search="":this.searchEl.blur()},onSearchBlur(){if(this.mousedown&&!this.searching)this.mousedown=!1;else{const{clearSearchOnSelect:e,multiple:t}=this;this.clearSearchOnBlur({clearSearchOnSelect:e,multiple:t})&&(this.search=""),this.closeSearchOptions();return}if(this.search.length===0&&this.options.length===0){this.closeSearchOptions();return}},onSearchFocus(){this.open=!0,this.$emit("search:focus")},onMousedown(){this.mousedown=!0},onMouseUp(){this.mousedown=!1},onSearchKeyDown(e){const t=a=>(a.preventDefault(),!this.isComposing&&this.typeAheadSelect()),s={8:a=>this.maybeDeleteValue(),9:a=>this.onTab(),27:a=>this.onEscape(),38:a=>(a.preventDefault(),this.typeAheadUp()),40:a=>(a.preventDefault(),this.typeAheadDown())};this.selectOnKeyCodes.forEach(a=>s[a]=t);const o=this.mapKeydown(s,this);if(typeof o[e.keyCode]=="function")return o[e.keyCode](e)}}},Gs=["dir"],Ks=["id","aria-expanded","aria-owns"],qs={ref:"selectedOptions",class:"vs__selected-options"},Us=["disabled","title","aria-label","onClick"],zs={ref:"actions",class:"vs__actions"},Js=["disabled"],Xs={class:"vs__spinner"},Ys=["id"],Qs=["id","aria-selected","onMouseover","onClick"],Zs={key:0,class:"vs__no-options"},eo=M(" Sorry, no matching options. "),to=["id"];function so(e,t,s,o,a,r){const i=pt("append-to-body");return n(),d("div",{dir:s.dir,class:j(["v-select",r.stateClasses])},[D(e.$slots,"header",N(q(r.scope.header))),p("div",{id:`vs${s.uid}__combobox`,ref:"toggle",class:"vs__dropdown-toggle",role:"combobox","aria-expanded":r.dropdownOpen.toString(),"aria-owns":`vs${s.uid}__listbox`,"aria-label":"Search for option",onMousedown:t[1]||(t[1]=l=>r.toggleDropdown(l))},[p("div",qs,[(n(!0),d(I,null,B(r.selectedValue,(l,c)=>D(e.$slots,"selected-option-container",{option:r.normalizeOptionForSlot(l),deselect:r.deselect,multiple:s.multiple,disabled:s.disabled},()=>[(n(),d("span",{key:s.getOptionKey(l),class:"vs__selected"},[D(e.$slots,"selected-option",N(q(r.normalizeOptionForSlot(l))),()=>[M(V(s.getOptionLabel(l)),1)]),s.multiple?(n(),d("button",{key:0,ref_for:!0,ref:u=>a.deselectButtons[c]=u,disabled:s.disabled,type:"button",class:"vs__deselect",title:`Deselect ${s.getOptionLabel(l)}`,"aria-label":`Deselect ${s.getOptionLabel(l)}`,onClick:u=>r.deselect(l)},[(n(),O(ue(r.childComponents.Deselect)))],8,Us)):L("",!0)]))])),256)),D(e.$slots,"search",N(q(r.scope.search)),()=>[p("input",ye({class:"vs__search"},r.scope.search.attributes,ht(r.scope.search.events)),null,16)])],512),p("div",zs,[Y(p("button",{ref:"clearButton",disabled:s.disabled,type:"button",class:"vs__clear",title:"Clear Selected","aria-label":"Clear Selected",onClick:t[0]||(t[0]=(...l)=>r.clearSelection&&r.clearSelection(...l))},[(n(),O(ue(r.childComponents.Deselect)))],8,Js),[[Q,r.showClearButton]]),D(e.$slots,"open-indicator",N(q(r.scope.openIndicator)),()=>[s.noDrop?L("",!0):(n(),O(ue(r.childComponents.OpenIndicator),N(ye({key:0},r.scope.openIndicator.attributes)),null,16))]),D(e.$slots,"spinner",N(q(r.scope.spinner)),()=>[Y(p("div",Xs,"Loading...",512),[[Q,e.mutableLoading]])])],512)],40,Ks),S(de,{name:s.transition},{default:W(()=>[r.dropdownOpen?Y((n(),d("ul",{id:`vs${s.uid}__listbox`,ref:"dropdownMenu",key:`vs${s.uid}__listbox`,class:"vs__dropdown-menu",role:"listbox",tabindex:"-1",onMousedown:t[2]||(t[2]=P((...l)=>r.onMousedown&&r.onMousedown(...l),["prevent"])),onMouseup:t[3]||(t[3]=(...l)=>r.onMouseUp&&r.onMouseUp(...l))},[D(e.$slots,"list-header",N(q(r.scope.listHeader))),(n(!0),d(I,null,B(r.filteredOptions,(l,c)=>(n(),d("li",{id:`vs${s.uid}__option-${c}`,key:s.getOptionKey(l),role:"option",class:j(["vs__dropdown-option",{"vs__dropdown-option--deselect":r.isOptionDeselectable(l)&&c===e.typeAheadPointer,"vs__dropdown-option--selected":r.isOptionSelected(l),"vs__dropdown-option--highlight":c===e.typeAheadPointer,"vs__dropdown-option--disabled":!s.selectable(l)}]),"aria-selected":c===e.typeAheadPointer?!0:null,onMouseover:u=>s.selectable(l)?e.typeAheadPointer=c:null,onClick:P(u=>s.selectable(l)?r.select(l):null,["prevent","stop"])},[D(e.$slots,"option",N(q(r.normalizeOptionForSlot(l))),()=>[M(V(s.getOptionLabel(l)),1)])],42,Qs))),128)),r.filteredOptions.length===0?(n(),d("li",Zs,[D(e.$slots,"no-options",N(q(r.scope.noOptions)),()=>[eo])])):L("",!0),D(e.$slots,"list-footer",N(q(r.scope.listFooter)))],40,Ys)),[[i]]):(n(),d("ul",{key:1,id:`vs${s.uid}__listbox`,role:"listbox",style:{display:"none",visibility:"hidden"}},null,8,to))]),_:3},8,["name"]),D(e.$slots,"footer",N(q(r.scope.footer)))],10,Gs)}const oo=De(Ns,[["render",so]]);const ao=["src"],ro={key:1},io={__name:"DSelect",props:{withIcon:{type:Boolean,default:!0},modelValue:{type:Object,default:()=>({label:"",value:""})},options:{type:Array,default:()=>[]}},emits:["changeSidebarItems","update:selectedValue","update:model-value"],setup(e,{emit:t}){const{searchSelectIcon:s}=C("themeConfig"),o=i=>{t("changeSidebarItems",i),t("update:model-value",i)},a=k(),r=()=>{a.value&&(a.value.open=!1)};return J(()=>window.addEventListener("click",i=>{var l;(l=a.value)!=null&&l.$el.contains(i.target)||r()})),ie(()=>window.removeEventListener("click",r)),(i,l)=>(n(),O(w(oo),{ref_key:"dropdown",ref:a,"onUpdate:modelValue":o,"model-value":e.modelValue,label:"title",value:"link",clearable:!1,searchable:!1,options:e.options},{"open-indicator":W(({attributes:c})=>[e.withIcon?(n(),d("div",ye({key:0,class:"select-icon"},c),[p("img",{src:w(F)(w(s)),alt:"search Icon"},null,8,ao)],16)):(n(),d("span",ro))]),_:1},8,["model-value","options"]))}},et=A(io,[["__file","DSelect.vue"]]),lo={class:"sidebar-drawer__mobile"},no={class:"sidebar-header"},co=p("p",{class:"sidebar-header__paragraph"},"Select TuxCare docs",-1),uo=ve({__name:"SidebarDrawer",props:{allPages:{type:Array,required:!0,default:()=>[]},documents:{type:Array,required:!0,default:()=>[]},closeSidebarDrawer:{type:Function,default:()=>{}},modelValue:{type:Object,required:!0,default:()=>{}},isMobileWidth:{type:Boolean}},emits:["changeSidebarItems","update:model-value"],setup(e){return(t,s)=>(n(),d("div",lo,[S(Ze,{closeSidebarDrawer:e.closeSidebarDrawer,items:e.allPages,isMobileWidth:e.isMobileWidth},{top:W(()=>[p("div",no,[co,S(et,{modelValue:e.modelValue,"onUpdate:modelValue":s[0]||(s[0]=o=>t.$emit("update:model-value",o)),onChangeSidebarItems:s[1]||(s[1]=o=>t.$emit("changeSidebarItems",o)),"with-icon":"",options:e.documents},null,8,["modelValue","options"])])]),_:1},8,["closeSidebarDrawer","items","isMobileWidth"])]))}});const po=A(uo,[["__file","SidebarDrawer.vue"]]);const ho={class:"drawer-tabs__wrapper"},fo=["onClick"],vo={__name:"DrawerTabs",props:{data:{type:Array,required:!0,default:()=>({})},modelValue:{type:Number,default:-1}},emits:["update:modelValue"],setup(e,{emit:t}){const s=o=>{t("update:modelValue",o)};return(o,a)=>(n(),d("div",ho,[(n(!0),d(I,null,B(e.data,(r,i)=>(n(),d("div",{key:i,onClick:l=>s(i),class:j([{"drawer-tab__active":e.modelValue===i},"drawer-tab"])},[p("div",{class:j(["drawer-tab__text",{"drawer-tab__text__active":e.modelValue===i}])},V(r.title)+" ("+V(r==null?void 0:r.numberResults)+") ",3)],10,fo))),128))]))}},mo=A(vo,[["__scopeId","data-v-c60e280a"],["__file","DrawerTabs.vue"]]);const _o={key:0,class:"drawer-main__search-results"},go=["onClick"],bo=["innerHTML"],yo=["innerHTML"],wo=["innerHTML"],So={key:1},Lo={class:"hidden_results__text"},Oo=p("p",{class:"hidden_results__text"},"Collapse results",-1),Eo=[Oo],Do={key:2},$o={key:0,class:"no_results"},Vo={key:1,class:"no_results"},ko={key:0},xo=p("br",null,null,-1),Ao=p("a",{class:"no_results__link",href:" https://forum.cloudlinux.com/",target:"_blank"},"https://forum.cloudlinux.com/",-1),To={__name:"DrawerSearchResult",props:{data:{type:[Array,Object],required:!0},modelValue:{type:String,required:!0}},setup(e){const t=e;ft(g=>({aa1be2ec:w(o)}));const{MAX_ALGOLIA_VISIBLE_RESULT:s,MAX_ALGOLIA_VISIBLE_ROWS:o}=C("themeConfig"),a=k(!1),r=g=>{window.location.href=g},i=E(()=>{var g;return a.value?t.data:(g=t.data)==null?void 0:g.slice(0,s)}),l=E(()=>t.data.length-i.value.length),c=()=>{a.value=!0},u=()=>{a.value=!1},f=g=>{var h,v;for(const m in g)if(g[m].value!==null||g[m].value!==void 0)return((h=g.lvl1)==null?void 0:h.value)||((v=g.lvl0)==null?void 0:v.value);return null},_=g=>Object.values(g).slice(2).filter(Boolean).map(h=>h.value).join(" > ");return(g,h)=>(n(),d(I,null,[e.data.length?(n(),d("section",_o,[(n(!0),d(I,null,B(i.value,v=>{var m,y,x,$;return n(),d("div",{key:v,class:"search-result",onClick:H=>r((v==null?void 0:v.url)||"/")},[p("div",{class:"search-result__title",innerHTML:f((m=v._highlightResult)==null?void 0:m.hierarchy)},null,8,bo),p("div",{class:"search-result__breadcrumb",innerHTML:_((y=v._highlightResult)==null?void 0:y.hierarchy)},null,8,yo),p("div",{class:"search-result__text",innerHTML:($=(x=v._highlightResult)==null?void 0:x.content)==null?void 0:$.value},null,8,wo)],8,go)}),128))])):L("v-if",!0),e.data.length?(n(),d("div",So,[l.value?(n(),d("div",{key:0,class:"hidden_results",onClick:c},[p("p",Lo,"Show all results("+V(l.value)+")",1)])):!l.value&&a.value?(n(),d("div",{key:1,class:"hidden_results",onClick:u},Eo)):L("v-if",!0)])):(n(),d("div",Do,[e.modelValue.length?(n(),d("p",Vo,[M(" Sorry! No results found for "),e.modelValue?(n(),d("span",ko,'"'+V(e.modelValue)+'"',1)):L("v-if",!0),M(" 😞"),xo,M("Please try ask the community (link to the "),Ao,M("). ")])):(n(),d("p",$o,"What are you searching for?"))]))],64))}},Po=A(To,[["__file","DrawerSearchResult.vue"]]);const Co={class:"drawer-header"},Ro=p("div",{class:"drawer-header__wrapper"},[p("h2",{class:"drawer-header__paragraph"},"How can we help you?"),p("div",{id:"drawerSearch"})],-1),Io={class:"drawer-cross"},Mo=["src"],Bo={class:"drawer-main"},Ho={class:"drawer-main__wrapper"},jo={class:"drawer-main__breadcrumb"},Fo={key:0,class:"drawer-main__breadcrumb__text"},Wo=["src"],No={__name:"Drawer",props:{isOpenDrawer:{type:Boolean,required:!0,default:!1},isMobileWidth:{type:Boolean,required:!0,default:!1},modelValue:{type:String,required:!0,default:""},homeLayoutSearchResult:{type:Array,required:!0,default:()=>[]}},emits:["closeDrawer","update:modelValue"],setup(e,{emit:t}){const s=e,o=k(0),a=E(()=>{const l=s.homeLayoutSearchResult.reduce((c,u)=>{var _;const f=(_=u.hierarchy)==null?void 0:_.lvl0;return c[f]=c[f]||{title:f,numberResults:0},c[f].numberResults++,c},{});return Object.values(l)}),r=E(()=>{if(o.value===-1)return s.homeLayoutSearchResult||[];const l=a.value[o.value];return s.homeLayoutSearchResult.filter(c=>c.hierarchy.lvl0===(l==null?void 0:l.title))}),i=()=>{t("closeDrawer"),o.value=0};return re(()=>s.isOpenDrawer,()=>{document.body.classList.toggle("disable-scroll",s.isOpenDrawer)}),(l,c)=>(n(),d("div",null,[p("div",{class:j(["drawer",{"is-open":e.isOpenDrawer}])},[p("div",Co,[Ro,p("div",Io,[p("img",{onClick:i,class:"drawer-cross__img",src:w(F)("/global/cross.svg"),alt:"cross"},null,8,Mo),p("p",{onClick:i,class:"drawer-cross__text"},"close")])]),S(mo,{modelValue:o.value,"onUpdate:modelValue":c[0]||(c[0]=u=>o.value=u),data:a.value},null,8,["modelValue","data"]),p("main",null,[p("div",Bo,[p("div",Ho,[p("div",jo,[r.value.length?(n(),d("p",Fo,[M("Home "),p("img",{src:w(F)("/arrows/arrow-right-breadcrumb.svg"),alt:"breadcrumb icon"},null,8,Wo),M(" Documentation ")])):L("v-if",!0)]),S(Po,{modelValue:e.modelValue,data:r.value},null,8,["modelValue","data"])])]),e.isOpenDrawer&&e.isMobileWidth?(n(),O(pe,{key:0,class:"drawer-footer__mobile"})):L("v-if",!0)])],2),e.isOpenDrawer&&!e.isMobileWidth?(n(),O(pe,{key:0,class:"drawer-footer"})):L("v-if",!0)]))}},Go=A(No,[["__file","Drawer.vue"]]);const Ko={id:"search-form",class:"drawer-header__input"},qo=["value","placeholder"],Uo=["src"],zo={__name:"DrawerSearch",props:{options:{type:[Object,Array],required:!0},modelValue:{type:String,required:!0},isOpenDrawer:{type:Boolean,required:!0},isMobileWidth:{type:Boolean}},emits:["openDrawer","update:modelValue","result"],setup(e,{emit:t}){const s=e,{MAX_ALGOLIA_HITS_PER_PAGE:o}=C("themeConfig"),{headerDefaultSearchIcon:a,headerSearchIcon:r,headerSearchPlaceholder:i}=C("themeConfig"),l=ne(),c=E(()=>l.value.layout==="HomeLayout"),u=E(()=>s.isOpenDrawer?"drawer-header__search":c.value?"header-layout__search":"header-layout__search-default"),f=E(()=>s.isOpenDrawer?"drawer-header__search-icon":c.value?"header-layout__search-icon":"header-layout__search-icon-default"),_=E(()=>c.value||s.isOpenDrawer?r:a),g=E(()=>s.isOpenDrawer?"Search":c.value?i:"Search"),h=E(()=>s.isMobileWidth?"Search accross all Imunify Security support":g.value),v=async m=>{if(typeof window>"u")return;const[y]=await Promise.all([b(()=>import("./docsearch.min-de7e3b59.js").then($=>$.d),["assets/docsearch.min-de7e3b59.js","assets/framework-0ba8e1ea.js"]),b(()=>import("./docsearch.min-49eb4b49.js"),[])]),x=y.default;x(Object.assign({},m,{inputSelector:"#algolia-search-input",algoliaOptions:{hitsPerPage:o},handleSelected:()=>{t("openDrawer")},transformData:$=>{t("result",$)}}))};return re(()=>s.options,async m=>{await v(m)},{immediate:!0}),(m,y)=>(n(),d("form",Ko,[p("input",{value:e.modelValue,onInput:y[0]||(y[0]=x=>m.$emit("update:modelValue",x.target.value)),id:"algolia-search-input",placeholder:h.value,class:j(u.value),onKeypress:y[1]||(y[1]=G(P(x=>m.$emit("openDrawer"),["prevent"]),["enter"]))},null,42,qo),p("div",{class:j(f.value)},[p("img",{onClick:y[2]||(y[2]=x=>m.$emit("openDrawer")),alt:"search icon",src:w(F)(_.value)},null,8,Uo)],2)]))}},Pe=A(zo,[["__file","DrawerSearch.vue"]]);const Jo={class:"header-layout__search-container"},Xo={key:0,class:"header-layout__search-title"},Yo={__name:"HeaderLayoutSearch",props:{isMobileWidth:{type:Boolean,default:!1},closeSidebarDrawer:{type:Function}},setup(e,{expose:t}){const s=e,{headerSearch:o,algoliaOptions:a}=C("themeConfig"),r=ne(),i=k(!1),l=k(!1),c=k(""),u=k([]);re(()=>c.value,()=>{c.value||(u.value=[])});const f=v=>{u.value=v},_=E(()=>r.value.layout==="HomeLayout"),g=()=>{i.value=!0,l.value=!0,s.closeSidebarDrawer&&s.closeSidebarDrawer()},h=()=>{u.value.length=0,c.value="",i.value=!1,l.value=!1};return t({openDrawer:g,closeDrawer:h,mobileDrawerVisible:l}),(v,m)=>(n(),d("div",Jo,[_.value?(n(),d("h1",Xo,V(w(o)),1)):L("v-if",!0),i.value?(n(),O(Be,{key:1,to:"#drawerSearch"},[S(Pe,{options:w(a),modelValue:c.value,"onUpdate:modelValue":m[0]||(m[0]=y=>c.value=y),isMobileWidth:e.isMobileWidth,onOpenDrawer:g,isOpenDrawer:i.value,onResult:f},null,8,["options","modelValue","isMobileWidth","isOpenDrawer"])])):(n(),O(Pe,{key:2,isMobileWidth:e.isMobileWidth,options:w(a),modelValue:c.value,"onUpdate:modelValue":m[1]||(m[1]=y=>c.value=y),onOpenDrawer:g,isOpenDrawer:i.value,onResult:f},null,8,["isMobileWidth","options","modelValue","isOpenDrawer"])),S(Go,{homeLayoutSearchResult:u.value,modelValue:c.value,"onUpdate:modelValue":m[2]||(m[2]=y=>c.value=y),onCloseDrawer:h,isOpenDrawer:i.value,isMobileWidth:e.isMobileWidth},null,8,["homeLayoutSearchResult","modelValue","isOpenDrawer","isMobileWidth"])]))}},Ce=A(Yo,[["__file","HeaderLayoutSearch.vue"]]);const Qo={class:"header-products-wrapper"},Zo={key:0,class:"dropdown-wrapper"},ea=["href"],ta={key:1,class:"dropdown-wrapper"},sa=["href"],oa=["src"],aa={class:"header-products-wrapper-paragraph"},ra=["src"],ia={__name:"HeaderProducts",props:{isMobileWidth:{type:Boolean}},setup(e){const{productsTitle:t,arrowDownIcon:s,productsList:o,productsURLs:a}=C("themeConfig"),r=k(!1),i=k(null),l=c=>{!c.composedPath().includes(i.value)&&(r.value=!1)};return J(()=>{document.addEventListener("click",l)}),ie(()=>{document.removeEventListener("click",l)}),(c,u)=>(n(),d("div",Qo,[p("div",{ref_key:"menu",ref:i,class:"dropdown"},[e.isMobileWidth?(n(),O(Be,{key:0,to:"body"},[r.value?(n(),d("div",Zo,[(n(!0),d(I,null,B(w(o),(f,_)=>(n(),d("p",{class:"dropdown-content__paragraph",key:f},[p("a",{class:"dropdown-content__link",href:w(a)[_]},V(f),9,ea)]))),128))])):L("v-if",!0)])):L("v-if",!0),r.value&&!e.isMobileWidth?(n(),d("div",ta,[(n(!0),d(I,null,B(w(o),(f,_)=>(n(),d("p",{class:"dropdown-content__paragraph",key:f},[p("a",{class:"dropdown-content__link",href:w(a)[_]},V(f),9,sa)]))),128))])):L("v-if",!0),p("div",{onClick:u[0]||(u[0]=f=>r.value=!r.value),class:"header-products-container"},[p("img",{class:"header-products-container__img",alt:"hamburger menu",src:w(F)("/global/hamburger-menu.svg")},null,8,oa),p("p",aa,V(w(t)),1),p("img",{class:j(["products-icon__default",{"products-icon__rotate":r.value}]),width:"10",height:"8",src:w(F)(w(s)),alt:"arrow down icon"},null,10,ra)])],512)]))}},la=A(ia,[["__file","HeaderProducts.vue"]]);const na={class:"navbar-header"},ca={class:"navbar-header__logo-wrapper"},ua=["src"],da=["src"],pa=["href","onClick"],ha={__name:"HeaderLayout",props:{isMobileWidth:{type:Boolean},closeSidebarDrawer:{type:Function}},setup(e){const{siteLogo:t,defaultURL:s,locales:o,headerDefaultSearchIcon:a}=C("themeConfig"),r=k(null),i=ne(),l=ze(),c=k(null),u=()=>{var h;return(h=c==null?void 0:c.value)==null?void 0:h.openDrawer()},f=E(()=>i.value.layout==="HomeLayout"),_=E(()=>(l.value+s).replace(/\/+/g,"/")),g=h=>{if(h.type)switch(h.type){case"event":var h=new CustomEvent(h.name);document.dispatchEvent(h)}};return(h,v)=>{var y;const m=oe("router-link");return n(),d("header",{class:j(["navbar",{fixed:!f.value}])},[p("div",na,[p("div",ca,[S(m,{to:_.value,class:"home-link"},{default:W(()=>[w(t)?(n(),d("img",{key:0,class:"logo",src:w(F)(w(t)),alt:"logo header"},null,8,ua)):L("v-if",!0)]),_:1},8,["to"]),f.value?L("v-if",!0):(n(),O(Ce,{key:0,closeSidebarDrawer:e.closeSidebarDrawer,ref_key:"headerLayoutSearch",ref:c,class:j({"header-mobile__hidden":!((y=c.value)!=null&&y.mobileDrawerVisible)}),isMobileWidth:e.isMobileWidth},null,8,["closeSidebarDrawer","class","isMobileWidth"]))]),p("div",{class:"links",style:vt({"max-width":r.value+"px"})},[p("img",{onClick:u,class:"navbar-header__mobile-search",src:w(F)(w(a)),alt:"icon image"},null,8,da),S(la,{isMobileWidth:e.isMobileWidth},null,8,["isMobileWidth"]),(n(!0),d(I,null,B(w(o).navbarLinks,x=>(n(),d("a",{href:x.url,target:"_blank",class:j(x.class),onClick:$=>g(x.event)},V(x.text),11,pa))),256))],4)]),f.value?(n(),O(Ce,{key:0,closeSidebarDrawer:e.closeSidebarDrawer,ref_key:"headerLayoutSearch",ref:c,isMobileWidth:e.isMobileWidth},null,8,["closeSidebarDrawer","isMobileWidth"])):L("v-if",!0)],2)}}},tt=A(ha,[["__file","HeaderLayout.vue"]]);const fa=e=>(mt("data-v-1eb13e00"),e=e(),_t(),e),va={class:"back-to-top"},ma=fa(()=>p("span",{class:"back-to-top__link-span"},"Scroll up",-1)),_a=[ma],ga={__name:"BackToTop",props:{boundary:{type:Number,default:200}},setup(e){const t=e,s=k(!1),o=()=>{window&&(s.value=window.pageYOffset>t.boundary)},a=()=>{document.body.scrollTop=0,document.documentElement.scrollTop=0};return J(()=>{window&&(o(),window.addEventListener("scroll",o))}),ie(()=>{window&&window.removeEventListener("scroll",o)}),(r,i)=>(n(),d("div",va,[p("a",{class:j([{active:s.value},"nav-arrow top back-to-top__link"]),onClick:a},_a,2)]))}},ba=A(ga,[["__scopeId","data-v-1eb13e00"],["__file","BackToTop.vue"]]);const ya={class:"breadcrumb-wrapper"},wa={class:"breadcrumb-title"},Sa={__name:"Breadcrumb",setup(e){const t=Z(),{locales:{siteTitle:s}}=C("themeConfig"),o=E(()=>{const a=[];return t.value.path!=="/"&&a.push({path:t.value.path,title:t.value.title}),a});return(a,r)=>{const i=oe("router-link");return n(),d("div",ya,[p("span",wa,V(w(s))+":",1),(n(!0),d(I,null,B(o.value,l=>(n(),O(i,{class:"breadcrumb",key:l.path,to:l.path},{default:W(()=>[M(V(l.title),1)]),_:2},1032,["to"]))),128))])}}},La=A(Sa,[["__scopeId","data-v-9445381a"],["__file","Breadcrumb.vue"]]);const Oa={key:0,class:"page-nav"},Ea={__name:"PageNav",props:{sidebarItems:{type:Array,default:()=>[]},allPages:{type:Array}},setup(e){const t=e,s=ze(),o=Z(),a=E(()=>{const u=o.value.frontmatter.prev;return u===!1?null:u?fe(t.allPages,u,s):i(o.value,t.sidebarItems)}),r=E(()=>{const u=o.value.frontmatter.next;return u===!1?null:u?fe(t.allPages,u,s):l(o.value,t.sidebarItems)}),i=(u,f)=>c(u,f,-1),l=(u,f)=>c(u,f,1),c=(u,f,_)=>{const g=[];f.forEach(h=>{h.type==="group"?g.push(...h.children||[]):g.push(h)});for(let h=0;h{const _=oe("router-link");return a.value||r.value?(n(),d("div",Oa,[a.value?(n(),O(_,{key:0,class:"nav-arrow left",to:a.value.path},null,8,["to"])):L("v-if",!0),r.value?(n(),O(_,{key:1,class:"nav-arrow right",to:r.value.path},null,8,["to"])):L("v-if",!0)])):L("v-if",!0)}}},Da=A(Ea,[["__file","PageNav.vue"]]);const $a={class:"page"},Va=["src"],ka={class:"page-nav-wrapper"},xa={key:0,class:"page-edit"},Aa={class:"edit-link"},Ta=["src"],Pa=["href"],Ca={__name:"Page",props:{sidebarItems:{type:Array,default:()=>[]},allPages:{type:Array,default:()=>[]},isMobileWidth:{type:Boolean}},setup(e,{expose:t}){const s=e,{githubEditIcon:o,githubRepository:a,allowGithubEdit:r,githubMainDir:i="",githubBranch:l="master",docsRepo:c=a,editLinkText:u}=C("themeConfig"),f=Z();Ke();const _=ne(),g=k(s.isMobileWidth),h=()=>g.value=!0,v=()=>g.value=!1,m=E(()=>{if(_.value.editLink===!1)return;let $=ae(f.value.path);if(te.test($)?$+="README.md":$+=".md",c&&r)return x(a,c,i,l,$)}),y=E(()=>u||"Edit this page"),x=($,H,R,K,$e)=>/bitbucket.org/.test($)?(we.test(H)?H:$).replace(te,"")+`/${K}`+(R?"/"+R.replace(te,""):"")+$e+`?mode=edit&spa=0&at=${K}&fileviewer=file-view-default`:(we.test(H)?H:`https://github.com/${H}`).replace(te,"")+`/tree/${K}`+(R?"/"+R.replace(te,""):"")+$e;return t({isOpenMobileSidebarMenu:g,closeSidebarDrawer:v}),($,H)=>{const R=oe("Content");return n(),d("div",$a,[D($.$slots,"top"),S(La,{class:"page-breadcrumb"}),p("img",{onClick:h,class:"page-mobile__sidebar-menu",src:w(F)("/global/sidebar-menu.svg"),alt:"sidebar hamburger menu"},null,8,Va),p("div",ka,[S(Da,{"sidebar-items":e.sidebarItems,allPages:e.allPages},null,8,["sidebar-items","allPages"])]),S(R,{class:"content",custom:!1}),w(r)?(n(),d("div",xa,[p("div",Aa,[p("img",{src:w(F)(w(o)),alt:"icon pen"},null,8,Ta),p("a",{href:m.value,target:"_blank",rel:"noopener noreferrer"},V(y.value),9,Pa)])])):L("v-if",!0),S(ba),D($.$slots,"bottom")])}}},Ra=A(Ca,[["__file","Page.vue"]]);const Ia={class:"theme-container"},Ma={key:0,class:"sidebar-header"},Ba=p("p",{class:"sidebar-header__paragraph"},"Select TuxCare docs",-1),Ha={__name:"Layout",setup(e){const{documents:t,MOBILE_BREAKPOINT:s}=C("themeConfig"),o=k(null),a=k(null),r=_e(),i=me(),l=Z(),c=k([]),u=k(!1),f=E(()=>l.value&&c.value.length?Xe(l.value,i,c.value):[]),_=v=>r.push(v.link),g=()=>{var y;const v=(y=l.value)==null?void 0:y.path,m=v.indexOf("/",v.indexOf("/")+1);return v.substr(0,m)},h=()=>{u.value=window.innerWidth<=s};return J(()=>{Object.values(Le).map(v=>v().then(m=>{c.value.push(m)})),a.value=t.find(v=>{var m;return(m=v.link)==null?void 0:m.startsWith(g())}),window.addEventListener("resize",h),u.value=window.innerWidth<=s}),ie(()=>{window.removeEventListener("resize",h)}),(v,m)=>{var y,x,$,H,R;return n(),d("div",Ia,[S(tt,{closeSidebarDrawer:(y=o.value)==null?void 0:y.closeSidebarDrawer,isMobileWidth:u.value},null,8,["closeSidebarDrawer","isMobileWidth"]),c.value.length&&!((x=o.value)!=null&&x.isOpenMobileSidebarMenu)&&!u.value?(n(),O(Ze,{key:0,items:c.value,closeSidebarDrawer:($=o.value)==null?void 0:$.closeSidebarDrawer},{top:W(()=>[w(t)?(n(),d("div",Ma,[Ba,S(et,{"with-icon":"",modelValue:a.value,"onUpdate:modelValue":m[0]||(m[0]=K=>a.value=K),onChangeSidebarItems:_,options:w(t)},null,8,["modelValue","options"])])):L("v-if",!0)]),_:1},8,["items","closeSidebarDrawer"])):L("v-if",!0),S(Ra,{ref_key:"pageRef",ref:o,sidebarItems:f.value,allPages:c.value,isMobileWidth:u.value},null,8,["sidebarItems","allPages","isMobileWidth"]),c.value.length&&((H=o.value)!=null&&H.isOpenMobileSidebarMenu)&&u.value?(n(),O(po,{key:1,onChangeSidebarItems:_,"all-pages":c.value,documents:w(t),modelValue:a.value,"onUpdate:modelValue":m[1]||(m[1]=K=>a.value=K),closeSidebarDrawer:(R=o.value)==null?void 0:R.closeSidebarDrawer,isMobileWidth:u.value},null,8,["all-pages","documents","modelValue","closeSidebarDrawer","isMobileWidth"])):L("v-if",!0),S(pe)])}}},ja=A(Ha,[["__file","Layout.vue"]]);const Fa={class:"docs-card-container"},Wa={class:"docs-card-container__header"},Na=["src"],Ga={key:0,class:"docs-card-container__header-paragraph"},Ka={class:"docs-card-container__main"},qa={key:0,class:"docs-card-container__main-paragraph"},Ua={class:"docs-card-container__footer"},za={__name:"DocsCard",props:{card:{type:Object,default:null}},setup(e){const t=e,s=_e(),o=()=>{var a;return s.push((a=t.card)==null?void 0:a.link)};return(a,r)=>(n(),d("div",Fa,[p("div",Wa,[p("img",{width:"20",height:"20",src:w(F)("collections-bookmark.svg"),alt:"document icon"},null,8,Na),e.card.title?(n(),d("p",Ga,V(e.card.title),1)):L("v-if",!0)]),p("div",Ka,[e.card.description?(n(),d("p",qa,V(e.card.description),1)):L("v-if",!0)]),p("div",Ua,[p("button",{onClick:r[0]||(r[0]=i=>o()),class:"docs-card-container__footer-btn"},"View Documentation")])]))}},Ja=A(za,[["__file","DocsCard.vue"]]);const Xa={class:"docs-cards-wrapper"},Ya={__name:"DocsCardsWrapper",setup(e){const{documents:t}=C("themeConfig");return(s,o)=>(n(),d("div",Xa,[(n(!0),d(I,null,B(w(t),(a,r)=>(n(),O(Ja,{key:r,card:a},null,8,["card"]))),128))]))}},Qa=A(Ya,[["__file","DocsCardsWrapper.vue"]]),Za={class:"theme-container"},er={__name:"HomeLayout",setup(e){const{MOBILE_BREAKPOINT:t}=C("themeConfig"),s=k(!1),o=()=>s.value=window.innerWidth<=t;return J(()=>{window.addEventListener("resize",o),s.value=window.innerWidth<=t}),ie(()=>window.removeEventListener("resize",o)),(a,r)=>(n(),d("div",Za,[S(tt,{isMobileWidth:s.value},null,8,["isMobileWidth"]),S(Qa),S(pe)]))}},tr=A(er,[["__file","HomeLayout.vue"]]),sr={class:"theme-container"},or={__name:"NotFound",setup(e){const t=me(),s=_e();k([]);const o=[{from:"cloudlinux-os-plus/#get-started",to:"shared-pro/accelerate-wp/#get-started"},{from:"cloudlinux-os-plus/#setup-upgrade-url-for-acceleratewp-premium",to:"shared-pro/accelerate-wp/#setup-upgrade-url-for-acceleratewp-premium"},{from:"cloudlinux-os-plus",to:"shared-pro"},{from:"cagefs.html",to:"shared/cloudlinux_os_components/#cagefs"},{from:"index.html?cagefs_installation.html",to:"shared/cloudlinux_os_components/#installation-and-update-1"},{from:"mod_lsapi_troubleshooting.html",to:"shared/cloudlinux_os_components/#troubleshooting-3"}];return J(()=>{const a=t.path+t.hash,r=new RegExp(a,"gi");let i=!1;const l=(u,f)=>{var _;if(!i&&((_=u.children)==null?void 0:_.length)>0)for(let g of u.children){const h=f+"/"+g.link;if(h.search(r)!==-1){s.push(h),i=!0;return}u.children.length>0&&l(g,f)}};(async()=>{var _;const u=Object==null?void 0:Object.values(Le);let f=!1;for(let g of o)if(a.search(g.from)!==-1){const h=a.replace(g.from,g.to);s.push(h),f=!0;return}f||(window.location.href="/not-found.html");for(let g of u){const h=await g();let v=h.path;if(v.at(-1)==="/"&&(v=v.slice(0,-1)),((_=h.headers)==null?void 0:_.length)>0)for(let m of h.headers){const y=v+"/"+m.link;if(y.search(r)!==-1){s.push(y),i=!0;return}l(m,v)}}})()}),(a,r)=>(n(),d("div",sr))}},ar=A(or,[["__file","NotFound.vue"]]),rr=[{text:"Knowledge base",url:"https://cloudlinux.zendesk.com/hc/en-us/categories/360002375960-KernelCare"},{text:"Forum",url:"https://forum.cloudlinux.com/forum/tuxcare"},{text:"Blog",url:"https://blog.tuxcare.com/"},{text:"Privacy Policy",url:"https://www.cloudlinux.com/privacy-policy/"}],ir=[{text:"Ask GPT?",event:{type:"event",name:"botui-open"},class:"btn"},{text:"Submit support request",url:"https://www.tuxcare.com/support-portal/",class:"btn"},{text:"Submit your idea",url:"https://features.tuxcare.com/submit-idea/",class:"btn"}],lr=[{title:"TuxCare",description:"services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.",link:"/tuxcare/"},{title:"Enterprise Support for AlmaLinux",description:"provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.",link:"/enterprise-support-for-almalinux/"},{title:"KernelCare",description:"is a live kernel patching service that provides security patches and bugfixes for a range of popular Linux kernels that can be installed without rebooting the system.",link:"/live-patching-services/"},{title:"KernelCare for IOT",description:"provides live security patching for ARM64-based embedded systems for enterprise IoT users and original equipment manufacturers.",link:"/kernelcare-for-iot/"},{title:"ePortal",description:"TuxCare ePortal is the web management console dedicated to KernelCare Enterprise live patch management.",link:"/eportal/"},{title:"ePortal API",description:"is a complete API for everyday use.",link:"/eportal-api/"},{title:"Extended Lifecycle Support",description:"allows you to continue running your Linux server after the operating system’s end of life.",link:"/extended-lifecycle-support/"},{title:"Extended Lifecycle Support for Languages",description:"provides security fixes for PHP and Python versions that have reached their end-of-life which allows to continue running Linux server vulnerability-free.",link:"/extended-lifecycle-support-for-languages/"},{title:"Subscription Management Portal",description:"The TuxCare subscription management portal is designed to easily manage your licenses of TuxCare products and services by means of a user-friendly interface.",link:"/tuxcare-cln/"},{title:"Service Descriptions",description:"AlmaCare service description",link:"/service-descriptions/"}],nr=[{url:"https://www.facebook.com/tuxcare/",icon:"footer-social/fb.png"},{url:"https://twitter.com/tuxcare_/",icon:"footer-social/tw.png"},{url:"https://linkedin.com/company/tuxcare",icon:"footer-social/in.png"},{url:"https://www.youtube.com/@TuxCare",icon:"footer-social/ytube.png"}];function ge(e){return e===0?!1:Array.isArray(e)&&e.length===0?!0:!e}function cr(e){return(...t)=>!e(...t)}function ur(e,t){return e===void 0&&(e="undefined"),e===null&&(e="null"),e===!1&&(e="false"),e.toString().toLowerCase().indexOf(t.trim())!==-1}function st(e,t,s,o){return t?e.filter(a=>ur(o(a,s),t)).sort((a,r)=>o(a,s).length-o(r,s).length):e}function dr(e){return e.filter(t=>!t.$isLabel)}function be(e,t){return s=>s.reduce((o,a)=>a[e]&&a[e].length?(o.push({$groupLabel:a[t],$isLabel:!0}),o.concat(a[e])):o,[])}function pr(e,t,s,o,a){return r=>r.map(i=>{if(!i[s])return console.warn("Options passed to vue-multiselect do not contain groups, despite the config."),[];const l=st(i[s],e,t,a);return l.length?{[o]:i[o],[s]:l}:[]})}const Re=(...e)=>t=>e.reduce((s,o)=>o(s),t);var hr={data(){return{search:"",isOpen:!1,preferredOpenDirection:"below",optimizedHeight:this.maxHeight}},props:{internalSearch:{type:Boolean,default:!0},options:{type:Array,required:!0},multiple:{type:Boolean,default:!1},trackBy:{type:String},label:{type:String},searchable:{type:Boolean,default:!0},clearOnSelect:{type:Boolean,default:!0},hideSelected:{type:Boolean,default:!1},placeholder:{type:String,default:"Select option"},allowEmpty:{type:Boolean,default:!0},resetAfter:{type:Boolean,default:!1},closeOnSelect:{type:Boolean,default:!0},customLabel:{type:Function,default(e,t){return ge(e)?"":t?e[t]:e}},taggable:{type:Boolean,default:!1},tagPlaceholder:{type:String,default:"Press enter to create a tag"},tagPosition:{type:String,default:"top"},max:{type:[Number,Boolean],default:!1},id:{default:null},optionsLimit:{type:Number,default:1e3},groupValues:{type:String},groupLabel:{type:String},groupSelect:{type:Boolean,default:!1},blockKeys:{type:Array,default(){return[]}},preserveSearch:{type:Boolean,default:!1},preselectFirst:{type:Boolean,default:!1},preventAutofocus:{type:Boolean,default:!1}},mounted(){!this.multiple&&this.max&&console.warn("[Vue-Multiselect warn]: Max prop should not be used when prop Multiple equals false."),this.preselectFirst&&!this.internalValue.length&&this.options.length&&this.select(this.filteredOptions[0])},computed:{internalValue(){return this.modelValue||this.modelValue===0?Array.isArray(this.modelValue)?this.modelValue:[this.modelValue]:[]},filteredOptions(){const e=this.search||"",t=e.toLowerCase().trim();let s=this.options.concat();return this.internalSearch?s=this.groupValues?this.filterAndFlat(s,t,this.label):st(s,t,this.label,this.customLabel):s=this.groupValues?be(this.groupValues,this.groupLabel)(s):s,s=this.hideSelected?s.filter(cr(this.isSelected)):s,this.taggable&&t.length&&!this.isExistingOption(t)&&(this.tagPosition==="bottom"?s.push({isTag:!0,label:e}):s.unshift({isTag:!0,label:e})),s.slice(0,this.optionsLimit)},valueKeys(){return this.trackBy?this.internalValue.map(e=>e[this.trackBy]):this.internalValue},optionKeys(){return(this.groupValues?this.flatAndStrip(this.options):this.options).map(t=>this.customLabel(t,this.label).toString().toLowerCase())},currentOptionLabel(){return this.multiple?this.searchable?"":this.placeholder:this.internalValue.length?this.getOptionLabel(this.internalValue[0]):this.searchable?"":this.placeholder}},watch:{internalValue:{handler(){this.resetAfter&&this.internalValue.length&&(this.search="",this.$emit("update:modelValue",this.multiple?[]:null))},deep:!0},search(){this.$emit("search-change",this.search)}},emits:["open","search-change","close","select","update:modelValue","remove","tag"],methods:{getValue(){return this.multiple?this.internalValue:this.internalValue.length===0?null:this.internalValue[0]},filterAndFlat(e,t,s){return Re(pr(t,s,this.groupValues,this.groupLabel,this.customLabel),be(this.groupValues,this.groupLabel))(e)},flatAndStrip(e){return Re(be(this.groupValues,this.groupLabel),dr)(e)},updateSearch(e){this.search=e},isExistingOption(e){return this.options?this.optionKeys.indexOf(e)>-1:!1},isSelected(e){const t=this.trackBy?e[this.trackBy]:e;return this.valueKeys.indexOf(t)>-1},isOptionDisabled(e){return!!e.$isDisabled},getOptionLabel(e){if(ge(e))return"";if(e.isTag)return e.label;if(e.$isLabel)return e.$groupLabel;const t=this.customLabel(e,this.label);return ge(t)?"":t},select(e,t){if(e.$isLabel&&this.groupSelect){this.selectGroup(e);return}if(!(this.blockKeys.indexOf(t)!==-1||this.disabled||e.$isDisabled||e.$isLabel)&&!(this.max&&this.multiple&&this.internalValue.length===this.max)&&!(t==="Tab"&&!this.pointerDirty)){if(e.isTag)this.$emit("tag",e.label,this.id),this.search="",this.closeOnSelect&&!this.multiple&&this.deactivate();else{if(this.isSelected(e)){t!=="Tab"&&this.removeElement(e);return}this.multiple?this.$emit("update:modelValue",this.internalValue.concat([e])):this.$emit("update:modelValue",e),this.$emit("select",e,this.id),this.clearOnSelect&&(this.search="")}this.closeOnSelect&&this.deactivate()}},selectGroup(e){const t=this.options.find(s=>s[this.groupLabel]===e.$groupLabel);if(t){if(this.wholeGroupSelected(t)){this.$emit("remove",t[this.groupValues],this.id);const s=this.internalValue.filter(o=>t[this.groupValues].indexOf(o)===-1);this.$emit("update:modelValue",s)}else{let s=t[this.groupValues].filter(o=>!(this.isOptionDisabled(o)||this.isSelected(o)));this.max&&s.splice(this.max-this.internalValue.length),this.$emit("select",s,this.id),this.$emit("update:modelValue",this.internalValue.concat(s))}this.closeOnSelect&&this.deactivate()}},wholeGroupSelected(e){return e[this.groupValues].every(t=>this.isSelected(t)||this.isOptionDisabled(t))},wholeGroupDisabled(e){return e[this.groupValues].every(this.isOptionDisabled)},removeElement(e,t=!0){if(this.disabled||e.$isDisabled)return;if(!this.allowEmpty&&this.internalValue.length<=1){this.deactivate();return}const s=typeof e=="object"?this.valueKeys.indexOf(e[this.trackBy]):this.valueKeys.indexOf(e);if(this.multiple){const o=this.internalValue.slice(0,s).concat(this.internalValue.slice(s+1));this.$emit("update:modelValue",o)}else this.$emit("update:modelValue",null);this.$emit("remove",e,this.id),this.closeOnSelect&&t&&this.deactivate()},removeLastElement(){this.blockKeys.indexOf("Delete")===-1&&this.search.length===0&&Array.isArray(this.internalValue)&&this.internalValue.length&&this.removeElement(this.internalValue[this.internalValue.length-1],!1)},activate(){this.isOpen||this.disabled||(this.adjustPosition(),this.groupValues&&this.pointer===0&&this.filteredOptions.length&&(this.pointer=1),this.isOpen=!0,this.searchable?(this.preserveSearch||(this.search=""),this.preventAutofocus||this.$nextTick(()=>this.$refs.search&&this.$refs.search.focus())):this.preventAutofocus||typeof this.$el<"u"&&this.$el.focus(),this.$emit("open",this.id))},deactivate(){this.isOpen&&(this.isOpen=!1,this.searchable?typeof this.$refs.search<"u"&&this.$refs.search.blur():typeof this.$el<"u"&&this.$el.blur(),this.preserveSearch||(this.search=""),this.$emit("close",this.getValue(),this.id))},toggle(){this.isOpen?this.deactivate():this.activate()},adjustPosition(){if(typeof window>"u")return;const e=this.$el.getBoundingClientRect().top,t=window.innerHeight-this.$el.getBoundingClientRect().bottom;t>this.maxHeight||t>e||this.openDirection==="below"||this.openDirection==="bottom"?(this.preferredOpenDirection="below",this.optimizedHeight=Math.min(t-40,this.maxHeight)):(this.preferredOpenDirection="above",this.optimizedHeight=Math.min(e-40,this.maxHeight))}}},fr={data(){return{pointer:0,pointerDirty:!1}},props:{showPointer:{type:Boolean,default:!0},optionHeight:{type:Number,default:40}},computed:{pointerPosition(){return this.pointer*this.optionHeight},visibleElements(){return this.optimizedHeight/this.optionHeight}},watch:{filteredOptions(){this.pointerAdjust()},isOpen(){this.pointerDirty=!1},pointer(){this.$refs.search&&this.$refs.search.setAttribute("aria-activedescendant",this.id+"-"+this.pointer.toString())}},methods:{optionHighlight(e,t){return{"multiselect__option--highlight":e===this.pointer&&this.showPointer,"multiselect__option--selected":this.isSelected(t)}},groupHighlight(e,t){if(!this.groupSelect)return["multiselect__option--disabled",{"multiselect__option--group":t.$isLabel}];const s=this.options.find(o=>o[this.groupLabel]===t.$groupLabel);return s&&!this.wholeGroupDisabled(s)?["multiselect__option--group",{"multiselect__option--highlight":e===this.pointer&&this.showPointer},{"multiselect__option--group-selected":this.wholeGroupSelected(s)}]:"multiselect__option--disabled"},addPointerElement({key:e}="Enter"){this.filteredOptions.length>0&&this.select(this.filteredOptions[this.pointer],e),this.pointerReset()},pointerForward(){this.pointer0?(this.pointer--,this.$refs.list.scrollTop>=this.pointerPosition&&(this.$refs.list.scrollTop=this.pointerPosition),this.filteredOptions[this.pointer]&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerBackward()):this.filteredOptions[this.pointer]&&this.filteredOptions[0].$isLabel&&!this.groupSelect&&this.pointerForward(),this.pointerDirty=!0},pointerReset(){this.closeOnSelect&&(this.pointer=0,this.$refs.list&&(this.$refs.list.scrollTop=0))},pointerAdjust(){this.pointer>=this.filteredOptions.length-1&&(this.pointer=this.filteredOptions.length?this.filteredOptions.length-1:0),this.filteredOptions.length>0&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerForward()},pointerSet(e){this.pointer=e,this.pointerDirty=!0}}},ot={name:"vue-multiselect",mixins:[hr,fr],compatConfig:{MODE:3,ATTR_ENUMERATED_COERCION:!1},props:{name:{type:String,default:""},modelValue:{type:null,default(){return[]}},selectLabel:{type:String,default:"Press enter to select"},selectGroupLabel:{type:String,default:"Press enter to select group"},selectedLabel:{type:String,default:"Selected"},deselectLabel:{type:String,default:"Press enter to remove"},deselectGroupLabel:{type:String,default:"Press enter to deselect group"},showLabels:{type:Boolean,default:!0},limit:{type:Number,default:99999},maxHeight:{type:Number,default:300},limitText:{type:Function,default:e=>`and ${e} more`},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},openDirection:{type:String,default:""},showNoOptions:{type:Boolean,default:!0},showNoResults:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},computed:{hasOptionGroup(){return this.groupValues&&this.groupLabel&&this.groupSelect},isSingleLabelVisible(){return(this.singleValue||this.singleValue===0)&&(!this.isOpen||!this.searchable)&&!this.visibleValues.length},isPlaceholderVisible(){return!this.internalValue.length&&(!this.searchable||!this.isOpen)},visibleValues(){return this.multiple?this.internalValue.slice(0,this.limit):[]},singleValue(){return this.internalValue[0]},deselectLabelText(){return this.showLabels?this.deselectLabel:""},deselectGroupLabelText(){return this.showLabels?this.deselectGroupLabel:""},selectLabelText(){return this.showLabels?this.selectLabel:""},selectGroupLabelText(){return this.showLabels?this.selectGroupLabel:""},selectedLabelText(){return this.showLabels?this.selectedLabel:""},inputStyle(){return this.searchable||this.multiple&&this.modelValue&&this.modelValue.length?this.isOpen?{width:"100%"}:{width:"0",position:"absolute",padding:"0"}:""},contentStyle(){return this.options.length?{display:"inline-block"}:{display:"block"}},isAbove(){return this.openDirection==="above"||this.openDirection==="top"?!0:this.openDirection==="below"||this.openDirection==="bottom"?!1:this.preferredOpenDirection==="above"},showSearchInput(){return this.searchable&&(this.hasSingleSelectedSlot&&(this.visibleSingleValue||this.visibleSingleValue===0)?this.isOpen:!0)}}};const vr={ref:"tags",class:"multiselect__tags"},mr={class:"multiselect__tags-wrap"},_r={class:"multiselect__spinner"},gr={key:0},br={class:"multiselect__option"},yr={class:"multiselect__option"},wr=M("No elements found. Consider changing the search query."),Sr={class:"multiselect__option"},Lr=M("List is empty.");function Or(e,t,s,o,a,r){return n(),O("div",{tabindex:e.searchable?-1:s.tabindex,class:[{"multiselect--active":e.isOpen,"multiselect--disabled":s.disabled,"multiselect--above":r.isAbove,"multiselect--has-options-group":r.hasOptionGroup},"multiselect"],onFocus:t[14]||(t[14]=i=>e.activate()),onBlur:t[15]||(t[15]=i=>e.searchable?!1:e.deactivate()),onKeydown:[t[16]||(t[16]=G(P(i=>e.pointerForward(),["self","prevent"]),["down"])),t[17]||(t[17]=G(P(i=>e.pointerBackward(),["self","prevent"]),["up"]))],onKeypress:t[18]||(t[18]=G(P(i=>e.addPointerElement(i),["stop","self"]),["enter","tab"])),onKeyup:t[19]||(t[19]=G(i=>e.deactivate(),["esc"])),role:"combobox","aria-owns":"listbox-"+e.id},[D(e.$slots,"caret",{toggle:e.toggle},()=>[S("div",{onMousedown:t[1]||(t[1]=P(i=>e.toggle(),["prevent","stop"])),class:"multiselect__select"},null,32)]),D(e.$slots,"clear",{search:e.search}),S("div",vr,[D(e.$slots,"selection",{search:e.search,remove:e.removeElement,values:r.visibleValues,isOpen:e.isOpen},()=>[Y(S("div",mr,[(n(!0),O(I,null,B(r.visibleValues,(i,l)=>D(e.$slots,"tag",{option:i,search:e.search,remove:e.removeElement},()=>[(n(),O("span",{class:"multiselect__tag",key:l},[S("span",{textContent:V(e.getOptionLabel(i))},null,8,["textContent"]),S("i",{tabindex:"1",onKeypress:G(P(c=>e.removeElement(i),["prevent"]),["enter"]),onMousedown:P(c=>e.removeElement(i),["prevent"]),class:"multiselect__tag-icon"},null,40,["onKeypress","onMousedown"])]))])),256))],512),[[Q,r.visibleValues.length>0]]),e.internalValue&&e.internalValue.length>s.limit?D(e.$slots,"limit",{key:0},()=>[S("strong",{class:"multiselect__strong",textContent:V(s.limitText(e.internalValue.length-s.limit))},null,8,["textContent"])]):L("v-if",!0)]),S(de,{name:"multiselect__loading"},{default:W(()=>[D(e.$slots,"loading",{},()=>[Y(S("div",_r,null,512),[[Q,s.loading]])])]),_:3}),e.searchable?(n(),O("input",{key:0,ref:"search",name:s.name,id:e.id,type:"text",autocomplete:"off",spellcheck:"false",placeholder:e.placeholder,style:r.inputStyle,value:e.search,disabled:s.disabled,tabindex:s.tabindex,onInput:t[2]||(t[2]=i=>e.updateSearch(i.target.value)),onFocus:t[3]||(t[3]=P(i=>e.activate(),["prevent"])),onBlur:t[4]||(t[4]=P(i=>e.deactivate(),["prevent"])),onKeyup:t[5]||(t[5]=G(i=>e.deactivate(),["esc"])),onKeydown:[t[6]||(t[6]=G(P(i=>e.pointerForward(),["prevent"]),["down"])),t[7]||(t[7]=G(P(i=>e.pointerBackward(),["prevent"]),["up"])),t[9]||(t[9]=G(P(i=>e.removeLastElement(),["stop"]),["delete"]))],onKeypress:t[8]||(t[8]=G(P(i=>e.addPointerElement(i),["prevent","stop","self"]),["enter"])),class:"multiselect__input","aria-controls":"listbox-"+e.id},null,44,["name","id","placeholder","value","disabled","tabindex","aria-controls"])):L("v-if",!0),r.isSingleLabelVisible?(n(),O("span",{key:1,class:"multiselect__single",onMousedown:t[10]||(t[10]=P((...i)=>e.toggle&&e.toggle(...i),["prevent"]))},[D(e.$slots,"singleLabel",{option:r.singleValue},()=>[M(V(e.currentOptionLabel),1)])],32)):L("v-if",!0),r.isPlaceholderVisible?(n(),O("span",{key:2,class:"multiselect__placeholder",onMousedown:t[11]||(t[11]=P((...i)=>e.toggle&&e.toggle(...i),["prevent"]))},[D(e.$slots,"placeholder",{},()=>[M(V(e.placeholder),1)])],32)):L("v-if",!0)],512),S(de,{name:"multiselect"},{default:W(()=>[Y(S("div",{class:"multiselect__content-wrapper",onFocus:t[12]||(t[12]=(...i)=>e.activate&&e.activate(...i)),tabindex:"-1",onMousedown:t[13]||(t[13]=P(()=>{},["prevent"])),style:{maxHeight:e.optimizedHeight+"px"},ref:"list"},[S("ul",{class:"multiselect__content",style:r.contentStyle,role:"listbox",id:"listbox-"+e.id},[D(e.$slots,"beforeList"),e.multiple&&e.max===e.internalValue.length?(n(),O("li",gr,[S("span",br,[D(e.$slots,"maxElements",{},()=>[M("Maximum of "+V(e.max)+" options selected. First remove a selected option to select another.",1)])])])):L("v-if",!0),!e.max||e.internalValue.length(n(),O("li",{class:"multiselect__element",key:l,id:e.id+"-"+l,role:i&&(i.$isLabel||i.$isDisabled)?null:"option"},[i&&(i.$isLabel||i.$isDisabled)?L("v-if",!0):(n(),O("span",{key:0,class:[e.optionHighlight(l,i),"multiselect__option"],onClick:P(c=>e.select(i),["stop"]),onMouseenter:P(c=>e.pointerSet(l),["self"]),"data-select":i&&i.isTag?e.tagPlaceholder:r.selectLabelText,"data-selected":r.selectedLabelText,"data-deselect":r.deselectLabelText},[D(e.$slots,"option",{option:i,search:e.search,index:l},()=>[S("span",null,V(e.getOptionLabel(i)),1)])],42,["onClick","onMouseenter","data-select","data-selected","data-deselect"])),i&&(i.$isLabel||i.$isDisabled)?(n(),O("span",{key:1,"data-select":e.groupSelect&&r.selectGroupLabelText,"data-deselect":e.groupSelect&&r.deselectGroupLabelText,class:[e.groupHighlight(l,i),"multiselect__option"],onMouseenter:P(c=>e.groupSelect&&e.pointerSet(l),["self"]),onMousedown:P(c=>e.selectGroup(i),["prevent"])},[D(e.$slots,"option",{option:i,search:e.search,index:l},()=>[S("span",null,V(e.getOptionLabel(i)),1)])],42,["data-select","data-deselect","onMouseenter","onMousedown"])):L("v-if",!0)],8,["id","role"]))),128)):L("v-if",!0),Y(S("li",null,[S("span",yr,[D(e.$slots,"noResult",{search:e.search},()=>[wr])])],512),[[Q,s.showNoResults&&e.filteredOptions.length===0&&e.search&&!s.loading]]),Y(S("li",null,[S("span",Sr,[D(e.$slots,"noOptions",{},()=>[Lr])])],512),[[Q,s.showNoOptions&&(e.options.length===0||r.hasOptionGroup===!0&&e.filteredOptions.length===0)&&!e.search&&!s.loading]]),D(e.$slots,"afterList")],12,["id"])],36),[[Q,e.isOpen]])]),_:3})],42,["tabindex","aria-owns"])}ot.render=Or;const Ie="/assets/bot-6afebef6.png";const Er={components:{BotIcon:Ie,Multiselect:ot},data(){return{dynamicComponent:null,messages:[],isConnected:!1,waitResponse:!1,botOptions:{botAvatarImg:Ie,botTitle:"AI Bot",colorScheme:"#314659",boardContentBg:"#f4f4f4",msgBubbleBgBot:"#fff",msgBubbleBgUser:"#314659",inputPlaceholder:"Ask a new question"},docName:"tuxcare-documentation",tags:[],options:[{name:"TuxCare",value:["level-0","tuxcare"]},{name:"AlmaCare",value:["level-0","almacare"]},{name:"KernelCare Enterprise",value:["level-0","live-patching-services"]},{name:"KernelCare for IOT",value:["level-0","kernelcare-for-iot"]},{name:"ePortal",value:["level-0","eportal"]},{name:"ePortal API",value:["level-0","eportal-api"]},{name:"Extended Lifecycle Support",value:["level-0","extended-lifecycle-support"]},{name:"Extended Lifecycle Support for Languages",value:["level-0","extended-lifecycle-support-for-languages"]},{name:"Subscription Management Portal",value:["level-0","tuxcare-cln"]},{name:"Service Descriptions",value:["level-0","service-descriptions"]}]}},mounted(){b(()=>import("./vue-bot-ui.common-605c2d08.js").then(e=>e.v),["assets/vue-bot-ui.common-605c2d08.js","assets/framework-0ba8e1ea.js"]).then(e=>{this.dynamicComponent=gt(e.VueBotUI)}),console.log("Starting connection..."),this.connection=new WebSocket("wss://doc-bot.cloudlinux.com:2096"),this.connection.onmessage=e=>{const t=JSON.parse(e.data);this.messages.push({agent:"bot",type:"markdown",text:t.text}),this.waitResponse=!1,setTimeout(()=>{this.messages.push({agent:"bot",type:"rate",id:t.id})},1e3)},this.connection.onclose=()=>{console.log("Connection closed"),this.isConnected=!1},this.connection.onopen=()=>{console.log("Successfully connected to the websocket server..."),this.isConnected=!0}},methods:{messageSendHandler(e){this.messages.push({agent:"user",type:"text",text:e.text});let t=[];this.tags.length!==this.options.length&&(t=this.tags.map(s=>s.value)),this.connection.send(JSON.stringify({type:"question",text:e.text,"doc-name":this.docName,tags:t})),this.waitResponse=!0},messageToServer(e){this.connection.send(JSON.stringify({"doc-name":this.docName,...e}))}}},Dr={id:"bot-ui"},$r={class:"qkb-board-header__title"},Vr={class:"qkb-board-header__select_field"};function kr(e,t,s,o,a,r){const i=oe("multiselect"),l=oe("ClientOnly");return n(),O(l,null,{default:W(()=>[p("div",Dr,[a.dynamicComponent&&a.isConnected?(n(),O(ue(a.dynamicComponent),{key:0,messages:a.messages,options:a.botOptions,"bot-typing":a.waitResponse,"input-disable":a.waitResponse,onMsgSend:r.messageSendHandler,onMsgToServer:r.messageToServer},{header:W(()=>[p("div",$r,V(a.botOptions.botTitle),1),p("div",Vr,[S(i,{modelValue:a.tags,"onUpdate:modelValue":t[0]||(t[0]=c=>a.tags=c),options:a.options,multiple:!0,"close-on-select":!0,limit:3,label:"name","track-by":"value",placeholder:"Select section"},null,8,["modelValue","options"])])]),_:1},40,["messages","options","bot-typing","input-disable","onMsgSend","onMsgToServer"])):L("v-if",!0)])]),_:1})}const xr=A(Er,[["render",kr],["__file","Chat.vue"]]),Ar=jt({rootComponents:[xr],async enhance({app:e}){e.config.globalProperties.$eventBus=Wt()},layouts:{Layout:ja,HomeLayout:tr,NotFound:ar},setup(){He("themeConfig",{cloudlinuxSite:"https://tuxcare.com",defaultURL:"/",githubBranch:"master",allowGithubEdit:!0,githubMainDir:"docs",githubRepository:"cloudlinux/tuxcare-documentation",MOBILE_BREAKPOINT:767,documents:lr,arrowDownIcon:"arrows/arrow-down.svg",githubEditIcon:"global/pen.svg",footerCustomLogo:"global/we-are-cloudlinux.svg",headerDefaultSearchIcon:"global/search.svg",siteLogo:"global/logo.svg",searchSelectIcon:"arrows/select-down.svg",headerSearchIcon:"global/header-search.svg",headerSearch:"TuxCare Product Documentation",headerSearchPlaceholder:"Search across the TuxCare product documentation",locales:{bottomLinks:rr,editLinkText:"Edit this page",sidebar:Je,siteTitle:"Documentation",stayInTouch:"Stay in touch",navbarLinks:ir},productsList:["CloudLinux","Imunify","TuxCare"],productsTitle:"Products",productsURLs:["https://docs.cloudlinux.com","https://docs.imunify360.com","https://docs.tuxcare.com"],social:nr,algoliaOptions:{apiKey:"17e673c12b93fbf7c4a00159b0ae2de0",indexName:"tuxcare",appId:"R7FCMJM4P7"},MAX_ALGOLIA_VISIBLE_RESULT:20,MAX_ALGOLIA_VISIBLE_ROWS:15,MAX_ALGOLIA_HITS_PER_PAGE:20})}}),ce=[Ft,Ar],Tr=[["v-8daa1a0e","/",{},["/index.html","/README.md"]],["v-b0d2ea62","/enterprise-support-for-almalinux/",{},["/enterprise-support-for-almalinux/index.html","/enterprise-support-for-almalinux/README.md"]],["v-89bfb992","/eportal/",{},["/eportal/index.html","/eportal/README.md"]],["v-1b6f4a0a","/eportal-api/",{},["/eportal-api/index.html","/eportal-api/README.md"]],["v-6c1fb884","/extended-lifecycle-support/",{},["/extended-lifecycle-support/index.html","/extended-lifecycle-support/README.md"]],["v-cadd6498","/extended-lifecycle-support-for-languages/",{},["/extended-lifecycle-support-for-languages/index.html","/extended-lifecycle-support-for-languages/README.md"]],["v-2d0a9a10","/jp/",{},["/jp/index.html","/jp/README.md"]],["v-33720eeb","/kernelcare-for-iot/",{},["/kernelcare-for-iot/index.html","/kernelcare-for-iot/README.md"]],["v-37e5fb86","/live-patching-services/",{},["/live-patching-services/index.html","/live-patching-services/README.md"]],["v-534e2916","/local-mirror-els/",{},["/local-mirror-els/index.html","/local-mirror-els/README.md"]],["v-c271a6b2","/service-descriptions/",{},["/service-descriptions/index.html","/service-descriptions/README.md"]],["v-2f5e7500","/tuxcare/",{},["/tuxcare/index.html","/tuxcare/README.md"]],["v-1f847a28","/tuxcare-cln/",{},["/tuxcare-cln/index.html","/tuxcare-cln/README.md"]],["v-ec0cad0c","/enterprise-support-for-almalinux/fips/",{},["/enterprise-support-for-almalinux/fips/index.html","/enterprise-support-for-almalinux/fips/README.md"]],["v-52e27964","/jp/eportal/",{},["/jp/eportal/index.html","/jp/eportal/README.md"]],["v-c05bf2be","/jp/eportal-api/",{},["/jp/eportal-api/index.html","/jp/eportal-api/README.md"]],["v-3d707372","/jp/extended-lifecycle-support/",{},["/jp/extended-lifecycle-support/index.html","/jp/extended-lifecycle-support/README.md"]],["v-7d514c7d","/jp/extended-lifecycle-support-for-languages/",{},["/jp/extended-lifecycle-support-for-languages/index.html","/jp/extended-lifecycle-support-for-languages/README.md"]],["v-50c7132c","/jp/linux-support-services/",{},["/jp/linux-support-services/index.html","/jp/linux-support-services/README.md"]],["v-fd036ae2","/jp/live-patching-services/",{},["/jp/live-patching-services/index.html","/jp/live-patching-services/README.md"]],["v-03bf6597","/jp/tuxcare/",{},["/jp/tuxcare/index.html","/jp/tuxcare/README.md"]],["v-b8319282","/jp/tuxcare-cln/",{},["/jp/tuxcare-cln/index.html","/jp/tuxcare-cln/README.md"]],["v-3706649a","/404.html",{},["/404"]]];var Me=ve({name:"Vuepress",setup(){const e=Pt();return()=>z(e.value)}}),Pr=()=>Tr.reduce((e,[t,s,o,a])=>(e.push({name:t,path:s,component:Me,meta:o},...a.map(r=>({path:r,redirect:s}))),e),[{name:"404",path:"/:catchAll(.*)",component:Me}]),Cr=Lt,Rr=()=>{const e=bt({history:Cr(yt("/")),routes:Pr(),scrollBehavior:(t,s,o)=>o||(t.hash?{el:t.hash}:{top:0})});return e.beforeResolve(async(t,s)=>{var o;(t.path!==s.path||s===wt)&&([X.value]=await Promise.all([U.resolvePageData(t.name),(o=je[t.name])==null?void 0:o.__asyncLoader()]))}),e},Ir=e=>{e.component("ClientOnly",Bt),e.component("Content",Ht)},Mr=(e,t,s)=>{const o=k(t.currentRoute.value.path);re(()=>t.currentRoute.value.path,g=>o.value=g);const a=E(()=>U.resolveLayouts(s)),r=E(()=>U.resolveRouteLocale(le.value.locales,o.value)),i=E(()=>U.resolveSiteLocaleData(le.value,r.value)),l=E(()=>U.resolvePageFrontmatter(X.value)),c=E(()=>U.resolvePageHeadTitle(X.value,i.value)),u=E(()=>U.resolvePageHead(c.value,l.value,i.value)),f=E(()=>U.resolvePageLang(X.value)),_=E(()=>U.resolvePageLayout(X.value,a.value));return e.provide(kt,a),e.provide(We,l),e.provide(Tt,c),e.provide(Ne,u),e.provide(Ge,f),e.provide(qe,_),e.provide(Ue,r),e.provide(Ct,i),Object.defineProperties(e.config.globalProperties,{$frontmatter:{get:()=>l.value},$head:{get:()=>u.value},$headTitle:{get:()=>c.value},$lang:{get:()=>f.value},$page:{get:()=>X.value},$routeLocale:{get:()=>r.value},$site:{get:()=>le.value},$siteLocale:{get:()=>i.value},$withBase:{get:()=>F}}),{layouts:a,pageData:X,pageFrontmatter:l,pageHead:u,pageHeadTitle:c,pageLang:f,pageLayout:_,routeLocale:r,siteData:le,siteLocaleData:i}},Br=()=>{const e=At(),t=Ke(),s=k([]),o=()=>{e.value.forEach(r=>{const i=Hr(r);i&&s.value.push(i)})},a=()=>{document.documentElement.lang=t.value,s.value.forEach(r=>{r.parentNode===document.head&&document.head.removeChild(r)}),s.value.splice(0,s.value.length),e.value.forEach(r=>{const i=jr(r);i!==null&&(document.head.appendChild(i),s.value.push(i))})};He(Rt,a),J(()=>{o(),a(),re(()=>e.value,()=>a())})},Hr=([e,t,s=""])=>{const o=Object.entries(t).map(([l,c])=>se(c)?`[${l}=${JSON.stringify(c)}]`:c===!0?`[${l}]`:"").join(""),a=`head > ${e}${o}`;return Array.from(document.querySelectorAll(a)).find(l=>l.innerText===s)||null},jr=([e,t,s])=>{if(!se(e))return null;const o=document.createElement(e);return Et(t)&&Object.entries(t).forEach(([a,r])=>{se(r)?o.setAttribute(a,r):r===!0&&o.setAttribute(a,"")}),se(s)&&o.appendChild(document.createTextNode(s)),o},Fr=St,Wr=async()=>{var s;const e=Fr({name:"VuepressApp",setup(){var o;Br();for(const a of ce)(o=a.setup)==null||o.call(a);return()=>[z(Ot),...ce.flatMap(({rootComponents:a=[]})=>a.map(r=>z(r)))]}}),t=Rr();Ir(e),Mr(e,t,ce);for(const o of ce)await((s=o.enhance)==null?void 0:s.call(o,{app:e,router:t,siteData:le}));return e.use(t),{app:e,router:t}};Wr().then(({app:e,router:t})=>{t.isReady().then(()=>{e.mount("#app")})});export{Wr as createVueApp}; diff --git a/assets/index.html-1b0d342c.js b/assets/index.html-1b0d342c.js new file mode 100644 index 00000000..d69e9286 --- /dev/null +++ b/assets/index.html-1b0d342c.js @@ -0,0 +1 @@ +const e=JSON.parse('{"key":"v-b0d2ea62","path":"/enterprise-support-for-almalinux/","title":"Enterprise Support for AlmaLinux","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"What is Enterprise Support for AlmaLinux?","slug":"what-is-enterprise-support-for-almalinux","link":"#what-is-enterprise-support-for-almalinux","children":[]},{"level":2,"title":"Extended Security Updates","slug":"extended-security-updates","link":"#extended-security-updates","children":[{"level":3,"title":"ESU lifecycle","slug":"esu-lifecycle","link":"#esu-lifecycle","children":[]},{"level":3,"title":"Vulnerability coverage","slug":"vulnerability-coverage","link":"#vulnerability-coverage","children":[]},{"level":3,"title":"FIPS-compliant security patches","slug":"fips-compliant-security-patches","link":"#fips-compliant-security-patches","children":[]},{"level":3,"title":"Target response times","slug":"target-response-times","link":"#target-response-times","children":[]},{"level":3,"title":"Supported packages","slug":"supported-packages","link":"#supported-packages","children":[]},{"level":3,"title":"Errata advisories","slug":"errata-advisories","link":"#errata-advisories","children":[]},{"level":3,"title":"OVAL patch definitions","slug":"oval-patch-definitions","link":"#oval-patch-definitions","children":[]},{"level":3,"title":"Technical support","slug":"technical-support","link":"#technical-support","children":[]},{"level":3,"title":"GnuPG Keys","slug":"gnupg-keys","link":"#gnupg-keys","children":[]},{"level":3,"title":"Installing tuxctl","slug":"installing-tuxctl","link":"#installing-tuxctl","children":[]},{"level":3,"title":"Enabling FIPS 140-3 mode","slug":"enabling-fips-140-3-mode","link":"#enabling-fips-140-3-mode","children":[]},{"level":3,"title":"Uninstalling tuxctl","slug":"uninstalling-tuxctl","link":"#uninstalling-tuxctl","children":[]}]},{"level":2,"title":"Essential and Enhanced Support","slug":"essential-and-enhanced-support","link":"#essential-and-enhanced-support","children":[{"level":3,"title":"1. Introduction","slug":"_1-introduction","link":"#_1-introduction","children":[]},{"level":3,"title":"2. Definitions","slug":"_2-definitions","link":"#_2-definitions","children":[]},{"level":3,"title":"3. Service Features","slug":"_3-service-features","link":"#_3-service-features","children":[]},{"level":3,"title":"4. Description of Support Program","slug":"_4-description-of-support-program","link":"#_4-description-of-support-program","children":[{"level":4,"title":"Accessing Technical Support","slug":"accessing-technical-support","link":"#accessing-technical-support","children":[]},{"level":4,"title":"Response Time","slug":"response-time","link":"#response-time","children":[]},{"level":4,"title":"Incident Resolution Cooperation","slug":"incident-resolution-cooperation","link":"#incident-resolution-cooperation","children":[]}]},{"level":3,"title":"Appendices","slug":"appendices","link":"#appendices","children":[{"level":4,"title":"Appendix A. Incident Severity Levels","slug":"appendix-a-incident-severity-levels","link":"#appendix-a-incident-severity-levels","children":[]},{"level":4,"title":"Appendix B: Quality management","slug":"appendix-b-quality-management","link":"#appendix-b-quality-management","children":[]}]},{"level":3,"title":"Switching repositories","slug":"switching-repositories","link":"#switching-repositories","children":[]}]}]}');export{e as data}; diff --git a/assets/index.html-e8bc6294.js b/assets/index.html-6fcdce25.js similarity index 62% rename from assets/index.html-e8bc6294.js rename to assets/index.html-6fcdce25.js index af6f07b4..b7d5b39f 100644 --- a/assets/index.html-e8bc6294.js +++ b/assets/index.html-6fcdce25.js @@ -1,4 +1,4 @@ -import{_ as s,V as o,n as l,p as d,v as c,q as t,J as e,C as a,A as r,a7 as n}from"./framework-0ba8e1ea.js";const u="/images/esu_lifecycle_graph.png",p={},h=n('

Enterprise Support for AlmaLinux

This guide describes Enterprise Support for AlmaLinux and how to set it up on your AlmaLinux system.

What is Enterprise Support for AlmaLinux?

Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

Available services:

  • Essential Support: TuxCare-vetted repository of AlmaLinux updates with guaranteed uptime, expedited break-and-fix support and up to 16 years of support coverage
  • Extended Security Updates deliver an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions
  • Live Patching (KernelCare and LibCare): automated live patches for the kernel and critical userspace packages with zero downtime
  • Enhanced Support: Enterprise-grade support for AlmaLinux and open-source applications with pay-as-you-go pricing in 5, 10, and 20-hour bundles

Learn more at https://tuxcare.com/almalinux-enterprise-support/

Extended Security Updates

Extended Security Updates (ESU) for AlmaLinux extend the lifecycle of specific AlmaLinux minor versions by delivering both prolonged security updates for High and Critical vulnerabilities as well as FIPS-compliant security patches enabling greater stability and security for AlmaLinux deployments.

ESU lifecycle

AlmaLinux provides a 10-year lifecycle with a new minor release arriving every 6 months, bringing new features until the fifth year. Each of the minor releases is supported for 6 months. Customers who want to remain with the specific AlmaLinux minor release for longer can opt for Extended Security Updates (ESU). ESU delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities as well as FIPS-compliant security patches for select AlmaLinux minor versions. The service is currently available for AlmaLinux 9.2 with planned support for AlmaLinux 9.6 and 9.10. This provision ensures that a given minor release continues to receive essential updates, allowing customers to avoid upgrading every 6 months and test/certify their applications against the next minor version at their own pace.

esu lifecycle

Disclaimer: AlmaLinux minor releases planned for ESU are subject to change. TuxCare reserves the right to change them at any time without prior notice.

Vulnerability coverage

TuxCare employs the Common Vulnerability Scoring System (CVSS v3) to assess the severity of security vulnerabilities. Our severity rating system for patching vulnerabilities integrates both NVD scoring and vendor scoring (when available). When the vendor's score is lower than the NVD score, we give priority to the NVD score. ESU provides security patches for High and Critical vulnerabilities (with a 7+ CVSS score) and urgent priority bug fixes. This strategy aims to reduce changes in the environment, prioritizing stability without compromising critical security.

FIPS-compliant security patches

',16),m=t("a",{href:"https://tuxcare.com/blog/the-dilemmas-of-fips-140-3-compliance/",target:"_blank",rel:"noopener noreferrer"},"do not change the validated cryptography",-1),g=n(`

Target response times

Aligning with many industry standards and regulatory requirements, TuxCare is committed to delivering timely security updates. For instance, the Payment Card Industry Data Security Standard (PCI DSS) mandates that all 'High' vulnerabilities (CVSS score of 7.0+) must be addressed within 30 days. Other regulations and standards, such as the Health Insurance Portability and Accountability Act (HIPAA) for healthcare organizations or the Federal Information Security Management Act (FISMA) for government agencies, uphold similar requirements. We aim to deliver security patches for Critical and High-risk vulnerabilities (CVSS 7+) within 14 days from when the vulnerabilities become publicly disclosed. This rapid response time significantly reduces the window of opportunity for potential attackers and meets most security regulation requirements.

Supported packages

ESU provides updates for a comprehensive list of packages integral to server operations (100+ packages), providing maximum security for your operating system. You can view the full list of supported packages, as well as get detailed information on the patched CVEs, here https://cve.tuxcare.com/. Support for additional packages can be provided on request.

Errata advisories

ESU provides qualified security and selected bug-fix errata advisories across all architectures. They can help users track which Common Vulnerabilities and Exposures (CVE) are resolved and which bugs have been addressed. You can view the full list of released advisories here https://cve.tuxcare.com/els/releases.

OVAL patch definitions

Leveraging Open Vulnerability and Assessment Language (OVAL) patch definitions with OVAL-compatible tools, e.g. OpenSCAP, users can accurately check their systems for the presence of vulnerabilities:

Technical support

All TuxCare products include technical support provided according to the support policy https://tuxcare.com/TuxCare-support-policy.pdf. It delivers 24/7/365 access to our engineers through the TuxCare Support Portal https://tuxcare.com/support-portal/ and to our online knowledge base. Technical Support for Extended Security Updates provides assistance with:

  • ESU repository setup issues
  • Package update problems (package conflicts, missing dependencies)
  • FIPS and CVE-related questions
  • ePortal issues
  • AlmaLinux kernel crash issues (root cause analysis)

GnuPG Keys

The TuxCare ESU/FIPS packages and repositories are cryptographically signed with a GPG key, so you can verify the legitimacy of the software you download and the source of the download. The details of our key are below:

  • Public key: rsa4096/8D50EB66 (2023-03-06)
    • Fingerprint: FAD7 8590 81D0 738B 7A82 8496 D07B F2A0 8D50 EB66
    • ID: TuxCare (Software Signing Key) packager@tuxcare.com
    • Installation location: /etc/pki/rpm-gpg/RPM-GPG-KEY-TuxCare
    • Download link: RPM-GPG-KEY-TuxCare

Installing tuxctl

Requirements

  • AlmaLinux 9.2 operating system
  • x86_64 or aarch64 architecture
  • Extended Security Updates license key (should be obtained from portal.tuxcare.com)
  • Internet access

tuxctl is the setup tool for TuxCare's Enterprise Support for AlmaLinux, which will configure your system to receive patches from the TuxCare repositories. To install tuxctl you need to install the tuxcare-release package first. This package contains the TuxCare repo definitions, TuxCare GPG key and the tuxctl setup tool. Run the following as root:

# dnf install -y https://repo.tuxcare.com/tuxcare/tuxcare-release-latest-$(rpm --eval %almalinux.%_arch).rpm
+import{_ as a,V as r,n,p as s,v as o,q as e,J as t,C as l,A as d,a7 as u}from"./framework-0ba8e1ea.js";const c="/images/esu_lifecycle_graph2.png",p={},h=u('

Enterprise Support for AlmaLinux

This guide describes Enterprise Support for AlmaLinux and how to set it up on your AlmaLinux system.

What is Enterprise Support for AlmaLinux?

Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

Available services:

  • Essential Support: TuxCare-vetted repository of AlmaLinux updates with guaranteed uptime, expedited break-and-fix support and up to 16 years of support coverage
  • Extended Security Updates provide an extended period of security fixes for critical and high-risk vulnerabilities for select AlmaLinux minor versions, as well as the full suite of five FIPS-validated modules (kernel, openssl, libcrypt, nss and gnutls) and FIPS-compliant security patches for FIPS-certified AlmaLinux deployments. The product also unlocks commercial use of the FIPS-validated packages.
  • Enhanced Support: Enterprise-grade support for AlmaLinux and open-source applications with pay-as-you-go pricing in 5, 10, and 20-hour bundles

Learn more at https://tuxcare.com/almalinux-enterprise-support/

Extended Security Updates

Extended Security Updates (ESU) for AlmaLinux extend the lifecycle of specific AlmaLinux minor versions by delivering both prolonged security updates for High and Critical vulnerabilities as well as FIPS-compliant security patches enabling greater stability and security for AlmaLinux deployments.

ESU lifecycle

AlmaLinux provides a 10-year lifecycle with a new minor release arriving every 6 months, bringing new features until the fifth year. Each of the minor releases is supported for 6 months. Customers who want to remain with the specific AlmaLinux minor release for longer can opt for Extended Security Updates (ESU).

ESU delivers an extended period of security fixes for critical and high-risk vulnerabilities for select AlmaLinux minor versions, as well as the full suite of five FIPS-validated modules (kernel, openssl, libcrypt, nss and gnutls) and FIPS-compliant security patches for FIPS-certified AlmaLinux deployments. The product also unlocks commercial use of the FIPS-validated packages.

Extended Security Updates are currently available for AlmaLinux 9.2 and have planned support for AlmaLinux 9.6 and 9.10. This provision ensures that a given minor release continues to receive essential updates, allowing customers to avoid upgrading every six months and test/certify their applications against the next minor version at their own pace.

esu lifecycle

Disclaimer: AlmaLinux minor releases planned for ESU are subject to change. TuxCare reserves the right to change them at any time without prior notice.

Vulnerability coverage

TuxCare employs the Common Vulnerability Scoring System (CVSS v3) to assess the severity of security vulnerabilities. Our severity rating system for patching vulnerabilities integrates both NVD scoring and vendor scoring (when available). When the vendor's score is lower than the NVD score, we give priority to the NVD score. ESU provides security patches for High and Critical vulnerabilities (with a 7+ CVSS score) and urgent priority bug fixes. This strategy aims to reduce changes in the environment, prioritizing stability without compromising critical security.

FIPS-compliant security patches

ESU enables continuous security for FIPS-certified AlmaLinux 9.2 deployments by offering FIPS-compliant security patches for the FIPS-validated kernel, openssl, libcrypt, nss and gnutls packages. These patches do not change the validated cryptography. They are suitable for organizations that don't require strict FIPS-certified implementations that are static and never patched (i.e. military or intelligence agencies). In case of a cryptographic vulnerability that will require a security patch that changes the validated cryptography, we will fix it by delivering a new packaged module. This module will undergo an expedited FIPS 140-3 recertification to ensure it is attested to conform to FIPS 140-3 requirements.

Target response times

Aligning with many industry standards and regulatory requirements, TuxCare is committed to delivering timely security updates. For instance, the Payment Card Industry Data Security Standard (PCI DSS) mandates that all 'High' vulnerabilities (CVSS score of 7.0+) must be addressed within 30 days. Other regulations and standards, such as the Health Insurance Portability and Accountability Act (HIPAA) for healthcare organizations or the Federal Information Security Management Act (FISMA) for government agencies, uphold similar requirements. We aim to deliver security patches for Critical and High-risk vulnerabilities (CVSS 7+) within 14 days from when the vulnerabilities become publicly disclosed. This rapid response time significantly reduces the window of opportunity for potential attackers and meets most security regulation requirements.

Supported packages

ESU provides updates for a comprehensive list of packages integral to server operations (100+ packages), providing maximum security for your operating system. You can view the full list of supported packages, as well as get detailed information on the patched CVEs, here https://cve.tuxcare.com/. Support for additional packages can be provided on request.

Errata advisories

ESU provides qualified security and selected bug-fix errata advisories across all architectures. They can help users track which Common Vulnerabilities and Exposures (CVE) are resolved and which bugs have been addressed. You can view the full list of released advisories here https://cve.tuxcare.com/els/releases.

OVAL patch definitions

Leveraging Open Vulnerability and Assessment Language (OVAL) patch definitions with OVAL-compatible tools, e.g. OpenSCAP, users can accurately check their systems for the presence of vulnerabilities:

Technical support

All TuxCare products include technical support provided according to the support policy https://tuxcare.com/TuxCare-support-policy.pdf. It delivers 24/7/365 access to our engineers through the TuxCare Support Portal https://tuxcare.com/support-portal/ and to our online knowledge base. Technical Support for Extended Security Updates provides assistance with:

  • ESU repository setup issues
  • Package update problems (package conflicts, missing dependencies)
  • FIPS and CVE-related questions
  • ePortal issues
  • AlmaLinux kernel crash issues (root cause analysis)

GnuPG Keys

The TuxCare ESU/FIPS packages and repositories are cryptographically signed with a GPG key, so you can verify the legitimacy of the software you download and the source of the download. The details of our key are below:

  • Public key: rsa4096/8D50EB66 (2023-03-06)
    • Fingerprint: FAD7 8590 81D0 738B 7A82 8496 D07B F2A0 8D50 EB66
    • ID: TuxCare (Software Signing Key) packager@tuxcare.com
    • Installation location: /etc/pki/rpm-gpg/RPM-GPG-KEY-TuxCare
    • Download link: RPM-GPG-KEY-TuxCare

Installing tuxctl

Requirements

  • AlmaLinux 9.2 operating system
  • x86_64 or aarch64 architecture
  • Extended Security Updates license key (should be obtained from portal.tuxcare.com)
  • Internet access

tuxctl is the setup tool for TuxCare's Enterprise Support for AlmaLinux, which will configure your system to receive patches from the TuxCare repositories. To install tuxctl you need to install the tuxcare-release package first. This package contains the TuxCare repo definitions, TuxCare GPG key and the tuxctl setup tool. Run the following as root:

# dnf install -y https://repo.tuxcare.com/tuxcare/tuxcare-release-latest-$(rpm --eval %almalinux.%_arch).rpm
 

The second step is to activate your license on the system. You should run the tuxctl tool as root with your ESU license key provided as a command line argument like so:

# tuxctl --license-key ESU-XXXXXXXXXXXXXXXXXXXXXXXX
 

This tool will do the following:

  1. Check your OS and architecture
  2. Check your license key for validity and purchased extensions
  3. Check if your system is already registered
  4. Register to CloudLinux Network
  5. Obtain a token to access the restricted TuxCare repos
  6. Enable the TuxCare ESU repo
  7. Switch the default AlmaLinux repos to use repo.tuxcare.com
  8. Import the TuxCare GPG key

After installation you'll see the following message:

TuxCare installed successfully
 

This means your system is registered and ready to receive updates from TuxCare.

If during installation something goes wrong then the tuxctl tool will show an error message and suggest how to handle it. For example, if your system is already registered you'll receive the following message:

This server already has a TuxCare token installed
@@ -41,14 +41,6 @@ $ openssl list -providers | grep -A3 fips
 

Then run the following:

# dnf downgrade openssl libgcrypt gnutls nettle nss
 # dnf remove kernel*tuxcare*
 # dnf upgrade
-

Live Patching (KernelCare and LibCare)

Live Patching brings rapid security patching for the kernel and critical userspace packages such as glibc and openssl using the KernelCare Enterprise and LibCare live patching technologies.

Installation

To install the Live Patching product follow the instructions here or simply run the following as root to download the installer and configure the repo:

# curl -s -L https://kernelcare.com/installer | bash
-

Then to activate your license:

# kcarectl --register <KEY>
-

Enabling rapid security updates for userspace components

To enable rapid security updates with live patching for critical userspace components such as glibc and openssl use the following commands to enable LibCare and periodic updates:

# kcarectl --enable-libcare
-# libcare-cron init
-

Using the Live Patching for AlmaLinux (KernelCare and LibCare)

After installation, you can verify that your system has access to KernelCare live patching by running:

# kcarectl -u
-

You should get a message like below, and the system is now receiving kernel security updates as live patches:

Downloading updates
-Patch level 1 applied. Effective kernel version 5.14.0-162.12.1.el9_1
-Kernel is safe
 

Essential and Enhanced Support

1. Introduction

In April 2023, TuxCare, a division of CloudLinux Inc., launched Enterprise Support for AlmaLinux, delivering a range of services for AlmaLinux workloads. It provides two levels of support, the essential level, focused on the operating system, and the enhanced support focused on applications. This document defines those services.

Overview of Services

There are two levels of support services for AlmaLinux:

Essential Support - a limited technical support offering that covers AlmaLinux installation/update issues (packaging, dependencies, repositories), migration issues (from CentOS/OracleLinux/RHEL to AlmaLinux), operating systems bugs/kernel crashes, a self-service portal, as well as an online knowledge base

Enhanced Support - an enterprise technical support service covering a range of open-source software running on AlmaLinux, a self-service portal, as well as an online knowledge base.

2. Definitions

"Customer," "End User," "User," "You/Your" shall mean an organization which has a valid license to the Product that is supported in accordance with this Program.

"Customer Technical Lead" shall mean an employee or authorized contractor of Customer who shall complete required AlmaLinux product training, in order to serve as Customer's first line of internal support for the purpose of triaging AlmaLinux-related product issues, and who shall have authority to submit Technical Support Incidents and Service Requests to TuxCare Technical Support

"Incident" shall mean any event reported by the Customer, which is not part of the standard operation of a Product, and which causes, or may cause an interruption to, or a reduction in, the quality of service provided by the Product.

"Incident Severity/Urgency" shall mean a measure of the business criticality of an incident or problem based on the business needs of the Customer. See Appendix 1 for more details.

"Known Error" shall mean a Problem that becomes a Known Error when the root cause is known, and a temporary workaround or permanent alternative has been identified.

"Problem" shall mean an unknown underlying cause of one or more Incidents. It becomes a Known Error when the root cause is known, and a temporary workaround or permanent alternative has been identified.

"Product(s)" shall mean software product(s) of TuxCare, which the Customer has purchased, deployed, and installed in accordance with the terms of a License Agreement between TuxCare and the Customer.

"Product Error" shall mean undeclared behaviour of the Product.

"Response time" shall mean the elapsed time measured from the moment of any incident receipt until confirmation of receipt by TuxCare to the initiator (via the support system).

"Service Request" shall mean a request from a Customer for support, delivery, information, advice, or documentation, which is not related to an incorrect functioning or non-functioning of the Product(s).

"Upgrade" shall mean a Product update associated with assigning a new version number.

"Workaround" shall mean a procedure that may serve as a temporary solution to an incident.

3. Service Features

FeatureEssential SupportEnhanced Support
Support
  • AlmaLinux installation/update issues (packaging, dependencies, repositories)
  • Migration issues between OS with the same major version (e.g. from CentOS/OL/RHEL 8 to AlmaLinux 8)
  • Operating system bugs / kernel crashes; root cause analysis
Outside the scope: software upgrades, requests to migrate, and the migration between OS with different major versions
Coverage, includes the following applications:
  • Apps - Identity / Directory
    • FreeIPA, Bind
    • openldap
  • Apps - Infrastructure
    • Ceph
    • Samba
  • Containers (docker, podman)
  • VMs (KVM)
  • Apps - Package / Config management:
    • Foreman
    • Ansible
    • Puppet
    • Chef
  • Apps - Web servers
    • nginx
    • apache
    • squid
  • Apps - Data
    • SQL Databases (MariaDB, Postgresql)
    • Redis, MySQL, InfluxDB, CouchDB
  • Apps - Security / Compliance
    • OpenSCAP
  • Devops Apps:
    • gitlab/git, jenkins, kubernetes
  • Apps - event streaming
    • Apache Kafka
    • Rabbitmq
  • Operating system migration (e.g, from Oracle 8 to AlmaLinux 8)
  • Operating system upgrades (e.g, from CentOS 7 to AlmaLinux 8)
  • Design & Architecture (e.g., review)
  • Data storage, backup assistance
  • Configuration assistance
Outside the scope: code changes, software upgrades, migration between OS with different major versions
Incident Support24/7/365 support through web ticketing system24/7/365 support through web ticketing system and email
Allowed Number of Customer Technical Leads2 per 1000 hosts, with maximum 102 per 1000 hosts, with maximum 10

4. Description of Support Program

Accessing Technical Support

TuxCare Technical Support is designed for enterprise clients with trained IT staff which provide initial ‘1st-line' support to triage incidents. Customer and TuxCare will agree on Customer Technical Leads with the client, who will be entitled to access TuxCare Technical Support services; Customer Technical Leads must complete AlmaLinux training requirements. Customer Technical Leads may submit Technical Support Incidents and Service Requests to:

  1. Technical Support ticketing system:
  • Acceptance of requests 24 hours a day, 365 days a year
  • Unlimited number of tickets may be submitted
  • Customers will be supplied with instructions describing the use of the ticketing system during onboarding
  • User accounts will be created for each nominated user within each client organization
  • User accounts will have access to log, view and respond to tickets
  1. Email: acceptance of requests 24 hours a day, 365 days a year:

All customers are entitled to access the Support knowledgebase, FAQs, and other self-service tools as may be offered by Enterprise Support for AlmaLinux.

Response Time

When submitting a ticket, Customers will select the appropriate Severity Level, as defined in Appendix A, from a drop-down list; TuxCare reserves the right to change the Severity Level based on available information. TuxCare will use reasonable efforts to respond to support requests within the initial response times described below, based on the Severity Level of the incident.

Severity LevelEssential SupportEnhanced Support
12 hours30 minutes
212 hours2 hours
32 business days12 hours
45 business days2 business days

Incident Resolution Cooperation

Some incidents may require reproduction by TuxCare for the purpose of testing and verifying a product error. Customer agrees to provide TuxCare with all information which may be necessary for reproducing the condition under which the incident will re-occur and could be examined.

TuxCare will endeavor to reproduce the incident as soon as all the necessary information and software and/or hardware is provided. If the incident could not be reproduced, Customer should grant TuxCare a supervised remote access to the malfunctioning system. If the incident cannot be reproduced by either party, or Customer did not grant access to the network environment where the incident could be reproduced, or if it is detected that the incident's cause lies beyond the Product, the incident cannot be classified within this Support Program.

An incident may at any time be either on the Customer's side (i.e. Customer is taking actions that will promote/expedite the resolution of the issue by TuxCare) or on the AlmaLinux side. An incident is on the Customer's side when TuxCare engineers request information from the Customer. When Customer provides the requested information to TuxCare, the incident is considered to be on the side of the latter. The period during which the incident may be on the Customer's side is limited to one calendar week. If the Customer's response is overdue, the incident is closed by timeout.

Appendices

Appendix A. Incident Severity Levels

Level: DescriptorCriteria/Definition
Level 1: Business StandstillProduction and/or mission critical services are down and there is no immediate workaround.
  • All or a majority of your mission critical environment is unavailable or not functioning
  • Your business operations are completely disrupted
  • Majority / All Critical users affected
  • Request from important client/partner (subject to management approval)
Level 2: Major ImpactMajor feature or function failure; operations are severely restricted, but a workaround is available.
  • Critical business operations seriously affected
  • Direct fiscal impact
  • Substantial number of users are affected, or critical group of users are affected that would not allow the business to run normally
Level 3: Minor ImpactMinor feature or function failure; standard business operations can continue, though possibly in a minor restricted manner.
  • No immediate direct fiscal impact
  • A temporary workaround may have been provided
Level 4: General Inquiry/IssueGeneral usage questions or other non-critical inquiries.
  • Small number of users/systems affected
  • Documentation issue
  • General information request
  • Enhancement request

Appendix B: Quality management

Incident escalation

Customer may escalate unresolved incidents or reports of dissatisfaction according to the following scheme:

Escalation Level123
Escalation PathTechnical Senior Support EngineerSpecialized Support Team Lead or ManagerChief Experience Officer (CXO)

Provision of reports on open incidents

During the process of incident resolution, TuxCare will use reasonable effort to promptly provide the Customer with information regarding open incidents' status, according to the following table.

Severity LevelReport Schedule (through the web ticketing system)
1By agreement, but not more often than once a day
2At least once every 3 business days
3At least once every 2 weeks
4Upon customer request

Limitations of the Support Services

Technical support covered by any of the TuxCare Support Programs shall not be provided in the following cases:

  • Incidents already resolved for the Customer (e.g., an incident that occurred on one installed copy of the Product after the same incident had been resolved for another copy of the Product)
  • Troubleshooting of all issues similar or identical to already resolved issues (i.e. the incidents to which a previously produced solution can be applied without additional guidance from TuxCare)
  • Incidents caused by Customer's hardware malfunction
  • Incidents caused by software platform incompatibility (including, but not limited to beta software, new versions of service packs or additions, whose compatibility with the Product has not been confirmed by AlmaLinux)
  • Incidents caused by installing and running third-party applications (including, but not limited to the list of unsupported or incompatible applications published in the documentation)
  • Incidents for which the Customer cannot provide accurate information, as reasonably requested by TuxCare, in order to reproduce, investigate, and resolve the incident
  • Incidents which arise as a result of neglect or incorrect use of TuxCare instructions, which, if properly used, would have prevented the Incident

Switching repositories

For Essential Support customers wishing to use our vetted TuxCare repos instead of the community AlmaLinux ones, all you have to do is run the following as root:

# sed -i \\
   -e 's|https://repo.almalinux.org/almalinux/|https://repo.tuxcare.com/almalinux/|' \\
   -e 's|^mirrorlist|# mirrorlist|' \\
@@ -59,4 +51,4 @@ Kernel is safe
   -e 's|^# mirrorlist|mirrorlist|' \\
   -e 's|^baseurl|# baseurl|' \\
   /etc/yum.repos.d/almalinux*.repo
-
`,116),v={class:"warning custom-block"},f=t("p",{class:"custom-block-title"},null,-1);function b(x,y){const i=o("RouterLink");return l(),d("div",null,[c(" markdownlint-disable MD033 MD029 MD036 "),h,t("p",null,[e("ESU enables continuous security for FIPS-certified AlmaLinux 9.2 deployments by offering FIPS-compliant security patches for the FIPS-validated "),a(i,{to:"/enterprise-support-for-almalinux/fips/"},{default:r(()=>[e("kernel and OpenSSL packages")]),_:1}),e(". These patches "),m,e(" and are suitable for organizations that don't require strict FIPS-certified implementations that are static and never patched (i.e. military or intelligence agencies). In case of a cryptographic vulnerability that will require a security patch that changes the validated cryptography, we will fix it by delivering a new packaged kernel. This kernel will undergo an expedited FIPS 140-3 recertification to ensure it is attested to conform to FIPS 140-3 requirements.")]),g,t("div",v,[f,t("p",null,[e("Note that if you upgrade past 9.2 you won't be able to upgrade to ESU without a reinstall. ESU customers can find instructions "),a(i,{to:"/enterprise-support-for-almalinux/#installing-tuxctl"},{default:r(()=>[e("above")]),_:1})])])])}const k=s(p,[["render",b],["__file","index.html.vue"]]);export{k as default}; +
`,120),m={class:"warning custom-block"},g=e("p",{class:"custom-block-title"},null,-1);function f(v,b){const i=r("RouterLink");return n(),s("div",null,[o(" markdownlint-disable MD033 MD029 MD036 "),h,e("div",m,[g,e("p",null,[t("Note that if you upgrade past 9.2 you won't be able to upgrade to ESU without a reinstall. ESU customers can find instructions "),l(i,{to:"/enterprise-support-for-almalinux/#installing-tuxctl"},{default:d(()=>[t("above")]),_:1})])])])}const y=a(p,[["render",f],["__file","index.html.vue"]]);export{y as default}; diff --git a/assets/index.html-7c83ba27.js b/assets/index.html-7c83ba27.js new file mode 100644 index 00000000..c16ccde8 --- /dev/null +++ b/assets/index.html-7c83ba27.js @@ -0,0 +1 @@ +import{_ as o,V as i,n as s,p as c,q as n,J as e,C as r,A as a}from"./framework-0ba8e1ea.js";const l={},u=n("h1",{id:"tuxcare",tabindex:"-1"},[n("a",{class:"header-anchor",href:"#tuxcare","aria-hidden":"true"},"#"),e(" TuxCare")],-1),p=n("p",null,"The TuxCare services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.",-1),d=n("p",null,"TuxCare, which is an expansion of the CloudLinux’s KernelCare and Extended Lifecycle Support brands, helps organizations take care of support, maintenance, and security for Enterprise Linux systems.",-1),f=n("p",null,[e("Users requiring FIPS-certified AlmaLinux deployments can download and install our "),n("a",{href:"https://docs.tuxcare.com/enterprise-support-for-almalinux/fips/",target:"_blank",rel:"noopener noreferrer"},"Community FIPS packages for AlmaLinux 9.2"),e(" (kernel and openssl) for free for non-commercial use. Commercial applications should use our "),n("a",{href:"https://docs.tuxcare.com/enterprise-support-for-almalinux/#extended-security-updates",target:"_blank",rel:"noopener noreferrer"},"Extended Security Updates"),e(" product, which offers the full suite of five FIPS 140-3 modules (kernel, openssl, libcrypt, nss and gnutls), FIPS-compliant security updates, and technical support.")],-1);function h(m,x){const t=i("RouterLink");return s(),c("div",null,[u,p,d,n("p",null,[e("With "),r(t,{to:"/live-patching-services/"},{default:a(()=>[e("TuxCare Live Patching Services")]),_:1}),e(", Linux kernels, libraries, databases, virtualizations and IoT devices receive automated security patches applied with zero downtime.")]),n("p",null,[e("Using the "),r(t,{to:"/extended-lifecycle-support/"},{default:a(()=>[e("TuxCare Extended Lifecycle Support")]),_:1}),e(" services, you can migrate to the newest version of Linux at your own pace while maintaining protection from the common risks of running an end-of-life distro.")]),n("p",null,[r(t,{to:"/enterprise-support-for-almalinux/"},{default:a(()=>[e("Enterprise Support for AlmaLinux")]),_:1}),e(" provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage. It also delivers an extended lifecycle with FIPS-compliant security patches for select AlmaLinux minor versions and helps avoid costly upfront support package fees with pay-as-you-go hourly support bundles.")]),f])}const y=o(l,[["render",h],["__file","index.html.vue"]]);export{y as default}; diff --git a/assets/index.html-c0adceea.js b/assets/index.html-c0adceea.js deleted file mode 100644 index 50137b8b..00000000 --- a/assets/index.html-c0adceea.js +++ /dev/null @@ -1 +0,0 @@ -const e=JSON.parse('{"key":"v-b0d2ea62","path":"/enterprise-support-for-almalinux/","title":"Enterprise Support for AlmaLinux","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"What is Enterprise Support for AlmaLinux?","slug":"what-is-enterprise-support-for-almalinux","link":"#what-is-enterprise-support-for-almalinux","children":[]},{"level":2,"title":"Extended Security Updates","slug":"extended-security-updates","link":"#extended-security-updates","children":[{"level":3,"title":"ESU lifecycle","slug":"esu-lifecycle","link":"#esu-lifecycle","children":[]},{"level":3,"title":"Vulnerability coverage","slug":"vulnerability-coverage","link":"#vulnerability-coverage","children":[]},{"level":3,"title":"FIPS-compliant security patches","slug":"fips-compliant-security-patches","link":"#fips-compliant-security-patches","children":[]},{"level":3,"title":"Target response times","slug":"target-response-times","link":"#target-response-times","children":[]},{"level":3,"title":"Supported packages","slug":"supported-packages","link":"#supported-packages","children":[]},{"level":3,"title":"Errata advisories","slug":"errata-advisories","link":"#errata-advisories","children":[]},{"level":3,"title":"OVAL patch definitions","slug":"oval-patch-definitions","link":"#oval-patch-definitions","children":[]},{"level":3,"title":"Technical support","slug":"technical-support","link":"#technical-support","children":[]},{"level":3,"title":"GnuPG Keys","slug":"gnupg-keys","link":"#gnupg-keys","children":[]},{"level":3,"title":"Installing tuxctl","slug":"installing-tuxctl","link":"#installing-tuxctl","children":[]},{"level":3,"title":"Enabling FIPS 140-3 mode","slug":"enabling-fips-140-3-mode","link":"#enabling-fips-140-3-mode","children":[]},{"level":3,"title":"Uninstalling tuxctl","slug":"uninstalling-tuxctl","link":"#uninstalling-tuxctl","children":[]}]},{"level":2,"title":"Live Patching (KernelCare and LibCare)","slug":"live-patching-kernelcare-and-libcare","link":"#live-patching-kernelcare-and-libcare","children":[{"level":3,"title":"Installation","slug":"installation","link":"#installation","children":[{"level":4,"title":"Enabling rapid security updates for userspace components","slug":"enabling-rapid-security-updates-for-userspace-components","link":"#enabling-rapid-security-updates-for-userspace-components","children":[]}]},{"level":3,"title":"Using the Live Patching for AlmaLinux (KernelCare and LibCare)","slug":"using-the-live-patching-for-almalinux-kernelcare-and-libcare","link":"#using-the-live-patching-for-almalinux-kernelcare-and-libcare","children":[]}]},{"level":2,"title":"Essential and Enhanced Support","slug":"essential-and-enhanced-support","link":"#essential-and-enhanced-support","children":[{"level":3,"title":"1. Introduction","slug":"_1-introduction","link":"#_1-introduction","children":[]},{"level":3,"title":"2. Definitions","slug":"_2-definitions","link":"#_2-definitions","children":[]},{"level":3,"title":"3. Service Features","slug":"_3-service-features","link":"#_3-service-features","children":[]},{"level":3,"title":"4. Description of Support Program","slug":"_4-description-of-support-program","link":"#_4-description-of-support-program","children":[{"level":4,"title":"Accessing Technical Support","slug":"accessing-technical-support","link":"#accessing-technical-support","children":[]},{"level":4,"title":"Response Time","slug":"response-time","link":"#response-time","children":[]},{"level":4,"title":"Incident Resolution Cooperation","slug":"incident-resolution-cooperation","link":"#incident-resolution-cooperation","children":[]}]},{"level":3,"title":"Appendices","slug":"appendices","link":"#appendices","children":[{"level":4,"title":"Appendix A. Incident Severity Levels","slug":"appendix-a-incident-severity-levels","link":"#appendix-a-incident-severity-levels","children":[]},{"level":4,"title":"Appendix B: Quality management","slug":"appendix-b-quality-management","link":"#appendix-b-quality-management","children":[]}]},{"level":3,"title":"Switching repositories","slug":"switching-repositories","link":"#switching-repositories","children":[]}]}]}');export{e as data}; diff --git a/assets/index.html-c2cc080f.js b/assets/index.html-c2cc080f.js deleted file mode 100644 index 96aa1d96..00000000 --- a/assets/index.html-c2cc080f.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as r,V as o,n as s,p as c,q as i,J as e,C as t,A as a}from"./framework-0ba8e1ea.js";const l={},u=i("h1",{id:"tuxcare",tabindex:"-1"},[i("a",{class:"header-anchor",href:"#tuxcare","aria-hidden":"true"},"#"),e(" TuxCare")],-1),d=i("p",null,"The TuxCare services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.",-1),p=i("p",null,"TuxCare, which is an expansion of the CloudLinux’s KernelCare and Extended Lifecycle Support brands, helps organizations take care of support, maintenance, and security for Enterprise Linux systems.",-1);function f(h,m){const n=o("RouterLink");return s(),c("div",null,[u,d,p,i("p",null,[e("With "),t(n,{to:"/live-patching-services/"},{default:a(()=>[e("TuxCare Live Patching Services")]),_:1}),e(", Linux kernels, libraries, databases, virtualizations and IoT devices receive automated security patches applied with zero downtime.")]),i("p",null,[e("Using the "),t(n,{to:"/extended-lifecycle-support/"},{default:a(()=>[e("TuxCare Extended Lifecycle Support")]),_:1}),e(" services, you can migrate to the newest version of Linux at your own pace while maintaining protection from the common risks of running an end-of-life distro.")]),i("p",null,[t(n,{to:"/enterprise-support-for-almalinux/"},{default:a(()=>[e("Enterprise Support for AlmaLinux")]),_:1}),e(" provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.")]),i("p",null,[e("TuxCare provides the AlmaLinux community with FIPS 140-3 certification for AlmaLinux 9.2. Organizations requiring FIPS-certified AlmaLinux deployments or those operating under compliance regimes with similar requirements (e.g., PCI DSS, HIPAA) can download and install "),t(n,{to:"/enterprise-support-for-almalinux/fips/"},{default:a(()=>[e("FIPS-validated cryptographic packages for AlmaLinux 9.2")]),_:1}),e(" (including the kernel and OpenSSL) for free.")])])}const g=r(l,[["render",f],["__file","index.html.vue"]]);export{g as default}; diff --git a/enterprise-support-for-almalinux/fips/index.html b/enterprise-support-for-almalinux/fips/index.html index b2c2438b..571cce4a 100644 --- a/enterprise-support-for-almalinux/fips/index.html +++ b/enterprise-support-for-almalinux/fips/index.html @@ -39,7 +39,7 @@ })(); FIPS packages for AlmaLinux Community - +
sidebar hamburger menu

FIPS packages for AlmaLinux Community

Below are the instructions for installing the TuxCare FIPS 140-3 validated modules for AlmaLinux 9.2, they should be run as root.

For commercial customers of our ESU product, please use the instructions here instead.

By installing this software, you agree to be bound by the terms of the TuxCare Community EULA.

# dnf -y install https://repo.tuxcare.com/fips/tuxcare-fips-release-latest-9.noarch.rpm
@@ -55,6 +55,6 @@
 # dnf versionlock add openssl*tuxcare* kernel*tuxcare*
 

To revert to the previous behaviour of getting updated kernel/openssl packages from AlmaLinux, run the following as root:

# dnf versionlock delete openssl*tuxcare* kernel*tuxcare*
 
- + diff --git a/enterprise-support-for-almalinux/index.html b/enterprise-support-for-almalinux/index.html index 999a1454..b0e6a83a 100644 --- a/enterprise-support-for-almalinux/index.html +++ b/enterprise-support-for-almalinux/index.html @@ -39,10 +39,10 @@ })(); Enterprise Support for AlmaLinux - + -
sidebar hamburger menu

Enterprise Support for AlmaLinux

This guide describes Enterprise Support for AlmaLinux and how to set it up on your AlmaLinux system.

What is Enterprise Support for AlmaLinux?

Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

Available services:

  • Essential Support: TuxCare-vetted repository of AlmaLinux updates with guaranteed uptime, expedited break-and-fix support and up to 16 years of support coverage
  • Extended Security Updates deliver an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions
  • Live Patching (KernelCare and LibCare): automated live patches for the kernel and critical userspace packages with zero downtime
  • Enhanced Support: Enterprise-grade support for AlmaLinux and open-source applications with pay-as-you-go pricing in 5, 10, and 20-hour bundles

Learn more at https://tuxcare.com/almalinux-enterprise-support/

Extended Security Updates

Extended Security Updates (ESU) for AlmaLinux extend the lifecycle of specific AlmaLinux minor versions by delivering both prolonged security updates for High and Critical vulnerabilities as well as FIPS-compliant security patches enabling greater stability and security for AlmaLinux deployments.

ESU lifecycle

AlmaLinux provides a 10-year lifecycle with a new minor release arriving every 6 months, bringing new features until the fifth year. Each of the minor releases is supported for 6 months. Customers who want to remain with the specific AlmaLinux minor release for longer can opt for Extended Security Updates (ESU). ESU delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities as well as FIPS-compliant security patches for select AlmaLinux minor versions. The service is currently available for AlmaLinux 9.2 with planned support for AlmaLinux 9.6 and 9.10. This provision ensures that a given minor release continues to receive essential updates, allowing customers to avoid upgrading every 6 months and test/certify their applications against the next minor version at their own pace.

esu lifecycle

Disclaimer: AlmaLinux minor releases planned for ESU are subject to change. TuxCare reserves the right to change them at any time without prior notice.

Vulnerability coverage

TuxCare employs the Common Vulnerability Scoring System (CVSS v3) to assess the severity of security vulnerabilities. Our severity rating system for patching vulnerabilities integrates both NVD scoring and vendor scoring (when available). When the vendor's score is lower than the NVD score, we give priority to the NVD score. ESU provides security patches for High and Critical vulnerabilities (with a 7+ CVSS score) and urgent priority bug fixes. This strategy aims to reduce changes in the environment, prioritizing stability without compromising critical security.

FIPS-compliant security patches

ESU enables continuous security for FIPS-certified AlmaLinux 9.2 deployments by offering FIPS-compliant security patches for the FIPS-validated kernel and OpenSSL packages. These patches do not change the validated cryptography and are suitable for organizations that don't require strict FIPS-certified implementations that are static and never patched (i.e. military or intelligence agencies). In case of a cryptographic vulnerability that will require a security patch that changes the validated cryptography, we will fix it by delivering a new packaged kernel. This kernel will undergo an expedited FIPS 140-3 recertification to ensure it is attested to conform to FIPS 140-3 requirements.

Target response times

Aligning with many industry standards and regulatory requirements, TuxCare is committed to delivering timely security updates. For instance, the Payment Card Industry Data Security Standard (PCI DSS) mandates that all 'High' vulnerabilities (CVSS score of 7.0+) must be addressed within 30 days. Other regulations and standards, such as the Health Insurance Portability and Accountability Act (HIPAA) for healthcare organizations or the Federal Information Security Management Act (FISMA) for government agencies, uphold similar requirements. We aim to deliver security patches for Critical and High-risk vulnerabilities (CVSS 7+) within 14 days from when the vulnerabilities become publicly disclosed. This rapid response time significantly reduces the window of opportunity for potential attackers and meets most security regulation requirements.

Supported packages

ESU provides updates for a comprehensive list of packages integral to server operations (100+ packages), providing maximum security for your operating system. You can view the full list of supported packages, as well as get detailed information on the patched CVEs, here https://cve.tuxcare.com/. Support for additional packages can be provided on request.

Errata advisories

ESU provides qualified security and selected bug-fix errata advisories across all architectures. They can help users track which Common Vulnerabilities and Exposures (CVE) are resolved and which bugs have been addressed. You can view the full list of released advisories here https://cve.tuxcare.com/els/releases.

OVAL patch definitions

Leveraging Open Vulnerability and Assessment Language (OVAL) patch definitions with OVAL-compatible tools, e.g. OpenSCAP, users can accurately check their systems for the presence of vulnerabilities:

Technical support

All TuxCare products include technical support provided according to the support policy https://tuxcare.com/TuxCare-support-policy.pdf. It delivers 24/7/365 access to our engineers through the TuxCare Support Portal https://tuxcare.com/support-portal/ and to our online knowledge base. Technical Support for Extended Security Updates provides assistance with:

  • ESU repository setup issues
  • Package update problems (package conflicts, missing dependencies)
  • FIPS and CVE-related questions
  • ePortal issues
  • AlmaLinux kernel crash issues (root cause analysis)

GnuPG Keys

The TuxCare ESU/FIPS packages and repositories are cryptographically signed with a GPG key, so you can verify the legitimacy of the software you download and the source of the download. The details of our key are below:

  • Public key: rsa4096/8D50EB66 (2023-03-06)
    • Fingerprint: FAD7 8590 81D0 738B 7A82 8496 D07B F2A0 8D50 EB66
    • ID: TuxCare (Software Signing Key) packager@tuxcare.com
    • Installation location: /etc/pki/rpm-gpg/RPM-GPG-KEY-TuxCare
    • Download link: RPM-GPG-KEY-TuxCare

Installing tuxctl

Requirements

  • AlmaLinux 9.2 operating system
  • x86_64 or aarch64 architecture
  • Extended Security Updates license key (should be obtained from portal.tuxcare.com)
  • Internet access

tuxctl is the setup tool for TuxCare's Enterprise Support for AlmaLinux, which will configure your system to receive patches from the TuxCare repositories. To install tuxctl you need to install the tuxcare-release package first. This package contains the TuxCare repo definitions, TuxCare GPG key and the tuxctl setup tool. Run the following as root:

# dnf install -y https://repo.tuxcare.com/tuxcare/tuxcare-release-latest-$(rpm --eval %almalinux.%_arch).rpm
+    
sidebar hamburger menu

Enterprise Support for AlmaLinux

This guide describes Enterprise Support for AlmaLinux and how to set it up on your AlmaLinux system.

What is Enterprise Support for AlmaLinux?

Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

Available services:

  • Essential Support: TuxCare-vetted repository of AlmaLinux updates with guaranteed uptime, expedited break-and-fix support and up to 16 years of support coverage
  • Extended Security Updates provide an extended period of security fixes for critical and high-risk vulnerabilities for select AlmaLinux minor versions, as well as the full suite of five FIPS-validated modules (kernel, openssl, libcrypt, nss and gnutls) and FIPS-compliant security patches for FIPS-certified AlmaLinux deployments. The product also unlocks commercial use of the FIPS-validated packages.
  • Enhanced Support: Enterprise-grade support for AlmaLinux and open-source applications with pay-as-you-go pricing in 5, 10, and 20-hour bundles

Learn more at https://tuxcare.com/almalinux-enterprise-support/

Extended Security Updates

Extended Security Updates (ESU) for AlmaLinux extend the lifecycle of specific AlmaLinux minor versions by delivering both prolonged security updates for High and Critical vulnerabilities as well as FIPS-compliant security patches enabling greater stability and security for AlmaLinux deployments.

ESU lifecycle

AlmaLinux provides a 10-year lifecycle with a new minor release arriving every 6 months, bringing new features until the fifth year. Each of the minor releases is supported for 6 months. Customers who want to remain with the specific AlmaLinux minor release for longer can opt for Extended Security Updates (ESU).

ESU delivers an extended period of security fixes for critical and high-risk vulnerabilities for select AlmaLinux minor versions, as well as the full suite of five FIPS-validated modules (kernel, openssl, libcrypt, nss and gnutls) and FIPS-compliant security patches for FIPS-certified AlmaLinux deployments. The product also unlocks commercial use of the FIPS-validated packages.

Extended Security Updates are currently available for AlmaLinux 9.2 and have planned support for AlmaLinux 9.6 and 9.10. This provision ensures that a given minor release continues to receive essential updates, allowing customers to avoid upgrading every six months and test/certify their applications against the next minor version at their own pace.

esu lifecycle

Disclaimer: AlmaLinux minor releases planned for ESU are subject to change. TuxCare reserves the right to change them at any time without prior notice.

Vulnerability coverage

TuxCare employs the Common Vulnerability Scoring System (CVSS v3) to assess the severity of security vulnerabilities. Our severity rating system for patching vulnerabilities integrates both NVD scoring and vendor scoring (when available). When the vendor's score is lower than the NVD score, we give priority to the NVD score. ESU provides security patches for High and Critical vulnerabilities (with a 7+ CVSS score) and urgent priority bug fixes. This strategy aims to reduce changes in the environment, prioritizing stability without compromising critical security.

FIPS-compliant security patches

ESU enables continuous security for FIPS-certified AlmaLinux 9.2 deployments by offering FIPS-compliant security patches for the FIPS-validated kernel, openssl, libcrypt, nss and gnutls packages. These patches do not change the validated cryptography. They are suitable for organizations that don't require strict FIPS-certified implementations that are static and never patched (i.e. military or intelligence agencies). In case of a cryptographic vulnerability that will require a security patch that changes the validated cryptography, we will fix it by delivering a new packaged module. This module will undergo an expedited FIPS 140-3 recertification to ensure it is attested to conform to FIPS 140-3 requirements.

Target response times

Aligning with many industry standards and regulatory requirements, TuxCare is committed to delivering timely security updates. For instance, the Payment Card Industry Data Security Standard (PCI DSS) mandates that all 'High' vulnerabilities (CVSS score of 7.0+) must be addressed within 30 days. Other regulations and standards, such as the Health Insurance Portability and Accountability Act (HIPAA) for healthcare organizations or the Federal Information Security Management Act (FISMA) for government agencies, uphold similar requirements. We aim to deliver security patches for Critical and High-risk vulnerabilities (CVSS 7+) within 14 days from when the vulnerabilities become publicly disclosed. This rapid response time significantly reduces the window of opportunity for potential attackers and meets most security regulation requirements.

Supported packages

ESU provides updates for a comprehensive list of packages integral to server operations (100+ packages), providing maximum security for your operating system. You can view the full list of supported packages, as well as get detailed information on the patched CVEs, here https://cve.tuxcare.com/. Support for additional packages can be provided on request.

Errata advisories

ESU provides qualified security and selected bug-fix errata advisories across all architectures. They can help users track which Common Vulnerabilities and Exposures (CVE) are resolved and which bugs have been addressed. You can view the full list of released advisories here https://cve.tuxcare.com/els/releases.

OVAL patch definitions

Leveraging Open Vulnerability and Assessment Language (OVAL) patch definitions with OVAL-compatible tools, e.g. OpenSCAP, users can accurately check their systems for the presence of vulnerabilities:

Technical support

All TuxCare products include technical support provided according to the support policy https://tuxcare.com/TuxCare-support-policy.pdf. It delivers 24/7/365 access to our engineers through the TuxCare Support Portal https://tuxcare.com/support-portal/ and to our online knowledge base. Technical Support for Extended Security Updates provides assistance with:

  • ESU repository setup issues
  • Package update problems (package conflicts, missing dependencies)
  • FIPS and CVE-related questions
  • ePortal issues
  • AlmaLinux kernel crash issues (root cause analysis)

GnuPG Keys

The TuxCare ESU/FIPS packages and repositories are cryptographically signed with a GPG key, so you can verify the legitimacy of the software you download and the source of the download. The details of our key are below:

  • Public key: rsa4096/8D50EB66 (2023-03-06)
    • Fingerprint: FAD7 8590 81D0 738B 7A82 8496 D07B F2A0 8D50 EB66
    • ID: TuxCare (Software Signing Key) packager@tuxcare.com
    • Installation location: /etc/pki/rpm-gpg/RPM-GPG-KEY-TuxCare
    • Download link: RPM-GPG-KEY-TuxCare

Installing tuxctl

Requirements

  • AlmaLinux 9.2 operating system
  • x86_64 or aarch64 architecture
  • Extended Security Updates license key (should be obtained from portal.tuxcare.com)
  • Internet access

tuxctl is the setup tool for TuxCare's Enterprise Support for AlmaLinux, which will configure your system to receive patches from the TuxCare repositories. To install tuxctl you need to install the tuxcare-release package first. This package contains the TuxCare repo definitions, TuxCare GPG key and the tuxctl setup tool. Run the following as root:

# dnf install -y https://repo.tuxcare.com/tuxcare/tuxcare-release-latest-$(rpm --eval %almalinux.%_arch).rpm
 

The second step is to activate your license on the system. You should run the tuxctl tool as root with your ESU license key provided as a command line argument like so:

# tuxctl --license-key ESU-XXXXXXXXXXXXXXXXXXXXXXXX
 

This tool will do the following:

  1. Check your OS and architecture
  2. Check your license key for validity and purchased extensions
  3. Check if your system is already registered
  4. Register to CloudLinux Network
  5. Obtain a token to access the restricted TuxCare repos
  6. Enable the TuxCare ESU repo
  7. Switch the default AlmaLinux repos to use repo.tuxcare.com
  8. Import the TuxCare GPG key

After installation you'll see the following message:

TuxCare installed successfully
 

This means your system is registered and ready to receive updates from TuxCare.

If during installation something goes wrong then the tuxctl tool will show an error message and suggest how to handle it. For example, if your system is already registered you'll receive the following message:

This server already has a TuxCare token installed
@@ -85,14 +85,6 @@
 

Then run the following:

# dnf downgrade openssl libgcrypt gnutls nettle nss
 # dnf remove kernel*tuxcare*
 # dnf upgrade
-

Live Patching (KernelCare and LibCare)

Live Patching brings rapid security patching for the kernel and critical userspace packages such as glibc and openssl using the KernelCare Enterprise and LibCare live patching technologies.

Installation

To install the Live Patching product follow the instructions here or simply run the following as root to download the installer and configure the repo:

# curl -s -L https://kernelcare.com/installer | bash
-

Then to activate your license:

# kcarectl --register <KEY>
-

Enabling rapid security updates for userspace components

To enable rapid security updates with live patching for critical userspace components such as glibc and openssl use the following commands to enable LibCare and periodic updates:

# kcarectl --enable-libcare
-# libcare-cron init
-

Using the Live Patching for AlmaLinux (KernelCare and LibCare)

After installation, you can verify that your system has access to KernelCare live patching by running:

# kcarectl -u
-

You should get a message like below, and the system is now receiving kernel security updates as live patches:

Downloading updates
-Patch level 1 applied. Effective kernel version 5.14.0-162.12.1.el9_1
-Kernel is safe
 

Essential and Enhanced Support

1. Introduction

In April 2023, TuxCare, a division of CloudLinux Inc., launched Enterprise Support for AlmaLinux, delivering a range of services for AlmaLinux workloads. It provides two levels of support, the essential level, focused on the operating system, and the enhanced support focused on applications. This document defines those services.

Overview of Services

There are two levels of support services for AlmaLinux:

Essential Support - a limited technical support offering that covers AlmaLinux installation/update issues (packaging, dependencies, repositories), migration issues (from CentOS/OracleLinux/RHEL to AlmaLinux), operating systems bugs/kernel crashes, a self-service portal, as well as an online knowledge base

Enhanced Support - an enterprise technical support service covering a range of open-source software running on AlmaLinux, a self-service portal, as well as an online knowledge base.

2. Definitions

"Customer," "End User," "User," "You/Your" shall mean an organization which has a valid license to the Product that is supported in accordance with this Program.

"Customer Technical Lead" shall mean an employee or authorized contractor of Customer who shall complete required AlmaLinux product training, in order to serve as Customer's first line of internal support for the purpose of triaging AlmaLinux-related product issues, and who shall have authority to submit Technical Support Incidents and Service Requests to TuxCare Technical Support

"Incident" shall mean any event reported by the Customer, which is not part of the standard operation of a Product, and which causes, or may cause an interruption to, or a reduction in, the quality of service provided by the Product.

"Incident Severity/Urgency" shall mean a measure of the business criticality of an incident or problem based on the business needs of the Customer. See Appendix 1 for more details.

"Known Error" shall mean a Problem that becomes a Known Error when the root cause is known, and a temporary workaround or permanent alternative has been identified.

"Problem" shall mean an unknown underlying cause of one or more Incidents. It becomes a Known Error when the root cause is known, and a temporary workaround or permanent alternative has been identified.

"Product(s)" shall mean software product(s) of TuxCare, which the Customer has purchased, deployed, and installed in accordance with the terms of a License Agreement between TuxCare and the Customer.

"Product Error" shall mean undeclared behaviour of the Product.

"Response time" shall mean the elapsed time measured from the moment of any incident receipt until confirmation of receipt by TuxCare to the initiator (via the support system).

"Service Request" shall mean a request from a Customer for support, delivery, information, advice, or documentation, which is not related to an incorrect functioning or non-functioning of the Product(s).

"Upgrade" shall mean a Product update associated with assigning a new version number.

"Workaround" shall mean a procedure that may serve as a temporary solution to an incident.

3. Service Features

FeatureEssential SupportEnhanced Support
Support
  • AlmaLinux installation/update issues (packaging, dependencies, repositories)
  • Migration issues between OS with the same major version (e.g. from CentOS/OL/RHEL 8 to AlmaLinux 8)
  • Operating system bugs / kernel crashes; root cause analysis
Outside the scope: software upgrades, requests to migrate, and the migration between OS with different major versions
Coverage, includes the following applications:
  • Apps - Identity / Directory
    • FreeIPA, Bind
    • openldap
  • Apps - Infrastructure
    • Ceph
    • Samba
  • Containers (docker, podman)
  • VMs (KVM)
  • Apps - Package / Config management:
    • Foreman
    • Ansible
    • Puppet
    • Chef
  • Apps - Web servers
    • nginx
    • apache
    • squid
  • Apps - Data
    • SQL Databases (MariaDB, Postgresql)
    • Redis, MySQL, InfluxDB, CouchDB
  • Apps - Security / Compliance
    • OpenSCAP
  • Devops Apps:
    • gitlab/git, jenkins, kubernetes
  • Apps - event streaming
    • Apache Kafka
    • Rabbitmq
  • Operating system migration (e.g, from Oracle 8 to AlmaLinux 8)
  • Operating system upgrades (e.g, from CentOS 7 to AlmaLinux 8)
  • Design & Architecture (e.g., review)
  • Data storage, backup assistance
  • Configuration assistance
Outside the scope: code changes, software upgrades, migration between OS with different major versions
Incident Support24/7/365 support through web ticketing system24/7/365 support through web ticketing system and email
Allowed Number of Customer Technical Leads2 per 1000 hosts, with maximum 102 per 1000 hosts, with maximum 10

4. Description of Support Program

Accessing Technical Support

TuxCare Technical Support is designed for enterprise clients with trained IT staff which provide initial ‘1st-line' support to triage incidents. Customer and TuxCare will agree on Customer Technical Leads with the client, who will be entitled to access TuxCare Technical Support services; Customer Technical Leads must complete AlmaLinux training requirements. Customer Technical Leads may submit Technical Support Incidents and Service Requests to:

  1. Technical Support ticketing system:
  • Acceptance of requests 24 hours a day, 365 days a year
  • Unlimited number of tickets may be submitted
  • Customers will be supplied with instructions describing the use of the ticketing system during onboarding
  • User accounts will be created for each nominated user within each client organization
  • User accounts will have access to log, view and respond to tickets
  1. Email: acceptance of requests 24 hours a day, 365 days a year:

All customers are entitled to access the Support knowledgebase, FAQs, and other self-service tools as may be offered by Enterprise Support for AlmaLinux.

Response Time

When submitting a ticket, Customers will select the appropriate Severity Level, as defined in Appendix A, from a drop-down list; TuxCare reserves the right to change the Severity Level based on available information. TuxCare will use reasonable efforts to respond to support requests within the initial response times described below, based on the Severity Level of the incident.

Severity LevelEssential SupportEnhanced Support
12 hours30 minutes
212 hours2 hours
32 business days12 hours
45 business days2 business days

Incident Resolution Cooperation

Some incidents may require reproduction by TuxCare for the purpose of testing and verifying a product error. Customer agrees to provide TuxCare with all information which may be necessary for reproducing the condition under which the incident will re-occur and could be examined.

TuxCare will endeavor to reproduce the incident as soon as all the necessary information and software and/or hardware is provided. If the incident could not be reproduced, Customer should grant TuxCare a supervised remote access to the malfunctioning system. If the incident cannot be reproduced by either party, or Customer did not grant access to the network environment where the incident could be reproduced, or if it is detected that the incident's cause lies beyond the Product, the incident cannot be classified within this Support Program.

An incident may at any time be either on the Customer's side (i.e. Customer is taking actions that will promote/expedite the resolution of the issue by TuxCare) or on the AlmaLinux side. An incident is on the Customer's side when TuxCare engineers request information from the Customer. When Customer provides the requested information to TuxCare, the incident is considered to be on the side of the latter. The period during which the incident may be on the Customer's side is limited to one calendar week. If the Customer's response is overdue, the incident is closed by timeout.

Appendices

Appendix A. Incident Severity Levels

Level: DescriptorCriteria/Definition
Level 1: Business StandstillProduction and/or mission critical services are down and there is no immediate workaround.
  • All or a majority of your mission critical environment is unavailable or not functioning
  • Your business operations are completely disrupted
  • Majority / All Critical users affected
  • Request from important client/partner (subject to management approval)
Level 2: Major ImpactMajor feature or function failure; operations are severely restricted, but a workaround is available.
  • Critical business operations seriously affected
  • Direct fiscal impact
  • Substantial number of users are affected, or critical group of users are affected that would not allow the business to run normally
Level 3: Minor ImpactMinor feature or function failure; standard business operations can continue, though possibly in a minor restricted manner.
  • No immediate direct fiscal impact
  • A temporary workaround may have been provided
Level 4: General Inquiry/IssueGeneral usage questions or other non-critical inquiries.
  • Small number of users/systems affected
  • Documentation issue
  • General information request
  • Enhancement request

Appendix B: Quality management

Incident escalation

Customer may escalate unresolved incidents or reports of dissatisfaction according to the following scheme:

Escalation Level123
Escalation PathTechnical Senior Support EngineerSpecialized Support Team Lead or ManagerChief Experience Officer (CXO)

Provision of reports on open incidents

During the process of incident resolution, TuxCare will use reasonable effort to promptly provide the Customer with information regarding open incidents' status, according to the following table.

Severity LevelReport Schedule (through the web ticketing system)
1By agreement, but not more often than once a day
2At least once every 3 business days
3At least once every 2 weeks
4Upon customer request

Limitations of the Support Services

Technical support covered by any of the TuxCare Support Programs shall not be provided in the following cases:

  • Incidents already resolved for the Customer (e.g., an incident that occurred on one installed copy of the Product after the same incident had been resolved for another copy of the Product)
  • Troubleshooting of all issues similar or identical to already resolved issues (i.e. the incidents to which a previously produced solution can be applied without additional guidance from TuxCare)
  • Incidents caused by Customer's hardware malfunction
  • Incidents caused by software platform incompatibility (including, but not limited to beta software, new versions of service packs or additions, whose compatibility with the Product has not been confirmed by AlmaLinux)
  • Incidents caused by installing and running third-party applications (including, but not limited to the list of unsupported or incompatible applications published in the documentation)
  • Incidents for which the Customer cannot provide accurate information, as reasonably requested by TuxCare, in order to reproduce, investigate, and resolve the incident
  • Incidents which arise as a result of neglect or incorrect use of TuxCare instructions, which, if properly used, would have prevented the Incident

Switching repositories

For Essential Support customers wishing to use our vetted TuxCare repos instead of the community AlmaLinux ones, all you have to do is run the following as root:

# sed -i \
   -e 's|https://repo.almalinux.org/almalinux/|https://repo.tuxcare.com/almalinux/|' \
   -e 's|^mirrorlist|# mirrorlist|' \
@@ -104,6 +96,6 @@
   -e 's|^baseurl|# baseurl|' \
   /etc/yum.repos.d/almalinux*.repo
 

Note that if you upgrade past 9.2 you won't be able to upgrade to ESU without a reinstall. ESU customers can find instructions above

- + diff --git a/eportal-api/index.html b/eportal-api/index.html index b0c3715b..8e10b201 100644 --- a/eportal-api/index.html +++ b/eportal-api/index.html @@ -39,7 +39,7 @@ })(); ePortal API - +
sidebar hamburger menu

ePortal API

You may need to create a separate ePortal account for API usage with:

kc.eportal user -a api-user -p <password>
@@ -255,6 +255,6 @@
 
  • Now your plan is ready and can be called directly with:
    bolt plan run eportal_puppet:unregister_server -t <TARGETS>
     
  • Ad hoc run example with:

    bolt plan run eportal_puppet::unregister_server -t 192.168.246.110
     

    This can be called during machine tear down to properly remove the server from ePortal.

    - + diff --git a/eportal/index.html b/eportal/index.html index 44531e28..1c54103d 100644 --- a/eportal/index.html +++ b/eportal/index.html @@ -39,7 +39,7 @@ })(); ePortal - +
    sidebar hamburger menu

    ePortal

    TuxCare ePortal is the web management console dedicated to KernelCare Enterprise live patch management.

    ePortal software can help protect servers located behind the firewall (i.e. with no internet access) and can be installed both on-premises and in the cloud.

    Overview

    ePortal Hardware Requirements

    Disk:

    • 100 GB minimum, 200 GB recommended (20GB in case of cache mode)
    • SSD with at least 100 IOPS

    Note

    SSD based storage is a crucial requirement for ePortal server.

    CPU:

    As far as other requirements concerned, we have tested the following configuration and the following number of connected servers:

    • 10k of connected machines is the maximum for the following requirements:

      • VM
      • 1 VCPU
      • 1 GB RAM
    • 75k of connected machines is the maximum for the following requirements:

      • Core i5
      • 1 CPU
      • 4 GB RAM

    Installation

    Note

    If you are installing for the first time, please confirm with our sales engineering team at sales@tuxcare.com BEFORE trying the installation via the documentation below. Please note that support tickets resulting from not following this recommendation will not be accepted.

    ePortal is compatible with 64-bit versions of EL7/8/9 based distros like CentOS 7/8, AlmaLinux 8/9 and Ubuntu 20.04/22.04

    RHEL-based distros

    For installation and workability of ePortal the Nginx web server is required. We recommend to use stable version from the official Nginx repository:

    # cat > /etc/yum.repos.d/nginx.repo <<EOL
    @@ -370,6 +370,6 @@
     

    Run:

    # kc.eportal sync-nginx-conf
     

    It initializes storage and makes corresponding modifications to nginx config to serve patches from a new place.

    And restart nginx and eportal services to apply changes:

    # systemctl restart eportal nginx
     
    - + diff --git a/extended-lifecycle-support-for-languages/index.html b/extended-lifecycle-support-for-languages/index.html index 3033f993..487d368c 100644 --- a/extended-lifecycle-support-for-languages/index.html +++ b/extended-lifecycle-support-for-languages/index.html @@ -39,7 +39,7 @@ })(); Extended Lifecycle Support for Languages - +
    sidebar hamburger menu

    Extended Lifecycle Support for Languages

    Extended Lifecycle Support for PHP

    Extended Lifecycle Support (ELS) for PHP from TuxCare provides security fixes for PHP versions that have reached their end-of-life. This allows to continue running Linux server vulnerability-free.

    Supported OS

    TuxCare provides Extended Lifecycle Support through four years after the EOL date.

    OSVersion
    CentOS, CloudLinux, OracleLinux, etc.6.x 64-bit, 7.x 64-bit, 8.x 64-bit, 9.x 64-bit
    AlmaLinux8.x 64-bit, 9.x 64-bit
    Ubuntu16.04 64-bit, 18.04 64-bit, 20.04 64-bit, 22.04 64-bit

    Supported versions

    CentOS, CloudLinux, AlmaLinux, Oracle Linux, etc.: 5.1.6, 5.2.17, 5.3.29, 5.4.45, 5.5.38, 5.6.40, 7.0.33, 7.1.33, 7.2.34, 7.3.33, 7.4.33, 8.0.30, 8.1.27, 8.2, 8.3

    Ubuntu: 5.6.40, 7.0.33, 7.1.33, 7.2.34, 7.3.33, 7.4.33, 8.0.30, 8.1.27, 8.2, 8.3

    Installation instructions of yum repositories

    RHEL based systems

    1. Download an installer script:
    wget https://repo.cloudlinux.com/php-els/install-php-els-repo.sh
    @@ -258,6 +258,6 @@
     
    1. Download OVAL stream:
    wget https://repo.cloudlinux.com/python-els/almalinux9-els-python-oval.xml
     
    1. Run scanning:
    oscap oval eval --results result.xml --report report.xml almalinux9-els-python-oval.xml
     
    - + diff --git a/extended-lifecycle-support/index.html b/extended-lifecycle-support/index.html index 945b0257..83b22228 100644 --- a/extended-lifecycle-support/index.html +++ b/extended-lifecycle-support/index.html @@ -39,7 +39,7 @@ })(); Extended Lifecycle Support - +
    sidebar hamburger menu

    Extended Lifecycle Support

    TuxCare's Extended Lifecycle Support (ELS) service provides security updates, system enhancement patches, and selected bug fixes for older versions of a variety of Linux distributions, including CentOS 6, Oracle Linux 6, CloudLinux 6, CentOS 7, CentOS 8, CentOS Stream 8, Ubuntu 16.04, and Ubuntu 18.04. These distributions have either reached their end of standard support from vendors or have reached End of Life (EOL).

    Our ELS service is designed to provide solutions for organizations that are not yet ready to migrate to newer versions and that are seeking long-term stability for their out-of-date operating systems. The service coverage includes updates for the Linux kernel and a list of essential packages that are integral to server operations.

    Vulnerability coverage

    TuxCare employs the Common Vulnerability Scoring System (CVSS v3) to assess the severity of security vulnerabilities. Our severity rating system for patching vulnerabilities integrates both NVD scoring and vendor scoring (when available). When the vendor's score is lower than the NVD score, we give priority to the NVD score.

    TuxCare Extended Lifecycle Support, by default, provides security patches for High and Critical vulnerabilities (with a 7+ CVSS score). For vulnerabilities rated as Medium (4.0 to 6.9), TuxCare can provide patches for CVE's where mitigations are not available and there is sufficient customer demand.

    Custom coverage options are available, including a 10-pack of customer-directed patches for clients who need CVEs patched outside of the ELS scope. Specific details regarding these coverage options and their pricing can be obtained by contacting our sales team.

    Target response times

    Aligning with many industry standards and regulatory requirements, TuxCare is committed to delivering timely security updates. For instance, the Payment Card Industry Data Security Standard (PCI DSS) mandates that all 'High' vulnerabilities (CVSS score of 7.0+) must be addressed within 30 days. Other regulations and standards, such as the Health Insurance Portability and Accountability Act (HIPAA) for healthcare or the Federal Information Security Management Act (FISMA) for government agencies, uphold similar requirements.

    We aim to deliver security patches for critical and high-risk vulnerabilities (CVSS 7+) within 14 days from when the vulnerabilities become publicly disclosed. This rapid response time significantly reduces the window of opportunity for potential attackers and meets most security regulation requirements.

    Requests for customer-directed security patches for CVEs that are outside of the ELS scope will be reviewed within 3 working days. If the request is accepted, we will provide the patch within the next 14 days.

    Duration of support

    TuxCare provides Extended Lifecycle Support (ELS) for up to four years (see the table below for exceptions). This support is offered after the Linux distribution has reached its End of Life (EOL) or no longer receives standard support.

    DistributionArchEOLELS
    CentOS 6x86_64 i386November 2020November 2026
    CentOS 7x86_64 i386June 2024June 2029
    CentOS 8x86_64January 2022January 2026
    CentOS Stream 8x86_64June 2024June 2028
    Oracle Linux 6x86_64December 2020December 2024
    Ubuntu 16.04amd64April 2021April 2025
    Ubuntu 18.04amd64May 2023May 2028

    Supported packages

    TuxCare's Extended Lifecycle Support provides updates for a comprehensive list of packages integral to server operations (100+ packages), providing maximum security for your operating system. You can view the full list of supported packages for each operating system, as well as get detailed information on the patched Common Vulnerabilities and Exposures (CVEs), here. Support for additional packages can be provided on request.

    Note

    ELS for CentOS 7 will start supporting kernel, OpenSSL, and glibc packages after the CentOS 7 EOL date (June 30th, 2024).

    Errata advisories

    TuxCare Extended Lifecycle Support provides qualified security and selected bug-fix errata advisories across all architectures. They can help users track which CVEs are resolved and which bugs have been addressed. You can view the full list of released advisories here.

    OVAL patch definitions

    Leveraging the Open Vulnerability and Assessment Language (OVAL) patch definitions with OVAL-compatible tools, e.g. OpenSCAP, users can accurately check their systems for the presence of vulnerabilities.

    Connection to ELS repository

    To install the Extended Lifecycle Support repository on a server, you just need to download an installer script and run the script with a key. The installation script will register the server in the CLN with the key, add a PGP key to the server, and create the ELS repository.

    In order to use Extended Lifecycle Support, you will need to open TCP port 443 to the following destinations:

    Outbound Firewall Settings

    You need to open the TCP port 443 to the following destinations in order to use ELS for:

    • CentOS 6 ELS:
    cln.cloudlinux.com
    @@ -199,6 +199,6 @@
     # rm /etc/yum.repos.d/centos6-els.repo
     
    1. Remove the els-define package:
    # yum remove els-define
     
    - + diff --git a/images/esu_lifecycle_graph2.png b/images/esu_lifecycle_graph2.png new file mode 100644 index 0000000000000000000000000000000000000000..750350beb2b9a312dcb9ecd8042d871b44d265b2 GIT binary patch literal 207684 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%0ADhT>mUa4M={TMX37m8!sCbEekSK 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 z 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

    krK*>V=!)#v${GndjE+Cp@CTd0}r<>5l>%co! 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%0APrY#r)BAm@U&hF1^ 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 - +

    document icon

    TuxCare

    services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.

    document icon

    Enterprise Support for AlmaLinux

    provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

    document icon

    KernelCare

    is a live kernel patching service that provides security patches and bugfixes for a range of popular Linux kernels that can be installed without rebooting the system.

    document icon

    KernelCare for IOT

    provides live security patching for ARM64-based embedded systems for enterprise IoT users and original equipment manufacturers.

    document icon

    ePortal

    TuxCare ePortal is the web management console dedicated to KernelCare Enterprise live patch management.

    document icon

    ePortal API

    is a complete API for everyday use.

    document icon

    Extended Lifecycle Support

    allows you to continue running your Linux server after the operating system’s end of life.

    document icon

    Extended Lifecycle Support for Languages

    provides security fixes for PHP and Python versions that have reached their end-of-life which allows to continue running Linux server vulnerability-free.

    document icon

    Subscription Management Portal

    The TuxCare subscription management portal is designed to easily manage your licenses of TuxCare products and services by means of a user-friendly interface.

    document icon

    Service Descriptions

    AlmaCare service description

    - + diff --git a/jp/eportal-api/index.html b/jp/eportal-api/index.html index 49e7ac66..457fe589 100644 --- a/jp/eportal-api/index.html +++ b/jp/eportal-api/index.html @@ -39,7 +39,7 @@ })(); ePortal API - +
    sidebar hamburger menu

    ePortal API

    以下のコマンドで、API使用のための別のePortalアカウントを作成する必要がある場合があります。

    kc.eportal user -a api-user -p <password>
    @@ -239,6 +239,6 @@
     }
     

    例:

    mainフィードとtest-feedフィードで、libcareパッチセットU20200506_01を有効にします。

    curl -X POST -u admin 'https://eportal.corp.com/admin/api/patchsets/manage?patchset=U20200506_01&feed=main&feed=test-feed&product=user&action=enable'
     
    - + diff --git a/jp/eportal/index.html b/jp/eportal/index.html index e2e4ad39..a8c0e85b 100644 --- a/jp/eportal/index.html +++ b/jp/eportal/index.html @@ -39,7 +39,7 @@ })(); ePortal - +
    sidebar hamburger menu

    ePortal

    TuxCare ePortalは、KernelCare Enterpriseライブ パッチ管理専用のWeb管理コンソールです。

    ePortalソフトウェアは、ファイアウォールの内側にある(つまり、インターネットにアクセスできない)サーバーを保護するのに役立ちます。また、オンプレミスにもクラウドにもインストールできます。

    Overview

    ePortalハードウェア要件

    ディスク

    • 最小100 GB、推奨200 GB(キャッシュモードの場合は、20 GB)
    • 100 IOPS以上のSSD

    SSDベースのストレージは、ePortalサーバーに必須の要件です。

    CPU

    その他の要件に関して、以下の構成と接続サーバー数をテストしました。

    • 以下の要件では、最大接続マシン数は10kです。

      • VM
      • 1 vCPU
      • 1 GB RAM
    • 以下の要件では、最大接続マシン数は75kです。

      • Core i5
      • 1 CPU
      • 4 GB RAM

    インストール

    ePortalは、CentOS 7/8、AlmaLinux 8、Ubuntu 20.04/22.04などのEL7/8ベースのディストリビューションの64bit版と互換性があります。

    RHELベースのディストリビューション

    ePortalをインストールして実行するには、NginxのWebサーバーが必要です。Nginxの公式リポジトリからインストールした安定版を使用することをお勧めします。

    cat > /etc/yum.repos.d/nginx.repo <<EOL
    @@ -358,6 +358,6 @@
     

    以下を実行します。

    kc.eportal sync-nginx-conf
     

    ストレージが初期化され、新しい場所からパッチが提供されるように、nginx構成ファイルに対応する変更が行われます。

    nginxePortalサービスを再起動して、変更を適用します。

    systemctl restart eportal nginx
     
    - + diff --git a/jp/extended-lifecycle-support-for-languages/index.html b/jp/extended-lifecycle-support-for-languages/index.html index a90ef2f6..1408f3b2 100644 --- a/jp/extended-lifecycle-support-for-languages/index.html +++ b/jp/extended-lifecycle-support-for-languages/index.html @@ -39,7 +39,7 @@ })(); 言語向け延長ライフサイクルサポート - +
    sidebar hamburger menu

    言語向け延長ライフサイクルサポート

    HP向け延長ライフサイクルサポート

    TuxCareは、PHP向け延長ライフサイクルサポート(ELS)によって、ライフサイクルが終了したPHPバージョンにセキュリティ修正を提供しています。これにより、脆弱性なしでLinuxサーバーを実行し続けることができます。

    対応OS

    TuxCareは、EOL日から4年間延長ライフサイクルサポートを提供します。

    OSバージョン
    CentOS、CloudLinux、OracleLinuxなど.6.x 64-bit、7.x 64-bit、8.x 64-bit
    AlmaLinux8.x 64-bit
    Ubuntu16.04 64-bit、18.04 64-bit、20.04 64-bit

    サポートバージョン

    CentOS、CloudLinux、AlmaLinux、OracleLinuxなど:5.1、5.2、5.3、5.4、5.5、5.6、7.0、7.1、7.2、7.3、7.4、8.0、8.1

    Ubuntu: 5.6、7.0、7.1、7.2、7.3、7.4、8.0、8.1

    yumリポジトリのインストール説明

    RHELベースのシステム

    1. インストールスクリプトをダウンロードします。
    wget https://repo.cloudlinux.com/php-els/install-php-els-repo.sh
    @@ -258,6 +258,6 @@
     
    1. OVALストリームをダウンロードします。
    wget https://repo.cloudlinux.com/python-els/almalinux9-els-python-oval.xml
     
    1. スキャンを実行します。
    oscap oval eval --results result.xml --report report.xml almalinux9-els-python-oval.xml
     
    - + diff --git a/jp/extended-lifecycle-support/index.html b/jp/extended-lifecycle-support/index.html index 6b84b508..d2e76f04 100644 --- a/jp/extended-lifecycle-support/index.html +++ b/jp/extended-lifecycle-support/index.html @@ -39,7 +39,7 @@ })(); 延長ライフサイクルサポート - +
    sidebar hamburger menu

    延長ライフサイクルサポート

    TuxCareの延長ライフサイクルサポート(ELS)をご利用いただければ、オペレーティングシステムのライフサイクル終了後も引き続きLinuxサーバーを稼働できます。

    他のバージョンのディストリビューションのサポートをご希望の場合は、SLA対象のサポートに他のパッケージを追加してください。ご不明な点がございましたら、FAQ欄をお読みください。ご意見がございましたら、sales@tuxcare.comまでご連絡ください。

    サポート期間

    TuxCareは、EOL日から4年間延長ライフサイクルサポートを提供します。

    ディストリビューションEOLELS
    CentOS 62020年12月2024年12月
    Oracle Linux 62020年12月2024年12月
    Ubuntu 16.042021年4月2025年4月
    CentOS 8.42022年1月2026年1月
    CentOS 8.52022年1月2026年1月

    対応パッケージ

    TuxCareは、カーネル、Apache、PHP、Glibc、OpenSSL、OpenSSH、Pythonパッケージを継続的にアップデートします。

    アップデート情報の入手方法

    CVEダッシュボードを使用して、アップデートを受信するように登録できます。CVEダッシュボードでは、各CVEに対する当社の進捗状況、CVEに関する情報、CVEの既知の悪用事例の詳細などに関する詳しい情報を確認できます。

    ダッシュボードをより良く、より便利にするためのご意見がございましたら、sales@tuxcare.comまでご連絡ください。

    また、TuxCareブログを購読して、パッチされた脆弱性の詳細な分析や、TuxCareチームのメンバーが作成したその他のサイバーセキュリティコンテンツを読むこともできます。

    ELSへの移行

    TuxCareの延長ライフサイクルサポートサービスでは、移行の必要がありません。新しいリポジトリ ファイルを追加するインストールスクリプトを実行するだけです。再起動は必要ありません。

    ELSリポジトリのインストール方法

    サーバーに延長ライフサイクルサポートリポジトリをインストールするには、インストールスクリプトをダウンロードして、キーを使用してスクリプトを実行するだけです。インストールスクリプトを実行すると、そのキーと一緒にCLNにサーバーが登録され、サーバーにPGPキーが追加され、ELSリポジトリが作成されます。

    延長ライフサイクルサポートのご利用には、以下の宛先に対してTCP ポート443を開く必要があります。

    • cln.cloudlinux.com
    • repo.cloudlinux.com

    yumリポジトリのインストール手順

    CentOS 6 ELS

    1. インストールスクリプトをダウンロードします。
    wget https://repo.cloudlinux.com/centos6-els/install-centos6-els-repo.py
    @@ -164,6 +164,6 @@
     

    Ubuntu 16.04の場合

    OVALを使用するには、システムがELSとして定義されていることを確認してください。

    1. 以下のコマンドを実行します。
    $ apt list els-define | grep -o "installed"
     

    コマンドの結果がinstalledの場合、ご利用のシステムはELSとして定義されていますので、OVALを使用できます。

    1. それ以外の場合は、以下のコマンドを使用して、els-defineパッケージをインストールする必要があります。
    $ apt-get install els-define
     
    - + diff --git a/jp/index.html b/jp/index.html index 19f35b5c..28bc4d4a 100644 --- a/jp/index.html +++ b/jp/index.html @@ -39,10 +39,10 @@ })(); - +
    - + diff --git a/jp/linux-support-services/index.html b/jp/linux-support-services/index.html index 19e26ed3..d01b75b1 100644 --- a/jp/linux-support-services/index.html +++ b/jp/linux-support-services/index.html @@ -39,10 +39,10 @@ })(); Linuxサポートサービス - +
    sidebar hamburger menu

    Linuxサポートサービス

    TuxCareは、「エッセンシャル」ティア、「プレミアム」ティア、「製品OEMサポート」ティアでサブスクリプションパッケージを提供しています。AlmaLinux OS 8やその他の一般的なEnterprise Linuxディストリビューションでご利用いただけます。

    AlmaLinux OS 8向け「エッセンシャル」サポート

    生産インフラストラクチャでAlmaLinux OSをご利用の企業向けに基本的なサポートパッケージを提供しています。

    • Linuxカーネルとコアパッケージ向けの定期的なパッチとアップデート
    • CVSSと高CVEに14営業日でパッチを配信
    • 24時間年中無休のEメールサポート

    AlmaLinux OS8とその他のLinuxディストリビューション向け「プレミアム」サポート

    カスタムベースの、さまざまなLinuxディストリビューション向けパッチとアップデート、プレミアムSLA、年中無休のインシデントサポート、コンサルティングサービスへのアクセスの提供

    • AlmaLinux OS、CentOS、Oracle、Ubuntu、Debian、Suse、Linuxディストリビューションに含まれていないその他のオープンソースソフトウェアのサポート
    • 24時間365日のEメールによるインシデントサポート、ライブチャットと電話も利用可能
    • 他のLinuxディストリビューション向けの、ニーズに応じた、リポジトリ外のセキュリティ/バグ修正(作業範囲記述書の一部)

    AlmaLinux OS 8向け製品NodeOSサポート

    顧客に出荷中の製品のNodeOSとして、AlmaLinux 8をご利用のエンタープライズ企業向けに、カスタマイズされたLinuxサポートパッケージを提供しています。特定のパッケージセット、カスタムSLA、迅速なインシデント対応のための専任サポートチーム。

    • 各契約向けに特別に交渉されたパッチ配信とインシデント対応
    • CVSSと高CVEに10営業日でパッチを配信
    • 24時間365日対応のEメールサポート。重大インシデント用ライブチャットも利用可能
    • 指名された専任サポートマネージャー
    • 個々の作業範囲記述書(SOW)ベースでのコンサルティングサービスへのアクセス

    詳細については、TuxCare LinuxサポートサービスWebサイトを参照してください。

    - + diff --git a/jp/live-patching-services/index.html b/jp/live-patching-services/index.html index 885edd75..b725dbfa 100644 --- a/jp/live-patching-services/index.html +++ b/jp/live-patching-services/index.html @@ -39,7 +39,7 @@ })(); ライブパッチ適用サービス - +
    sidebar hamburger menu

    ライブパッチ適用サービス

    ライブパッチ適用サービスの一環として、TuxCareは以下のサービスを提供します。

    • KernelCare Enterprise
    • LibCare
    • KernelCare for IOT
    • QEMUCare
    • DBCare(ベータ版で利用可能)

    KernelCare Enterprise

    概要

    KernelCare Enterpriseは、さまざまな人気のLinuxカーネルに、システムを再起動することなしにインストール可能なセキュリティパッチとバグ修正を提供するライブカーネルパッチ適用サービスです。

    メリット

    現在、システム管理者は、最新のカーネルアップデートを適用するのに、サーバーを再起動する必要があります。このアップデートは、セキュリティ上の問題を防ぐために必要です。ただし、再起動に伴うダウンタイムのせいで、このようなアップデートは遅れがちで、深夜の時間帯になりがちです。ダウンタイムを回避するために、サーバーの所有者が数ヶ月、数年もシステムをアップデートせずに、脆弱なシステムを実行し続けることはめずらしいことではありません。マネージドサービスプロバイダは、ダウンタイムを計画し、リソースを圧迫しながら短時間に数千台のサーバーのアップデートと再起動をする問題に直面しています。KernelCareは、再起動不要のライブカーネルパッチ適用サービスを提供することで、このアップデートと再起動の問題を解決します。

    主な機能

    • 再起動不要のLinuxカーネルパッチ適用とカスタムパッチ適用
    • オンプレミスでも、クラウドでも利用可能
    • 保護されたインフラストラクチャ用のプライベートパッチサーバー、ePortal
    • 追加設定不要で、パッチ管理・脆弱性評価ツールと統合

    試用ライセンスの取得

    KernelCare Enterpriseのご利用には、試用版アクティベーションキーが必要です。試用ライセンスは7日間有効です。

    アクティベーションキーの取得に問題がある場合や試用版の使用に関してご不明点がある場合は、sales@cloudlinux.com までご連絡ください。私たちがお助けします。

    インストール

    KernelCare Enterpriseは、64ビット版のAlmaLinux/CloudLinuxOS/CentOS/RHEL 6、7、8、Oracle Linux 6、7、Amazon Linux 1、2、Virtuozzo/PCS/OpenVZ 2.6.32、Debian 8、9、10、Proxmox VE 5 、6、Virt-SIG/Xen 4CentOS 6、7、Ubuntu 14.04、15.04、16.04、18.04、20.04カーネルと互換性があります。互換性のあるカーネル一覧は、https://patches.kernelcare.com/ からご覧いただけます。

    KernelCare Enterpriseをインストールするには、以下を実行します。

    curl -s -L https://kernelcare.com/installer | bash
    @@ -253,6 +253,6 @@
       --disabled   do not enable patchset after deploy
     

    例えば、

    kc.eportal qemu deploy --feed test /tmp/U20210818_01-qemu.tar.bz2
     

    このコマンドは、U20210818_01-qemuパッチセットをtestフィードにデプロイして、有効にします。

    DBCare

    DBCareのベータテストが利用可能です!こちらからお申し込みください。

    概要

    DBCareは、MariaDB向けのライブパッチ適用サービスです。 DBCareを使用すると、データベースのバックエンドがアップデートされている間もアプリケーションを実行し続けることができるので、データベースのパフォーマンス、信頼性、セキュリティ、コンプライアンスが強化されます。

    メリット

    データベースのアップデートは、バグの修正、システムパフォーマンスの向上、脆弱性数の削減のために行われますが、これらの活動には多大な影響と労力が必要になります。DBCareを使用すると、データベースのダウンタイム一切不要で、パッチがメモリに適用されます。

    ライブパッチ適用は、メンテナンスウィンドウまでの待機不要で、迅速にセキュリティアップデートを適用します。実は、DBCareを導入している組織は、データベースシステムのほとんどのメンテナンスウィンドウを完全に削除していて、それでいて、これまで以上に安全になっています。

    主な機能

    • 現時点で、MariaDBをサポート
    • 高可用性環境におけるデータベースのフェイルオーバーの回避
    • ダウンタイム中のワークロードの移行の回避

    DBCareの仕組み

    • データベースサーバーにエージェントがインストールされ、当社のリポジトリから直接パッチがインストールされます。
    • このエージェントは、すべてのTuxCare製品にわたって、パッチをダウンロードして適用するために使用されます。そのため、複数のTuxCare製品を使用する場合でも、実行中のエージェントは1つだけです。

    DBCareの詳細については、こちらのページにアクセスしてください

    - + diff --git a/jp/tuxcare-cln/index.html b/jp/tuxcare-cln/index.html index 71b116d8..fdebb54a 100644 --- a/jp/tuxcare-cln/index.html +++ b/jp/tuxcare-cln/index.html @@ -39,10 +39,10 @@ })(); サブスクリプション管理ポータル - +
    sidebar hamburger menu

    サブスクリプション管理ポータル

    TuxCareサブスクリプション管理ポータル(CLN)は、TuxCareの製品とサービスのライセンスをユーザーフレンドリーなインターフェイスで簡単に管理できるように設計されています。

    概要

    CLNでは、以下のことができます。

    • ライセンスの追加、削除、編集
    • サーバーの追加、削除、編集
    • お支払い方法の選択とライセンスの購入
    • 関連するすべての費用の追跡

    新しいアカウントの作成

    初めてのユーザーの方は、https://portal.tuxcare.comにアクセスして、簡単な登録フォームに記入して、アカウントを作成してください。ログイン名とパスワードは、登録確認メールでご案内しています。

    ログイン

    https://portal.tuxcare.comにアクセスして、ログイン名とパスワードでログインします。

    Dashboard

    Dashboardは、Productsに迅速にアクセスするのに役立ちます。以下のタブがあります。

    Products

    Dashboardをクリックすると、My Productsページにリダイレクトされます。

    以下のアクションをご利用いただけます。

    • Manage licenses and billing cycle。リンクをクリックすると、当社セールスチームに連絡できます。ライセンス数や製品クォータを変更したり、請求サイクルを管理したりする際にご利用ください。
    • Manage activation keysExtended Support Services | Activation Keysページへのショートカット。

    Servers

    Dashboard → Serversの順にクリックして、All Serversページに移動します。このアカウントに属する全サーバーが、各サーバーにインストールされている製品とともにリスト表示されます。

    表には、アカウント内の全製品のアクティブ化されたサーバーがすべて含まれています。表には、以下の列が含まれています。

    • Server name — サーバーのホスト名
    • IP — サーバーのIPアドレス
    • Registered — サーバーがアクティブ化された日付。サーバーは、この情報をCLNに送信します
    • Group — サーバーグループ(サーバーグループの詳細については、CLNのドキュメントを参照してください)
    • Installed products — サーバー上でアクティブ化された製品のロゴの表示
    • Actions
      • アイテムを削除するには、 をクリックしてください

    サーバーの詳細を表示するには、サーバー名をクリックしてください。

    • Installed products — インストール済み製品の完全な名前
    • Last check-in — サーバーが正常にチェックインに応答した最後の日付

    以下のフィルターを利用できます。

    • ProductProductボタンをクリックすると、1つ以上の製品を選択できま
    • Registered dateRegistered dateをクリックすると、カレンダーが表示されます。選択した日付または期間でフィルタリングできます
    • Search — クエリを入力します。検索は、Server nameActivation keyエンティティで実行されます

    Live Patching Services

    Live Patching Servicesをクリックすると、Server License Typesページにリダイレクトされます。

    このページでは、サーバーライセンス数を確認できます。また、TuxCareセールスチームに連絡して、ライセンスと請求サイクルを管理できます。

    Extended Support Services

    Extended Support Servicesをクリックすると、Server License Typesページにリダイレクトされます。

    Server License Types

    このページでは、各製品のサーバーライセンス数を確認できます。

    Activation Keys

    Extended Support Services → Activation Keysの順にクリックすると、Activation Keysページにリダイレクトされます。

    表には、アカウント内の全製品のアクティベーションキーがすべて含まれています。表には、以下の列が含まれています。

    • Activation key — 製品のアクティベーションに使用される英数字の文字列です
    • License type — 使用されるサーバーライセンスの種類です。サーバーユーザーの制限を決定します
    • Note — このアクティベーションキーに追加した情報
    • Servers (used/limits) — このキーですでにアクティブ化されたサーバー数(used)と、この特定のキーで登録できるサーバーの総数(limits)
    • チェック — 1つ以上のアクティベーションキーにチェックを入れて、削除アクションを実行します((use ) を使用)

    注意

    デフォルトのアクティベーションキーは削除できません。

    以下のフィルターを利用できます。

    • Server limits — サーバー制限/無制限でフィルタリング
    • License type — ライセンスの種類でフィルタリング

    アクティベーションキーをクリックすると、そのキーのActivation Key Details(アクティベーションキー詳細)ページに移動します。

    製品別アクティベーションキー

    Extended Support ServicesProductの順にクリックすると、そのProduct Activation Keysページにリダイレクトされます。

    • 製品のアクティベーションキーがない場合は、Create activation keyをクリックしてキーを作成できます。
    • 製品のデフォルトのアクティベーションキーがある場合は、Generate new activation keyをクリックして、新しいキーを生成できます。新しいキーは自動的に作成され、表に追加されます。
    • Copyをクリックすると、アクティベーションキーをコピーできます。

    この表には、製品のすべてのアクティベーションキーが含まれています。表には、以下の列が含まれます。

    • Activation key — 製品のアクティベーションに使用される英数字の文字列です。
    • Note — このアクティベーションキーに追加した情報
    • Servers (used/limits) – このキーですでにアクティブ化されているサーバー数(used)と、この特定のキーで登録できるサーバーの総数(limits)

    キーを削除するには、キーを選択して をクリックしてください。

    以下のフィルターを利用できます。

    • Server limits — サーバー制限/無制限でフィルタリング
    • 検索

    キーをクリックして、このキーのActivation Key Detailsページに移動します。

    Activation Key Details

    このページでは、以下のことができます。

    • アクティベーションキーの完全な情報の閲覧
    • キーの編集。 Edit keyをクリックしてください
    • キーの削除。 をクリックしてください
    • サーバーリストの確認

    表には、そのキーで登録されたすべてのサーバーが含まれています。表には以下の列があります。

    • Server name — サーバーのホスト名
    • IP — サーバーのIPアドレス
    • Registered — サーバーがアクティブ化された日付。サーバーはこの情報をCLNに送信します
    • Last check-in — サーバーがチェックインに正常に応答した最後の日付

    以下のフィルターを利用できます。

    • Server limits — サーバー制限/無制限でフィルタリング
    • 検索欄

    サーバー

    Extended Support ServicesServersの順にクリックすると、Serversページにリダイレクトされます。

    表には、延長ライフサイクルサポート内のあらゆる製品に対してアクティブ化されたすべてのサーバーが含まれています。表には以下の列があります。

    • Server name — サーバーのホスト名
    • IP — サーバーのIPアドレス
    • Registered — サーバーがアクティブ化された日付。サーバーは、この情報をCLNに送信します
    • Installed products — サーバー上でアクティブ化された製品のロゴの表示
    • Actions
      • アイテムを削除するには、 をクリックしてください

    サーバーの詳細を表示するには、サーバー名をクリックしてください。

    • Installed products – インストール済み製品の完全な名前
    • Last check-in — サーバーが正常にチェックインに応答した最後の日付

    以下のフィルターを利用できます。

    • ProductProductボタンをクリックして、1つ以上の製品を選択します
    • Registered dateRegistered dateをクリックすると、カレンダーが表示されます。選択した日付または期間でフィルタリングできます
    • 検索 — クエリを入力します

    製品別サーバー

    Extended Support Services → ServersProductの順にクリックすると、その製品のProduct Serversページにリダイレクトされます。

    表には、延長ライフサイクルサポート内でその製品用にアクティブ化されたすべてのサーバーが含まれています。表には以下の列があります。

    • Server name — サーバーのホスト名
    • IP — サーバーのIPアドレス
    • Registered — サーバーがアクティブ化された日付。サーバーは、この情報をCLNに送信します
    • Installed products — サーバー上でアクティブ化された製品のロゴの表示
    • Actions
      • アイテムを削除するには、 をクリックしてください

    サーバーの詳細を表示するには、サーバー名をクリックしてください。

    • Installed products — インストール済み製品の完全な名前
    • Last check-in — サーバーが正常にチェックインに応答した最後の日付

    以下のフィルターを利用できます。

    • Registered dateRegistered dateをクリックすると、カレンダーが表示されます。選択した日付または期間でフィルタリングできます
    • 検索 — クエリを入力します

    Get servers listをクリックすると、サーバーリストをダウンロードできます。

    Billing

    Balance & Top up

    Billingをクリックすると、Balance & Top upページにリダイレクトされます。

    このページでは、以下のことがわかります。

    • 現在のプランと価格
    • 残高

    金額を入力してTop upをクリックすると、アカウントに入金できます。

    Payment methods

    BillingPayment methodsの順にクリックすると、Payment methodsページにリダイレクトされます。

    以下のタブを使用できます。

    • Billing information
    • Payment methods
    • Autopayment

    Billing information

    ここでは、請求先のEメールアドレスを変更できます。 変更を適用するには、Saveをクリックしてください。

    Payment methods

    ここでは、支払い方法を管理できます。変更を適用するには、Saveをクリックしてください。

    Autopayment

    ここでは、自動支払いの種類を変更できます。

    • Auto add funds(自動資金追加)
    • Auto repay(自動支払)
    • Do not add funds automatically(自動で資金を追加しない)

    変更を適用するには、Saveをクリックしてください。

    Invoices

    表には以下の列があります。

    • Invoice id — 一意の請求書番号
    • Created — 請求書の発行日
    • Type — 支払いの種類:請求書または支払いの受領
    • Pay period — 発行された請求書の対象期間の開始日
    • Total — 受領済み/支払う必要がある合計金額
    • Balance — 現在の残高
    • Actions — 以下のアクションを利用できます。
      • 請求書の閲覧 — — 請求書の詳細を閲覧するには、をクリックしてください。詳細は、新しいポップアップで開きます。
      • 請求書のダウンロード — — 請求書をダウンロードするには、をクリックしてください。

    請求書の詳細を表示するには、 をクリックしてください。

    Settings

    アカウントの詳細に移動するには、右上隅にある Userアイコン → Settingsをクリックします。Account detailsページにリダイレクトされます。

    Account details

    以下のタブを使用できます。

    • Personal information(個人情報)
    • Company information(企業情報)
    • Billing contact information(請求連絡先情報)

    P個人情報

    *の付いた入力欄はすべて必須です。

    • API secret key – この鍵をCLN APIで使用します
    • IM Upgrade URL – Imunify製品をアップグレードするためのURL(URLがデフォルトのものではない場合)

    パスワードを変更するには、Change passwordをクリックします。

    2要素認証を有効にするには、スイッチをOnにします。

    変更を適用するには、Saveをクリックしてください。

    企業情報

    変更を適用するには、Saveをクリックしてください。

    請求連絡先

    変更を適用するには、Saveをクリックしてください。

    Account sublogins

    Eメールアドレスの形式で、ご利用のアカウントに追加のログイン名を作成できます。サブログイン名は、以下に一覧表示されている、さまざまな権限がある任意の役割を持つことができます。マスターサーバー管理者アカウントには、すべての権限があり、アカウントサブログイン名を作成できます。

    変更を適用するには、Saveをクリックしてください。

    #役割

    Full Access/Admin

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • レポーティング
    • サーバーの追加/削除
    • アクティベーションキーの作成
    • ライセンスの注文/削除
    • 請求書の閲覧
    • 請求情報の閲覧
    • クレジットカード情報の編集
    • アカウント情報の編集
    • 請求情報の編集/再販業者用入金
    • 料金の閲覧
    • アカウント情報の表示
    • パスワードの変更

    Billing

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • 請求書の閲覧
    • 請求情報の閲覧
    • クレジットカード情報の編集
    • アカウント情報の編集
    • 請求情報の編集/再販業者用入金
    • 料金の閲覧
    • アカウント情報の閲覧

    Server and License Management

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • レポーティング
    • サーバーの追加/削除
    • アクティベーションキーの作成
    • ライセンスの注文/削除

    Server Management Only

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • レポーティング
    • サーバーの追加/削除
    • アクティベーションキーの作成

    Read Only — Billing

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • レポーティング
    • 請求書の閲覧
    • 請求情報の閲覧

    Read Only — Server Management

    • 製品の閲覧
    • サーバー/ライセンス情報の閲覧
    • レポーティング

    Reports

    ご希望のEメールアドレスにアカウントのレポートを受信するように設定できます。

    新しいレポートの設定を追加するには、Add configをクリックしてください。

    - + diff --git a/jp/tuxcare/index.html b/jp/tuxcare/index.html index 9e03cb8a..ad372456 100644 --- a/jp/tuxcare/index.html +++ b/jp/tuxcare/index.html @@ -39,10 +39,10 @@ })(); TuxCare - +
    sidebar hamburger menu

    TuxCare

    TuxCareサービスは、Linuxの運用を自動化し、簡略化し、改善します。TuxCareサービスによって、組織は、Linuxディストリビューションの選択とバージョンをより柔軟に管理でき、メンテナンス費用を大幅に削減でき、セキュリティとコンプライアンス体制を大幅に強化できます。

    TuxCareは、CloudLinuxのKernelCareブランドと延長ライフサイクルサポートブランドが拡張されたものです。組織がEnterprise Linuxシステムのサポート、メンテナンス、セキュリティを管理するのに役立ちます。

    TuxCareライブパッチ適用サービスにより、Linuxカーネル、ライブラリ、データベース、仮想化プラットフォーム、IoT端末に、ダウンタイムなしで自動的にセキュリティパッチが適用されます。

    TuxCare延長ライフサイクルサポートサービスを使用すると、ライフサイクルが終了したディストリビューションを実行する一般的なリスクから保護された状態を維持しながら、ご自身の都合に合わせて最新バージョンのLinuxに移行できます。

    Linuxサポートサービスは、特定のベンダーに依存しないテクノロジーパートナーシップの特典がある、エンタープライズクラスのLinuxサポートを幅広く提供しています。手頃な価格で、柔軟に、現在ご利用のバージョンのLinuxシステムを継続的に更新して安全に保つことができるサービスです。

    - + diff --git a/kernelcare-for-iot/index.html b/kernelcare-for-iot/index.html index 5bdaad9a..c206e7cb 100644 --- a/kernelcare-for-iot/index.html +++ b/kernelcare-for-iot/index.html @@ -39,10 +39,10 @@ })(); KernelCare for IOT - +
    sidebar hamburger menu

    KernelCare for IOT

    Provides live security patching for ARM64-based embedded systems for enterprise IoT users and original equipment manufacturers.

    For the list of supported distributions and chipsets, visit this page.

    How KernelCare IoT works

    • The KernelCare team is constantly monitoring security mailing lists to check for vulnerabilities. As soon as one is found, the team prepares a patch and then sends it to distribution servers.
    • An agent will run a process on your device, checking with the distribution servers every 4 hours until it finds a new patch and then safely apply it to the running kernel without needing to stop it.
    • A special kernel module is used to apply the patches. It first loads the update into the kernel address space, then it places relocations on the original code/data to make sure the code block doesn’t execute during the update. Once finished, it will safely switch the execution path from the original to the updated code and then make sure the old code will never run again.
    • KernelCare does all of this instantly, automatically, and without service interruptions.

    For more information about KernelCare for IOT, visit this page.

    - + diff --git a/live-patching-services/index.html b/live-patching-services/index.html index b286d5d8..e91271bd 100644 --- a/live-patching-services/index.html +++ b/live-patching-services/index.html @@ -39,7 +39,7 @@ })(); KernelCare - +
    sidebar hamburger menu

    KernelCare

    KernelCare SimplePatch

    Introduction

    KernelCare SimplePatch is a kernel live patching product that provides security patches for a range of popular Linux kernels that can be installed without rebooting the system. It supports kernels of Enterprise Linux operating systems, i.e., RHEL, Oracle, Rocky, AlmaLinux, and CentOS, as well as Ubuntu and Debian. Each individual kernel receives new live patches for as long as the kernel vendor releases security updates for the series.

    The KernelCare SimplePatch offering consists of the client application, and the live patching service hosted by TuxCare. The client application runs on machines, periodically checks for available patches, downloads, verifies, and installs them.

    The live patching process

    When a new vulnerability is detected in the Linux kernel, TuxCare creates a live patch addressing the vulnerability. After the live patch is made available, it is tested in TuxCare’s internal server farm and then promoted gradually to a series of testing tiers, ensuring that any released live patch has been tested sufficient time on live systems. Once the patch is released, systems that enable the KernelCare SimplePatch client will receive the patch over an authenticated channel and apply it.

    Kernel patching lifetime

    KernelCare SimplePatch offers live patches for each individual kernel for as long as the kernel vendor releases security updates for the series. This allows you to enjoy continuous protection for your existing kernels without being bound by the kernel vendor’s release schedule when planning your maintenance windows.

    Vulnerability coverage

    During the lifecycle of an operating system, TuxCare makes commercially reasonable efforts to provide live patches for all vulnerability fixes provided by the vendor, irrespective of their vulnerability rating. We may also address vulnerabilities that haven't been addressed by the OS vendor if they gained significant attention and were being actively discussed, exploited (according to the CISA list), or researched by the cybersecurity community.

    Target response rates

    TuxCare is committed to delivering timely security updates. We aim to deliver live patches for all CVEs patched by the vendor within 10 days from when the vulnerability is publicly disclosed. This rapid response time significantly reduces the opportunity window for a potential attack and meets most security regulation requirements. However, a live patch for a vulnerability can be significantly more complex than an ordinary kernel patch, and due to the additional complexity, can take more time to develop and test.

    Supported architectures

    KernelCare is available for both x86-64 (Intel and AMD) and ARM64 architectures.

    Supported Linux distros and kernels

    Customers can find detailed information about supported kernels, Linux distributions, specific vulnerabilities, and live patches provided by KernelCare SimplePatch for each of the supported Linux distributions at https://patches.kernelcare.com/.

    End-of-life (EOL) policy

    TuxCare will stop supporting live patching for specific distros if there are no security advisories provided by the distro's vendor for the last 365 days. In this case, all customers running the affected distributions are notified about the upcoming EOL. Existing live patches for EOL distributions are available for the next 6 years after the EOL date.

    Technical Support

    All TuxCare live patching products include technical support provided according to the TuxCare support policy. It delivers 24/7/365 access to our engineers through the TuxCare Support Portal and to our online knowledge base.

    Installation

    KernelCare SimplePatch is compatible with 64-bit versions of CloudLinuxOS/CentOS 6, 7 and 8, AlmaLinux/RHEL 6, 7, 8 and 9, Oracle Linux 6 and 7, Amazon Linux 1 and 2, Virtuozzo/PCS/OpenVZ 2.6.32, Debian 8, 9 and 10, 11, 12, Proxmox VE 5 and 6, Virt-SIG/Xen4CentOS 6 and 7, Ubuntu 14.04, 15.04, 16.04, 18.04 and 20.04 kernels. The list of compatible kernels can be found at the following link: https://patches.kernelcare.com/

    To install KernelCare SimplePatch, run the following as root:

    curl -s -L https://kernelcare.com/installer | bash 
    @@ -379,6 +379,6 @@
     

    Security scanners can check if the file is present, and if it is, use it instead of /proc/version to identify the kernel. This will provide an effective kernel version from a security standpoint.

    Alternatively, the command /usr/bin/kcarectl --uname can be run instead of the uname command to detect effective kernel version

    Comprehensive: Using OVAL data

    KernelCare comes with OVAL data that provides instructions to the scanner to identify the vulnerabilities addressed by the installed live patches. OVAL data are available for the operating systems supported by KernelCare Enterprise, including AlmaLinux, Red Hat Enterprise Linux, Oracle Linux, CentOS, Debian, and Ubuntu.

    The OVAL data cover all KernelCare enterprise products and add-ons, including LibCare and QEMUCare.

    The OVAL data for KernelCare live patching are available at patches.kernelcare.com/oval.

    Comprehensive & local: Using the local CVELIST file on each scanned node

    KernelCare provides two files listing the vulnerabilities the currently installed live patches address. These files contain a list of CVEs separated by a new line.

    The list of vulnerabilities addressed by Kernel live patches is available at:

    /proc/kcare/cvelist
     

    The list of vulnerabilities addressed by system live patching (LibCare, QEMUCare, etc.) is available at:

    /var/cache/kcare/libcare_cvelist
     
    - + diff --git a/local-mirror-els/index.html b/local-mirror-els/index.html index 3491fe8d..9e2b6cf7 100644 --- a/local-mirror-els/index.html +++ b/local-mirror-els/index.html @@ -39,7 +39,7 @@ })(); - +
    sidebar hamburger menu

    Installation instructions of a local mirror with ELS updates

    We provide the ability to create local mirrors of Extended Lifecycle Support updates.

    To obtain the access to the local mirroring, provide your External IP address to your Account Manager or send it to sales@tuxcare.com. To create a local mirror of the repository with security updates via rsync, you need to use one of the following.

    CentOS 6 ELS

    To create a local mirror with security updates of repo with centos6-els security updates, use the following:

    rsync://repo.cloudlinux.com/CENTOS6ELS/
    @@ -59,6 +59,6 @@
     

    CentOS 7 ELS

    To create a local mirror of the repository with security updates via rsync, use the following:

    rsync://repo.tuxcare.com/CENTOS7ELS/
     

    For example:

    rsync  -avSHP --delete rsync://repo.tuxcare.com/CENTOS7ELS/ .
     
    - + diff --git a/service-descriptions/index.html b/service-descriptions/index.html index 27fb11ee..807a2e12 100644 --- a/service-descriptions/index.html +++ b/service-descriptions/index.html @@ -39,10 +39,10 @@ })(); Service Descriptions - +
    sidebar hamburger menu

    Service Descriptions

    Essential and Enhanced Support

    The description of Essential and Enhanced Support for AlmaLinux systems can be found here.

    Technical Account Manager

    Technical Account Manager (TAM)

    A Technical Account Manager (TAM) is an extension to TuxCare products to enhance product and support experience.

    • TuxCare provides a technical account manager who can perform the following tasks for up to 8 hours per week.
    • Provides best-in-practice configuration assistance.
    • Provides product presentation and training.
    • Participate in calls every other week identifying and addressing the customer's operational issues related to the TuxCare products.
    • Organise multi-vendor issue coordination through TuxCare's partners when applicable.
    • The TAM is available for customer requests during regular working hours for the TAM. Outside working hours support is provided through regular TuxCare support.

    Dedicated Technical Account Manager (dTAM)

    A dedicated Technical Account Manager (dTAM) is an extension to TuxCare products to enhance the product and support experience.

    • TuxCare provides a dedicated technical account manager who can perform the following tasks for up to 40 hours per week.
    • Acts as a primary point of contact for all TuxCare product-related requests from the customer.
    • Provides best-in-practice configuration assistance.
    • Provides product presentation and training.
    • Can assume maintenance and configuration tasks of TuxCare products on the agreement.
    • Participate in calls every other week identifying and addressing the customer's operational issues related to the TuxCare products.
    • Organise multi-vendor issue coordination through TuxCare's partners when applicable.
    • Facilitate integration of customer's ticketing system with TuxCare's when applicable.
    • Attend applicable TuxCare training and development activities.
    • The dTAM is available for customer requests during regular working hours for the dTAM and is subject to TuxCare leave policies. Outside working hours support is provided through regular TuxCare support.
    • The dTAM will visit the customer's site annually or twice per year according to the agreement.
    • If the dTAM is on annual leave for more than 5 consequent days, TuxCare will assign a temporary account manager.
    - + diff --git a/tuxcare-cln/index.html b/tuxcare-cln/index.html index 5a5b60e0..ea629c29 100644 --- a/tuxcare-cln/index.html +++ b/tuxcare-cln/index.html @@ -39,10 +39,10 @@ })(); Subscription management portal - +
    sidebar hamburger menu

    Subscription management portal

    The TuxCare subscription management portal is designed to easily manage your licenses of TuxCare products and services by means of a user-friendly interface.

    Introduction

    The following are available in TuxCare portal:

    • Add, delete and edit licenses
    • Add, delete and edit servers
    • Choose payment methods and buy licenses
    • Track all the associated costs

    Create new account

    If you are a first time user, go to https://portal.tuxcare.com and fill in the simple registration form to create your account. You will find your login and password in your welcome email.

    Log in

    Go to https://portal.tuxcare.com and sign in with your credentials.

    Dashboard

    Dashboard helps quickly navigate to your Products. It has the following tabs:

    Products

    Click Dashboard. You will be redirected to the My Products page.

    The following actions are available:

    • Manage licenses and billing cycle. Click the link to contact our Sales team to change license quantity and product quota, and to manage the billing cycle.
    • Manage activation keys. Shortcut to the Extended Support Services | Activation Keys page.

    Servers

    Click Dashboard → Servers to go to All Servers page. A list of all servers with installed products belonged to this account is available.

    The table includes all servers that have been activated in all products within the account. The table contains the following columns:

    • Server name — server hostname
    • IP — server IP address
    • Registered — a date when a server was activated. A server sends this information to TuxCare portal
    • Group – server group (please refer to the TuxCare portal documentation to find more information about server group)
    • Installed products — shows a logo of a product activated on a server
    • Actions
      • To remove an item, click on

    Click the server name to show server details:

    • Installed products – the full name of the installed products
    • Last check-in — the last date when a server successfully responded to check-in

    The following filters are available:

    • Product — click Product button and select one or more products
    • Registered date — click Registered date to display a calendar where you can pick a date or a period to filter by
    • Search — type a query. A search is performed in Server name and Activation key entities

    Live Patching Services

    Click Live Patching Services You will be redirected to the Server License Types page.

    Here you can see the number of server licenses and manage licenses and billing cycle by contacting TuxCare Sales team.

    Extended Support Services

    Click Extended Support Services You will be redirected to the Server License Types page.

    Server License Types

    Here you can see the the number of server licenses for each product.

    Activation Keys

    Click Extended Support Services → Activation Keys. You will be redirected to the Activation Keys page.

    Activation Key is a string of numbers and letters used to activate a product.

    The table includes all activation keys for all products within the account. The table contains the following columns:

    • Activation key – is a string of numbers and letters used to activate a product
    • License type — a type of server license that is used and determines a limit of server users
    • Note — any information you’ve added to this activation key
    • Servers (used/limits) – a number of servers that have already been activated with this key (used) and a total number of servers that can be registered with this particular key (limits)
    • Tick – tick an activation key or keys to perform a remove action (use )

    Note

    The default activation key cannot be deleted.

    The following filters are available:

    • Server limits — filter by server limit/unlimited
    • License type — filter by license type

    Click an activation key to go to this Activation Key Details page.

    Activation Keys by product

    Click Extended Support Services → Activation Keys → Product. You will be redirected to the Product Activation Keys page.

    • If there are no activation keys for the product, you can create one by clicking the Create activation key.
    • If there is the default activation key for the product, you can generate a new one by clicking the Generate new activation key. A new key will be created automatically and added to the table.
    • You can copy an activation key by clicking Copy.

    The table includes all activation keys for the product. The table contains the following columns:

    • Activation key – is a string of numbers and letters used to activate a product
    • Note — any information you’ve added to this activation key
    • Servers (used/limits) – a number of servers that have already been activated with this key (used) and a total number of servers that can be registered with this particular key (limits)

    To remove a key, select it and click .

    The following filters are available:

    • Server limits — filter by server limit/unlimited
    • Search

    Click a key to go to the Activation Key Details page for this key.

    Activation Key Details

    Here you can:

    • See the activation key complete information
    • Edit key. Click Edit key
    • Remove key. Click
    • Review Servers List

    The table includes all servers registered with the key. The table contains the following columns:

    • Server name — server hostname
    • IP — server IP address
    • Registered — a date when a server was activated. A server sends this information to TuxCare portal
    • Last check-in — the last date when a server successfully responded to check-in

    The following filters are available:

    • Server limits — filter by server limit/unlimited
    • Search field

    Servers

    Click Extended Support Services → Servers. You will be redirected to the Servers page.

    The table includes all servers activated for all products within Extended Lifecycle Support. The table contains the following columns:

    • Server name — server hostname
    • IP — server IP address
    • Registered — a date when a server was activated. A server sends this information to TuxCare portal
    • Installed products — shows a logo of a product activated on a server
    • Actions
      • To remove an item, click on

    Click the server name to show server details:

    • Installed products – the full name of the installed products
    • Last check-in — the last date when a server successfully responded to check-in

    The following filters are available:

    • Product — click Product button and select one or more products
    • Registered date — click Registered date to display a calendar where you can pick a date or a period to filter by
    • Search — type a query

    Servers by product

    Click Extended Support Services → Servers → Product. You will be redirected to the Product Servers page.

    The table includes all servers activated for the product within Extended Lifecycle Support. The table contains the following columns:

    • Server name — server hostname
    • IP — server IP address
    • Registered — a date when a server was activated. A server sends this information to TuxCare portal
    • Installed products — shows a logo of a product activated on a server
    • Actions
      • To remove an item, click on

    Click the server name to show server details:

    • Installed products – the full name of the installed products
    • Last check-in — the last date when a server successfully responded to check-in

    The following filters are available:

    • Registered date — click Registered date to display a calendar where you can pick a date or a period to filter by
    • Search — type a query

    You can download the servers list by clicking the Get servers list.

    Billing

    Balance and Top up

    Click Billing, you will be redirected to the Balance and Top up page.

    Here you find the following:

    • your current plan and prices
    • your balance

    You can top up your account by entering the amount and clicking Top up.

    Payment methods

    Click Billing → Payment methods, you will be redirected to the Payment methods page.

    The following tabs are available:

    • Billing information
    • Payment methods
    • Autopayment

    Billing information

    Here, you can change your email for billing. Click Save to apply changes.

    Payment methods

    Here, you can manage your payment method. Click Save to apply changes.

    Autopayment

    Here, you can change your autopayment type:

    • Auto add funds
    • Auto repay
    • Do not add funds automatically

    Click Save to apply changes.

    Invoices

    The table contains the followings columns:

    • Invoice id – unique invoice number
    • Created — invoice issue date.
    • Type – type of payment: invoice or payment received
    • Pay period – the start date of the period for which the invoice was issued
    • Total — a total amount received/need to pay
    • Balance – the current balance
    • Actions — the following actions are available:
      • View invoice — click to view invoice in-details. It opens in a new popup.
      • Download invoice — click to download an invoice.

    Click to view the invoice details.

    Settings

    To go to account details, click User icon → Settings in the top right corner. You will be redirected to the Account details page.

    Account details

    The following tabs are available:

    • Personal information
    • Company information
    • Billing contact information

    Personal information

    All fields marked * are required.

    • API secret key – use this key with TuxCare portal API
    • IM Upgrade URL – URL for upgrade Imunify products if it is not the default one

    To change the password, click Change password.

    To enable two-factor authentication, move the slider to On.

    Click Save to apply changes.

    Company information

    Click Save to apply changes.

    Billing contact information

    Click Save to apply changes.

    Account sublogins

    You can create additional logins for your account in the form of the email address. The sub login can have any role with different permissions listed below. A master Server Administrator account has the full scope of permissions; this role can create account sub logins.

    Click Save to apply changes.

    Roles

    Full Access/Admin

    • View products
    • View servers/licenses information
    • Reporting
    • Add/delete servers
    • Create activation keys
    • Order/delete licenses
    • View invoices
    • View billing information
    • Edit credit cards information
    • Edit account information
    • Edit billing information/top up for reseller
    • View prices
    • View account information
    • Change password

    Billing

    • View products
    • View server's/licenses information
    • View invoices
    • View billing information
    • Edit credit cards information
    • Edit account information
    • Edit billing information/top up for reseller
    • View prices
    • View account information

    Server and License Management

    • View products
    • View server's/licenses information
    • Reporting
    • Add/delete servers
    • Create activation keys
    • Order/delete licenses

    Server Management Only

    • View products
    • View server's/licenses information
    • Reporting
    • Add/delete servers
    • Create activation keys

    Read Only — Billing

    • View products
    • View server's/licenses information
    • Reporting
    • View invoices
    • View billing information

    Read Only — Server Management

    • View products
    • View server's/licenses information
    • Reporting

    Reports

    It is possible to set reports receiving for an account to the desired email address.

    To add a new report configuration, click Add config.

    - + diff --git a/tuxcare/index.html b/tuxcare/index.html index 429cd47b..2fffe9d0 100644 --- a/tuxcare/index.html +++ b/tuxcare/index.html @@ -39,10 +39,10 @@ })(); TuxCare - + -
    sidebar hamburger menu

    TuxCare

    The TuxCare services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.

    TuxCare, which is an expansion of the CloudLinux’s KernelCare and Extended Lifecycle Support brands, helps organizations take care of support, maintenance, and security for Enterprise Linux systems.

    With TuxCare Live Patching Services, Linux kernels, libraries, databases, virtualizations and IoT devices receive automated security patches applied with zero downtime.

    Using the TuxCare Extended Lifecycle Support services, you can migrate to the newest version of Linux at your own pace while maintaining protection from the common risks of running an end-of-life distro.

    Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage, delivers an extension of an additional 4.5 years of security fixes for Critical and High-risk vulnerabilities and FIPS-compliant security patches for select AlmaLinux minor versions, minimizes vulnerability windows with rebootless security patches and helps to avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

    TuxCare provides the AlmaLinux community with FIPS 140-3 certification for AlmaLinux 9.2. Organizations requiring FIPS-certified AlmaLinux deployments or those operating under compliance regimes with similar requirements (e.g., PCI DSS, HIPAA) can download and install FIPS-validated cryptographic packages for AlmaLinux 9.2 (including the kernel and OpenSSL) for free.

    - +
    sidebar hamburger menu

    TuxCare

    The TuxCare services automate, simplify, and enhance Linux operations, giving organizations more flexibility in managing Linux distro choices and versions, significant maintenance cost reductions, and greatly enhanced security and compliance postures.

    TuxCare, which is an expansion of the CloudLinux’s KernelCare and Extended Lifecycle Support brands, helps organizations take care of support, maintenance, and security for Enterprise Linux systems.

    With TuxCare Live Patching Services, Linux kernels, libraries, databases, virtualizations and IoT devices receive automated security patches applied with zero downtime.

    Using the TuxCare Extended Lifecycle Support services, you can migrate to the newest version of Linux at your own pace while maintaining protection from the common risks of running an end-of-life distro.

    Enterprise Support for AlmaLinux provides a TuxCare-vetted repository of AlmaLinux updates with 16 years of support coverage. It also delivers an extended lifecycle with FIPS-compliant security patches for select AlmaLinux minor versions and helps avoid costly upfront support package fees with pay-as-you-go hourly support bundles.

    Users requiring FIPS-certified AlmaLinux deployments can download and install our Community FIPS packages for AlmaLinux 9.2 (kernel and openssl) for free for non-commercial use. Commercial applications should use our Extended Security Updates product, which offers the full suite of five FIPS 140-3 modules (kernel, openssl, libcrypt, nss and gnutls), FIPS-compliant security updates, and technical support.

    +