Dodavanje ubuntu korisnika. Upravljanje korisnicima. SSH pristup blokiranih korisnika

Upravljanje korisnicima kritičan je dio održavanja sigurnog sustava. Neučinkovito upravljanje korisnicima i privilegijama često dovodi do ugrožavanja mnogih sustava. Stoga je važno da razumijete kako možete zaštititi svoj poslužitelj jednostavnim i učinkovitim tehnikama upravljanja korisničkim računom.

Programeri Ubuntua savjesno su odlučili onemogućiti administrativni root račun prema zadanim postavkama u svim instalacijama Ubuntua. To ne znači da je root račun izbrisan ili da mu se ne može pristupiti. Samo mu je dana lozinka koja ne odgovara niti jednoj mogućoj šifriranoj vrijednosti, stoga se ne može prijaviti izravno sam.

Umjesto toga, korisnici se potiču da koriste alat pod imenom sudo za obavljanje administrativnih dužnosti sustava. Sudo omogućuje ovlaštenom korisniku da privremeno podigne svoje privilegije korištenjem vlastite lozinke umjesto da mora znati lozinku koja pripada root računu. Ova jednostavna, ali učinkovita metodologija osigurava odgovornost za sve radnje korisnika i daje administratoru preciznu kontrolu nad radnjama koje korisnik može izvesti s navedenim privilegijama.

    Ako iz nekog razloga želite omogućiti root račun, jednostavno mu dajte lozinku:

    Konfiguracije s root lozinkama nisu podržane.

    sudo passwd

    Sudo će od vas zatražiti lozinku, a zatim će vas zamoliti da unesete novu lozinku za root kao što je prikazano u nastavku:

    Lozinka za korisničko ime: (unesite vlastitu lozinku) Unesite novu UNIX lozinku: (unesite novu lozinku za root) Ponovno upišite novu UNIX lozinku: (ponovite novu lozinku za root) passwd: lozinka je uspješno ažurirana

    Da biste onemogućili lozinku root računa, koristite sljedeću sintaksu passwd:

    sudo passwd -l korijen

    Međutim, da biste onemogućili sam root račun, upotrijebite sljedeću naredbu:

    usermod --istek 1

    Trebali biste pročitati više o Sudou čitajući man stranicu:

    čovjek sudo

Prema zadanim postavkama, početni korisnik koji je stvorio instalacijski program Ubuntua je član grupe "sudo " koja se dodaje u datoteku /etc/sudoers kao ovlašteni sudo korisnik. Ako nekom drugom računu želite dati puni root pristup putem sudo-a, jednostavno ga dodajte u sudo grupu.

Dodavanje i brisanje korisnika

Proces za upravljanje lokalnim korisnicima i grupama je jednostavan i vrlo se malo razlikuje od većine drugih GNU/Linux operativnih sustava. Ubuntu i druge distribucije temeljene na Debianu potiču korištenje paketa "adduser" za upravljanje računom.

    Za dodavanje korisničkog računa upotrijebite sljedeću sintaksu i slijedite upute da biste računu dali lozinku i prepoznatljive karakteristike, kao što je puno ime, telefonski broj itd.

    sudo adduser korisničko ime

    Za brisanje korisničkog računa i njegove primarne grupe koristite sljedeću sintaksu:

    sudo deluser korisničko ime

    Brisanje računa ne uklanja njihovu matičnu mapu. Na vama je hoćete li mapu izbrisati ručno ili je zadržati prema željenim pravilima zadržavanja.

    Imajte na umu da će svaki korisnik dodan kasnije s istim UID-om/GID-om kao prethodni vlasnik sada imati pristup ovoj mapi ako niste poduzeli potrebne mjere opreza.

    Možda ćete htjeti promijeniti ove UID/GID vrijednosti u nešto prikladnije, kao što je root račun, a možda čak i premjestiti mapu kako biste izbjegli buduće sukobe:

    sudo chown -R root:root /home/username/ sudo mkdir /home/archived_users/ sudo mv /home/korisničko ime /home/archived_users/

    Za privremeno zaključavanje ili otključavanje korisničkog računa koristite sljedeću sintaksu:

    sudo passwd -l korisničko ime sudo passwd -u korisničko ime

    Za dodavanje ili brisanje personalizirane grupe koristite sljedeću sintaksu:

    sudo addgroup groupname sudo delgroup groupname

    Za dodavanje korisnika grupi koristite sljedeću sintaksu:

    sudo adduser korisničko ime naziv grupe

Sigurnost korisničkog profila

Kada se stvori novi korisnik, uslužni program adduser stvara potpuno novi matični direktorij pod nazivom /home/username. Zadani profil modeliran je prema sadržaju koji se nalazi u direktoriju /etc/skel, koji uključuje sve osnove profila.

