Ulanyjylary we toparlary dolandyrmak, faýl rugsatlary we sypatlar we hasaplara sudo girmäge mümkinçilik bermek - 8-nji bölüm


Geçen ýylyň awgust aýynda Linux gaznasy LFCS kepilnamasyna (Linux Foundation Certified Sysadmin) başlady, bu maksatnama Linux ulgamlary üçin aralyk operasiýa goldawyny tassyklamak üçin hemme ýerde we islendik ýerde ekzamen almaga rugsat bermekdir. işleýiş ulgamlaryny we hyzmatlaryny goldamak, umumy gözegçilik we derňew bilen birlikde, has ýokary derejeli goldaw toparlaryna meseleleriň haçan köpelmelidigini çözüp bilmek üçin akylly karar bermek.

Linux gaznasynyň sertifikatlaşdyryş programmasynyň girişini beýan edýän aşakdaky wideo gysga göz aýlaň.

Bu makala, 10 sapakly uzyn seriýanyň 8-nji bölümi, şu bölümde, LFCS sertifikat synagy üçin zerur bolan Linux ulgamynda ulanyjylary we topar rugsatlaryny nädip dolandyrmalydygyny size görkezeris.

Linux köp ulanyjy operasiýa ulgamy bolany üçin (dürli kompýuterlerde ýa-da terminallarda birnäçe ulanyja bir ulgama girmäge mümkinçilik berýär), ulanyjylary netijeli dolandyrmagyň usullaryny bilmeli: nädip goşmaly, redaktirlemeli, togtatmaly ýa-da pozmaly ulanyjy hasaplary, berlen tabşyryklary ýerine ýetirmek üçin zerur rugsatlar bermek bilen birlikde.

Ulanyjy hasaplaryny goşmak

Täze ulanyjy hasaby goşmak üçin aşakdaky iki buýrugyň ikisini hem kök hökmünde işledip bilersiňiz.

# adduser [new_account]
# useradd [new_account]

Ulgamda täze ulanyjy hasaby goşulanda, aşakdaky amallar ýerine ýetirilýär.

1. Öý bukjasy döredilýär (/home/username ).

2. Aşakdaky gizlin faýllar ulanyjynyň öý katalogyna göçürilýär we ulanyjy sessiýasy üçin daşky gurşaw üýtgeýjilerini üpjün etmek üçin ulanylar.

.bash_logout
.bash_profile
.bashrc

3. Ulanyjy üçin/var/spool/mail/ ulanyjy ady -da poçta spool döredilýär.

4. Topar döredilýär we täze ulanyjy hasaby bilen birmeňzeş at berilýär.

Hasabyň doly maglumatlary /etc/passwd faýlynda saklanýar. Bu faýlda ulgam ulanyjy hasabynda ýazgy bar we aşakdaky formaty bar (meýdanlar bir sütün bilen bölünýär).

[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]

  1. Meýdanlar [ulanyjy ady] we [Düşündiriş] öz-özüňi düşündirýär.
  2. Ikinji meýdandaky x hasabyň diýip girmek üçin zerur bolan kölegeli parol bilen goralandygyny görkezýär (/etc/shadow ). [ulanyjy ady] .
  3. [UID] we [GID] meýdanlary Ulanyjy şahsyýetini kesgitlemegi we [ulanyjy ady] esasy topar IDentifikasiýasyny görkezýän bitewi sanlardyr. degişlidir.
  4. [Öý bukjasy] [ulanyjy ady] öý bukjasyna we
  5. [Bellenen gabyk] bu ulanyja ulgama gireninde elýeterli boljak gabykdyr.

Topar maglumatlary /etc/group faýlynda saklanýar. Her ýazgyda aşakdaky format bar.

[Group name]:[Group password]:[GID]:[Group members]

  1. [Toparyň ady] toparyň ady.
  2. [Toparyň paroly] daky x topar parollarynyň ulanylmaýandygyny görkezýär.
  3. [GID] :/etc/passwd ýaly.
  4. [Toparyň agzalary] : [Toparyň ady] agza bolan ulanyjylaryň yzygiderli bölünen sanawy.

