Ghid de securitate pentru serverul de producție în Moldova (2026)
Acest ghid adună într-un singur loc măsurile care contează pentru un server de producție al unei firme din Moldova: de la cheia SSH până la copia de backup pe care nimeni nu o poate șterge. Fiecare capitol trimite la o pagină de întrebare cu pași, comenzi și exemple. Este scris pentru echipe care livrează clienților din UE, raportează la instituții locale sau vând online și nu își permit o zi de indisponibilitate.
Toate întrebările
- De ce nu lăsăm node_modules și npm pe serverul de producție?
- Cum protejez un site WordPress de atacuri?
- Ce este un atac DDoS și cum îmi protejez serverul?
- Cum securizez accesul SSH la un server Linux?
- Cum configurez firewall-ul pe un VPS și ce porturi las deschise?
- Cum fac backup la server și cum testez restaurarea (regula 3-2-1)?
- Cum instalez HTTPS cu Let's Encrypt și cum activez HSTS pe server?
- Ce este un WAF și când am nevoie de el?
- Cum gestionez secretele (.env, chei API) în producție fără să ajungă în git?
- Cum securizez containerele Docker în producție?
- Cum actualizez serverul Linux cu patch-uri de securitate?
- Cum securizez baza de date PostgreSQL sau MySQL în producție?
- Cum monitorizez serverul: loguri, metrici și alerte?
- Ce fac dacă serverul a fost compromis?
- Cum securizez serverul de e-mail cu SPF, DKIM și DMARC?
- Ce headere de securitate HTTP configurez în nginx?
- Cum configurez un VPN WireGuard pentru accesul administrativ la server?
- Cum gestionez utilizatorii și sudo după principiul privilegiului minim?
- Ce obligații legale de securitate cibernetică are firma mea în Moldova?
- Cum securizez contul cPanel pe un hosting partajat?
Cum securizezi serverul, pas cu pas
Închide accesul înainte de orice
Prima oră după pornirea serverului: chei SSH per persoană, parole dezactivate, root interzis, firewall cu politica de respingere și doar 22, 80 și 443 deschise, portul 22 restrâns la echipă.
Separă ce este public de ce este intern
Baza de date, Redis și panourile de administrare ascultă doar pe localhost sau pe rețeaua privată. Adresa reală a serverului stă în spatele unui proxy, ca atacurile să lovească filtrul, nu originea.
Livrează cod construit în alt loc
Build-ul rulează în CI cu lockfile și fără scripturi de pachet; pe server ajunge doar artefactul sau o imagine multi-stage fără npm, compilatoare și devDependencies.
Scoate secretele din cod și din imagini
Fișierele .env stau în .gitignore, valorile în secretele platformei de CI sau într-un manager de secrete, iar un scaner rulează la fiecare commit. Orice secret scurs se rotește înainte de orice altceva.
Criptează transportul și copiile
HTTPS cu Let's Encrypt și reînnoire monitorizată, HSTS activat treptat, backup după 3-2-1 cu o copie imutabilă și un test de restaurare lunar, pe o mașină separată, cu durata notată.
Filtrează la nivel de aplicație
Protecția DDoS de rețea vine de la furnizor; pe server pui rate limiting, cache și un WAF cu reguli OWASP, pornit în mod de detecție și trecut la blocare după ajustare.
Vezi ce se întâmplă și știi ce faci când se întâmplă
Jurnalele de autentificare, WAF și aplicație ajung într-un loc central, cu alerte pe conectări și erori neobișnuite, iar un plan scris spune cine anunță furnizorul, clienții și, unde se aplică, ASC.
Acces și identitate
Fiecare persoană intră pe contul propriu, cu cheia proprie, iar plecarea din echipă înseamnă revocarea cheii în aceeași zi.
- Chei ed25519 cu frază de acces, una pe persoană și dispozitiv, comentate cu nume și dată
- PasswordAuthentication no și PermitRootLogin no pe toate serverele, verificate cu sshd -T
- AllowGroups pentru conturile umane; conturile de deploy limitate la o comandă și o adresă sursă
- Inventar al cheilor din authorized_keys, revizuit la fiecare schimbare de personal
- Sudo cu jurnal, ca acțiunile să aibă un nume, nu doar „root”
O firmă de outsourcing din Chișinău a descoperit la auditul unui client olandez că șapte foști colaboratori mai aveau chei valide pe serverul de producție. Inventarul a devenit parte din procedura de încheiere a oricărui contract.
Rețea și expunere
Totul închis implicit; deschizi un port doar cu un serviciu, un public și un motiv notat.
- ufw sau nftables cu deny incoming; 80 și 443 publice, 22 restrâns pe sursă sau prin VPN
- Baza de date și cache-ul pe 127.0.0.1 sau pe rețeaua privată, niciodată pe adresa publică
- Porturile containerelor publicate pe 127.0.0.1, ca Docker să nu ocolească firewall-ul
- Adresa reală a serverului absentă din DNS-ul public când folosești CDN sau proxy
- Scan extern lunar de pe altă mașină, cu rezultatul păstrat pentru audit
Un fintech din Chișinău avea panoul de administrare pe portul 8443, accesibil din tot internetul. Mutarea lui în spatele VPN-ului firmei a închis observația auditorului băncii partenere.
Aplicație și lanț de aprovizionare
Codul care rulează pe server este exact codul testat, construit o singură dată, din dependențe fixate.
- Lockfile verificat la pull request; npm ci --omit=dev --ignore-scripts dacă instalarea e inevitabilă pe server
- Build în CI și artefact promovat între medii; Docker multi-stage fără npm în runtime
- .npmrc cu ignore-scripts=true, ca un preinstall compromis să nu ruleze nicăieri neobservat
- WordPress: actualizări săptămânale, 2FA la wp-admin, permisiuni 755/644, fără teme nulled
- WAF cu reguli OWASP în fața aplicației, pornit în detecție, trecut la blocare după ajustare
O echipă din Chișinău care livrează pentru un client german a mutat instalarea dependențelor în GitHub Actions după valul de pachete npm compromise din 2025. Auditul de supply-chain al clientului a trecut fără observații.
Date, backup și criptare
Datele sunt criptate în tranzit și în copii, iar copia de backup se dovedește prin restaurare, nu prin existență.
- HTTPS cu Let's Encrypt, reînnoire prin timer și alertă externă pe data de expirare
- HSTS activat în trepte: o zi, apoi un an; includeSubDomains doar după inventarul subdomeniilor
- Backup 3-2-1-1-0: trei copii, două suporturi, una offsite, una imutabilă, zero erori la test
- Dump consistent al bazei de date, nu copiere de fișiere din mers
- Restaurare de test lunară pe VPS temporar, cu durata notată drept RTO real
Un retailer din Chișinău cu facturare electronică către SFS păstra backup-ul pe același server. Ransomware-ul a criptat și copiile. Acum copiile pleacă zilnic pe un depozit cu retenție blocată, în alt datacenter.
Monitorizare și incidente
Un incident pe care nu îl vezi durează până îl vede altcineva; jurnalele centralizate și un plan scris scurtează ambele.
- Jurnale de autentificare, firewall, WAF și aplicație într-un singur loc, cu retenție definită
- Alerte pe conectări din adrese sau ore neobișnuite, pe erori 5xx în creștere și pe certificat aproape expirat
- Pagină statică de mentenanță pregătită înainte de primul DDoS
- Plan de răspuns cu roluri: cine anunță furnizorul, clienții, autoritatea
- Registru de incidente, chiar și pentru cele mici; auditorii îl cer
În timpul unui atac L7 asupra unui magazin online din Chișinău, echipa a văzut în jurnal aceleași trei URL-uri cerute de mii de ori pe secundă. Rate limiting-ul pregătit dinainte a ținut site-ul online fără să mărească serverul.
Cadrul din Moldova și cerințele clienților din UE
Legea nr. 48/2023 privind securitatea cibernetică, în vigoare de la 1 ianuarie 2025, și Legea nr. 195/2024 privind protecția datelor cu caracter personal fixează cadrul local; contractele cu clienții din UE îl completează.
- Agenția pentru Securitate Cibernetică (ASC) este echipa națională de răspuns și punctul de contact pentru incidente; CERT-GOV-MD, din cadrul STISC, acoperă sectorul guvernamental
- Furnizorii de servicii din sectoarele acoperite de Legea nr. 48/2023 au obligații de gestionare a riscurilor și de notificare a incidentelor
- Legea nr. 195/2024, aliniată la GDPR și supravegheată de CNPDCP, cere măsuri tehnice adecvate pentru datele personale, inclusiv capacitatea de a le restabili
- Clienții din UE cer contract de persoană împuternicită conform articolului 28 GDPR, clauze contractuale standard pentru transfer și o anexă de securitate cu măsuri verificabile
- Un dosar cu reguli de firewall, raport CIS, jurnal WAF și test de restaurare răspunde la majoritatea acestor cerințe fără efort suplimentar
O firmă de dezvoltare din Bălți a primit de la un client francez un chestionar de securitate de 60 de puncte. Peste jumătate erau acoperite direct de măsurile din acest ghid, iar restul de documentația generată de ele.
| Control | Ce protejează | Cât de des îl verifici | Pagina detaliată |
|---|---|---|---|
| Chei SSH, fără parole, fără root | accesul la server | la fiecare schimbare de personal | Cum securizez accesul SSH |
| Firewall deny incoming, 22/80/443 | perimetrul de rețea | lunar, cu scan extern | Cum configurez firewall-ul pe un VPS |
| Build în CI, fără npm pe server | lanțul de aprovizionare | la fiecare pull request | De ce nu lăsăm node_modules pe producție |
| Secrete în afara codului, rotite | cheile și parolele | la fiecare commit, prin scaner | Cum gestionez secretele în producție |
| HTTPS cu HSTS | datele în tranzit | alertă pe expirare | Cum instalez HTTPS și HSTS |
| Backup 3-2-1-1-0 testat | continuitatea afacerii | lunar, restaurare completă | Cum fac backup și testez restaurarea |
| WAF și rate limiting | aplicația web | revizuire lunară a jurnalului | Ce este un WAF |
| Containere non-root, fără socket | izolarea aplicațiilor | audit CIS lunar | Cum securizez containerele Docker |
Greșeli frecvente
- Consideri serverul securizat pentru că are certificat SSL și port SSH schimbat, deși parolele sunt active și baza de date ascultă pe adresa publică.
- Ai backup, dar niciodată restaurat, pe același server cu producția, unde ransomware-ul îl găsește primul.
- Instalezi dependențele direct pe server cu npm install și afli despre un preinstall compromis din jurnalul de acces al atacatorului.
- Ștergi un .env din repo și nu rotești cheia, deși ea rămâne în istoric și în fiecare clonă.
- Rulezi containerele ca root, cu socketul Docker montat, și crezi că izolarea vine implicit.
Cum te ajută 4hosting
- Fiecare abonament VPS, dedicat sau GPU include lunar ore de DevOps, CyberSecurity și Programare; le ceri din panoul de client, cu termenul propus de tine, și echipa 4hosting le livrează.
- Serviciile Hardening & Compliance, WAF & DDoS și SIEM & Incident Response acoperă exact capitolele din acest ghid, cu rapoarte pe care le poți anexa la contractele cu clienții din UE.
- Aliniere la ISO 27001, contract de prelucrare a datelor conform articolului 28 și clauze contractuale standard disponibile pentru clienții tăi din UE.
- Suport bilingv română și rusă, facturare în euro cu TVA 20 % defalcat și factură electronică SFS.
Întrebări conexe
De unde încep dacă am un singur server și puțin timp?
În ordinea asta: chei SSH și parole dezactivate, firewall cu deny incoming și baza de date pe localhost, backup offsite cu o restaurare de test, HTTPS cu reînnoire verificată. Sunt patru ore de muncă și acoperă majoritatea incidentelor reale ale firmelor mici.
Legea nr. 48/2023 se aplică unei firme mici din Moldova?
Legea vizează în primul rând furnizorii de servicii din sectoarele definite ca critice sau importante. O firmă mică de dezvoltare sau un magazin online nu intră de regulă direct sub obligațiile de notificare, dar clienții lor din aceste sectoare le transmit cerințele prin contract. Verifică încadrarea cu un consilier juridic.
Ce cer, concret, clienții din UE de la un furnizor din Moldova?
Un contract de persoană împuternicită conform articolului 28 GDPR, clauze contractuale standard pentru transferul datelor în afara UE, o anexă de securitate cu măsuri tehnice și, tot mai des, dovada lor: pentest, raport de configurare, test de restaurare, jurnal de acces. Găzduirea în datacentere UE simplifică discuția despre transfer.
Cât din acest ghid pot face cu orele incluse în abonament?
Pe un VPS cu câteva ore lunare, hardening-ul SSH și firewall-ul se fac într-o lună, backup-ul cu test în următoarea, WAF-ul și monitorizarea în a treia. Un server dedicat cu cota maximă de zece ore acoperă tot ghidul în una sau două luni. Orele nu se reportează, deci planifică-le lună de lună din panou.
Cum te ajută 4hosting
Fiecare abonament VPS, dedicat sau GPU include lunar ore de DevOps, CyberSecurity și Programare; le ceri din panoul de client, cu termenul propus de tine, și echipa 4hosting le livrează.