Varnost Vašega VPS: utrjevanje, Lynis in ritem vzdrževanja
Z navodili Zavarovanje Vašega VPS: prvih pet minut postavite osnovo: posodobitve, prijavo s ključem, požarni zid in fail2ban. Vendar strežnik ni nikoli dokončan. Programska oprema zastari, certifikati potečejo in diski se napolnijo. Tukaj si lahko preberete, kako strežnik nato korak za korakom dodatno zaprete (hardening), kako ga preverite z orodjem Lynis in kateri ritem vzdrževanja Vam pomaga.
Štiri načela
- Majhna napadalna površina. Česar ni, ne more puščati. Odstranite storitve in pakete, ki jih ne uporabljate, in od zunaj pustite odprta samo vrata, ki so res potrebna. Glejte Katere storitve poslušajo na Vašem VPS in kaj je dosegljivo od zunaj?
- Najmanjše pravice. Brez vsakodnevnega dela kot root, storitve pod lastnim uporabnikom, nikoli
chmod 777. Glejte Branje in pravilna nastavitev pravic datotek na Vašem VPS. - Večplastna obramba. Predpostavite, da en ukrep odpove. Podatkovna baza, ki posluša samo na
127.0.0.1, je za požarnim zidom in ima močno geslo, ostane varna, tudi če eden od teh treh ukrepov odpove. - Vidite, kaj se dogaja. Dnevniki, nadzor in varnostne kopije. Brez teh treh boste težavo opazili šele, ko bo prepozno.
Na kratko o CIS Benchmarks
Center for Internet Security (CIS) pripravlja CIS Benchmarks: sezname priporočenih nastavitev za posamezne izdelke, tudi za Debian in Ubuntu. Razdeljeni so na Level 1 (osnovni ukrepi brez večjih slabosti, za večino strežnikov cilj) in Level 2 (strožje, lahko stane funkcionalnost ali hitrost). Uporabljajte jih kot referenco: priporočilo razumite, preden ga uporabite, spreminjajte eno stvar naenkrat in zapišite, zakaj česa namenoma ne uporabite. Bodite previdni pri že pripravljenih skriptah, ki "vse iz CIS" uveljavijo naenkrat: z njimi se zlahka zaklenete iz strežnika.
Preverjanje z orodjem Lynis
Lynis je brezplačen odprtokodni program, ki Vaš strežnik pregleda od znotraj. Sam ničesar ne spreminja, samo poroča.
sudo apt install lynis sudo lynis audit system
Na AlmaLinux in Rocky Linux ga namestite iz EPEL z ukazom sudo dnf install lynis. Rezultat preberete takole:
- Warnings morate res pregledati, na primer pakete z znanimi ranljivostmi (takrat so na voljo posodobitve).
- Suggestions so nasveti. Mnogi so koristni, nekateri ne ustrezajo Vašemu strežniku. Predlog, da izklopite
AllowTcpForwarding, na primer pokvari Vaše tunele SSH. Ne sledite jim slepo. - Vsako sporočilo ima kodo v oglatih oklepajih, na primer
[SSH-7408]. Z njo v/var/log/lynis.logpoiščete, kaj točno je bilo preizkušeno. - Hardening index (število do 100) je smerokaz, ne ocena, ki bi se ji morali na vsak način približati.
Preden na podlagi rezultatov orodja Lynis kaj spremenite, ustvarite posnetek stanja, glejte Posnetki stanja in varnostne kopije Vašega VPS, in vedite, kako odprete konzolo, če se vseeno zaklenete iz strežnika.
Ritem vzdrževanja
Primer za manjši strežnik. Prilagodite ga svoji situaciji in termine vpišite v svoj koledar.
| Kdaj | Kaj |
|---|---|
| Vsak teden | Pregled obvestil nadzora; systemctl --failed; ponovni zagon, če obstaja /var/run/reboot-required |
| Vsak mesec | apt list --upgradable (ali kaj obvisi?); posodobitev vsebnikov; prostor na disku; napake v dnevniku z journalctl -p err --since "1 month ago" |
| Vsako četrtletje | Poskusna obnovitev varnostne kopije; pregled uporabnikov in authorized_keys; ponovni zagon orodja Lynis |
| Vsako leto | Preverjanje datuma konca podpore Vaše različice in načrtovanje nadgradnje; posodobitev security.txt, če ga imate; posodobitev dokumentacije strežnika |
Pomoč pri posameznih delih: Posodobitve in samodejne posodobitve, Nadzor od zunaj in od znotraj, Varnostne kopije z orodjem restic na drugo lokacijo, Preklic dostopa SSH do Vašega VPS za nekdanjega sodelavca ali ob izgubljenem prenosniku in Nadgradnja Vašega VPS na novo različico Debian ali Ubuntu.
Dokumentacija strežnika
Za vsak strežnik napišite kratek dokument in ga hranite zunaj strežnika, na primer v svojem upravitelju gesel:
- ime, naslovi IP, operacijski sistem in datum konca podpore te različice;
- kaj teče na strežniku (storitve, vsebniki, spletna mesta) in katera vrata so zato odprta;
- kje so varnostne kopije, kako jih obnovite in kdaj ste to nazadnje preizkusili;
- katere skrivnosti so na strežniku (ne skrivnosti same, ampak katere so in kje jih zamenjate);
- kdo ima dostop in kaj ste namenoma naredili drugače od privzetega.
Ta dokumentacija pomaga ob okvari, pri nadgradnji in ko upravljanje prevzame nekdo drug.
timedatectl preverite tudi, ali je ura sinhronizirana: z napačnim časom so dnevniki neuporabni, certifikati pa lahko veljajo za neveljavne.Vaš VPS je v celoti v Vašem upravljanju: hardening in vzdrževanje znotraj strežnika opravite sami. Mi pomagamo pri delu, ki ga upravlja WebOké, na primer pri zaslonu VPS, omrežju, posnetkih stanja in dnevnih varnostnih kopijah.
Želite izvedeti več? Obiščite brezplačni tečaj VPS in upravljanje strežnikov Linux, lekcijo 10.1 Hardening in načela CIS ali lekcijo 10.4 Končni pregled: preverite svoj strežnik.