Hasap goşanyňyzdan soň, usermodyň esasy sintaksisi aşakdaky ýaly usermod buýrugyny ulanyp, aşakdaky maglumatlary redaktirläp bilersiňiz.

# usermod [options] [username]

YYYY-MM-DD formatda senäniň yzyndaky ixpirlenen baýdagyny ulanyň.

# usermod --expiredate 2014-10-30 tecmint

Birleşdirilen -aG , ýa-da apappend –groups opsiýalaryny ulanyň, soňra yzygiderli bölünen toparlaryň sanawy.

# usermod --append --groups root,users tecmint

Täze öý bukjasyna mutlak ýol bilen -d ýa-da –home opsiýalaryny ulanyň.

# usermod --home /tmp tecmint

Täze gabyga barýan ýol bilen lşel ulanyň.

# usermod --shell /bin/sh tecmint
# groups tecmint
# id tecmint

Indi ýokardaky buýruklaryň hemmesini bir gezek ýerine ýetireliň.

# usermod --expiredate 2014-10-30 --append --groups root,users --home /tmp --shell /bin/sh tecmint

Aboveokardaky mysalda, tecmint ulanyjy hasabynyň gutarýan senesini 2014-nji ýylyň 30-njy oktýabryna belläris. Hasaby kök we ulanyjylar toparyna hem goşarys. Ahyrynda, sh -ni deslapky gabyk hökmünde belläris we öý katalogynyň ýerleşişini/tmp-e üýtgederis:

Şeýle hem okaň :

  1. Linux-da 15 useradd buýruk mysallary
  2. Linux-da 15 usermod buýruk mysallary

Bar bolan hasaplar üçin aşakdakylary hem edip bileris.

Ulanyjynyň parolyny gulplamak üçin -L (baş harp L) ýa-da –lok opsiýasyny ulanyň.

# usermod --lock tecmint

Ulanyjynyň ozal petiklenen parolyny açmak üçin –u ýa-da gulpy açmak opsiýasyny ulanyň.

# usermod --unlock tecmint

Maksada ýetmek üçin aşakdaky buýruklary işlediň.

# groupadd common_group # Add a new group
# chown :common_group common.txt # Change the group owner of common.txt to common_group
# usermod -aG common_group user1 # Add user1 to common_group
# usermod -aG common_group user2 # Add user2 to common_group
# usermod -aG common_group user3 # Add user3 to common_group

Aşakdaky buýruk bilen bir topary pozup bilersiňiz.

# groupdel [group_name]

group_name eýeçiligindäki faýllar bar bolsa, olar pozulmaz, ýöne toparyň eýesi ýok edilen toparyň GID görnüşine düzüler.

Linux faýl rugsatlary

Arhiw gurallary we faýl aýratynlyklaryny düzmek - bu seriýanyň 3-nji bölüminde ara alyp maslahatlaşan esasy okamak, ýazmak we ýerine ýetirmekden başga-da, az ulanylýan (ýöne möhüm däl) rugsat sazlamalary bar, käwagt\ diýilýär. ýörite rugsatlar ”.

Öň ara alnyp maslahatlaşylan esasy rugsatlar ýaly, oktal faýly ýa-da rugsadyň görnüşini görkezýän harp (simwoliki bellik) arkaly düzülýär.

userdel buýrugy bilen hasaby (öý bukjasy bilen bilelikde, ulanyja degişli bolsa we ondaky ähli faýllar, şeýle hem poçta bukjasy) pozup bilersiňiz. görnüşi.

# userdel --remove [username]

Her gezek ulgama täze ulanyjy hasaby goşulanda, ýeke-täk agzasy hökmünde ulanyjy ady bilen birmeňzeş at döredilýär. Soňra beýleki ulanyjylary topara goşup bolýar. Toparlaryň maksatlaryndan biri, şol çeşmelere dogry rugsatlary bellemek bilen faýllara we beýleki ulgam çeşmelerine ýönekeý giriş gözegçiligini amala aşyrmakdyr.

