Administrare server open source

Platforma de hosting cu software liber, gratuit, open source.

Comentariile sunt închise pentru Adauga utilizatori in FreeBSD

Adaugarea unui utilizator in sistemul de operare este un proces complex care de obicei se intampla in mod transparent datorita utilitarelor care ne usureaza treaba. In principiu, pentru crearea unui utilizator, trebuie adaugata o inregistrare in fisierul /etc/passwd care sa ofere informatii de baza despre utilizator (UID, home directory, shell), o inregistrare in fisierul /etc/master.passwd care pastreaza parola criptata iar apoi trebuie creat un homedirectory, care va fi directorul in care se gasesc fisierele utilizatorului creat.

In FreeBSD, ca in majoritatea sistemelor de operare bazate pe UNIX, metoda standard de adaugare a utilizatorilor noi este comanda adduser care ne prezinta un mic formular de completat iar apoi creaza utilizatorul cerut. O rulare a comenzii adduser arata cam asa:

[root@localhost ~]# adduser
Username: test
Full name: Tester Popescu
Uid (Leave empty for default):
Login group [test]:
Login group is test. Invite test into other groups? []:
Login class [default]:
Shell (sh csh tcsh nologin nologin) [sh]:
Home directory [/home/test]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]: no
Username   : test
Password   : *****
Full Name  : Tester Popescu
Uid        : 1033
Class      :
Groups     : test
Home       : /home/test
Home Mode  :
Shell      : /bin/sh
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (test) to the user database.
Add another user? (yes/no): no
Goodbye!
[root@localhost ~]#

Procesul e simplu, dar daca avem de creat manual mai multi utilizatori, cum e in cazul serverelor SSH din cadrul universitatilor, ar fi bine sa gasim solutii pentru optimizarea adaugarii pentru ca totul sa mearga rapid. Prima idee de optimizare ar fi sa modificam datele implicite pentru utilizatorii creati. Pentru modificarea datelor default se creaza fisierul /etc/adduser.conf, fisierul de configurare pentru comanda adduser, fisier in care adaugam urmatoarele linii:

defaultLgroup=www
homeprefix=/home
passwdtype=yes
defaultshell=/bin/tcsh
udotdir=/usr/share/skel

Acum, daca adaugam un nou utilizator, grupul default nu va mai fi un grup nou creat ci grupul www – sau orice alt grup in care dorim sa adaugam utilizatorii noi. Shell-ul implicit al utilizatorului nu va mai fi sh, ci tcsh. Astfel putem modifica si directiva homeprefix pentru a schimba calea default pentru crearea homedirectory-ului sau directiva udotdir pentru a modifica calea catre directorul in care se gasesc fisierele care vor fi copiate in orice cont nou creat. Acum, daca nu trebuie sa adaugam manual shell-ul si grupul utilizatorului (cu enter se iau valorile default) scade timpul necesar si scad sansele de a adauga un utilizator intr-un grup gresit.

Pentru putina flexibilitate in plus, ne putem uita in directorul /usr/share/skel unde gasim opt fisiere care le putem folosi pentru personalizarea initiala a contului – fisierul dot.profile (care va fi copiat ca .profile) pentru setarea variabilelor de mediu, fisierul dot.mailrc (care va fi copiat ca .mailrc) pentru personalizarea aplicatiei Mail etc. Daca avem fisiere care trebui copiate in directorul unui utilizator nou creat le copiem in /usr/share/skel. Daca fisierul incepe cu caracterul punct trebuie sa il redenumim, sa il prefixam cu dot. – ex. daca avem un fisier .vimrc care dorim sa fie copiat in directoarele noi, vom adauga in /usr/share/skel fisierul dot.vimrc.

Cu toate ca personalizarea facuta dupa instructiunile de mai sus e de folos, in cazul in care dorim crearea automata a unui utilizator lucrurile se complica putin datorita interactivitatii impuse si care poate fi un impediment in crearea de scripturi. Pentru astfel de cazuri se poate folosi comanda pw care e, probabil, cel mai puternic utilitare folosit pentru gestionarea utilizatorilor.

Comanda pw e complexa si ne permite sa cream utilizatori folosind parametri pentru comanda. De exemplu, pentru a crea un utilizator pwtest cu homedirectory in /home/pwtest, avand ca grup principal grupul wheel, shellul tcsh si clasa default vom folosi urmatoarea comanda:

[root@localhost ~]# /usr/sbin/pw useradd -n pwtest -d /home/pwtest -g wheel -L default -s tcsh

Bineinteles, ca in cazul comenzii adduser, putem personaliza modul in care se creaza utilizatorii oferind niste valori default. Personalizarea se face editand fisierul /etc/pw.conf. Cateva din valorile default care se pot seta sunt:

skeleton     - specifica directorul in care se gasesc fisierele care trebuie copiate pentru fiecare utilizator
home         - specifica directorul parinte in care se creaza homedirectory pentru fiecare utilizator
homemode     - permisiunile implicite pentru homedirectory (se foloseste umask)
defaultshell - shellul care il va folosi utilizatorul

Folosind cele doua metode prezentate mai sus puteti crea utilizatori foarte usor sau chiar automat folosind setari prestabilite, astfel scazand foarte mult timpul de setare a conturilor.

Linux

Comments are closed.