Lista de verificare pentru întărirea serverului Linux

15 min citire - 8 mai 2026

hero section cover
Cuprins
  • Lista de verificare pentru securizarea serverelor Linux
  • Blocați SSH
  • Configurați firewall-urile și Fail2Ban
  • Aplicați patch-uri și automatizați actualizările
  • Consolidarea sistemelor de fișiere și a permisiunilor
  • Activați controalele de acces obligatorii
  • Configurarea înregistrării și monitorizării auditului
  • Întreținere continuă
Distribuie

Lista de verificare pas cu pas pentru întărirea unui server Linux. Acoperă SSH, firewall-uri, patch-uri, permisiuni pentru fișiere, SELinux/AppArmor și logare de audit

Lista de verificare pentru securizarea serverelor Linux

O instalare Linux implicită nu este o instalare Linux sigură. Configurațiile greșite, cum ar fi accesul SSH root deschis, firewall-urile slabe și software-ul neactualizat, sunt responsabile pentru majoritatea breșelor de securitate. Noile servere sunt supuse unor scanări automate în câteva minute de la conectarea la internet, așa că securizarea ar trebui să aibă loc înainte de orice altceva.

Această listă de verificare acoperă pașii esențiali: blocarea SSH, configurarea firewall-urilor, aplicarea patch-urilor, înăsprirea permisiunilor de fișiere, activarea controalelor de acces obligatorii și configurarea jurnalizării de audit.

Blocați SSH

SSH este punctul dvs. principal de acces și primul lucru pe care îl verifică atacatorii. Configurația implicită (autentificare prin parolă, autentificare root, port 22) este exact ceea ce caută scanerele automate.

Generați o pereche de chei Ed25519, care oferă o securitate și o performanță mai bune decât RSA:

ssh-keygen -t ed25519

Odată ce autentificarea bazată pe cheie funcționează, actualizați /etc/ssh/sshd_config:

PasswordAuthentication no
ChallengeResponseAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers yourname
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2

Schimbați portul implicit de la 22 la unul mai puțin evident. Acest lucru nu va opri un atacator hotărât, dar reduce semnificativ zgomotul generat de scanările automate.

Testați întotdeauna modificările de pe un al doilea terminal înainte de a închide sesiunea curentă. Rulați sudo sshd -t pentru a verifica erorile de sintaxă, apoi systemctl reload sshd pentru a aplica fără a întrerupe conexiunile active.

Adăugați autentificarea în doi pași

2FA înseamnă că un atacator are nevoie atât de cheia dvs. SSH, cât și de acces fizic la dispozitivul dvs. Instalați modulul PAM Google Authenticator:

sudo apt install libpam-google-authenticator   # Debian/Ubuntu
sudo dnf install google-authenticator           # RHEL/Fedora

Rulați google-authenticator pentru fiecare utilizator pentru a genera o cheie secretă și coduri de recuperare. Păstrați codurile de recuperare offline.

Adăugați această linie la /etc/pam.d/sshd:

auth required pam_google_authenticator.so

Apoi actualizați /etc/ssh/sshd_config:

KbdInteractiveAuthentication yes
UsePAM yes
AuthenticationMethods publickey,keyboard-interactive

Păstrați o sesiune activă deschisă în timpul testării. Codurile TOTP depind de ora exactă a sistemului, așa că asigurați-vă că NTP rulează.

Configurați firewall-urile și Fail2Ban

Rulați un firewall bazat pe gazdă chiar dacă serverul dvs. se află în spatele unui firewall de rețea. Principiul este simplu: respingeți implicit tot traficul de intrare, apoi permiteți doar ceea ce aveți nevoie.

Pentru Ubuntu/Debian (UFW):

ufw default deny incoming
ufw default allow outgoing
ufw limit ssh
ufw enable

Pentru RHEL/Rocky/AlmaLinux (Firewalld):

firewall-cmd --set-default-zone=public
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Consolidați stiva de rețea a kernelului adăugând următoarele la /etc/sysctl.conf:

net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1

Instalați Fail2Ban

Fail2Ban monitorizează încercările de autentificare și blochează adresele IP după eșecuri repetate. Creați /etc/fail2ban/jail.local (nu editați jail.conf direct, actualizările îl vor suprascrie) și configurați-l să blocheze adresele IP timp de o oră după trei încercări eșuate în decurs de 10 minute. Setați backend-ul corect pentru firewall-ul dvs. (banaction = ufw sau banaction = nftables).