Mysal üçin, aşakdaky ulanyjylaryňyz bar öýdýän.

  1. ulanyjy1 (esasy topar: ulanyjy1)
  2. ulanyjy2 (esasy topar: ulanyjy2)
  3. ulanyjy3 (esasy topar: ulanyjy3)

Olaryň hemmesine ýerli ulgamyňyzyň bir ýerinde ýerleşýän ýa-da tor paýlaşylmagynda common.txt atly faýla girmek üçin okamak we ýazmak gerek. ulanyjy1 döretdi. Somethingaly bir zady etmäge synanyşyp bilersiňiz,

# chmod 660 common.txt
OR
# chmod u=rw,g=rw,o= common.txt [notice the space between the last equal sign and the file name]

Şeýle-de bolsa, bu diňe faýlyň eýesine we faýlyň toparyň eýesi bolan ulanyjylara ( user1 <) okamak we ýazmak ygtyýaryny üpjün eder./b> bu ýagdaýda). Againene-de user2 we user3 user1 toparyna goşmak isläp bilersiňiz, emma bu olara degişli faýllaryň galan bölegine-de girip biler. ulanyjy ulanyjy1 we ulanyjy1 topary tarapyndan.

Bu ýerde toparlar peýdaly bolýar we şuňa meňzeş ýagdaýda näme etmelidigiňiz şu ýerde.

Haçan-da ýerine ýetirilýän faýlda setuid rugsady ulanylanda, programmany işleýän ulanyjy programmanyň eýesiniň täsirli artykmaçlyklaryny miras alýar. Bu çemeleşme howpsuzlyk aladalaryny esasly ýokarlandyryp biljekdigi sebäpli, kesgitlenen rugsady bolan faýllaryň sany iň az derejede saklanmalydyr. Ulgam ulanyjysynyň kök faýlyna girmeli bolanda bu rugsady bilen programmalary tapyp bilersiňiz.

Jemläp aýtsak, ulanyjynyň ikilik faýly ýerine ýetirip biljekdigi däl-de, köküň artykmaçlyklary bilen hem edip biljekdigi. Mysal üçin, geliň, /bin/passwd rugsatlaryny barlap göreliň. Bu ikilik, hasabyň parolyny üýtgetmek üçin ulanylýar we /etc/shadow faýlyny üýtgedýär. Superuser islendik adamyň parolyny üýtgedip biler, ýöne beýleki ulanyjylaryň hemmesi diňe öz parollaryny üýtgedip bilmeli.

Şeýlelik bilen, islendik ulanyjynyň /bin/passwd işlemäge rugsady bolmaly, ýöne hasaby diňe kök görkezip biler. Beýleki ulanyjylar diňe degişli parollaryny üýtgedip bilerler.

setgid bit gurlanda, hakyky ulanyjynyň täsirli GID topary eýesiniňki bolýar. Şeýlelik bilen, islendik ulanyjy şeýle faýlyň topar eýesine berlen artykmaçlyklar boýunça bir faýla girip biler. Mundan başga-da, setgid bit katalogda gurlanda, täze döredilen faýllar katalog bilen bir topara miras galar we täze döredilen kiçi bukjalar hem esasy katalogyň kesgitlenen bölegini miras alarlar. Belli bir toparyň agzalary, faýl eýesiniň esasy toparyna garamazdan, katalogdaky ähli faýllara girmek zerurlygy ýüze çykanda, bu çemeleşmäni ulanarsyňyz.

# chmod g+s [filename]

setgid sekiz görnüşde düzmek üçin, häzirki (ýa-da islenýän) esasy rugsatlara 2 belgisini goşuň.

# chmod 2755 [directory]

