{"id":20084,"date":"2026-07-28T08:35:45","date_gmt":"2026-07-28T06:35:45","guid":{"rendered":"https:\/\/webhosting.de\/kernel-hardening-linux-sicherheitsfunktionen-fuer-hosting-server-secure\/"},"modified":"2026-07-28T08:35:45","modified_gmt":"2026-07-28T06:35:45","slug":"kernel-haerdning-linux-sikkerhedsfunktioner-til-hosting-servere-sikkerhed","status":"publish","type":"post","link":"https:\/\/webhosting.de\/da\/kernel-hardening-linux-sicherheitsfunktionen-fuer-hosting-server-secure\/","title":{"rendered":"Kernel-hardening under Linux: Sikkerhedsfunktioner til hosting-servere"},"content":{"rendered":"<p><strong>Kernel-h\u00e6rdning<\/strong> lukker sikkerhedshuller direkte i Linux-kernen og mindsker risikoen for vellykkede angreb p\u00e5 hukommelse, processer og systemkald p\u00e5 hosting-servere. Jeg viser konkret, hvordan jeg ved hj\u00e6lp af kernefunktioner, sysctl-parametre, isolationsmekanismer og serviceh\u00e6rdning begr\u00e6nser angrebsveje og sikrer serverne p\u00e5lideligt.<\/p>\n\n<h2>Centrale punkter<\/h2>\n<p>F\u00f8rst vil jeg sammenfatte de vigtigste foranstaltninger, som jeg prioriterer for hosting-servere, inden jeg forklarer hvert punkt i detaljer og viser praktiske indstillinger, der har vist sig at fungere godt i produktionsmilj\u00f8er. Her l\u00e6gger jeg v\u00e6gt p\u00e5 en klar <strong>Afskalning<\/strong> af beskyttelseslag, s\u00e5 enkelte fejl ikke f\u00f8rer til et totalt nedbrud. De f\u00f8lgende fokusomr\u00e5der virker sammen, fordi de samtidig sikrer kernen, tjenesterne og administratoradgangen og dermed reducerer risikoen betydeligt. Jeg har bevidst valgt <strong>fokuseret<\/strong>, s\u00e5 den hurtigt kan implementeres og kontrolleres med minimal indsats. Efter oversigten f\u00f8lger konkrete eksempler, tabeller og konfigurationer, som jeg bruger i revisioner og implementeringer.<\/p>\n<ul>\n  <li><strong>Aktualitet<\/strong> og minimalprincippet: den nyeste kerne, f\u00e5 moduler, reduceret angrebsflade.<\/li>\n  <li><strong>Sysctl<\/strong>-Hardening: Netv\u00e6rkssikkerhed, ASLR, core-dumps sl\u00e5et fra, f\u00e6rre l\u00e6kager.<\/li>\n  <li><strong>MAC<\/strong>-Kontrol: AppArmor eller SELinux begr\u00e6nser processerne strengt.<\/li>\n  <li><strong>Nedlukning<\/strong> og Secure Boot: Sikring af kernens integritet.<\/li>\n  <li><strong>Isolering<\/strong> via systemd, navnerum og servicedesign.<\/li>\n<\/ul>\n<p>Med denne <strong>Prioritering<\/strong> Jeg opbygger et flerlagsforsvar, der er rettet mod reelle angreb og letter vedligeholdelsen. Hvert punkt supplerer det n\u00e6ste, s\u00e5 det bliver sv\u00e6rere at udnytte s\u00e5rbarheder, og fejl hurtigt bliver opdaget. Jeg kontrollerer l\u00f8bende effektiviteten via overv\u00e5gning og tilpasser reglerne til nye indsigter. I sidste ende er det afg\u00f8rende, at beskyttelseslagene samarbejder og fungerer i hverdagen <strong>bevise sit v\u00e6rd<\/strong>. Det er netop dette, som de f\u00f8lgende afsnit gennemg\u00e5r trin for trin.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/linux-kernel-security-8543.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Aktuelle kerner og minimalprincippet<\/h2>\n\n<p>Jeg s\u00f8rger for, at kernen og pakkerne altid er opdaterede, fordi for\u00e6ldede versioner kan <strong>Angrebsoverflade<\/strong> forst\u00f8rre med det samme. For at minimere nedetiden bruger jeg, hvor det er muligt, <a href=\"https:\/\/webhosting.de\/da\/live-kernel-patching-kernelcare-ksplice-kpatch-kgraft-sikker\/\">Live-kerner-patching<\/a>, planl\u00e6gger jeg alligevel faste vedligeholdelsesvinduer og dokumenterer \u00e6ndringer. Samtidig anvender jeg minimalprincippet: Jeg deaktiverer ubrugte moduler, fjerner drivere, jeg ikke har brug for, og blokerer sj\u00e6ldne protokoller som IPv6 p\u00e5 v\u00e6rter, hvor der ikke er behov for dem. Jeg deaktiverer alle overfl\u00f8dige indstillinger, indtil kun det n\u00f8dvendige forbliver aktivt, og kernen udg\u00f8r et mindre angrebsareal. P\u00e5 den m\u00e5de opn\u00e5r jeg betydeligt mere med f\u00e5 trin <strong>Modstandskraft<\/strong> mod angreb, der udnytter kendte s\u00e5rbarheder.<\/p>\n\n<p>Jeg l\u00e6gger v\u00e6gt p\u00e5 klarhed i konfigurationen, s\u00e5 jeg senere hurtigt kan kontrollere \u00e6ndringer og f\u00e5 \u00f8je p\u00e5 enhver afvigelse. Jeg dokumenterer sortlister for moduler grundigt, s\u00e5 intet vender tilbage ubem\u00e6rket ved opdateringer. Tjenester, der ikke h\u00f8rer til form\u00e5let, fjerner jeg fra autostart og lukker dem definitivt ned. Denne oprydning betaler sig, fordi hver eneste un\u00f8dvendig sammenk\u00e6dning af kodestier skaber yderligere risici. Den, der holder omfanget lille, integrerer aktivt beskyttelsesmekanismerne i kernen i <strong>H\u00e6nder<\/strong>.<\/p>\n\n<h2>Sysctl-sikkerhedsoptimering i praksis<\/h2>\n\n<p>For at opn\u00e5 reproducerbare resultater opretter jeg en separat fil, f.eks. \/etc\/sysctl.d\/99-hardening.conf, og samler mine <strong>Regler<\/strong>. P\u00e5 netv\u00e6rkssiden aktiverer jeg rp_filter, blokerer ICMP-omdirigeringer, deaktiverer kildesporing, aktiverer SYN-cookies og aktiverer kun IP-videresendelse, hvis en v\u00e6rt skal routere. Hvad ang\u00e5r udnyttelse af s\u00e5rbarheder, indstiller jeg ASLR til den h\u00f8jeste tilstand og forhindrer core-dumps, som ellers ville afsl\u00f8re f\u00f8lsomme hukommelsesindhold. Derudover begr\u00e6nser jeg udl\u00e6sningen af interne oplysninger ved at maskere kernel-pekere og sp\u00e6rre dmesg-adgang for almindelige brugere. Disse indstillinger virker direkte i kernelstien og reducerer r\u00e6kkevidden af mange <strong>Angreb<\/strong>.<\/p>\n\n<p>Den f\u00f8lgende tabel viser gennempr\u00f8vede parametre, som jeg anvender p\u00e5 hosting-servere og regelm\u00e6ssigt kontrollerer. Den supplerer de tekstm\u00e6ssige anvisninger og g\u00f8r beslutningerne i forbindelse med audits gennemsigtige. Jeg validerer hver post efter indl\u00e6sning via sysctl -a og noterer de vigtigste kontroller i sundhedstjek. P\u00e5 den m\u00e5de forbliver effekten permanent gennemsigtig, ogs\u00e5 for teams med skiftende <strong>Ruller<\/strong>.<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Beskyttelsesfunktion<\/th>\n      <th>Eksempel \/ sysctl<\/th>\n      <th>Indvirkning p\u00e5 hosting-serveren<\/th>\n      <th>Bem\u00e6rkning<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>ASLR<\/td>\n      <td>kernel.randomize_va_space = 2<\/td>\n      <td>G\u00f8r adressegisning og ROP\/JOP vanskeligere<\/td>\n      <td>Indstil for alle produktionssystemer<\/td>\n    <\/tr>\n    <tr>\n      <td>Core-dumps<\/td>\n      <td>fs.suid_dumpable = 0, kernel.core_pattern = |\/bin\/false<\/td>\n      <td>Forhindrer l\u00e6kage af f\u00f8lsomme data<\/td>\n      <td>Nyttigt ved multi-tenant-hosts<\/td>\n    <\/tr>\n    <tr>\n      <td>rp_filter<\/td>\n      <td>net.ipv4.conf.all.rp_filter = 1<\/td>\n      <td>G\u00f8r IP-spoofing vanskeligere<\/td>\n      <td>Kontroller for asymmetri<\/td>\n    <\/tr>\n    <tr>\n      <td>ICMP-omdirigeringer<\/td>\n      <td>accept_redirects = 0, send_redirects = 0<\/td>\n      <td>Beskytter mod MITM-omdirigeringer<\/td>\n      <td>Behold standardindstillingen \u00bbh\u00e5rd\u00ab<\/td>\n    <\/tr>\n    <tr>\n      <td>Kildestyring<\/td>\n      <td>accept_source_route = 0<\/td>\n      <td>Fjerner un\u00f8dvendige routingstier<\/td>\n      <td>Anvend p\u00e5 IPv4\/IPv6<\/td>\n    <\/tr>\n    <tr>\n      <td>SYN-cookies<\/td>\n      <td>net.ipv4.tcp_syncookies = 1<\/td>\n      <td>D\u00e6mper SYN-floods<\/td>\n      <td>Kombiner med rate-limits<\/td>\n    <\/tr>\n    <tr>\n      <td>IP-videresendelse<\/td>\n      <td>net.ipv4.ip_forward = 0<\/td>\n      <td>Forhindrer utilsigtet routing<\/td>\n      <td>Aktiver kun routeren<\/td>\n    <\/tr>\n    <tr>\n      <td>dmesg-beskyttelse<\/td>\n      <td>kernel.dmesg_restrict = 1<\/td>\n      <td>Blokerer ubetydelige informationsl\u00e6kager<\/td>\n      <td>Root bevarer adgangen<\/td>\n    <\/tr>\n    <tr>\n      <td>Pointer-maskering<\/td>\n      <td>kernel.kptr_restrict = 2<\/td>\n      <td>Skjuler kerneadresser<\/td>\n      <td>G\u00f8r det sv\u00e6rere at udvikle exploits<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<p>N\u00e5r jeg har foretaget \u00e6ndringer, indl\u00e6ser jeg indstillingerne med det samme og tester dem <strong>Tilg\u00e6ngelighed<\/strong> mine tjenester, s\u00e5 ingen fejlkonfigurationer forbliver aktive. For at sikre reproducerbare implementeringer gemmer jeg parametrene i Infrastructure-as-Code og dokumenterer undtagelser for hver v\u00e6rtsrolle. Denne disciplin forhindrer uventede problemer ved rollbacks og g\u00f8r revisioner nemmere. Is\u00e6r p\u00e5 hostingservere med mange websteder betaler en ordentlig versionsstyring sig. P\u00e5 den m\u00e5de forbliver sikkerhedstilstanden kontrollerbar, og p\u00e5 f\u00e5 minutter <strong>m\u00e5lbar<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/linux_kernel_hardening_1234.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Beskyttelse mod cache og udnyttelse<\/h2>\n\n<p>Jeg satser p\u00e5 maksimal tilf\u00e6ldighed i adresserummet, fordi det m\u00e6rkbart hindrer udnyttelsen af hukommelsesfejl <strong>besv\u00e6rligg\u00f8r<\/strong>. Jeg deaktiverer core-dumps som standard, da de ved systemnedbrud kan afsl\u00f8re interne data, som angribere kan udnytte til m\u00e5lrettede angreb. N\u00e5r fejlfinding er n\u00f8dvendig, aktiverer jeg midlertidigt dumps og gemmer artefakterne i isolerede milj\u00f8er. Derudover tjekker jeg kompiler-h\u00e6rdninger som stack canaries og RELRO i brugerland, da kernel-h\u00e6rdning virker bedst, n\u00e5r applikationerne f\u00f8lger med. Sammen bremser denne kombination typiske ROP\/JOP-angreb og reducerer risikoen for, at et enkelt nedbrud f\u00f8rer til <strong>Eskalering<\/strong> f\u00f8rer til.<\/p>\n\n<p>Jeg overv\u00e5ger n\u00f8je crash-logik og OOM-killer-adf\u00e6rd, da us\u00e6dvanlige m\u00f8nstre kan tyde p\u00e5 aktive udnyttelsesfors\u00f8g. Analyserne indg\u00e5r i min overv\u00e5gning, s\u00e5 jeg kan knytte alarmer til t\u00e6rskelv\u00e6rdier. Derefter f\u00f8lger en \u00e5rsagsanalyse, der omfatter b\u00e5de applikationskode og kernekonfiguration. Ved afvigelser sk\u00e6rper jeg yderligere sikkerheden ved hj\u00e6lp af rate-limits og restriktive ressourcegr\u00e6nser. P\u00e5 den m\u00e5de forhindrer jeg bivirkninger og opretholder <strong>Tilg\u00e6ngelighed<\/strong> h\u00f8j.<\/p>\n\n<h2>Begr\u00e6nse informationsl\u00e6kager<\/h2>\n\n<p>Jeg begr\u00e6nser adgangen til dmesg og maskerer kernel-pekere, s\u00e5 potentielle angribere har f\u00e6rre <strong>Indsigt<\/strong> modtages som interne adresser. Disse sm\u00e5 justeringer fratager exploit-udviklere vigtige hj\u00e6lpemidler og \u00f8ger besv\u00e6ret ved hvert fors\u00f8g. Derudover blokerer jeg overfl\u00f8dige Proc- og Sysfs-oplysninger via mount-indstillinger og serviceisolering. N\u00e5r logfiler indeholder mange detaljer, flytter jeg dem til v\u00e6rter uden kundetilgang eller gemmer dem centralt. F\u00e6rre tilg\u00e6ngelige interne oplysninger betyder mindre <strong>Angrebsoverflade<\/strong> til pr\u00e6cise exploits.<\/p>\n\n<p>Jeg gennemg\u00e5r desuden symbolsk information i crash-handlere og fjerner un\u00f8dvendige debug-pakker p\u00e5 produktionssystemer. Hver eneste detaljekilde, der fjernes, g\u00f8r systemet mindre gennemsigtigt for udefrakommende. Jeg kombinerer denne kontrol med MAC-regler, s\u00e5 selv privilegerede processer ikke kan l\u00e6se vilk\u00e5rligt. Is\u00e6r i multi-tenant-milj\u00f8er mindsker s\u00e5danne begr\u00e6nsninger risikoen for tv\u00e6rg\u00e5ende l\u00e6sning. Summen af disse sm\u00e5 tiltag giver et stort <strong>M\u00e5l<\/strong> : f\u00e6rre oplysninger, som angribere kan udnytte.<\/p>\n\n<h2>Navneomr\u00e5der og cgroups styrker isolationen<\/h2>\n\n<p>Jeg isolerer desuden arbejdsbelastninger ved hj\u00e6lp af navneomr\u00e5der og cgroups, fordi klare gr\u00e6nser mellem processer <strong>Eskalering<\/strong> komplicerer. Netv\u00e6rks-, PID- og mount-namespaces adskiller synlighed og virkning af handlinger, mens cgroups s\u00e6tter lofter for CPU, RAM og IO. Denne kontrol mindsker f\u00f8lgeskader ved udnyttelse af s\u00e5rbarheder og skaber p\u00e5lidelige kvoter. Ved at kombinere navnerum p\u00e5 en gennemt\u00e6nkt m\u00e5de forhindrer man, at en enkelt kompromitteret tjeneste p\u00e5virker andre tjenester. En introduktion med praktiske eksempler findes i mit indl\u00e6g p\u00e5 <a href=\"https:\/\/webhosting.de\/da\/serverkontekst-isolation-namespaces-cgroups-hosting-sikkerhed\/\">Navneomr\u00e5der og cgroups<\/a>, som jeg regelm\u00e6ssigt opdaterer.<\/p>\n\n<p>Jeg integrerer denne isolering i systemd-enheder for at kunne vedligeholde indstillingerne centralt. P\u00e5 den m\u00e5de f\u00e5r jeg et samlet overblik over ressourcebegr\u00e6nsninger og kan begrunde undtagelser for hver enkelt tjeneste. Overv\u00e5gningskontroller holder \u00f8je med gr\u00e6nsev\u00e6rdierne og rapporterer om begr\u00e6nsninger. Det bidrager direkte til tilg\u00e6ngeligheden, fordi kraftige afvigelser hurtigt bliver synlige. I sidste ende drager b\u00e5de <strong>Sikkerhed<\/strong> samt forudsigelighed.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/kernel-hardening-linux-security-4829.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Obligatorisk adgangskontrol: SELinux og AppArmor<\/h2>\n\n<p>Jeg aktiverer MAC-frameworks som SELinux eller AppArmor, s\u00e5 processer kun har pr\u00e6cis den <strong>Rettigheder<\/strong> de har brug for. Til webservere, PHP-FPM, databaser, SSH og overv\u00e5gning bruger jeg restriktive profiler og logger i starten i Permissive- eller Complain-tilstand. Derefter strammer jeg reglerne, indtil profilerne k\u00f8rer fejlfrit. Dette lag opfanger ogs\u00e5 fejl i tjenester, der ellers ville komme for langt med klassiske UNIX-rettigheder. Korrekt konfigureret forhindrer MAC adgang ud over det tilsigtede <strong>Sammenh\u00e6ng<\/strong> udover.<\/p>\n\n<p>Jeg vedligeholder profilerne med versionsstyring og tester dem i staging-milj\u00f8er. Jeg dokumenterer \u00e6ndringerne for hver enkelt tjeneste, s\u00e5 jeg hurtigt kan fortryde dem i tilf\u00e6lde af h\u00e6ndelser. Jeg gennemg\u00e5r logfilerne regelm\u00e6ssigt for at undg\u00e5 falske alarmer og identificere reelle overtr\u00e6delser. P\u00e5 den m\u00e5de forbedres reglernes kvalitet med hver iteration. MAC forbliver dermed et l\u00e6rende, men klart <strong>kontrolleret<\/strong> System.<\/p>\n\n<h2>Kernel Lockdown og Secure Boot<\/h2>\n\n<p>Jeg aktiverer kernel-lockdown, s\u00e5 heller ikke root-processer kan skrive direkte til kritiske <strong>Kernelstier<\/strong> skrive. I kombination med Secure Boot accepterer systemet kun signerede kerner og moduler, hvilket forhindrer indl\u00e6sning af manipulerede drivere. Jeg administrerer signaturk\u00e6derne omhyggeligt og kontrollerer dem efter hver opdatering. I multi-tenant-ops\u00e6tninger virker denne barriere s\u00e6rligt effektiv mod fors\u00f8g p\u00e5 at manipulere kernelhukommelsen. P\u00e5 den m\u00e5de bevares systemets integritet gennem genstarter og <strong>Rollbacks<\/strong> bevaret.<\/p>\n\n<p>Jeg benytter desuden modul-signaturer og blokerer genindl\u00e6sning, n\u00e5r det er driftsm\u00e6ssigt forsvarligt. Audit-poster for signaturfejl udl\u00f8ser alarmer, s\u00e5 jeg straks kan se uautoriserede indl\u00e6sningsfors\u00f8g. Disse foranstaltninger kr\u00e6ver kun en lille indsats, men forhindrer alvorlige indgreb. Den, der er konsekvent p\u00e5 dette punkt, f\u00e5r en h\u00e5rd linje mod manipulation af kernen. Det er en central byggesten i enhver <strong>Serverh\u00e6rdning<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/kernel_hardening_tech_office_4826.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Systemd-sandboxing og tjenesteisolering<\/h2>\n\n<p>Jeg bruger systemd-indstillinger som ProtectSystem, ProtectHome, PrivateTmp, NoNewPrivileges og RestrictAddressFamilies for at sikre tjenesterne yderligere ud over <strong>kapsler<\/strong>. Hver tjeneste f\u00e5r sin egen konto, og jeg begr\u00e6nser root-processer til de absolutte undtagelser. Netv\u00e6rkstjenester knytter jeg til bestemte gr\u00e6nseflader, porte og protokoller, s\u00e5 de ikke kan n\u00e5 ud over deres tilsigtede form\u00e5l. P\u00e5 den m\u00e5de forhindrer jeg u\u00f8nskede bivirkninger og holder angrebsfladen lille. Alt i alt skaber dette en skarp adskillelse mellem tjeneste og <strong>V\u00e6rt<\/strong>.<\/p>\n\n<p>Jeg dokumenterer disse sandbox-regler i unit-filerne og gennemg\u00e5r dem ved hver opdatering. Jeg holder startparametre og kapaciteter p\u00e5 et minimum for at mindske risikoen for misbrug. Fejl og overtr\u00e6delser registreres i loggen og sendes til mit SIEM-system. Denne synlighed hj\u00e6lper mig med at opdage snigende konfigurationsfejl. Enhver begr\u00e6nsning, der ikke koster en funktion, sparer jeg mig selv for senere <strong>Smerte<\/strong>.<\/p>\n\n<h2>Sikring af netv\u00e6rk og tjenester<\/h2>\n\n<p>Jeg implementerer TLS, v\u00e6lger de nyeste krypteringssuiter, aktiverer HSTS og sikrer databaseforbindelser via <strong>Kryptering<\/strong> . Jeg begr\u00e6nser \u00e5bne porte til det absolut n\u00f8dvendige og bruger en firewall med standardreglen \u00bbDeny All\u00ab. Jeg bruger udelukkende sikre protokoller til e-mail og undg\u00e5r ukrypteret FTP til fordel for SFTP. P\u00e5 den m\u00e5de sikrer jeg, at der slet ikke opst\u00e5r klartekstkanaler. Kombineret med kernel-hardening blokerer disse regler mange <strong>Standardangreb<\/strong> allerede ved kanten.<\/p>\n\n<p>Jeg tjekker regelm\u00e6ssigt, hvilke tjenester der rent faktisk skal v\u00e6re offentligt tilg\u00e6ngelige. Alt andet flytter jeg over i admin-netv\u00e6rk eller blokerer via adgangs-lister. For udsatte endepunkter tilf\u00f8jer jeg rate-limits og Fail2Ban-regler. P\u00e5 den m\u00e5de forbliver logfilerne mere overskuelige, og m\u00e6ngden af falske alarmer ved angreb mindskes. Klare netv\u00e6rksgr\u00e6nser skaber ro og giver mig <strong>Kontrol<\/strong> om, hvad der virkelig skal v\u00e6re muligt.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/kernel_hardening_linux_1234.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Procesisolering i hosting: chroot, CageFS og containere<\/h2>\n\n<p>Afh\u00e6ngigt af anvendelsesform\u00e5let bruger jeg chroot, CageFS eller containere til at adskille bruger- eller kundekontekster fra hinanden <strong>separat<\/strong>. CageFS indkapsler filvisninger til shared hosting, mens containere giver mig reproducerbare milj\u00f8er med klare gr\u00e6nser. Under alle omst\u00e6ndigheder supplerer jeg dette med restriktive mount-indstillinger, skrivebeskyttede stier og minimale v\u00e6rkt\u00f8jsk\u00e6der. P\u00e5 den m\u00e5de fratager jeg angribere v\u00e6rkt\u00f8jer og indsigt i nabosystemer. En sammenligning af modellerne med fordele og ulemper finder du under <a href=\"https:\/\/webhosting.de\/da\/proces-isolation-hosting-chroot-cagefs-container-jails-sikkerhed-sammenligning\/\">Procesisolering<\/a>, som jeg anvender i praksis.<\/p>\n\n<p>Jeg tjekker \u00bbCapabilities\u00ab for containere og indstiller \u00bbrootless\u00ab-varianter, hvor det er muligt. Derudover begr\u00e6nser jeg enhedsadgang og undg\u00e5r un\u00f8dvendige privilegier. P\u00e5 netv\u00e6rkssiden bruger jeg adskilte broer og klare politikker. Dermed forbliver udnyttelser begr\u00e6nset til den egne kapsel. Sammen med kernel-hardening skaber dette en st\u00e6rk <strong>beskyttende lag<\/strong> mod sidev\u00e6rts bev\u00e6gelse.<\/p>\n\n<h2>SSH-sikkerhedsforbedringer og adgangskontrol<\/h2>\n\n<p>Jeg forbyder root-login via SSH, kr\u00e6ver n\u00f8gleautentificering, indf\u00f8rer MFA, hvor det er muligt, og begr\u00e6nser <strong>Login<\/strong>-fors\u00f8g. Fail2Ban blokerer brute-force-angreb, mens begr\u00e6nsede autentificeringsfors\u00f8g forkorter angrebets varighed. Jeg deaktiverer sj\u00e6ldne KEX- og krypteringsalgoritmer og logger mislykkede fors\u00f8g n\u00f8je. P\u00e5 den m\u00e5de forhindrer jeg, at en kompromitteret konto bliver udgangspunkt for mere omfattende angreb. SSH-h\u00e6rdning aflaster kernel-h\u00e6rdning, fordi der overhovedet er f\u00e6rre uautoriserede sessioner <strong>tilstand<\/strong> kom.<\/p>\n\n<p>Derudover begr\u00e6nser jeg administratoradgangen til faste administrationsnetv\u00e6rk og anvender port-knocking eller Single Packet Authorization. Revisioner dokumenterer, hvem der har gjort hvad og hvorn\u00e5r, hvilket er afg\u00f8rende ved analyse af h\u00e6ndelser. Jeg holder SSH-konfigurationen enkel og dokumenterer afvigelser. \u00c6ndringer tester jeg f\u00f8rst p\u00e5 staging-hosts for at undg\u00e5 udelukkelser. En sn\u00e6ver adgangskorridor betaler sig direkte <strong>Sikkerhed<\/strong> og sporbarhed.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/linux-sicherheitsserver-4821.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Udvidede sysctl- og kerneparametre<\/h2>\n<p>Ud over de grundl\u00e6ggende elementer deaktiverer jeg m\u00e5lrettet kraftfulde primitivfunktioner eller reducerer deres styrke kraftigt. P\u00e5 den m\u00e5de fratager jeg angribere de v\u00e6rkt\u00f8jer, der er n\u00f8dvendige for <strong>Privilegieskalering<\/strong> og dataeksfiltrering er popul\u00e6re. Jeg samler ogs\u00e5 disse indstillinger i \/etc\/sysctl.d\/99-hardening.conf og gennemg\u00e5r dem for hver v\u00e6rtsrolle, s\u00e5 n\u00f8dvendige undtagelser forbliver tydeligt dokumenteret.<\/p>\n<table>\n  <thead>\n    <tr>\n      <th>Beskyttelsesfunktion<\/th>\n      <th>Eksempel \/ sysctl<\/th>\n      <th>Indvirkning p\u00e5 hosting-serveren<\/th>\n      <th>Bem\u00e6rkning<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>Ikke-privat BPF<\/td>\n      <td>kernel.unprivileged_bpf_disabled = 1<\/td>\n      <td>Fjerner eBPF fra brugere uden privilegier<\/td>\n      <td>Reducerer JIT-angrebsfladen<\/td>\n    <\/tr>\n    <tr>\n      <td>BPF-JIT-h\u00e6rdning<\/td>\n      <td>net.core.bpf_jit_harden = 2<\/td>\n      <td>G\u00f8r det sv\u00e6rere at misbruge JIT<\/td>\n      <td>Afveje med Debug-Needs<\/td>\n    <\/tr>\n    <tr>\n      <td>perf-begivenheder<\/td>\n      <td>kernel.perf_event_paranoid = 3<\/td>\n      <td>Blokerer profilering for brugere uden privilegier<\/td>\n      <td>Kun m\u00e5lrettet lempelse<\/td>\n    <\/tr>\n    <tr>\n      <td>ptrace<\/td>\n      <td>kernel.yama.ptrace_scope = 2<\/td>\n      <td>Forhindrer un\u00f8dvendig proces-attachment<\/td>\n      <td>S\u00e6nk midlertidigt til fejlfinding<\/td>\n    <\/tr>\n    <tr>\n      <td>Bruger-navneomr\u00e5der<\/td>\n      <td>kernel.unprivileged_userns_clone = 0<\/td>\n      <td>Begr\u00e6nser misbrug af bruger-NS\u2019er<\/td>\n      <td>Afh\u00e6ngigt af distributionen: V\u00e6r opm\u00e6rksom p\u00e5 user.max_user_namespaces<\/td>\n    <\/tr>\n    <tr>\n      <td>userfaultfd<\/td>\n      <td>vm.unprivileged_userfaultfd = 0<\/td>\n      <td>Reducerer angreb via h\u00e5ndtering af hukommelsesfejl<\/td>\n      <td>Aktiver kun, hvis det er n\u00f8dvendigt<\/td>\n    <\/tr>\n    <tr>\n      <td>kexec<\/td>\n      <td>kernel.kexec_load_disabled = 1<\/td>\n      <td>Forhindrer skift af kerne under drift<\/td>\n      <td>Afstemme med vedligeholdelsesprocesserne<\/td>\n    <\/tr>\n    <tr>\n      <td>SysRq<\/td>\n      <td>kernel.sysrq = 0<\/td>\n      <td>Minimerer genveje til n\u00f8dsituationer<\/td>\n      <td>Alternativ restriktiv bitmaske<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n<p>Disse parametre mindsker risikoen for, at lokale rettighedsudvidelser lykkes, eller at f\u00f8lsomme m\u00e5lev\u00e6rdier misbruges. N\u00e5r udviklerteams har brug for fejlfindingsfunktioner, styrer jeg godkendelserne <strong>i tide<\/strong> og <strong>pr\u00e6cis<\/strong> om staging-hosts og definerede vedligeholdelsesvinduer.<\/p>\n\n<h2>Sikkerhedsforbedring af filsystemer og monteringer<\/h2>\n<p>Jeg isolerer skrivebaner og fratager k\u00f8rselsmilj\u00f8er un\u00f8dvendige eksekveringsrettigheder. Separate monteringer med <strong>noexec<\/strong>, <strong>nosuid<\/strong> og <strong>nodev<\/strong> bryder mange udnyttelsesk\u00e6der tidligt.<\/p>\n<ul>\n  <li>Monter \/tmp og \/var\/tmp som separate partitioner med noexec, nosuid, nodev; v\u00e6rkt\u00f8jer, der forventer eksekverbare midlertidige filer, tildeles definerede arbejdsmapper.<\/li>\n  <li>\/home med nosuid, nodev; i multi-tenant-systemer desuden restriktive Umask- og MAC-profiler.<\/li>\n  <li>\/var\/log er skrivbar, men med nosuid og nodev; K\u00f8r logrotate som en test i en dry-run, f\u00f8r reglerne tr\u00e6der i kraft.<\/li>\n  <li>Monter \/proc med hidepid=2 og en dedikeret gruppe (gid=proc), s\u00e5 brugere uden privilegier kan se f\u00e6rre procesoplysninger.<\/li>\n  <li>Brug bind-mounts til at begr\u00e6nse tjenester til minimale skrivebeskyttede visninger; afgr\u00e6ns skrivbare mapper n\u00f8je.<\/li>\n<\/ul>\n<p>Jeg tjekker unit-filer for PrivateTmp og ReadOnlyPaths\/ReadWritePaths for at fastl\u00e6gge mount-politikker for hver tjeneste <strong>at gennemf\u00f8re<\/strong>. P\u00e5 den m\u00e5de holdes risikoen p\u00e5 et lavt niveau, selv hvis en enkelt proces kompromitteres.<\/p>\n\n<h2>Seccomp-bpf, SystemCall-filter og eBPF<\/h2>\n<p>Jeg begr\u00e6nser systemkald ved hj\u00e6lp af seccomp-bpf og systemd-filtre, s\u00e5 processer kun f\u00e5r adgang til det n\u00f8dvendige <strong>Systemkald<\/strong> udnytte. P\u00e5 den m\u00e5de forhindrer jeg misbrug af opkaldsstier allerede ved gr\u00e6nsefladen til kernen.<\/p>\n<ul>\n  <li>SystemCallFilter= i systemd til at definere hvidlister for hver tjeneste; afbryde manglende opkald med SystemCallErrorNumber=EPERM.<\/li>\n  <li>Indstil SystemCallArchitectures=native for at undg\u00e5 problemer med krydsarkitektur.<\/li>\n  <li>Aktiv\u00e9r LockPersonality=, RestrictRealtime= og MemoryDenyWriteExecute= for at g\u00f8re JIT\/kodeinjektion vanskeligere.<\/li>\n  <li>Brug RestrictNamespaces=, PrivateUsers= og PrivateDevices= til at begr\u00e6nse visning og enhedsadgang.<\/li>\n  <li>For containere: Kombiner standardiserede seccomp-profiler og MAC-profiler; foretr\u00e6k rootless-varianter.<\/li>\n<\/ul>\n<p>Jeg anvender eBPF p\u00e5 en kontrolleret m\u00e5de: Uprivilegeret BPF er deaktiveret, og JIT er sikret. Jeg signerer mine egne observabilitetsprogrammer, dokumenterer deres form\u00e5l og opretter <strong>Godkendelsesprocesser<\/strong> fast, s\u00e5 fejlfindingsv\u00e6rkt\u00f8jer ikke bliver en sikkerhedsrisiko.<\/p>\n\n<h2>Boot-parametre, Kconfig og CPU-afb\u00f8dende foranstaltninger<\/h2>\n<p>Jeg h\u00e6rder allerede kernen ved opstart. Via kerneparametre og Kconfig-indstillinger implementerer jeg beskyttelsesmekanismer tidligt og permanent, s\u00e5 kompromitterende \u00e6ndringer under k\u00f8rsel ikke har en chance.<\/p>\n<ul>\n  <li>Integritet: lockdown=integrity (eller confidentiality i mere strenge konfigurationer), module.sig_enforce=1, iommu=force.<\/li>\n  <li>Hukommelsesbeskyttelse: init_on_alloc=1, init_on_free=1, slab_nomerge, page_alloc.shuffle=1, rodata=on.<\/li>\n  <li>Reduktion af angreb: vsyscall=none, pti=on (Kernel Page Table Isolation), randomize_kstack_offset=on (hvis tilg\u00e6ngeligt).<\/li>\n  <li>Speculative-Execution: mitigations=auto (eller auto,nosmt for et h\u00f8jere beskyttelsesniveau), l1tf=full, mds=full, tsx=off, hvis underst\u00f8ttet.<\/li>\n<\/ul>\n<p>Samtidig tjekker jeg kernekonfigurationen for indstillinger som <strong>H\u00e6rdet brugerkopi<\/strong>, SLUB\/SLAB-freelist-randomisering og skrivebeskyttede kerneoplysninger. Jeg holder mikrokoden opdateret og dokumenterer indvirkningen p\u00e5 ydeevnen. N\u00e5r latenstiden er afg\u00f8rende, foretager jeg m\u00e5linger f\u00f8r og efter \u00e6ndringer og v\u00e6lger det mindste beskyttelsesniveau, der sikrer, at <strong>Risici<\/strong> behandlet p\u00e5 passende vis.<\/p>\n\n<h2>Test- og udrulningsstrategi<\/h2>\n<p>Jeg implementerer opdateringer i etaper: F\u00f8rst i Staging, derefter p\u00e5 Canaries og s\u00e5 gradvist i hele fl\u00e5den. Health-checks kontrollerer netv\u00e6rksstier, logfiler, nedbrudsfrekvenser og ventetider. Hvis der opst\u00e5r problemer, benytter jeg dokumenterede <strong>Rollback<\/strong>-trin, som jeg \u00f8ver regelm\u00e6ssigt.<\/p>\n<ul>\n  <li>Jeg opdager konfigurationsafvigelser ved hj\u00e6lp af periodiske compliance-scanninger (f.eks. i forhold til interne referencer).<\/li>\n  <li>Hver afvigelse registreres som en sag med en ansvarlig, en frist og en begrundelse.<\/li>\n  <li>I release-noterne findes en oversigt over sikkerhedsrelevante \u00e6ndringer og n\u00f8dvendige driftsforanstaltninger.<\/li>\n<\/ul>\n<p>P\u00e5 den m\u00e5de forbliver \u00e6ndringerne kontrollerede, reproducerbare og sporbare. Is\u00e6r n\u00e5r det g\u00e6lder sysctl-\u00e6ndringer, undg\u00e5r jeg uventede resultater ved at vurdere konsekvenserne for <strong>Applikationer<\/strong> M\u00e5l f\u00f8rst.<\/p>\n\n<h2>Almindelige konfigurationsfejl og l\u00f8sninger<\/h2>\n<ul>\n  <li>For omfattende undtagelser: Jeg holder hvidlisterne korte og tidsbegr\u00e6nsede; undtagelsesregler skal have en udl\u00f8bsdato.<\/li>\n  <li>Glemte debug-artefakter: Jeg leder efter \u00e5bne ptrace-\/perf-\/debug-pakker og fjerner dem inden Go-Live.<\/li>\n  <li>Uklart ejerskab: Der er ansvarlige for hver server og hver regel; kun p\u00e5 den m\u00e5de kan tilpasninger <strong>bindende<\/strong>.<\/li>\n  <li>Inkonsekvente monteringsindstillinger: Jeg tjekker b\u00e5de fstab og systemd-enheder for at undg\u00e5 skyggebaner.<\/li>\n  <li>Uprivilegerede funktioner er \u00e5bne: Jeg fasts\u00e6tter standarder for userns, userfaultfd og uprivilegeret BPF og kontrollerer dem regelm\u00e6ssigt.<\/li>\n<\/ul>\n<p>Disse hindringer tager jeg fat p\u00e5 tidligt og systematisk. Det v\u00e6sentlige er stadig: s\u00e5 f\u00e5 angrebsflader som muligt, klare ansvarsforhold, m\u00e5lbare <strong>Effekt<\/strong>.<\/p>\n\n<h2>Overv\u00e5gning, revision og sikkerhedskopiering<\/h2>\n\n<p>Jeg overv\u00e5ger kerne- og systemh\u00e6ndelser med auditd, filintegritetskontroller og central <strong>Logning<\/strong>. Jeg indstiller alarmer til at reagere p\u00e5 afvigelser og fejl, ikke kun p\u00e5 faste gr\u00e6nsev\u00e6rdier. Jeg tager regelm\u00e6ssigt sikkerhedskopier, krypterer dem og opbevarer kopier uden for lokaliteten. Snapshots hj\u00e6lper mig med hurtigt at vende tilbage til en defineret tilstand i tilf\u00e6lde af h\u00e6ndelser. Uden synlig telemetri forbliver enhver h\u00e6rdning <strong>blind<\/strong>, og derfor indg\u00e5r h\u00e6ndelserne i dashboards og h\u00e6ndelsesprocesser.<\/p>\n\n<p>Jeg tester gendannelser under realistiske forhold og registrerer enhver afvigelse. Rapporterne sendes til de ansvarlige, s\u00e5 eventuelle huller hurtigt kan lukkes. Denne proces sikrer, at systemerne forbliver robuste, fordi fejl ikke bliver st\u00e5ende. Jo bedre overblikket er, desto kortere er den gennemsnitlige opdagelsestid. Det er netop dette, der i en n\u00f8dsituation afg\u00f8r, om der opst\u00e5r datatab og <strong>Nedetid<\/strong>.<\/p>\n\n<h2>Fysisk sikkerhed og kryptering<\/h2>\n\n<p>Jeg sikrer serverplaceringer, blokerer ubrugte porte og krypterer datamedier med <strong>LUKS<\/strong>. Selv den, der har fat i hardwaren, m\u00e5 ikke kunne l\u00e6se klartekst. Jeg deaktiverer USB- og konsolportene, hvor driftsforholdene tillader det. Denne beskyttelse supplerer Secure Boot og Lockdown p\u00e5 det tekniske plan. P\u00e5 den m\u00e5de forbliver adgangen til indholdet sikret, selv i tilf\u00e6lde af tyveri eller udskiftning af komponenter <strong>n\u00e6gtet<\/strong>.<\/p>\n\n<p>Jeg dokumenterer n\u00f8gleopbevaring og fastl\u00e6gger klare procedurer for n\u00f8gleudskiftning og adgang i n\u00f8dsituationer. Kombinationen af organisatoriske regler og teknisk sikring forhindrer tvister. Desuden mindsker jeg p\u00e5 den m\u00e5de virkningen af interne risici. Gennemsigtighed og minimale rettigheder g\u00e6lder her p\u00e5 samme m\u00e5de som i kernen. Fysisk kontrol forbliver en vigtig <strong>S\u00f8jle<\/strong> den samlede sikkerhed.<\/p>\n\n<h2>Kort oversigt for operat\u00f8rer<\/h2>\n\n<p>Kernel-Hardening virker bedst, n\u00e5r jeg kombinerer det med minimalprincippet, MAC, serviceisolering, sikkert netv\u00e6rksdesign og ren <strong>Overv\u00e5gning<\/strong> kombinerer. Jeg starter med opdateringer og moduler, indstiller Sysctl-regler konsekvent og lukker informationsl\u00e6kager. Derefter f\u00f8lger jeg op med Lockdown, Secure Boot, systemd-sandboxing og procesisolering. Sidel\u00f8bende styrker jeg SSH og TLS og s\u00f8rger for p\u00e5lidelige logfiler og sikkerhedskopier. Med denne r\u00e6kkef\u00f8lge opbygger jeg en effektiv <strong>Forsvar<\/strong> der d\u00e6mper fejlene og stopper angrebene i opl\u00f8bet.<\/p>\n\n<p>Til driften udarbejder jeg en tjekliste, der med faste intervaller kontrollerer alle kerneparametre, MAC-profiler og servicekonfigurationer. Jeg dokumenterer afvigelser, tester genstarter og holder \u00f8je med m\u00e5linger af detekterings- og reaktionstider. P\u00e5 den m\u00e5de forbliver sikkerhed en l\u00f8bende proces i stedet for en engangsforanstaltning. I sidste ende er det afg\u00f8rende, at hvert trin forbliver m\u00e5lbart og kommer til udtryk i den daglige drift. Det er netop denne konsekvens, der kendetegner Hosting-Server <strong>holdbar<\/strong> mod fremtidige trusler.<\/p>","protected":false},"excerpt":{"rendered":"<p>Find ud af, hvordan kernel-hardening styrker din Linux-sikkerhed og sikrer hosting-servere p\u00e5 lang sigt ved hj\u00e6lp af sysctl, MAC og sandboxing.<\/p>","protected":false},"author":1,"featured_media":20077,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[794],"tags":[],"class_list":["post-20084","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sicherheit-computer_und_internet"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"79","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":"1","_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"Kernel-Hardening","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"20077","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts\/20084","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/comments?post=20084"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts\/20084\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/media\/20077"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/media?parent=20084"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/categories?post=20084"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/tags?post=20084"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}