Servicii de audit și eliminarea protocoalelor vechi

Verificați ce ascultă cu ss -tlnp și ce rulează cu systemctl list-units --type=service --state=running. Dezactivați tot ce nu aveți nevoie: Bluetooth, CUPS, avahi-daemon, rpcbind.

Eliminați protocoalele vechi care transmit date în clar:

Protocol vechiPort(uri)Alternativă sigură
Telnet23SSH
RSH / Rlogin512, 513, 514SSH
FTP21SFTP / FTPS
TFTP69SFTP / SCP
NISVariabilLDAP / Kerberos

Pe Debian/Ubuntu: sudo apt-get --purge remove xinetd nis tftpd telnetd rsh-server. Pe sistemele bazate pe RHEL: yum erase xinetd ypserv tftp-server telnet-server rsh-server. Verificați eliminarea cu ss -tulpn.

Aplicați patch-uri și automatizați actualizările

Actualizarea sistemului este cea mai rapidă modalitate de a remedia vulnerabilitățile de securitate cunoscute. Rulați actualizările imediat după configurare:

apt update && apt upgrade -y      # Debian/Ubuntu
dnf update -y                      # RHEL/Rocky

Apoi automatizați patch-urile de securitate. Pe Debian/Ubuntu, instalați unattended-upgrades și configurați-l pentru a aplica numai patch-urile de securitate. Pe RHEL/Rocky, instalați dnf-automatic și setați upgrade_type = security în /etc/dnf/automatic.conf.

Configurați notificările prin e-mail pentru rezultatele actualizărilor. Dezactivați repornirile automate pe serverele de producție (Automatic-Reboot = false) astfel încât repornirile să aibă loc în timpul ferestrelor de întreținere planificate. Pentru mediile cu disponibilitate ridicată, luați în considerare aplicarea patch-urilor în timp real cu Canonical Livepatch (Ubuntu) sau kpatch (RHEL).

Consolidarea sistemelor de fișiere și a permisiunilor

Verificați mai întâi fișierele binare SUID și SGID. Aceste fișiere rulează cu privilegii ridicate și sunt ținte principale pentru exploatare:

find / -xdev \( -perm -4000 -o -perm -2000 \) -type f -ls

Strângeți permisiunile pentru fișierele critice: /etc/shadow ar trebui 600, /etc/passwd ar trebui 644, /etc/ssh/sshd_config ar trebui să fie 600. Setați un umask de 027 în /etc/profile pentru a împiedica ca fișierele noi să fie accesibile la citire de către toți utilizatorii.

Găsiți și remediați fișierele accesibile la scriere de către toți utilizatorii cu find / -xdev -type f -perm -0002 -ls. Pentru directoarele care trebuie să rămână accesibile la scriere pentru toți utilizatorii (cum ar fi /tmp), aplicați bitul sticky: chmod 1777 /tmp.

Opțiuni de montare securizată

Editați /etc/fstab pentru a restricționa ce se poate întâmpla pe partițiile critice:

PartițieOpțiuni de montareScop
/tmpnodev, nosuid, noexecÎmpiedică executarea programelor malware într-o zonă accesibilă la scriere
/var/tmpnodev, nosuid, noexecAceleași protecții ca și /tmp
/dev/shmnodev, nosuid, noexecSecurizează memoria partajată
/homenodev, nosuidBlochează fișierele binare setuid și nodurile de dispozitive
/var/lognodev, nosuid, noexecProtejează integritatea jurnalelor

Testați modificările cu mount -o remount înainte de repornire pentru a evita problemele la pornire.

Activați controalele de acces obligatorii

SELinux și AppArmor adaugă restricții la nivel de kernel asupra acțiunilor pe care le pot efectua procesele. Utilizați ceea ce este inclus în distribuția dvs.: SELinux pentru RHEL/CentOS/Fedora, AppArmor pentru Ubuntu/Debian/SUSE. Trecerea de la unul la altul provoacă probleme de compatibilitate.

SELinux: Verificați starea cu getenforce. Porniți în modul permisiv (setenforce 0) timp de cel puțin două săptămâni pentru a înregistra comportamentul sarcinilor de lucru fără a provoca erori. Monitorizați încălcările cu ausearch -m avc -ts recent. Utilizați audit2why pentru a diagnostica blocajele și audit2allow -M [module_name] pentru a crea module de politici. Odată ce jurnalele sunt curate, treceți la aplicare cu setenforce 1, apoi faceți-o permanentă în /etc/selinux/config.

