4 módszer a root fiók letiltására Linuxban
A root fiók a Linux és más Unix-szerű operációs rendszerek végső fiókja. Ez a fiók hozzáfér a rendszer összes parancsához és fájljához, teljes olvasási, írási és végrehajtási engedéllyel. Bármilyen feladat elvégzésére szolgál egy rendszeren; más felhasználók fiókjainak létrehozásához/frissítéséhez/hozzáféréséhez/törléséhez, szoftvercsomagok telepítéséhez/eltávolításához/frissítéséhez és még sok minden máshoz.
Mivel a root felhasználó abszolút hatalommal rendelkezik, minden általa végrehajtott művelet kritikus a rendszerben. Ebben a tekintetben arootfelhasználó hibái nagy hatással lehetnek a rendszer normál működésére. Ezen túlmenően, ezzel a fiókkal visszaélhetnek, ha helytelenül vagy nem megfelelő módon használják, akár véletlenül, rosszindulatúan, akár az irányelvek mesterkélt figyelmen kívül hagyása miatt.
Ezért tanácsos letiltani a root hozzáférést a Linux-kiszolgálón, ehelyett hozzon létre egy adminisztrátori fiókot, amelyet úgy kell beállítani, hogy a sudo paranccsal root felhasználói jogosultságokat szerezzen a kiszolgálón végzett kritikus feladatok elvégzéséhez.
Ebben a cikkben négy módszert ismertetünk a root felhasználói fiókok bejelentkezés letiltására Linux rendszerben.
Figyelem: Mielőtt letiltja a hozzáférést a root fiókhoz, győződjön meg arról, hogy létrehozott egy rendszergazdai fiókot, amely képes a sudo paranccsal root megszerzésére. felhasználói jogosultságokat a useradd paranccsal, és erős jelszót adjon ennek a felhasználói fióknak. A -m
jelző a felhasználó kezdőkönyvtárának létrehozását jelenti, a -c
pedig megjegyzés megadását:
useradd -m -c "Admin User" admin
passwd admin
Ezután adja hozzá ezt a felhasználót a rendszergazdák megfelelő csoportjához a usermod paranccsal, ahol a -a
kapcsoló a felhasználói fiók hozzáfűzését jelenti, a -G
pedig egy csoportot ad meg a felhasználó hozzáadásához. in (kerék vagy sudo a Linux disztribúciótól függően):
usermod -aG wheel admin #CentOS/RHEL
usermod -aG sudo admin #Debian/Ubuntu
Miután létrehozott egy rendszergazdai jogosultságokkal rendelkező felhasználót, váltson erre a fiókra a root hozzáférés letiltásához.
su admin
1. Változtassa meg a root felhasználó shelljét
A root felhasználói bejelentkezés letiltásának legegyszerűbb módja, ha a shelljét /bin/bash
vagy /bin/bash
(vagy bármely más shell, amely lehetővé teszi a felhasználói bejelentkezést) helyett
sudo vim /etc/passwd
Változtassa meg a sort:
root:x:0:0:root:/root:/bin/bash
to
root:x:0:0:root:/root:/sbin/nologin
Mentse el a fájlt és zárja be.
Mostantól kezdve, amikor a root felhasználó bejelentkezik, a következő üzenetet kapja: „Ez a fiók jelenleg nem érhető el.” Ez az alapértelmezett üzenet, de módosítsa, és állítson be egyéni üzenetet az /etc/nologin.txt fájlban.
Ez a módszer csak olyan programok esetén hatásos, amelyekhez shell szükséges a felhasználói bejelentkezéshez, ellenkező esetben a sudo, ftp és email kliensek hozzáférhetnek a root fiókhoz.
2. Tiltsa le a root bejelentkezést konzoleszközön (TTY)
A második módszer a PAM pam_securetty nevű modult használja, amely csak akkor engedélyez root hozzáférést, ha a felhasználó „biztonságos” TTY-n jelentkezik be. az /etc/securetty listája határozza meg.
A fenti fájl lehetővé teszi annak meghatározását, hogy a root felhasználó mely TTY eszközökön jelentkezzen be. A fájl kiürítése megakadályozza a root bejelentkezést a számítógépes rendszerhez csatlakoztatott eszközökön.
Üres fájl létrehozásához futtassa.
sudo mv /etc/securetty /etc/securetty.orig
sudo touch /etc/securetty
sudo chmod 600 /etc/securetty
Ennek a módszernek vannak bizonyos korlátai, csak olyan programokat érint, mint például a bejelentkezés, a megjelenítéskezelők (azaz gdm, kdm és xdm) és más hálózati szolgáltatások, amelyek indítson el egy TTY-t. Az olyan programok, mint a su, sudo, ssh és más kapcsolódó openssh eszközök hozzáférhetnek a root fiókhoz.
3. Tiltsa le az SSH root bejelentkezést
A távoli kiszolgálók vagy VPS-ek elérésének legáltalánosabb módja az SSH-n keresztül, és a root felhasználó bejelentkezés letiltásához az /etc/ssh/sshd_config fájlt kell szerkesztenie.
sudo vim /etc/ssh/sshd_config
Ezután törölje (ha meg van írva) a PermitRootLogin direktíva megjegyzését, és állítsa az értékét no
értékre, ahogy a képernyőképen látható.
Ha végzett, mentse el és zárja be a fájlt. Ezután indítsa újra az sshd szolgáltatást a konfigurációk legutóbbi módosításának alkalmazásához.
sudo systemctl restart sshd
OR
sudo service sshd restart
Amint azt már biztosan tudod, ez a módszer csak az openssh eszközkészletet érinti, az olyan programok, mint az ssh, scp, sftp, blokkolva lesznek a root fiókhoz való hozzáférésben.
4. Korlátozza a root hozzáférést a PAM-on keresztüli szolgáltatásokhoz
A Pluggable Authentication Modules (röviden: PAM) egy központi, csatlakoztatható, moduláris és rugalmas hitelesítési módszer Linux rendszereken. A PAM a /lib/security/pam_listfile.so modulon keresztül nagy rugalmasságot tesz lehetővé bizonyos fiókok jogosultságainak korlátozásában.
A fenti modul segítségével hivatkozhat azon felhasználók listájára, akik nem léphetnek be bizonyos célszolgáltatásokon keresztül, mint például a login, az ssh és a PAM-tudatos programok.
Ebben az esetben szeretnénk letiltani a root felhasználói hozzáférést a rendszerhez, korlátozva a hozzáférést a bejelentkezési és az sshd szolgáltatásokhoz. Először nyissa meg és szerkessze a célszolgáltatás fájlját az /etc/pam.d/ könyvtárban az ábra szerint.
sudo vim /etc/pam.d/login
OR
sudo vim /etc/pam.d/sshd
Ezután adja hozzá az alábbi konfigurációt mindkét fájlhoz.
auth required pam_listfile.so \
onerr=succeed item=user sense=deny file=/etc/ssh/deniedusers
Ha végzett, mentse el és zárja be az egyes fájlokat. Ezután hozza létre a /etc/ssh/deniedusers egyszerű fájlt, amelynek soronként egy elemet kell tartalmaznia, és nem olvasható a világban.
Adja hozzá a gyökér nevet, majd mentse el és zárja be.
sudo vim /etc/ssh/deniedusers
Ehhez állítsa be a szükséges engedélyeket is.
sudo chmod 600 /etc/ssh/deniedusers
Ez a módszer csak a PAM-tudatos programokat és szolgáltatásokat érinti. Letilthatja a root hozzáférést a rendszerhez ftp-n, e-mail klienseken és egyebeken keresztül.
További információkért tekintse meg a megfelelő man oldalakat.
man pam_securetty
man sshd_config
man pam
Ez minden! Ebben a cikkben négy módszert ismertetünk a root felhasználói bejelentkezés (vagy fiók) letiltására Linuxban. Ha bármilyen észrevétele, javaslata vagy kérdése van, forduljon hozzánk bizalommal az alábbi visszajelzési űrlapon keresztül.