Haçan-da\ ýelmeşýän bit faýllara gurnalan bolsa, Linux muny äsgermezlik edýär, şol bir wagtyň özünde, kataloglar üçin ulanyjynyň bukjasyna eýe bolmasa, ulanyjylaryň içindäki faýllary pozmagynyň ýa-da adynyň adyny üýtgetmeginiň öňüni alýar. faýl ýa-da kök.

# chmod o+t [directory]

ýelmeşýän bit oktal görnüşde düzmek üçin, häzirki (ýa-da islenýän) esasy rugsatlara 1 belgisini goşuň.

# chmod 1755 [directory]

Bitapyk bit bolmasa, kataloga ýazyp bilýänler faýllary pozup ýa-da adyny üýtgedip bilerler. Şol sebäpli ýelmeşýän bit, köplenç dünýä ýazyp bilýän /tmp ýaly kataloglarda bolýar.

Linuxörite Linux faýl aýratynlyklary

Faýllarda rugsat edilýän amallara goşmaça çäklendirmeleri berýän beýleki atributlar bar. Mysal üçin, faýlyň adynyň üýtgedilmeginiň, göçürilmeginiň, pozulmagynyň ýa-da üýtgedilmeginiň öňüni alyň. Olar chattr buýrugy bilen düzüldi we lsattr guralyny aşakdaky ýaly görüp bolýar.

# chattr +i file1
# chattr +a file2

Şol iki buýrugy ýerine ýetireniňizden soň, file1 üýtgemez (bu üýtgedilip bilinmez, üýtgedilip ýa-da öçürilip bilinmez), file2 diňe goşmaça re modeime girer (diňe bolup biler) ýazmak üçin goşundy re modeiminde açyň).

Kök hasaby açmak we sudo ulanmak

Ulanyjylaryň kök hasaby açmagynyň usullarynyň biri ýazmakdyr.

$ su

soň köküň parolyny giriziň.

Hakyky tanamaklyk üstünlikli bolsa, häzirki iş katalogy bilen öňki ýaly kök hökmünde girersiňiz. Munuň ýerine köküň öý katalogyna ýerleşdirmek isleseňiz, işlediň.

$ su -

soň köküň parolyny giriziň.

Aboveokardaky amal, adaty ulanyjynyň düýpli howpsuzlyk töwekgelçiligini döredýän kök parolyny bilmegini talap edýär. Şol sebäpli sysadmin, adaty ulanyja buýruklary başga bir ulanyjy (adatça superuser) hökmünde gaty gözegçilikli we çäkli görnüşde ýerine ýetirmegine rugsat bermek üçin sudo buýrugyny düzüp biler. Şeýlelik bilen, bir ýa-da birnäçe aýratyn ýeňillikli buýrugy işletmäge mümkinçilik berýän we beýlekilerde hiç hili ulanyjy üçin çäklendirmeler goýulyp bilner.

Şeýle hem okaň : su bilen sudo Ulanyjynyň arasyndaky tapawut

sudo ulanyp tassyklamak üçin ulanyjy öz parolyny ulanýar. Buýruga girenimizden soň, parolymyz soralar (superuseriň däl) we tassyklamak üstünlikli bolsa (we ulanyja buýrugy ýerine ýetirmek hukugy berlen bolsa) görkezilen buýruk ýerine ýetirilýär.

Sudo-a girmek üçin ulgam dolandyryjysy /etc/sudoers faýlyny redaktirlemeli. Bu faýly gönüden-göni tekst redaktory bilen açmagyň ýerine visudo buýrugy bilen redaktirlemek maslahat berilýär.

# visudo

Bu, vim ulanyp, /etc/sudoers faýlyny açýar (faýly redaktirlemek üçin vim-i gurmak we ulanmak boýunça berlen görkezmeleri ýerine ýetirip bilersiňiz).

Bular iň möhüm setirler.

Defaults    secure_path="/usr/sbin:/usr/bin:/sbin"
root        ALL=(ALL) ALL
tecmint     ALL=/bin/yum update
gacanepa    ALL=NOPASSWD:/bin/updatedb
%admin      ALL=(ALL) ALL