AppArmor: Verificați profilurile active cu aa-status. Instalați apparmor-utils pentru comenzi de gestionare. Porniți profilurile în modul de avertizare cu aa-complain, apoi treceți la modul de aplicare cu aa-enforce odată ce sunteți sigur. Utilizați aa-genprof pentru a crea profiluri pentru aplicații personalizate.

Configurarea înregistrării și monitorizării auditului

Fără înregistrare, incidentele nu lasă nicio urmă. Instalați auditd:

sudo apt-get install auditd audispd-plugins

Adăugați supravegherea sistemului de fișiere pentru fișierele critice:

-w /etc/passwd -p wa -k identity
-w /etc/shadow -p wa -k identity

Urmăriți toate execuțiile de comenzi la nivel de root:

-a always,exit -F arch=b64 -S execve -F euid=0 -k root_commands

Încărcați reguli cu augenrules --load și adăugați -e 2 la sfârșitul fișierului de reguli pentru a face configurația rezistentă la modificări neautorizate (modificările necesită o repornire).

Monitorizarea integrității fișierelor cu AIDE

AIDE detectează modificările neautorizate ale fișierelor comparând starea actuală cu o linie de bază cunoscută ca fiind bună. Instalați-l, inițializați baza de date cu aideinitși mutați fișierul rezultat în /var/lib/aide/aide.db.gz. Configurați o sarcină cron zilnică pentru a rula aide --check și trimiteți rezultatele prin e-mail administratorilor.

Centralizați jurnalele

Jurnalele locale sunt inutile dacă un atacator cu acces de root le șterge. Redirecționați jurnalele către un server la distanță în timp real folosind rsyslog cu criptare TLS. Adăugați la /etc/rsyslog.conf:

*.* @@remote-host:514

Set LogLevel VERBOSE în configurația SSH, astfel încât jurnalele să includă amprentele cheilor pentru fiecare autentificare reușită. Pentru mediile de producție care gestionează mai multe servere, instrumente precum Wazuh sau OSSEC oferă detectarea intruziunilor bazată pe gazdă cu analiză centralizată a jurnalelor.

Întreținere continuă

Consolidarea nu este o sarcină punctuală. Configurațiile se modifică, apar noi vulnerabilități, iar schimbările de personal lasă în urmă conturi abandonate.

Săptămânal: revizuiți jurnalele Fail2Ban, verificați actualizările eșuate, verificați copiile de rezervă.

Lunar: Auditați conturile și permisiunile utilizatorilor, verificați serviciile care rulează, efectuați o scanare completă cu Lynis sau OpenSCAP.

Trimestrial: Rotați datele de autentificare, actualizați regulile firewall-ului, testați recuperarea în caz de dezastru.

Utilizați instrumente de tip „infrastructură ca cod” (infrastructure-as-code), precum Ansible, cu roluri de securizare dev-sec.io, pentru a impune configurații consecvente în întreaga flotă și pentru a preveni abaterile între audituri.

Serverele dedicate FDC vă oferă acces root complet și control deplin asupra stivei dvs. de securitate. Explorați opțiunile de servere dedicate pentru a construi pe o platformă pe care controlați fiecare strat.

background image
Serverul dvs. vă frânează creșterea?

V-ați săturat de implementări lente sau limite de lățime de bandă? FDC Servers oferă putere dedicată instantanee, acoperire globală și planuri flexibile construite pentru orice scară.

Actualizați acum

Blog

În prim plan săptămâna aceasta

Mai multe articole
Managementul memoriei în Linux: Swap, OOM Killer și Cgroups

Managementul memoriei în Linux: Swap, OOM Killer și Cgroups

Cum funcționează împreună Linux swap, OOM killer și cgroups - cu exemple de configurare pentru baze de date, servere web și gazde VPS multi-tenant.

12 min citire - 31 mai 2026

Ghid de configurare Prometheus și node_exporter

15 min citire - 29 mai 2026

Mai multe articole
background image

Aveți întrebări sau aveți nevoie de o soluție personalizată?

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee

icon

Opțiuni flexibile

icon

Acoperire globală

icon

Implementare instantanee