Ako će vaš poslužitelj biti dom za više korisnika, trebali biste obratiti veliku pozornost na dozvole korisničkog matičnog imenika kako biste osigurali povjerljivost. Prema zadanim postavkama, korisnički početni direktoriji u Ubuntuu stvoreni su sa svjetskim dopuštenjima za čitanje/izvršavanje. To znači da svi korisnici mogu pregledavati i pristupati sadržaju matičnih imenika drugih korisnika. Ovo možda nije prikladno za vaše okruženje.

    Za provjeru dopuštenja vašeg trenutnog korisničkog matičnog imenika koristite sljedeću sintaksu:

    ls -ld /kućno/korisničko ime

    Sljedeći izlaz pokazuje da direktorij /home/username ima dopuštenja čitljiva za cijeli svijet:

    drwxr-xr-x 2 korisničko ime korisničko ime 4096 2007-10-02 20:03 korisničko ime

    Možete ukloniti svjetska dopuštenja za čitanje pomoću sljedeće sintakse:

    sudo chmod 0750 /home/korisničko ime

    Neki ljudi imaju tendenciju koristiti rekurzivnu opciju (-R) bez razlike koja mijenja sve podređene mape i datoteke, ali to nije nužno i može dovesti do drugih neželjenih rezultata. Sam nadređeni direktorij dovoljan je za sprječavanje neovlaštenog pristupa bilo čemu ispod nadređenog.

    Mnogo učinkovitiji pristup tom pitanju bio bi mijenjanje globalnih zadanih dopuštenja adduser-a prilikom stvaranja korisničkih početnih mapa. Jednostavno uredite datoteku /etc/adduser.conf i promijenite varijablu DIR_MODE u nešto prikladno, tako da će svi novi početni direktoriji dobiti ispravne dozvole.

    Nakon ispravljanja dopuštenja direktorija pomoću bilo koje od prethodno navedenih tehnika, provjerite rezultate pomoću sljedeće sintakse:

    ls -ld /kućno/korisničko ime

    Rezultati u nastavku pokazuju da su dopuštenja čitljiva za cijeli svijet uklonjena:

    drwxr-x--- 2 korisničko ime korisničko ime 4096 2007-10-02 20:03 korisničko ime

Pravila zaporke

Politika jake lozinke jedan je od najvažnijih aspekata vašeg sigurnosnog položaja. Mnoga uspješna kršenja sigurnosti uključuju jednostavne brutalne napade i napade rječnikom na slabe lozinke. Ako namjeravate ponuditi bilo koji oblik udaljenog pristupa koji uključuje vaš lokalni sustav lozinki, pobrinite se da adekvatno odgovorite na minimalne zahtjeve složenosti lozinke, maksimalno trajanje lozinke i česte revizije vaših sustava provjere autentičnosti.

Minimalna duljina lozinke

Prema zadanim postavkama, Ubuntu zahtijeva minimalnu duljinu lozinke od 6 znakova, kao i neke osnovne provjere entropije. Ove vrijednosti se kontroliraju u datoteci /etc/pam.d/common-password, koja je navedena u nastavku.

lozinka pam_unix.tako opskuran sha512

Ako želite podesiti minimalnu duljinu na 8 znakova, promijenite odgovarajuću varijablu u min=8. Izmjena je navedena u nastavku.

lozinka pam_unix.so nejasna sha512 minlen=8

Osnovne provjere entropije zaporke i pravila minimalne duljine ne primjenjuju se na administratora koji koristi naredbe razine sudo za postavljanje novog korisnika.

Istek lozinke

