Weboldal keresés

20 CentOS szerver keményítési biztonsági tipp – 1. rész


Ez az oktatóanyag csak a CentOS 8/7 általános biztonsági tippjeit tartalmazza, amelyek a rendszer megerősítésére használhatók. Az ellenőrzőlista tippjeit leginkább különféle típusú fémszervereken vagy hálózati szolgáltatásokat nyújtó (fizikai vagy virtuális) gépeken való felhasználásra szánták.

A tippek egy része azonban sikeresen alkalmazható általános célú gépeken is, például asztali számítógépeken, laptopokon és kártyaméretű egykártyás számítógépeken (Raspberry Pi).

Követelmények

  • CentOS 8 minimális telepítés
  • CentOS 7 minimális telepítés

1. Fizikai védelem

Zárja le a szerverszobák hozzáférését, használjon állványzárakat és videó megfigyelést. Vegye figyelembe, hogy a szerverszobákhoz való bármilyen fizikai hozzáférés komoly biztonsági problémáknak teheti ki gépét.

A BIOS jelszavak megváltoztathatók az alaplap jumpereinek visszaállításával vagy a CMOS akkumulátor leválasztásával. Ezenkívül a behatoló ellophatja a merevlemezeket, vagy közvetlenül csatlakoztathat új merevlemezeket az alaplapi interfészekhez (SATA, SCSI stb.), elindulhat egy Linux live disztribúcióval, és klónozhat vagy másolhat adatokat anélkül, hogy szoftvernyomot hagyna.

2. Csökkentse a kémkedés hatását

Erősen érzékeny adatok esetén valószínűleg fejlett fizikai védelmet kell alkalmaznia, például Faraday-ketrecbe helyezni és zárolni a szervert, vagy katonai TEMPEST-megoldást kell használnia, hogy minimálisra csökkentse a rendszer rádión vagy elektromos szivárgó kisugárzáson keresztüli kémkedésének hatását.

3. Biztonságos BIOS/UEFI

Indítsa el a gép keményítését a BIOS/UEFI beállítások biztosításával, különösen állítson be egy BIOS/UEFI jelszót, és tiltsa le a rendszerindító médiaeszközöket (CD, DVD, USB támogatás letiltása) annak megakadályozása érdekében, hogy illetéktelen felhasználók módosítsák a rendszer BIOS-beállításait, vagy módosítsák a rendszerindító eszköz prioritását, és ne indítsák el a gépet egy másik adathordozóról.

Ahhoz, hogy ezt a fajta változtatást alkalmazhassa a gépén, olvassa el az alaplap gyártójának kézikönyvét a konkrét utasításokért.

4. Biztonságos rendszerbetöltő

Állítson be egy GRUB jelszót, hogy megakadályozza, hogy a rosszindulatú felhasználók manipulálják a kernel rendszerindítási sorrendjét vagy futtatási szintjeit, módosítsák a kernelparamétereket, vagy indítsák el a rendszert egyfelhasználós módba, hogy károsítsák a rendszert, és visszaállítsák a root rendszert. jelszót a kiváltságos irányítás megszerzéséhez.

5. Használjon külön lemezpartíciókat

Amikor a CentOSt éles szervernek szánt rendszerekre telepíti, használjon dedikált partíciókat vagy dedikált merevlemezeket a rendszer következő részeihez:

/(root) 
/boot  
/home  
/tmp 
/var 

6. Használjon LVM-et és RAID-et a redundanciához és a fájlrendszer bővítéséhez

A /var partíció az a hely, ahol a naplóüzenetek lemezre kerülnek. A rendszer ezen része exponenciálisan megnőhet nagy forgalmú szervereken, amelyek olyan hálózati szolgáltatásokat tesznek elérhetővé, mint a webszerverek vagy fájlszerverek.