Geliň, olara has içgin seredeliň.

Defaults    secure_path="/usr/sbin:/usr/bin:/sbin:/usr/local/bin"

Bu setir, sudo üçin ulanyljak we ulgama zyýan berip biljek ulanyjylara mahsus kataloglary ulanmagyň öňüni almak üçin ulanylýan kataloglary kesgitlemäge mümkinçilik berýär.

Indiki setirler rugsatlary kesgitlemek üçin ulanylýar.

root        ALL=(ALL) ALL

  1. Ilkinji HEMMESI açar söz, bu düzgüniň ähli öý eýelerine degişlidigini görkezýär.
  2. Ikinji HEMMESI birinji sütündäki ulanyjynyň islendik ulanyjynyň artykmaçlyklary bilen buýruklary işledip biljekdigini görkezýär.
  3. Üçünji HEMMESI islendik buýrugyň işledilip bilinjekdigini aňladýar.

tecmint     ALL=/bin/yum update

= belgisinden soň hiç bir ulanyjy görkezilmedik bolsa, sudo kök ulanyjyny göz öňünde tutýar. Bu ýagdaýda ulanyjy tecmint ýum täzelenme kök hökmünde işledip biler.

gacanepa    ALL=NOPASSWD:/bin/updatedb

NOPASSWD direktiwasy ulanyjy gacanepa parolyny girizmezden /bin/updateb işlemäge mümkinçilik berýär.

%admin      ALL=(ALL) ALL

% belgisi bu setiriň\ administrator atly topara degişlidigini görkezýär. Setiriň galan böleginiň manysy adaty ulanyjynyň manysyna meňzeýär. Bu diýmek toparyň agzalarynyň\ administrator ähli öý eýelerinde islendik ulanyjy ýaly ähli buýruklary işledip biljekdigini.

Sudo tarapyndan size nähili artykmaçlyklaryň berilýändigini görmek üçin\ -l opsiýasyny ulanyň.

PAM (dakylýan tanamak modullary)

Dakylýan tanamaklyk modullary (PAM), her bir programma we/ýa-da her hyzmat üçin modullary ulanyp, belli bir tanamak shemasyny kesgitlemegiň çeýeligini hödürleýär. Häzirki zaman Linux paýlamalarynda bar bolan bu gural, Linux-yň ilkinji günlerinde işläp düzüjileriň köplenç ýüzbe-ýüz bolýan meselesini ýeňip geçdi, haçan-da zerur maglumatlary nädip almalydygyny bilmek üçin tassyklanylmagyny talap edýän her bir programma ýörite düzülmelidi.

Mysal üçin, PAM bilen parolyňyzyň/etc/kölegede ýa-da toruňyzyň aýratyn serwerinde saklanmagy möhüm däl.

Mysal üçin, giriş programmasy ulanyjyny tassyklamaly bolanda, PAM dogry tanamak shemasy üçin funksiýalary öz içine alýan kitaphanany dinamiki üpjün edýär. Şeýlelik bilen, giriş programmasy (ýa-da PAM ulanýan başga bir programma) üçin tanamaklyk shemasyny üýtgetmek aňsat, sebäbi diňe /etc/pam.d içinde ýerleşýän konfigurasiýa faýlyny (ähtimal, programmanyň adyny göterýän faýl) redaktirlemegi göz öňünde tutýar. , we /etc/pam.conf -da has az ähtimal).

/etc/pam.d içindäki faýllar haýsy programmalaryň ýerli PAM ulanýandygyny görkezýär. Mundan başga-da, belli bir programmanyň PAM kitaphanasynyň (libpam) baglanyşygyny ýa-da ýokdugyny barlamak arkaly PAM ulanýandygyny ýa-da ýokdugyny aýdyp bileris:

# ldd $(which login) | grep libpam # login uses PAM
# ldd $(which top) | grep libpam # top does not use PAM