Kada kreirate korisničke račune, trebali biste odrediti minimalnu i maksimalnu starosnu dob lozinke koja će prisiljavati korisnike da promijene svoje lozinke kada isteknu.

    Kako biste jednostavno vidjeli trenutni status korisničkog računa, koristite sljedeću sintaksu:

    sudo chage -l korisničko ime

    Ispis u nastavku pokazuje zanimljive činjenice o korisničkom računu, naime da nema primijenjenih pravila:

    Zadnja promjena lozinke: 20. siječnja 2015. Lozinka ističe: nikad Lozinka neaktivna: nikad Račun ne ističe: nikad Minimalan broj dana između promjene lozinke: 0 Maksimalan broj dana između promjene lozinke: 99999 Broj dana upozorenja prije isteka lozinke: 7

    Za postavljanje bilo koje od ovih vrijednosti jednostavno upotrijebite sljedeću sintaksu i slijedite interaktivne upute:

    sudo promijeniti korisničko ime

    Sljedeće je također primjer kako možete ručno promijeniti eksplicitni datum isteka (-E) na 31.1.2015., minimalnu starost lozinke (-m) od 5 dana, maksimalnu starost lozinke (-M) od 90 dana, neaktivnost razdoblje (-I) od 5 dana nakon isteka lozinke i vremensko razdoblje upozorenja (-W) od 14 dana prije isteka lozinke:/home/username/.ssh/authorized_keys .

    Uklonite ili preimenujte direktorij .ssh/ u početnoj mapi korisnika kako biste spriječili daljnje mogućnosti SSH provjere autentičnosti.

    Svakako provjerite postoje li SSH veze koje je uspostavio korisnik s invaliditetom jer je moguće da imaju postojeće ulazne ili izlazne veze. Ubijte sve koje nađete.

    tko | grep korisničko ime (za dobivanje terminala pts/#) sudo pkill -f pts/#

    Ograničite SSH pristup samo na korisničke račune koji ga trebaju imati. Na primjer, možete stvoriti grupu pod nazivom "sshlogin" i dodati naziv grupe kao vrijednost povezanu s varijablom AllowGroups koja se nalazi u datoteci /etc/ssh/sshd_config.

    AllowGroups sshlogin

    Zatim dodajte svoje dopuštene SSH korisnike u grupu "sshlogin" i ponovno pokrenite SSH uslugu.

    sudo adduser korisničko ime sshlogin sudo systemctl ponovno pokrenite sshd.service

    Provjera autentičnosti vanjske korisničke baze podataka

    Većina poslovnih mreža zahtijeva centraliziranu provjeru autentičnosti i kontrolu pristupa svim resursima sustava. Ako ste konfigurirali svoj poslužitelj za autentifikaciju korisnika prema vanjskim bazama podataka, svakako onemogućite korisničke račune i eksterno i lokalno. Na taj način osiguravate da lokalna rezervna provjera autentičnosti nije moguća.

U ovom vodiču ćemo pogledati kako izbrisati korisnika Linuxa zajedno s njegovim podacima i matičnim direktorijem.

Ako ti Administrator sustava U velikoj tvrtki, najvjerojatnije, brisanje korisnika Linuxa prilično je uobičajen zadatak za vas. Nakon što račun postane nepotreban ili korisnik napusti organizaciju, njegov račun treba obrisati kako ne bi ostavio sigurnosne rupe.

Kada brišete korisnike Linuxa, također je važno izbrisati njihov matični direktorij kako biste oslobodili prostor za pohranu za nove korisnike i njihove datoteke. Prvo ćemo pogledati kako izbrisati korisnika Linuxa pomoću terminala, zatim ćemo govoriti o tome kako se to radi u grafičkom sučelju jedne od najpopularnijih distribucija - Ubuntu.

Da bismo malo vježbali u stvarnom okruženju, stvorimo dva korisnika, lost i lost1, zajedno s njihovim matičnim direktorijima, a zatim ih izbrišite:

adduser gubitak
$ lozinka izgubljena

adduser gubitak1
$passwd lost1

Ovdje se naredba adduser koristi za kreiranje korisničkog računa i passwd za kreiranje lozinke.

Pogledajmo kako izbrisati korisnika Linuxa na terminalu. Da biste to učinili, koristite naredbu - deluser u debian i izvedenim sustavima, au RedHatu - userdel. Pogledajmo pobliže ova dva uslužna programa.

Opis delusera

Sintaksa naredbe deluser je vrlo jednostavna:

$deluser parametri korisnik

Postavke naredbe deluser nalaze se u datoteci /etc/deluser.conf; između ostalih postavki, ona navodi što treba učiniti s korisničkom početnom mapom i datotekama.

Ove postavke možete vidjeti i promijeniti pokretanjem naredbe:

vi /etc/deluser.conf

Pogledajmo pobliže ove postavke:

  • REMOVE_HOME- brisanje korisničkog matičnog imenika
  • REMOVE_ALL_FILES- izbrisati sve korisničke datoteke
  • SIGURNOSNO KOPIRANJE- backup korisničkih datoteka
  • BACKUP_TO- rezervna mapa
  • SAMO_AKO_PRAZNO- brisanje korisničke grupe ako je prazna.

Ove postavke određuju zadano ponašanje uslužnog programa pri brisanju korisnika; naravno, mogu se nadjačati pomoću parametara za naredbu.

Podržani su sljedeći parametri, slični su postavkama, ali ima više opcija:

  • --sustav- brisati samo ako je korisnik sustava
  • -- sigurnosna kopija- napravite sigurnosnu kopiju korisničkih datoteka
  • --backup-to- mapa za sigurnosne kopije
  • --ukloni-dom- brisanje matične mape
  • --ukloni-sve-datoteke- izbrisati sve korisničke datoteke u datotečnom sustavu

Opis userdel

Uslužni program userdel radi malo drugačije, ovdje nema datoteke postavki, ali postoje opcije pomoću kojih uslužnom programu možete reći što da radi. Sintaksa je slična:

$ userdel parametri korisnik

  • -f, --sila- prisilno brisanje, čak i ako je korisnik još uvijek prijavljen
  • -r, --ukloniti- izbrisati korisnikov matični direktorij i njegove datoteke u sustavu.
  • -Z- brisanje svih SELinux objekata za ovog korisnika.

Da biste uklonili korisnika s poslužitelja, bolje je koristiti naprednu metodu koju ćemo razmotriti u nastavku. Kada korisnici koriste poslužitelj koji pokreću razne programe i usluge. Korisnik se može ispravno izbrisati samo ako nije prijavljen na poslužitelj i svi programi koji se pokreću u njegovo ime su zaustavljeni, jer programi mogu koristiti razne datoteke koje pripadaju korisniku, a to će spriječiti njihovo brisanje. Sukladno tome, korisničke datoteke neće biti potpuno izbrisane i ostat će začepiti sustav.

Blokiranje korisničkog računa

Pomoću uslužnog programa passwd možete zaključati korisnički račun. Ovo će korisniku onemogućiti pristup sustavu i spriječiti pokretanje novih procesa:

Pokrenite naredbu passwd s opcijom --lock:

passwd --gubitak zaključavanja

passwd: podaci o isteku lozinke su promijenjeni.

Zatvori sve pokrenute korisničke procese

Pronađimo sada sve procese koji se izvode kao korisnik i ubijmo ih.

Pronađimo procese koristeći pgrep:

Možete detaljnije vidjeti koji su to procesi prosljeđivanjem pid-a svakog od njih naredbi ps, ovako:

ps -f --pid $(pgrep -u lostt)

UID PID PPID C STIME TTY STAT TIME CMD
lostt 14684 14676 0 22:15 pts/2 S 0:00 -bash
lostt 14735 14684 0 22:15 pts/2 S+ 0:00 vi tekst

Sada kada ste se uvjerili da tamo nema ničeg važnog, možete ubiti sve procese pomoću naredbe killall:

Killall -9 -u lostt

Opcija -9 govori programu da tim procesima pošalje signal prekida SIGKILL, a -u navodi korisničko ime.

Na sustavima baziranim na Red Hat-u, za korištenje killall morat ćete instalirati paket psmisc:

sudo yum instaliraj psmisc

Sigurnosno kopiranje korisničkih podataka

To uopće nije potrebno, ali za ozbiljan projekt ne bi bilo loše napraviti sigurnosnu kopiju korisničkih datoteka, pogotovo ako se tamo nalaze važne datoteke. Da biste to učinili, možete koristiti, na primjer, uslužni program tar:

tar jcvf /user-backups/losst-backup.tar.bz2 /home/losst

Brisanje korisničkog računa

Sada kada je sve pripremljeno, počnimo s uklanjanjem korisnik linuxa. Za svaki slučaj, eksplicitno ćemo naznačiti da moramo izbrisati korisničke datoteke i matični direktorij. Za Debian:

deluser --remove-home lostt

userdel --ukloni gubitak

Ako trebate ukloniti sve datoteke koje pripadaju korisniku na sustavu, koristite opciju --remove-all-files, samo budite oprezni s njom jer važne datoteke mogu biti prebrisane:

deluser --remove-all-files lost

Korisnik je sada potpuno uklonjen, zajedno sa svojim datotekama i matičnim direktorijem, iz vašeg sustava.

Uklanjanje korisnika u Ubuntuu

Otvoren Parametri sustava:

Otvorena stavka Računi:

Kao što vidite, sve radnje trenutno nisu dostupne i zasivljene su. Da biste ih aktivirali, kliknite gumb otključati i unesite korisničku lozinku.

Sada, da biste izbrisali korisnika u Linuxu, samo kliknite na njega mišem, a zatim kliknite na ikonu minusa.

U prozoru koji se otvori možete odabrati što ćete učiniti s korisničkim datotekama:

Naravno, samo početna mapa će biti izbrisana, ne govorimo o svim datotekama. A za ispravno uklanjanje, korisnik ne smije raditi u sustavu.

zaključke

Brisanje korisnika u Linuxu nije tako teško, neovisno o tome gdje to treba učiniti, na poslužitelju ili kućno računalo. Sigurno, GUI praktičniji, ali terminal, kao i uvijek, nudi više opcija. Ako imate još kakvih ideja o ovome, ostavite komentar!

Operativni sustav Linux ima mnogo sjajnih sigurnosnih značajki, ali jedna od najvažnijih je sustav dopuštenja datoteka. Linux, kao sljedbenik ideologije Linux kernela, za razliku od Windowsa, izvorno je zamišljen kao višekorisnički sustav, pa su prava pristupa datotekama u Linuxu vrlo dobro promišljena.

A to je vrlo važno, jer bi lokalni pristup datotekama za sve programe i sve korisnike omogućio virusima da lako unište sustav. Ali novim korisnicima mogu biti vrlo zbunjujuće nove dozvole za datoteke u Linuxu, koje su vrlo različite od onoga što smo navikli vidjeti u Windowsima. U ovom ćemo članku pokušati razumjeti kako dozvole za datoteke rade u Linuxu, kao i kako ih promijeniti i postaviti.

U početku je svaka datoteka imala tri parametra pristupa. Evo ih:

  • Čitanje- omogućuje primanje sadržaja datoteke, ali ne dopušta pisanje. Za direktorij, omogućuje vam da dobijete popis datoteka i direktorija koji se nalaze u njemu;
  • Snimiti- omogućuje vam pisanje novih podataka u datoteku ili promjenu postojećih, a također vam omogućuje stvaranje i promjenu datoteka i direktorija;
  • Izvođenje- ne možete izvršiti program ako nema oznaku za izvršavanje. Ovaj atribut je postavljen za sve programe i skripte; uz njegovu pomoć sustav može razumjeti da se ova datoteka mora pokrenuti kao program.

Ali sva ta prava bila bi besmislena kada bi se odnosila na sve korisnike odjednom. Stoga svaka datoteka ima tri korisničke kategorije za koje možete postaviti različite kombinacije prava pristupa:

  • Vlasnik- skup prava za vlasnika datoteke, korisnika koji ju je stvorio ili je sada postavio njezin vlasnik. Obično vlasnik ima sva prava, čitanje, pisanje i izvršavanje.
  • Skupina- svaka korisnička grupa koja postoji u sustavu i povezana je s datotekom. Ali to može biti samo jedna grupa i obično je vlasnička grupa, iako se datoteci može dodijeliti druga grupa.
  • Odmor- svi korisnici osim vlasnika i korisnika uključenih u grupu datoteka.

Uz pomoć ovih skupova dopuštenja postavljaju se dopuštenja za datoteke u Linuxu. Svaki korisnik može dobiti puni pristup samo onim datotekama koje posjeduje ili kojima je ovlašten pristupiti. Samo Root korisnik može raditi sa svim datotekama, bez obzira na njihov skup dopuštenja.

Ali s vremenom je takav sustav postao nedovoljan i dodano je još nekoliko zastavica koje vam omogućuju da datoteke učinite nepromjenjivima ili ih izvršite kao superkorisnik, pogledat ćemo ih u nastavku:

Posebna dopuštenja za datoteke u Linuxu

Dopustiti obični korisnici za izvršavanje programa u ime superkorisnika bez poznavanja njegove lozinke, izumljena je stvar poput SUID i SGID bitova. Pogledajmo ove ovlasti detaljnije.

  • SUID- ako je ovaj bit postavljen, kada se program pokrene, ID korisnika od kojeg je pokrenut zamjenjuje se ID-om vlasnika datoteke. U stvari, to dopušta običnim korisnicima pokretanje programa kao superkorisnik;
  • SGID- ova zastavica radi na sličan način, jedina razlika je u tome što se korisnik smatra članom grupe s kojom je datoteka povezana, a ne grupa kojima on zapravo pripada. Ako je zastavica SGID postavljena na direktorij, sve datoteke stvorene u njemu bit će pridružene grupi direktorija, a ne korisnikovoj. Ovo se ponašanje koristi za organiziranje dijeljene mape;
  • Ljepljivi komadić- ovaj bit se također koristi za stvaranje zajedničkih mapa. Ako je instaliran, korisnici mogu samo stvarati, čitati i izvršavati datoteke, ali ne mogu brisati datoteke u vlasništvu drugih korisnika.

Sada pogledajmo kako pregledati i promijeniti dopuštenja za datoteke u Linuxu.

Kako vidjeti dopuštenja za datoteke u Linuxu

Naravno, možete vidjeti dopuštenja za datoteke u Linuxu pomoću upravitelja datotekama. Svi oni podržavaju ovu značajku, ali to će vam dati nepotpune informacije. Za maksimum detaljne informacije Za sve zastavice, uključujući i posebne, morate koristiti naredbu ls s parametrom -l. Sve datoteke u direktoriju bit će navedene i tamo će biti prikazani svi atributi i bitovi.

Da biste saznali prava na linux datoteka pokrenite sljedeću naredbu u mapi u kojoj se nalazi ova datoteka:

Crtice su odgovorne za dopuštenja datoteka u Linuxu. Prva je vrsta datoteke, o kojoj se govori u zasebnom članku. Zatim postoje grupe prava, prvo za vlasnika, za grupu i za sve ostale. Postoji samo devet crtica za dozvolu i jedna za vrstu.

Pogledajmo pobliže što znače uvjetne vrijednosti zastavica prava:

  • --- - nikakva prava;
  • --x- dopušteno je samo izvršavanje datoteke kao programa, ali ne i mijenjanje ili čitanje;
  • -w-- dopušteno je samo pisanje i mijenjanje datoteke;
  • -wx- dopuštene su izmjene i izvršavanje, ali u slučaju imenika ne možete vidjeti njegov sadržaj;
  • r--- prava samo za čitanje;
  • r-x- samo čitanje i izvršavanje, bez dopuštenja pisanja;
  • rw-- prava čitanja i pisanja, ali bez izvršenja;
  • rwx- Sva prava;
  • --s- SUID ili SGID bit je postavljen, prvi se prikazuje u polju za vlasnika, drugi za grupu;
  • --t- sticky-bit je instaliran, što znači da korisnici ne mogu izbrisati ovu datoteku.

U našem primjeru, datoteka test1 ima tipične programske dozvole, vlasnik može učiniti sve, grupa može samo čitati i izvršavati, a svi ostali mogu samo izvršavati. Za test2 dodatno su postavljene oznake SUID i SGID. A za mapu test3 instaliran je Sticky-bit. Datoteka test4 dostupna je svima. Sada znate kako vidjeti prava na Linux datoteku.

Kako promijeniti dopuštenja za datoteke u Linuxu

Za promjenu dopuštenja datoteka u Linuxu možete koristiti uslužni program chmod. Omogućuje vam promjenu svih zastava, uključujući i posebne. Pogledajmo njegovu sintaksu:

$ chmod opcija kategorija datoteka zastavice akcije

Opcije nas sada neće zanimati, osim možda samo jedne. S -R opcijom možete prisiliti program da rekurzivno primijeni promjene na sve datoteke i direktorije.

  • u- vlasnik datoteke;
  • g- grupa datoteka;
  • o- ostali korisnici.

Radnja može biti jedna od dvije stvari, dodavanje oznake "+" ili uklanjanje oznake "-". Što se tiče samih prava pristupa, ona su slična ispisu uslužnog programa ls: r - čitanje, w - pisanje, x - izvršavanje, s - suid/sgid, ovisno o kategoriji za koju ste postavili, t - postavlja ljepljivo -bit. Na primjer, svi korisnici imaju puni pristup datoteci test5:

chmod ugo+rwx test5

Ili ćemo oduzeti sva prava grupi i drugim korisnicima:

chmod go-rwx test5

Dajmo grupi pravo da čita i izvršava:

chmod g+rx test5

Za ostale korisnike samo za čitanje:

Za datoteku test6 postavite SUID:

I za test7 - SGID:

Pogledajmo što se dogodilo:

Kao što vidite, promjena dopuštenja za datoteke u Linuxu vrlo je jednostavna. Osim toga, možete promijeniti osnovna prava pomoću upravitelja datotekama.

zaključke

To je sve, sada znate ne samo koja su dopuštenja za datoteke u Linuxu, već i kako ih pregledati, pa čak i kako ih promijeniti. Ovo je vrlo važna tema koju početnici zaista moraju razumjeti kako bi potpunije koristili svoj sustav. Ako imate pitanja, pitajte u komentarima!

Za kraj, želio bih ponuditi dobar video o pravima pristupa u Linuxu:

Opcija -c - dodajte komentar korisniku
Opcija -g sudo - dodajte korisnika u sudo grupu.
Opcija -s će postaviti korisničku ljusku na /bin/bash

Opcija -d koristi se za određivanje početne mape korisnika
Opcija -m pokazat će da mapu treba odmah izraditi:

Sudo useradd -c "Komentar za korisnika" -g sudo -d /home/NameUser -m -s /bin/bash NameUser

Postavite lozinku za korisnika NameUser:

Sudo passwd NameUser

Dodajte korisnika pomoću naredbe adduser

sudo useradd -c "Komentar za korisnika" -g sudo -d /home/NameUser -m -s /bin/bash NameUser

Unesite lozinku, odgovorite na sva postavljena pitanja, dobijte korisnika sa lozinkom i kućnim imenikom

Promjena korisničke lozinke

sudo passwd NameUser

Dodajte korisnika sudo grupi

usermod -a -G sudo NameUser

Izravno dodajte korisnika/grupu korisnika u Sudores:

Uredimo datoteku /etc/sudores.tmp urednik visudo

Sudo visudo

Dajmo root prava navedenom korisniku Korisničko ime

Korisničko_ime SVI=(SVI:SVI) SVI

Dajmo root prava grupi korisnika grupno ime dodavanjem retka u datoteku sudoers -

Naziv_grupe SVE=(SVI:SVI) SVI

Korisnik i njegove grupe

Gledamo dostupne grupe na hostu

Mačka /etc/grupa

Provjera postojanja grupe grupa primjera na hostu gdje je examplegroup grupa koja vas zanima

Grep primjer grupe /etc/group

Provjeravamo/saznajemo kojim grupama korisnik pripada (kao i njegov uid, gid)

Id NameUser

Dodajte postojećeg korisnika NameUser postojećoj grupi primjera grupe

Usermod -g primjer grupe NameUser

Uklanjanje Ubuntu korisnika

Koristimo naredbu, korisnička mapa neće biti izbrisana

Sudo userdel NameUser

Izbrišite mapu ako je potrebno

Sudo rm -r /home/NameUser/

Provjeravamo je li korisnik obrisan; ako nema izlaza, onda je korisnik obrisan

Sudo grep -R NameUser /etc/passwd --color

Navedite sve lokalne korisnike

sudo cat /etc/passwd sudo cat /etc/shadow

Za prikaz detaljnijih informacija o korisniku, instalirajte paket prst

Sudo apt-get install finger

Za pregled informacija o korisniku NameUser, pokrenite naredbu

Ime korisnika prsta

Za izlaz informacija o svim korisnicima u datoteku infootalluser.txt napravimo skriptu prst.š

#!/bin/bash n=`cat /etc/passwd | cut -d: -f1` za i u $n; odjekni "================================================== ============================ =================" prst $i gotovo

Pokrenimo skriptu prst.š i spremite njegov sadržaj u datoteku infootalluser.txt

./finger.sh infoaboutalluser.txt

Navedite sve privilegirane korisnike:

egrep ":0:0:" /etc/passwd

ili ne privilegiran

Egrep -v ":0:0:" /etc/passwd

Navedite sve korisnike čija imena počinju slovima abcd:

Mačka /etc/passwd | grep "^.*"

Kao što pokazuje odgovor čitatelja, pitanje odvajanja administrativnih prava u Ubuntuu još uvijek ostaje nejasno za većinu administratora početnika, pa smo ovim materijalom odlučili unijeti malo jasnoće u ovo pitanje. Stoga, ako ne znate kako se su razlikuje od sudo, gdje ste sakrili root, itd., itd., vrijeme je da počnete proučavati naš članak.

Počnimo s malom digresijom. Sustav administratorskih prava Linuxa seže do Unix OS-a i stoga ima mnogo toga zajedničkog s drugim sustavima sličnim Unixu: BSD, Solaris, MacOS. U isto vrijeme, različite distribucije imaju svoje karakteristike implementacije određenih aspekata, pa ćemo dati konkretne primjere koji se odnose na Ubuntu obitelj, ali poznavanje općih pravila omogućit će vam da lako razumijete okruženje bilo kojeg drugog OS-a sličnog Unixu.

Korisnik ima puna administratorska prava u Linuxu. korijen, čija se prava ne mogu ograničiti, stoga je svakodnevni rad u ime ovog korisnika krajnje nepoželjan: nepažljive radnje korisnika mogu dovesti do oštećenja sustava, a kompromitiranje ovog računa napadaču će dati neograničen pristup sustavu.

Stoga je u Linuxu usvojena drugačija shema: svi korisnici, uključujući administratore, rade pod ograničenim računom, a za obavljanje administrativnih radnji koriste jedan od mehanizama eskalacije prava. Da biste to učinili, možete povećati prava pomoću uslužnog programa sudo ili se prijavite kao superuser (root) bez prekida trenutne sesije pomoću naredbe su. Mnogi ljudi pogrešno brkaju ova dva mehanizma, pa ih pogledajmo detaljnije.

Tim su omogućuje vam da se prijavite kao drugi korisnik (ne nužno root) bez prekida trenutne sesije. Dakle naredba:

Su petrov

će vam omogućiti da se prijavite kao korisnik petrov, korisničko okruženje (domaća mapa) također će biti promijenjeno da pripada ovom korisniku.

Tim su omogućuje vam da se prijavite pod svojim računom bez navođenja korisničkog imena korijen"a. Međutim, ova metoda ima jedan značajan nedostatak - da biste se prijavili u ime drugog korisnika, morate znati njegovu lozinku. Ako imate nekoliko administratora, tada će svaki od njih znati lozinku superkorisnika i nećete moći ograničiti njihova prava.

Osim toga, nije sigurno; poznavanje lozinke superkorisnika i mogućnost prijave pod njegovim imenom u slučaju kompromitacije može dovesti do potpunog gubitka kontrole nad sustavom.

Što se događa ako pokušamo povećati prava u Ubuntuu na ovaj način? Nećemo moći ništa učiniti jer ne znamo korisničku lozinku korijen, pritom nam nitko ne brani da se prijavimo kao drugi korisnik.

"Čekati!" - drugi korisnik će reći, "nisu li root prava dana prvom stvorenom korisniku, kojeg navedemo tijekom instalacije?" Doista, administrativni zadaci mogu se obavljati samo u ime korisnika stvorenog tijekom instalacije; u ime drugog korisnika, pretrpjet ćemo neuspjeh.

Tu se približavamo drugom mehanizmu povećanja prava – korisnosti sudo. Međutim, prije nego što prijeđemo na proučavanje, vrijedi pojasniti: prava superkorisnika (root) u Ubuntuu pripadaju root računu, koji je prema zadanim postavkama onemogućen. Stoga povećajte dopuštenja pomoću naredbe su ne čini se mogućim.

Glavni mehanizam za podizanje prava u Ubuntuu je uslužni program sudo. Ovaj uslužni program vam omogućuje da podignete prava na razinu superkorisnika za naredbu koja se izvršava, ali ne morate znati lozinku superkorisnika; korisnik mora unijeti vlastitu lozinku. Nakon čega će uslužni program provjeriti ima li ovaj korisnik pravo izvršiti ovu naredbu na ovom hostu s pravima superkorisnika i, ako su provjere uspješne, izvršit će je.

To je važno! Glavna razlika su iz sudo služi čemu su omogućuje promjenu trenutnog korisnika u root, što zahtijeva aktivan račun superkorisnika u sustavu i poznavanje njegove lozinke, sudo omogućuje vam da povećate prava za izvršavanje naredbe bez navođenja lozinke superkorisnika; prijava kao root s ovim vjerodajnicama neće raditi.

Druga važna okolnost je da će se pri korištenju cjevovoda ili preusmjeravanja s pravima superkorisnika izvršiti samo prvi dio naredbe, na primjer u dizajnu:

Sudo naredba1 | tim2

s root pravima će se izvršiti samo tim1. I tim

Sudo cat sources.list > /etc/apt/sources.list

javit će se pogreška prava pristupa jer je unos unutra /etc/apt/sources.list dogodit će se s normalnim korisničkim pravima.

Za izvođenje složenih kombinacija naredbi, možete se prebaciti u način superkorisnika pomoću naredbe

što je slično podizanju prava s naredbom su, međutim, to neće promijeniti korisničko okruženje i imenik trenutnog korisnika koristit će se kao početni imenik, što je zgodno i sigurno. Svaki administrator će imati pristup samo svom matičnom imeniku.

Sada je vrijeme da shvatimo tko ima pravo koristiti prilike sudo i u kojoj mjeri. Datoteka je odgovorna za postavke ovog uslužnog programa /etc/sudoers, unatoč činjenici da je ovo obična konfiguracijska datoteka, za njezino uređivanje preporučuje se korištenje naredbe:

Sudo visudo

Ova naredba zaključava datoteku i provjerava sintaksu, inače riskirate gubitak administrativnog pristupa vašem računalu zbog tipfelera.

Sintaksa ove datoteke je vrlo jednostavna. Na primjer, na samom kraju datoteke postoji unos:

%admin SVI=(SVI) SVI

To znači da korisnici grupe admin može izvršiti bilo koju naredbu na bilo kojem računalu, u ime bilo kojeg korisnika. Kao što možemo lako provjeriti pomoću naredbe skupine u našem slučaju korisnik andrej pripada grupi admin, i korisnik petrov Ne.

Ali sve prednosti ovog uslužnog programa leže u mogućnosti fleksibilne konfiguracije parametara za dobivanje prava u svakom konkretnom slučaju. Na primjer:

Petrov ubuntu-lts=(andrey) SVE

Ova linija omogućuje korisniku petrov izvrši bilo koju naredbu na hostu ubuntu-lovi u ime korisnika andrej. Kada navodite naredbe, trebali biste naznačiti puni put do njih možete ga pronaći pomoću naredbe koji

Na primjer, želimo dopustiti korisnicima petrov I sidorov isključiti i ponovno pokrenuti računalo, kao i ukloniti zadatke. Međutim, ove naredbe ne bi trebale zahtijevati unos lozinke.

Još jedna zgodna značajka uslužnog programa sudo je stvaranje aliasa, tako da ćemo u našem slučaju dodati /etc/sudoers sljedeće retke:

User_Alias ​​​​USERGROUP1 = petrov, sidorov
Cmnd_Alias ​​​​CMDGROUP1 = /bin/kill, /sbin/reboot, /sbin/shutdown

Ovime smo stvorili dva aliasa KORISNIČKA GRUPA1, gdje smo uključili korisnike koji su nam potrebni i CMDGROUP1 sa skupom potrebnih naredbi, možemo naknadno uređivati ​​samo aliase bez utjecaja na sva pravila u kojima se mogu koristiti. Onda dodajmo pravilo:

KORISNIČKA GRUPA1 SVE = (SVI) NOPASSWD:SMDGRUPA1

koji će omogućiti korisnicima navedenim u navedenom aliasu da izvršavaju naredbe iz danog aliasa na bilo kojem hostu u ime bilo kojeg korisnika bez unosa lozinke.

Uz gornja dva, aliasi su također dostupni za ime glavnog računala i korisnike u čije ime je dopušteno izvršavati naredbe, na primjer:

Host_Alias ​​​​WWW = webserver1, webserver2
Runas_Alias ​​​​WWW = www-podaci, www-developer

KORISNIČKA GRUPA1 WWW = (WWW) SVE

Zadani skup zapisa omogućit će korisnicima unos KORISNIČKA GRUPA1 izvršavati bilo kakve naredbe u ime korisnika www-podaci I www-programer na web poslužiteljima tvrtke.

Na kraju, pogledajmo što učiniti ako je root račun još uvijek potreban. Jednostavno je, da biste ga omogućili, samo postavite lozinku:

Sudo passwd root

Ponovno blokiraj račun superkorisnik se može kreirati naredbom:

Sudo passwd -l root

Upamtite da se svi administrativni zadaci u Ubuntuu mogu obaviti pomoću uslužnog programa sudo, stoga nemojte omogućiti root račun osim ako je to apsolutno neophodno!

Kao što možete vidjeti, Ubuntu ima bogate mogućnosti upravljanja administrativnim pravima, što vam omogućuje fleksibilnu raspodjelu prava među nekoliko administratora, kao i mogućnost povećanja prava za neke korisnike, i to učinkovito i sigurno.