Ezért használjon nagy partíciót a /var számára, vagy fontolja meg ennek a partíciónak a logikai kötetek (LVM) használatával történő beállítását, vagy kombináljon több fizikai lemezt egyetlen nagyobb virtuális RAID 0-s eszközben a nagy teljesítmény fenntartásához. adatmennyiségeket. Adatok redundanciája esetén fontolja meg a RAID 1 szint feletti LVM-elrendezés használatát.

Az LVM vagy RAID lemezeken történő beállításához kövesse hasznos útmutatóinkat:

  1. Lemeztároló beállítása LVM-mel Linux alatt
  2. LVM lemezek létrehozása a vgcreate, lvcreate és lvextend használatával
  3. Egyesítsen több lemezt egyetlen nagy virtuális tárolóban
  4. Hozzon létre RAID 1-et két lemez használatával Linux alatt

7. Módosítsa az fstab beállításait a Secure Data Partitions értékre

Különítse el az adatok tárolására szolgáló partíciókat, és akadályozza meg a programok, eszközfájlok vagy setuid bitek futtatását az ilyen típusú partíciókon az alábbi opciók hozzáadásával az fstab fájlhoz, az alábbi ábrán látható módon kivonat:

/dev/sda5 	 /nas          ext4    defaults,nosuid,nodev,noexec 1 2

A jogosultságok kiterjesztésének és tetszőleges szkript-végrehajtásának megakadályozása érdekében hozzon létre egy külön partíciót a /tmp számára, és csatlakoztassa nosuid, nodev és noexec néven. .

/dev/sda6  	/tmp         ext4    defaults,nosuid,nodev,noexec 0 0

8. Titkosítsa a merevlemezeket blokkszinten a LUKS segítségével

A gép merevlemezéhez való fizikai hozzáférés esetén az érzékeny adatok leskelődésének védelme érdekében. Azt javaslom, hogy tanulja meg a lemez titkosítását a Linux merevlemez adattitkosítása LUKS-szal című cikkünk elolvasásával.

9. Használjon PGP-t és nyilvános kulcsú titkosítást

A lemezek titkosításához használja a PGP-t és a nyilvános kulcsú titkosítást vagy az OpenSSL parancsot az érzékeny fájlok jelszóval történő titkosításához és visszafejtéséhez, amint az ebben a cikkben látható: A titkosított Linux rendszertároló konfigurálása.

10. Csak a szükséges minimális mennyiségű csomagot telepítse

Kerülje a lényegtelen vagy szükségtelen programok, alkalmazások vagy szolgáltatások telepítését a csomagok sebezhetőségeinek elkerülése érdekében. Ez csökkentheti annak a kockázatát, hogy egy szoftver kompromittálása más alkalmazások, a rendszer részei vagy akár fájlrendszerek kompromittálásához vezethet, ami végül adatsérülést vagy adatvesztést eredményezhet.

11. Frissítse gyakran a rendszert

Rendszeresen frissítse a rendszert. Tartsa szinkronban a Linux kernelt a legújabb biztonsági javításokkal és az összes telepített szoftverrel a legújabb verziókkal az alábbi parancs kiadásával:

yum update

12. Tiltsa le a Ctrl+Alt+Del kombinációt

Annak megakadályozása érdekében, hogy a felhasználók újraindítsák a szervert, miután fizikailag hozzáférnek a billentyűzethez, vagy egy távoli konzolalkalmazáson vagy egy virtualizált konzolon (KVM, virtualizáló szoftver interfész) keresztül, tiltsa le a Ctrl+Alt +Del billentyűsorozatot az alábbi parancs végrehajtásával.

systemctl mask ctrl-alt-del.target 

13. Távolítsa el a szükségtelen szoftvercsomagokat

Telepítsen minimális szoftvert a gépéhez. Soha ne telepítsen extra programokat vagy szolgáltatásokat. Csak megbízható vagy hivatalos tárolókból telepítsen csomagokat. Minimálisan telepítse a rendszert arra az esetre, ha a gép teljes élettartama során szerverként működik.

Ellenőrizze a telepített csomagokat a következő parancsok egyikével:

rpm -qa

Készítsen helyi listát az összes telepített csomagról.

