Drošība

Kur un kā paroles tiek glabātas Linux?

Kur un kā paroles tiek glabātas Linux?
Lietotājvārds ar atbilstošu paroli konkrētam kontam ir galvenā prasība, ar kuras palīdzību lietotājs var piekļūt Linux sistēmai. Visu lietotāja kontu parole tiek saglabāta failā vai datu bāzē, lai lietotāju varētu pārbaudīt, mēģinot pieteikties sistēmā. Katram lietotājam nav pietiekami daudz prasmju un kompetences, lai atrastu šo failu savā sistēmā. Tomēr, ja jūs saņemat piekļuvi datu bāzei vai failam, kurā glabājas visas pieteikšanās lietotāja paroles, varat viegli piekļūt Linux sistēmai. Kad lietotājs ievada Linux lietotājvārdu un paroli, lai pieteiktos, viņš pārbauda ievadīto paroli, salīdzinot ar ierakstu dažādos direktorija '/ etc' failos.

Faili / etc / passwd glabā visu svarīgo informāciju, kas nepieciešama lietotāja pieteikšanai. Lai to izskaidrotu vienkāršāk, failā / etc / passwd tiek saglabāta lietotāja konta informācija. Šis fails ir vienkārša teksta fails, kurā ir pilns visu jūsu Linux sistēmas lietotāju saraksts. Tajā ir informācija par lietotājvārdu, paroli, UID (lietotāja ID), GID (grupas ID), čaulu un mājas direktoriju. Šim failam ir jābūt lasīšanas atļaujām, jo ​​tiek izmantoti daudzi komandrindas utilīti, lai lietotāju ID piesaistītu lietotāja vārdam. Bet tam vajadzētu būt ierobežotas rakstīšanas piekļuves atļaujas tikai superlietotāja vai root lietotāja kontiem.

Šis raksts parādīs, kā un kur jūs varat uzglabāt sistēmas lietotāja konta paroles Linux izplatīšanā. Mēs esam īstenojuši visas demonstrācijas Ubuntu 20.04 sistēma. Tomēr failu / etc / passwd var atrast jebkurā Linux izplatīšanā.

Priekšnoteikumi

Lai palaistu administratīvās komandas, jums vajadzētu būt root tiesībām.

Pamata izpratne par / etc / passwd failu

Failā / etc / passwd ir informācija par jūsu sistēmas lietotāja kontu. Visi glabātie lauki ir atdalīti no kolas “:” zīmes.
Palaidot šo komandu, tiks parādīts katrs faila / etc / passwd faila ieraksts:

$ cat / etc / passwd

Iepriekš minētajā komandā tiks uzskaitīti visi jūsu Linux sistēmas lietotāji.
Termināla ekrānā tiks parādīts šāda veida formāts:

Sīkāka informācija par / etc / passwd laukiem Formāts
No iepriekš minētā attēla:

Lietotājvārds: Pirmais lauks apzīmē lietotāja vārdu. Lietotājvārda lauka garums ir noteikts starp 1-32 rakstzīmēm. Tas tiek izmantots, kad lietotājs piesakās sistēmā. Iepriekš minētajā piemērā 'khuzdar' ir lietotājvārds.
Parole: Iepriekš minētajā piemērā rakstzīme “x” parāda, ka parole tiek šifrētā veidā saglabāta failā / etc / shadow.
Lietotāja ID (UID): User ID katram lietotājam jāpiešķir atsevišķi. UID nulle tiek piešķirta saknes lietotājam, un User ID no 1 līdz 99 tiek piešķirti iepriekš definētiem vai standarta kontiem. Tālākie UID no 100-999 tiek piešķirti sistēmas administratīvajiem kontiem vai grupām. Iepriekš redzamajā ekrānuzņēmumā lietotāja ID ir 1001.
Grupas ID (GID): Nākamais lauks norāda grupas ID. GID tiek saglabāts / etc / group failā. Pamatojoties uz iepriekš minēto piemēru, lietotājs pieder pie grupas ID 1001.
Informācija par User ID: Šis lauks ir paredzēts komentāriem. Šajā laukā varat pievienot papildu informāciju par norādīto lietotāju, piemēram, lietotāja pilnu vārdu, tālruņa numuru utt. Tomēr iepriekš minētajā piemērā lietotājs nenorāda tālruņa numuru.
Mājas katalogs: Šis lauks parāda mājas direktorija atrašanās vietu, kas piešķirts pašreizējam lietotājam. Ja norādītā direktorija nepastāv, tajā tiks parādīts “/”. Iepriekš redzamais attēls parāda iezīmētā lietotāja atrašanās vietu mājas direktorijā, kas ir home / kbuzdar.
Komanda // apvalks: Čaulas vai komandas noklusējuma absolūtais ceļš ir / bin / bash. Tas ir pazīstams kā apvalks. Piemēram, sysadmin, izmantojot nologīna apvalku. Tas darbojas kā sistēmas lietotāju kontu aizstājējvāks. Ja čaula atrodas ceļā uz / sbin / nologin un lietotājs vēlas pieteikties tieši Linux sistēmā, apvalks / sbin / nologin aizver vai atspējo savienojumu.

