4 veidi, kā atspējot root kontu Linux
Saknes konts ir galvenais konts Linux un citās Unix līdzīgās operētājsistēmās. Šim kontam ir piekļuve visām komandām un failiem sistēmā ar pilnīgām lasīšanas, rakstīšanas un izpildes atļaujām. To izmanto jebkura veida uzdevumu veikšanai sistēmā; instalēt/noņemt/uzlabot programmatūras pakotnes un vēl daudz vairāk.
Tā kā saknes lietotājam ir absolūtas pilnvaras, visas viņa/viņas veiktās darbības sistēmā ir kritiskas. Šajā sakarā jebkurām saknes lietotāja kļūdām var būt milzīga ietekme uz normālu sistēmas darbību. Turklāt šo kontu var arī ļaunprātīgi izmantot, to nepareizi vai nepiemēroti izmantojot nejauši, ļaunprātīgi vai samāksloti nezinot politikas.
Tāpēc ieteicams atspējot root piekļuvi Linux serverī, tā vietā izveidojiet administratīvo kontu, kas jākonfigurē, lai iegūtu root lietotāja privilēģijas, izmantojot komandu sudo, lai veiktu kritiskus uzdevumus serverī.
Šajā rakstā mēs izskaidrosim četrus veidus, kā atspējot root lietotāja konta pieteikšanos Linux.
Uzmanību: Pirms bloķējat piekļuvi saknes kontam, pārliecinieties, vai esat izveidojis administratīvo kontu, kas spēj izmantot komandu useradd, un piešķiriet šim lietotāja kontam spēcīgu paroli. Karodziņš -m
nozīmē izveidot lietotāja mājas direktoriju un -c
ļauj norādīt komentāru:
# useradd -m -c "Admin User" admin # passwd admin
Pēc tam pievienojiet šo lietotāju atbilstošajai sistēmas administratoru grupai, izmantojot komandu usermod, kur slēdzis -a
nozīmē pievienot lietotāju kontu un -G
norāda grupu lietotāja pievienošanai. in (ritenis vai sudo atkarībā no jūsu Linux izplatīšanas):
# usermod -aG wheel admin #CentOS/RHEL # usermod -aG sudo admin #Debian/Ubuntu
Kad esat izveidojis lietotāju ar administratīvajām tiesībām, pārslēdzieties uz šo kontu, lai bloķētu piekļuvi saknēm.
# su admin
1. Mainiet saknes lietotāja apvalku
Vienkāršākā metode, kā atspējot root lietotājvārdu, ir mainīt tās čaumalu no /bin/bash
vai /bin/bash
(vai jebkuras citas čaulas, kas ļauj lietotājam pieteikties) uz /sbin/nologin
, failā/etc/passwd, kuru varat atvērt rediģēšanai, izmantojot jebkuru no iecienītākajiem komandrindas redaktoriem, kā parādīts.
$ sudo vim /etc/passwd
Mainīt līniju:
root:x:0:0:root:/root:/bin/bash to root:x:0:0:root:/root:/sbin/nologin
Saglabājiet failu un aizveriet to.
Turpmāk, piesakoties root lietotājam, viņš/viņa saņems ziņojumu “Šis konts pašlaik nav pieejams”. Šis ir noklusējuma ziņojums, taču failā /etc/nologin.txt to var mainīt un iestatīt pielāgotu ziņojumu.
Šī metode ir efektīva tikai tajās programmās, kurām lietotāja ieejai ir nepieciešama čaula, pretējā gadījumā sudo, ftp un e-pasta klienti var piekļūt saknes kontam.
2. Atspējot root pieteikšanos, izmantojot konsoles ierīci (TTY)
Otrajā metodē tiek izmantots PAM modulis ar nosaukumu pam_securetty, kas ļauj piekļūt root tikai tad, ja lietotājs piesakās “drošā” TTY, kā definēts sarakstā/etc/securetty.
Iepriekš minētais fails ļauj norādīt, kurās TTY ierīcēs ir atļauts pieteikties saknes lietotājam, šī faila iztukšošana novērš root pieteikšanos visās ierīcēs, kas pievienotas datorsistēmai.
Lai izveidotu tukšu failu, palaidiet.
$ sudo mv /etc/securetty /etc/securetty.orig $ sudo touch /etc/securetty $ sudo chmod 600 /etc/securetty
Šai metodei ir daži ierobežojumi, tā ietekmē tikai tādas programmas kā pieteikšanās, displeja pārvaldnieki (t.i., gdm, kdm un xdm) un citus tīkla pakalpojumus, kas uzsāk TTY. Tādām programmām kā su, sudo, ssh un citiem saistītiem opensh rīkiem būs piekļuve saknes kontam.
3. Atspējojiet SSH Root Login
Visizplatītākais veids, kā piekļūt attālajiem serveriem vai VPS, ir SSH, un, lai bloķētu root lietotāju pieteikšanos zem tā, jums ir jārediģē/etc/ssh/sshd_config fails.
$ sudo vim /etc/ssh/sshd_config
Pēc tam atceliet komentāru (ja tas tiek komentēts) direktīvu PermitRootLogin un iestatiet tās vērtību uz no
, kā parādīts ekrānuzņēmumā.
Kad esat pabeidzis, saglabājiet un aizveriet failu. Pēc tam restartējiet sshd pakalpojumu, lai piemērotu nesenās izmaiņas konfigurācijās.
$ sudo systemctl restart sshd OR $ sudo service sshd restart
Kā jūs jau zināt, šī metode ietekmē tikai opensh rīku kopu, tādām programmām kā ssh, scp, sftp tiks bloķēta piekļuve saknes kontam.
4. Ierobežojiet piekļuvi saknēm tikai pakalpojumiem, izmantojot PAM
Pluggable Authentication Modules (īsumā - PAM) ir centralizēta, pievienojama, modulāra un elastīga autentifikācijas metode Linux sistēmās. PAM, izmantojot moduli /lib/security/pam_listfile.so, ļauj ļoti elastīgi ierobežot noteiktu kontu privilēģijas.
Iepriekš minēto moduli var izmantot, lai atsauktos uz to lietotāju sarakstu, kuriem nav atļauts pieteikties, izmantojot dažus mērķa pakalpojumus, piemēram, pieteikšanos, ssh un jebkuras PAM informētas programmas.
Šajā gadījumā mēs vēlamies atspējot root lietotāju piekļuvi sistēmai, ierobežojot piekļuvi pieteikšanās un sshd pakalpojumiem. Vispirms atveriet un rediģējiet mērķa pakalpojuma failu direktorijā /etc/pam.d/, kā parādīts.
$ sudo vim /etc/pam.d/login OR sudo vim /etc/pam.d/sshd
Pēc tam abos failos pievienojiet zemāk esošo konfigurāciju.
auth required pam_listfile.so \ onerr=succeed item=user sense=deny file=/etc/ssh/deniedusers
Kad esat pabeidzis, saglabājiet un aizveriet katru failu. Pēc tam izveidojiet vienkāršo failu/etc/ssh/deniedusers, kurā katrā rindiņā jābūt vienam vienumam, nevis lasāmam visā pasaulē.
Pievienojiet tajā nosaukuma sakni, pēc tam saglabājiet un aizveriet to.
$ sudo vim /etc/ssh/deniedusers
Šim iestatiet arī nepieciešamās atļaujas.
$ sudo chmod 600 /etc/ssh/deniedusers
Šī metode ietekmē tikai programmas un pakalpojumus, kas ir informēti par PAM. Jūs varat bloķēt sakņu piekļuvi sistēmai, izmantojot ftp un e-pasta klientus un daudz ko citu.
Lai iegūtu papildinformāciju, skatiet attiecīgās rokasgrāmatas.
$ man pam_securetty $ man sshd_config $ man pam
Tas ir viss! Šajā rakstā mēs esam izskaidrojuši četrus veidus, kā atspējot root lietotāja pieteikšanos (vai kontu) Linux. Vai jums ir kādi komentāri, ieteikumi vai jautājumi, sazinieties ar mums, izmantojot zemāk esošo atsauksmju veidlapu.