yum list installed >> installed.txt

Tekintse meg a haszontalan szoftverek listáját, és töröljön egy csomagot az alábbi parancs kiadásával:

yum remove package_name

14. Indítsa újra a Systemd Services szolgáltatást a démonfrissítések után

Használja az alábbi parancspéldát egy systemd szolgáltatás újraindításához az új frissítések alkalmazásához.

systemctl restart httpd.service

15. Távolítsa el a szükségtelen szolgáltatásokat

Azonosítsa az adott portokon figyelő szolgáltatásokat a következő ss paranccsal.

ss -tulpn

Az összes telepített szolgáltatás megjelenítéséhez a kimeneti állapotukkal együtt adja ki az alábbi parancsot:

systemctl list-units -t service

Például a CentOS alapértelmezett minimális telepítéséhez a Postfix démon alapértelmezés szerint telepítve van, amely a 25-ös porton lévő mester neve alatt fut. Távolítsa el a Postfix hálózati szolgáltatást arra az esetre, ha a gépét nem használja levelezőszerverként.

yum remove postfix

16. A továbbított adatok titkosítása

Ne használjon nem biztonságos protokollokat távoli eléréshez vagy fájlátvitelhez, például Telnet, FTP vagy más egyszerű szöveges magas protokollokat, például SMTP, HTTP, NFS vagy SMB, amelyek alapértelmezés szerint nem titkosítja a hitelesítési munkameneteket vagy az elküldött adatokat.

Csak az sftp-t, az scp-t használja a fájlátvitelhez, az SSH-t vagy a VNC-t SSH-alagutakon a távoli konzolkapcsolatokhoz vagy a GUI-hozzáféréshez.

A VNC-konzol SSH-n keresztüli alagútba helyezéséhez használja az alábbi példát, amely továbbítja az 5901-es VNC-portot a távoli gépről a helyi gépre:

ssh -L 5902:localhost:5901 remote_machine

A helyi gépen futtassa az alábbi parancsot a távoli végponthoz való virtuális kapcsolat létrehozásához.

vncviewer localhost:5902

17. Hálózati port szkennelés

Végezzen külső port-ellenőrzést az Nmap eszközzel egy távoli rendszerről a LAN-on keresztül. Ez a fajta vizsgálat használható a hálózati sebezhetőségek ellenőrzésére vagy a tűzfalszabályok tesztelésére.

nmap -sT -O 192.168.1.10

18. Csomagszűrő tűzfal

Használja a tűzfal segédprogramot a rendszerportok védelmére, bizonyos szolgáltatások portjainak megnyitására vagy bezárására, különösen a jól ismert portokra (<1024).

Telepítse, indítsa el, engedélyezze és listázza ki a tűzfalszabályokat az alábbi parancsok kiadásával:

yum install firewalld
systemctl start firewalld.service
systemctl enable firewalld.service
firewall-cmd --list-all

19. Vizsgálja meg a protokollcsomagokat a Tcpdump segítségével

Használja a tcpdump segédprogramot a hálózati csomagok helyi szippantására, és a tartalmuk gyanús forgalom-ellenőrzésére (forrás-célportok, TCP/IP-protokollok, második réteg forgalom, szokatlan ARP-kérések).

A tcpdump rögzített fájl jobb elemzéséhez használjon fejlettebb programot, például a Wiresharkot.

tcpdump -i eno16777736 -w tcpdump.pcap

20. A DNS-támadások megelőzése

Vizsgálja meg a feloldó tartalmát, általában az /etc/resolv.conf fájlt, amely meghatározza azon DNS-kiszolgálók IP-címét, amelyeket a tartománynevek lekérdezéséhez használnia kell, hogy elkerülje a behatolást. -közepes támadások, szükségtelen forgalom a gyökér DNS-kiszolgálókhoz, hamisítás vagy DOS-támadás létrehozása.

Ez még csak az első rész. A következő részben további biztonsági tippeket tárgyalunk a CentOS 8/7 rendszerhez.