Meklēt lietotāju failā / etc / passwd

Izmantojot komandu grep, varat meklēt konkrētu lietotāju ar failu / etc / passwd. Piemēram, mēs vēlamies meklēt lietotājvārdu “kbuzdar” no faila / etc / passwd, izmantojot šādu sintaksi, pēc tam mēs varam viegli meklēt norādīto lietotāju, ietaupot laiku:

$ grep lietotājvārds / etc / passwd

Iepriekš minētā sintakse mainīsies šādā formā:

$ grep kbuzdar / etc / passwd


Or

$ grep -w '^ kbuzdar' / etc / passwd

Parādīt atļaujas failā / etc / passwd

Kā jau minējām iepriekš, visiem citiem lietotājiem, izņemot root, vajadzētu būt iespējai lasīt atļauju failā / etc / passwd un ka īpašniekam jābūt superlietotājam vai root.
Ierakstiet šo, lai pārbaudītu faila lasīšanas atļaujas:

$ ls -l / etc / passwd

Terminālā tiks parādīts šāds izvades paraugs:

Lasa / etc / passwd failu

Jūs varat izlasīt failu / etc / passwd savā Linux sistēmā, izmantojot šo bash skriptu, vai tieši palaist to, kas rakstīts zemāk, kamēr terminālā ir cilpas komandas.
Izveidojiet teksta failu un ielīmējiet tajā šādu kodu:

#!/ bin / bash
# kopā septiņi lauki no / etc / passwd ir saglabāti kā $ f1, f2…, $ f7
savukārt IFS =: lasiet -r f1 f2 f3 f4 f5 f6 f7
darīt
echo "Lietotājs $ f1 izmanto čaulu $ f7 un saglabā failus direktorijā $ f6."
izdarīts < /etc/passwd

Izmantojot cilpu while, tā nolasīs visus septiņus laukus un pēc tam iteratīvi parādīs faila saturu terminālā.
Saglabājiet iepriekš minēto failu ar nosaukumu 'readfile.sh '.

Tagad palaidiet iepriekš minēto failu, izmantojot šādu komandu:

$ bash lasāmfails.sh

Izpētīt / etc / shadow failu

/ Etc / shadow failā ir visas šifrētās paroles, kas tiek glabātas šajā failā un ir lasāmas tikai root lietotājiem.
Lai parādītu saturu, palaidīsim šādu komandu:

$ sudo cat / etc / shadow

Jūs varat redzēt visu paroli šifrētā formātā:

Secinājums

No iepriekš minētā raksta mēs redzējām visu lietotāja konta informāciju un paroles, kas saglabātas / etc / passwd failā Linux sistēmā. Jūs varat lasīt šo failu, taču tikai root lietotājiem ir “rakstīšanas atļaujas”. Turklāt mēs esam redzējuši arī visas šifrētās paroles, kas saglabātas / etc / shadow failā. Varat arī izpētīt / etc / group failu, lai iegūtu informāciju par lietotāja grupu.

Kā instalēt League of Legends operētājsistēmā Ubuntu 14.04
Ja jūs esat League of Legends fans, tad šī ir iespēja jums izmēģināt League of Legends. Ņemiet vērā, ka LOL tiek atbalstīts PlayOnLinux, ja esat Linux...
Instalējiet jaunāko OpenRA stratēģijas spēli Ubuntu Linux
OpenRA ir bezmaksas / bezmaksas reāllaika stratēģijas spēļu dzinējs, kas atjauno agrīnās Vestvudas spēles, piemēram, klasisko Command & Conquer: Red A...
Instalējiet jaunāko Dolphin emulatoru Gamecube un Wii operētājsistēmai Linux
Delfīnu emulators ļauj jums spēlēt izvēlētās Gamecube un Wii spēles Linux personālajos datoros (PC). Tā kā Dolphin Emulator ir brīvi pieejams un atvē...