Aboveokardaky suratda libpamyň giriş programmasy bilen baglanyşandygyny görüp bileris. Munuň manysy, sebäbi bu programma ulgam ulanyjysyny tanamak işine gatnaşýar, ýokarky bolsa ýok.

Passwd üçin PAM konfigurasiýa faýlyny gözden geçireliň - hawa, ulanyjynyň parollaryny üýtgetmek üçin belli kömekçi. /Etc/pam.d/passwd-de ýerleşýär:

# cat /etc/passwd

Birinji sütün, modul-ýol (üçünji sütün) bilen ulanyljak tassyklamanyň görnüşini görkezýär. Görnüşden öň defis peýda bolanda, ulgamda tapylmaýandygy sebäpli moduly ýükläp bolmaýan bolsa, PAM ulgam gündeligine ýazylmaz.

Aşakdaky tanamaklyk görnüşleri bar:

  1. hasaby : bu modulyň görnüşi, ulanyjynyň ýa-da hyzmatyň hakykylygyny tassyklamak üçin ygtybarly şahsyýetnamalary üpjün edendigini ýa-da ýokdugyny barlaýar.
  2. auth : bu modul görnüşi, ulanyjynyň özüniň kimdigini tassyklaýar we zerur artykmaçlyklary berýär.
  3. parol : bu modul görnüşi ulanyja ýa-da hyzmata parolyny täzelemäge mümkinçilik berýär.
  4. sessiýa : bu modulyň görnüşi, tassyklamak üstünlik gazanmazdan ozal we/ýa-da soň näme edilmelidigini görkezýär.

Ikinji sütün ( dolandyryş diýilýär) bu modul bilen tassyklamak şowsuz bolsa nämeleriň bolmalydygyny görkezýär:

  1. zerur : bu modulyň üsti bilen tassyklamak başa barmasa, umumy tassyklamak derrew inkär ediler.
  2. talap edilýän zerurlyga meňzeýär, ýöne bu hyzmat üçin görkezilen beýleki modullaryň hemmesi tassyklanylmagyny inkär etmezden öň çagyrylar.
  3. ýeterlik : bu modulyň üsti bilen tanamaklyk şowsuz bolsa, PAM öňküsi ýaly bellenen ýaly şowsuz bolsa-da tassyklamany berer.
  4. islege bagly : eger bu modulyň üsti bilen tassyklamak şowsuz bolsa ýa-da üstünlik gazansa, bu hyzmat üçin kesgitlenen ýeke-täk modul bolmasa, hiç zat bolmaz.
  5. öz içine berlen görnüşdäki setirleriň başga bir faýldan okalmalydygyny aňladýar.
  6. substack öz içine alýar, ýöne tassyklamakdaky näsazlyklar ýa-da üstünlikler doly modulyň çykmagyna sebäp bolman, diňe substack.

Dördünji sütün, bar bolsa, modula geçirilmeli argumentleri görkezýär.

/Etc/pam.d/passwd (ýokarda görkezilen) ilkinji üç setir, ulanyjynyň hakyky şahsyýetnamalaryny (hasaby) üpjün edendigini barlamak üçin ulgam-auth modulyny ýükleýär. Şeýle bolsa, passwd (auth) ulanmaga rugsat bermek bilen tanamaklyk belligini (paroly) üýtgetmäge mümkinçilik berýär.

Mysal üçin, goşsaňyz

remember=2

aşakdaky setire

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok

/etc/pam.d/system-auth:

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=2

her ulanyjynyň soňky iki ýuwulan paroly/etc/security/opasswd-da gaýtadan ulanylmaz ýaly saklanýar:

Gysgaça mazmun

Netijeli ulanyjy we faýl dolandyryş endikleri islendik ulgam dolandyryjysy üçin möhüm guraldyr. Bu makalada esaslary ara alyp maslahatlaşdyk we ony gurmak üçin gowy başlangyç hökmünde ulanyp bilersiňiz diýip umyt edýäris. Teswirleriňizi ýa-da soraglaryňyzy aşakda goýup bilersiňiz, biz çalt jogap bereris.