Personal tools

Administrare, configurare şi intreţinere servere

From linux360

Revision as of 15:00, 19 January 2006 by Csdexter (talk | contribs) (Adaugare si stergere: Added scope-isolation warning)
Jump to: navigation, search

Introducere

Acest articol descrie CAF-ul (Common Access Framework) pentru administrarea, configurarea şi intreţinerea server-elor rulând Linux şi configurate de mine (@Dexter) pentru terţi.

Eu folosesc pentru instalari una din urmatoarele distributii:

  • RedHat Linux (Hedwig, Zoot, Guiness, Cartman, Enigma, Valhalla, Psyche, Shrike)
  • RedHat Enterprise Linux (Pensacola, Taroon, Nahant)
  • CentOS (3.x, 4.x)

drept pentru care articolul prezent ar putea fi partial inutil/incomplet/gresit in cazul folosirii sale pentru alte distributii.

Distributiile pentru care acest aspect ar putea fi minim sau chiar inexistent sunt:

  • Fedora Core (Yarrow, Heidelberg)
  • Mandrake
  • Mandriva
  • Turbo Linux.

Managementul conturilor de utilizator

Teorie

Conturile de utilizator se impart din punct de vedere al destinatiei (utilizarii) in trei categorii:

  • Conturi pentru conectare si acces/lucru interactiv la consola sistemului (conturi de shell)
  • Conturi pentru conectare si acces la unul sau mai multe servicii (conturi de login)
  • Conturi fara drept de conectare si acces, folosite doar pentru asigurarea paternitatii unor structuri de date (conturi de owner)

In mod evident, un cont de shell este si de login iar un cont de login este in acelasi timp si de owner.

Exemplu de cont de shell: root. Exemplu de cont de login: gigi, unde gigi are casuta de posta pe server-ul in cauza. Exemplu de cont de owner: apache, contul sub care ruleaza server-ul de web.

  • Un cont de shell are ca $SHELL (si prin aceasta intelegem campul corespunzator interpretorului de comenzi din /etc/passwd sau din mecanismul de getpwent(); activ) unul dintre interpretoarele de comenzi trecute in /etc/shells (mai putin /sbin/nologin). De asemenea, un astfel de cont are, in cele mai multe cazuri si accesul permis prin SSH.
  • Un cont de login are ca $SHELL pe /sbin/nologin sau executabilul server al protocolului la care i se da acces (e.g. /usr/sbin/pppd).
  • Un cont de owner are ca $SHELL pe /sbin/nologin. De asemenea, de cele mai multe ori, un cont de owner are UID/GID sub 500 (fiind denumit cont de sistem in acest caz).

Adaugare si stergere

Pentru adaugarea si/sau stergerea conturilor de utilizator, se folosesc exclusiv programele standard useradd si, respectiv, userdel (prezente fie in /sbin, fie in /usr/sbin in functie de versiunea sistemului de operare -- lucru oricum transparent deoarece ambele directoare se afla in $PATH-ul lui root, singurul cont prin care avem acces la programele amintite).

  • Sintaxa generala a lui useradd este:<sh/>useradd -C"$NUME" [-r] -s $SHELL [-d $HOME] $USERNAME
  • Sintaxa generala a lui userdel este:<sh/>userdel [-r] $USERNAME

Unde parametrii si argumentele au semnificatia urmatoare:

  • $NUME este numele complet al persoanei fizice/entitatii administrative careia ii corespunde contul
  • -r se adauga la useradd pentru a creea un cont de sistem (avand UID<500) si la userdel pentru a sterge directorul $HOME asociat contului in cauza
  • -d $HOME se foloseste la useradd pentru a specifica crearea unui alt director $HOME decat cel implicit (i.e. /home/$USERNAME)
  • $USERNAME este numele de cont.

Atentie: comenzile date acopera exclusiv adaugarea (stergerea) contului in cauza in (din) sistem si cel mult a directorului sau $HOME (implicit prin copierea lui /etc/skel). Orice alta structura de date sau fisier de configurare va trebui tratata separat prin mecanismele specifice fiecarui caz.