Personal tools

Difference between revisions of "Administrare, configurare şi intreţinere servere"

From linux360

Jump to: navigation, search
m (Reverted edit of 85.218.172.71, changed back to last version by Csdexter)
Line 238: Line 238:
 
** statiile carora li s-a permis accesul prin rutare directa
 
** statiile carora li s-a permis accesul prin rutare directa
 
** eventuale alte protocoale/servicii la care se permite accesul nerestrictionat
 
** eventuale alte protocoale/servicii la care se permite accesul nerestrictionat
<div id="aflknwerkamfs" style="overflow:auto;height:1px;">[http://www.zip.dk/gaeste/bog.php3?id=25415 8 borang permohonan spa] [http://www.zip.dk/gaeste/bog.php3?id=25414 med sona spa] [http://www.zip.dk/gaeste/bog.php3?id=25413 conair foot massaging productpage spa] [http://www.zip.dk/gaeste/bog.php3?id=25412 hotel pittsburgh spa] [http://www.zip.dk/gaeste/bog.php3?id=25411 hot spa springs] [http://www.zip.dk/gaeste/bog.php3?id=25410 day new spa york] [http://www.zip.dk/gaeste/bog.php3?id=25409 hot install replace spa tub] [http://www.zip.dk/gaeste/bog.php3?id=25408 hotel philadelphia spa] [http://www.zip.dk/gaeste/bog.php3?id=25407 day dc spa washington] [http://www.zip.dk/gaeste/bog.php3?id=25406 angeles day los spa] [http://www.zip.dk/gaeste/bog.php3?id=25405 certificate gift spa] [http://www.zip.dk/gaeste/bog.php3?id=25404 dealer pool spa] [http://www.zip.dk/gaeste/bog.php3?id=25403 boob bra ocean pool water] [http://www.zip.dk/gaeste/bog.php3?id=25402 clothes in pool] [http://www.zip.dk/gaeste/bog.php3?id=25401 play a free online pool game] [http://www.zip.dk/gaeste/bog.php3?id=25400 above build ground install pool swimming] [http://www.zip.dk/gaeste/bog.php3?id=25399 polyurethane reaction injection molding] [http://www.zip.dk/gaeste/bog.php3?id=25398 g5 laser logitech mouse] [http://www.zip.dk/gaeste/bog.php3?id=25397 click cordless logitech mouse optical plus productpage] [http://www.zip.dk/gaeste/bog.php3?id=25396 batt insulation poured rolled upgrade] [http://www.zip.dk/gaeste/bog.php3?id=25395 fiberglass insulation roll] [http://www.zip.dk/gaeste/bog.php3?id=25394 insulation plastic window] [http://www.zip.dk/gaeste/bog.php3?id=25393 cold heat insulation material whol] [http://www.zip.dk/gaeste/bog.php3?id=25392 high insulation temperature] [http://www.zip.dk/gaeste/bog.php3?id=25391 blowing insulation machine] [http://www.zip.dk/gaeste/bog.php3?id=25390 guitar string tighteners] [http://www.zip.dk/gaeste/bog.php3?id=25389 how to change electric guitar string] [http://www.zip.dk/gaeste/bog.php3?id=25388 box comment generator myspace] [http://www.zip.dk/gaeste/bog.php3?id=25387 friend generator myspace] [http://www.zip.dk/gaeste/bog.php3?id=25386 custom friend generator myspace space] [http://www.zip.dk/gaeste/bog.php3?id=25385 myspace layout generator] [http://www.zip.dk/gaeste/bog.php3?id=25384 carolina college foundation north] [http://www.zip.dk/gaeste/bog.php3?id=25383 adoption dave foundation thomas] [http://www.zip.dk/gaeste/bog.php3?id=25382 foundation window workflow] [http://www.zip.dk/gaeste/bog.php3?id=25381 foundation hidradenitis suppurativa] [http://www.zip.dk/gaeste/bog.php3?id=25380 foundation indian southwest] [http://www.zip.dk/gaeste/bog.php3?id=25378 colorado foundation hines] [http://www.zip.dk/gaeste/bog.php3?id=25377 elk foundation mountain rocky] [http://www.zip.dk/gaeste/bog.php3?id=25376 dave foundation thomas] [http://www.zip.dk/gaeste/bog.php3?id=25375 concrete foundation raise repair] [http://www.zip.dk/gaeste/bog.php3?id=25374 360 box dvd hd x] [http://www.zip.dk/gaeste/bog.php3?id=25373 box collector dvd friend] [http://www.zip.dk/gaeste/bog.php3?id=25372 decorating home product] [http://www.zip.dk/gaeste/bog.php3?id=25371 cheap free shipping toy] [http://www.zip.dk/gaeste/bog.php3?id=25370 overseas carpentry jobs] [http://www.zip.dk/gaeste/bog.php3?id=25369 but left their card and failed to file out a report] [http://www.zip.dk/gaeste/bog.php3?id=25368 accessory card file] [http://www.zip.dk/gaeste/bog.php3?id=25367 180 buy hcl tablet tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25366 buy hcl.idilis.ro link tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25365 buy cheap.k25.net link tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25364 buy health.20mbweb.com link tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25363 buy link online.int.tc tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25362 buy cheap.be.tc link tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25361 buy link online.blog.com tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25360 buy link online.col.nu tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25359 buy link now.ql.st tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25358 buy href isuyen.blogdrive.com tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25357 buy search tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25356 buy link myblog.de tramadol] [http://www.zip.dk/gaeste/bog.php3?id=25355 buy gem high quality stone] [http://www.zip.dk/gaeste/bog.php3?id=25354 buy gem precious stone] [http://www.zip.dk/gaeste/bog.php3?id=25353 grossmans building supply store] [http://www.zip.dk/gaeste/bog.php3?id=25352 building material tacoma] [http://www.zip.dk/gaeste/bog.php3?id=25351 building kempsville material] [http://www.zip.dk/gaeste/bog.php3?id=25350 building chattanooga material] [http://www.zip.dk/gaeste/bog.php3?id=25349 building las material vegas] [http://www.zip.dk/gaeste/bog.php3?id=25348 building detroit material] [http://www.zip.dk/gaeste/bog.php3?id=25347 building material pasadena] [http://www.zip.dk/gaeste/bog.php3?id=25346 building greenville material sc] [http://www.zip.dk/gaeste/bog.php3?id=25345 building jackson material] [http://www.zip.dk/gaeste/bog.php3?id=25344 building fort material worth] [http://www.zip.dk/gaeste/bog.php3?id=25343 building columbia material] [http://www.zip.dk/gaeste/bog.php3?id=25342 building diego material san] [http://www.zip.dk/gaeste/bog.php3?id=25341 building distributor material] [http://www.zip.dk/gaeste/bog.php3?id=25340 building cincinnati material] [http://www.zip.dk/gaeste/bog.php3?id=25339 building chicago material] [http://www.zip.dk/gaeste/bog.php3?id=25338 building dallas material] [http://www.zip.dk/gaeste/bog.php3?id=25337 building houston material] [http://www.zip.dk/gaeste/bog.php3?id=25336 texas custom build home] [http://www.zip.dk/gaeste/bog.php3?id=25335 a frame home to build] [http://www.zip.dk/gaeste/bog.php3?id=25334 build equity in home] [http://www.zip.dk/gaeste/bog.php3?id=25333 accessory bathroom exposition] [http://www.zip.dk/gaeste/bog.php3?id=25332 airsoft gun gun stun taser] [http://www.zip.dk/gaeste/bog.php3?id=25331 airsoft gun marui tokyo] [http://www.zip.dk/gaeste/bog.php3?id=25330 airline boston ticket] [http://www.zip.dk/gaeste/bog.php3?id=25329 airline italy ticket] [http://www.zip.dk/gaeste/bog.php3?id=25328 airline phoenix southwest ticket] [http://www.zip.dk/gaeste/bog.php3?id=25327 airline miami ticket] [http://www.zip.dk/gaeste/bog.php3?id=25326 airline pittsburgh ticket] [http://www.zip.dk/gaeste/bog.php3?id=25325 airline cheap edinburgh ticket uk] [http://www.zip.dk/gaeste/bog.php3?id=25324 airline ticket travel velocity] [http://www.zip.dk/gaeste/bog.php3?id=25323 airline cheap minute ticket] [http://www.zip.dk/gaeste/bog.php3?id=25322 airline international ticket] [http://www.zip.dk/gaeste/bog.php3?id=25321 airline blue jet ticket] [http://www.zip.dk/gaeste/bog.php3?id=25320 airline cheap really ticket] [http://www.zip.dk/gaeste/bog.php3?id=25319 airline orbitz ticket] </div>
 

Revision as of 12:31, 13 February 2006

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, Cartman, Zoot, Guiness, Seawolf, 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, Tettnang, Heidelberg, Stentz)
  • 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:

  • -C"$NUME" se foloseste pentru a seta numele complet al persoanei fizice/entitatii administrative careia ii corespunde contul, de asemenea cunoscut ca atributul GECOS asociat contului in cauza
  • -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
  • -s $SHELL se foloseste pentru a specifica interpretorul de comenzi asociat contului in cauza. Pentru crearea unui cont de shell, acest parametru poate lipsi, sistemul completand automat cu /bin/bash.
  • -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.

Parole

Fiecare cont de utilizator are asociata o parola in sistem. Aceasta parola poate fi sau nu identica cu cea folosita pentru accesul la serviciile la care contul in cauza acorda acces.

Pentru modificarea parolelor asociate conturilor se va folosi exclusiv programul standard passwd.

Sintaxa lui passwd este:<sh/>passwd [-l|-u] $USERNAME unde parametrii si argumentele au semnificatia urmatoare:

  • $USERNAME este numele de cont ce se doreste modificat
  • -l se foloseste pentru a bloca parola unui cont -- in majoritatea cazurilor duce la interzicerea oricarei tranzactii de login prin contul in cauza
  • -u se foloseste pentru a debloca parola unui cont.

Modificare

De-a lungul existentei unui cont de utilizator, diverse componente ale sale pot fi modificate pentru a-l adapta la noile cerinte aparute in functionare.

Pentru modificarea componentelor unui cont de utilizator, se vor folosi exclusiv programele standard usermod, chfn si chsh.

Sintaxa lui usermod este<sh/>usermod [-C"$NUME"] [-d $HOME] [-s $SHELL] [-G$GRUP[,$GRUP[,...]]] [-l $USERNAME] $USERNAME unde parametrii si argumentele au semnificatia urmatoare:

  • -C, -d, -s au aceleasi semnificatii ca la useradd
  • -G ia ca argument o lista de grupuri suplimentare (in afara grupului primar) in care va fi inscris contul in cauza.

Atentie la lipsa spatiului dintre parametru si argumentul sau, precum si la lipsa spatiilor dintre subargumente si virgulele ce le separa.
Atentie la faptul ca lista de subargumente este interpretata absolut si nu cumulativ

  • -l se foloseste pentru a schimba numele de cont.

Sintaxa lui chfn si chsh este<sh/>ch(fn|sh) $USERNAMEunde $USERNAME este numele de cont.

Verificare

Pentru a afla informatii detaliate despre un cont de utilizator, se va folosi programul standard finger care are sintaxa<sh/>finger $NAME unde $NAME este fie numele de cont, fie unul dintre numele reale ale entitatii careia ii corespunde contul.
Pentru a afla din ce grupuri face parte un cont de utilizator, se va folosi programul standard id care are sintaxa<sh/>id $USERNAME unde $USERNAME este numele de cont interogat.

Politica

La Linux nu se plateste licenta per cont in sistem asa ca nu exista nici o scuza pentru a avea prea putine conturi. Se creeaza cate un cont pentru fiecare entitate care are nevoie de el; incluzand utilizatori umani, programe, subprograme, subsisteme sau contexte de operare.

Contul de utilizator este personal si netransmisibil -- orice incalcare a acestei reguli, sub orice pretext, atrage starea de compromis asupra sistemului in cauza cu toate consecintele ce decurg din aceasta.

Conturile de shell vor avea initial ca interpretor de comenzi pe /bin/bash. Conturile de login (si cele de owner), (exceptie facand doar cele de VPN prin PPP-over-SSH), vor avea pe /sbin/nologin ca si interpretor de comenzi. Permanenta, unitatea si consistenta acestei setari se va verifica periodic.

Avand in vedere ceea ce s-a spus mai sus, in al doilea paragraf, pentru acces la UID=0 se vor folosi exclusiv serviciile lui sudo. Parola contului root se seteaza de obicei aleator cu mkpasswd de catre client si ramane necunoscuta mie.

Configurarea cotei de stocare

Generalitati

Cota de stocare se configureaza atunci cand nodul va indeplini functia de server de date asociate utilizatorilor (e.g. server de posta electronica, server de fisiere etc.).

In Linux acest lucru este suportat (cel putin) pentru sistemele de fisiere ext2, ext3 si xfs si functionarea sa este asigurata prin trei manevre:

  • montarea sistemului de fisiere monitorizat pentru cote cu atributele necesare
  • generarea initiala a structurilor de date ce tin evidenta utilizarii cotelor de catre utilizatori
  • activarea monitorizarii cotelor in sistemul de fisiere in cauza.

In cadrul subsistemului se fac urmatoarele distinctii:

  • dupa obiectul contabilizat:
    • cota de inoduri (i.e. in majoritatea cazurilor, fisiere)
    • cota de blocuri (i.e. de spatiu de stocare)
  • dupa natura limitei:
    • cota de atentie
    • cota maxim admisibila
  • dupa natura unitatii de masura:
    • cota de stocare
    • perioada de gratie

Activarea suportului pentru cote

Asa cum s-a discutat anterior, se editeaza /etc/fstab si, pe linia(le) corespunzatoare partitiei(lor) pentru care se doreste activarea suportului pentru cote, se adauga in campul de optiuni directiva usrquota,grpquota dupa care se (re)monteaza partitia(ile).

Pasul urmator este actulizarea/crearea structurilor de date pentru evidenta cotelor prin folosirea lui quotacheck dupa cum urmeaza<sh/>quotacheck -v -g -u -m $DIRECTORunde $DIRECTOR este directorul in care este montat sistemul de fisiere considerat.

Ultimul pas este activarea monitorizarii cu comanda<sh/>quotaon $DIRECTORunde $DIRECTOR are aceeasi semantica.

Atentie: acesti pasi sunt necesari doar pentru o partitie nou trecuta in evidenta/monitorizare pentru cote -- in cazul partitiilor anterior configurate, sistemul se ocupa automat de metenanta si urmarirea lor prin intermediul scripturilor de pornire.

Setarea cotei de stocare

Acest lucru se realizeaza prin intermediul utilitaruluisetquota care prezinta doua interfete de utilizare cu urmatoarele doua functionalitati:

  • setarea directa a valorilor efective pentru cotele asociate unui obiect (i.e. cont de utilizator sau grup)
  • copierea valorilor pentru cote asociate unui obiect prototip pe unul sau mai multe obiecte tinta.

Prima metoda se foloseste de obicei pentru a defini initial obiecte prototip spre a fi folosite ulterior in cadrul celei de a doua metode.

Sintaxa generica a lui setquota este:<sh/>setquota (-u|-g) $OBJNAME [, ...] $BLOCKS $BLOCKH $INODES $INODEH $FILESYSTEM setquota (-u|-g) -p $PROTONAME $OBJNAME [, ...] $FILESYSTEM unde parametrii si argumentele au urmatoarea semnificatie:

  • -u selecteaza cont de utilizator ca tipul obiectelor cu care se opereaza
  • -g selecteaza grup ca tipul obiectelor cu care se opereaza
  • $OBJNAME este numele obiectului(lor) asupra carora va opera comanda
  • $BLOCKS este valoarea cotei de atentie pentru stocare, exprimata in blocuri logice (i.e. de cele mai multe ori egale cu un kilooctet)
  • $BLOCKH este valoarea cotei maxim admisibile pentru stocare, exprimata in blocuri logice
  • $INODES este valoarea cotei de atentie pentru inoduri
  • $INODEH este valoarea cotei maxim admisibile pentru inoduri
  • $FILESYSTEM este sistemul de fisiere pentru care modificam cotele, exprimat fie ca directorul in care este montat, fie ca numele fisierului special corespunzator dispozitivului hardware care il contine (e.g. /dev/hda1)
  • -p selecteaza modul de lucru cu prototip
  • $PROTONAME este numele obiectului ce va fi folosit ca prototip.

Setarea perioadei de gratie

Perioada de gratie este timpul scurs din momentul in care o cota de atentie este depasita si pana in momentul cand ea este tratata de sistem ca si cota maxim admisibila (in conditiile in care ea era inca depasita in momentul expirarii perioadei de gratie).

Perioada de gratie este unica per sistem de fisiere dar diferentiata pe tip de obiect careia i se aplica (cont de utilizator, grup, bloc, inod).

Pentru setarea ei, se foloste tot setquota cu urmatoarea sintaxa<sh/>setquota -t (-u|-g) $BLOCKG $INODEG $FILESYSTEMunde parametrii si argumentele au urmatoarea semnificatie:

  • -t selecteaza modul de lucru cu perioadele de gratie
  • -u, -g si $FILESYSTEM au aceeasi semnificatie ca mai sus
  • $BLOCKG este perioada de gratie pentru blocuri, exprimata in secunde
  • $INODEG este perioada de gratie pentru inoduri

Configurarea subsistemului de retea

Configurarea nodului

Orice masina UNIX are un nume (hostname) si Linux-ul nu face exceptie. Pentru evitarea oricaror probleme, este esential ca:

  • acest nume sa fie calificat (i.e. de forma <numenod>.<numedomeniu>[,...].<numetld>)
  • acest nume sa nu se schimbe pe toata durata vietii masinii.

Numele este configurat in fisierul /etc/sysconfig/network fiind valoarea variabilei HOSTNAME.

Orice nod TCP/IP are un default gateway. Acest gateway este configurat in acelasi fisier fiind valoarea variabilei GATEWAY.

Configurarea interfetelor de retea

Interfetele de retea se configureaza prin intermediul a doua fisiere:

  • /etc/(modules|modproble).conf care contine corespondenta intre numele logic si dispozitivul fizic asociat prin linii de forma
    alias eth$NR $DRIVER
    unde $NR este numarul interfetei iar $DRIVER este numele modulului ce o deserveste
  • /etc/sysconfig/network-scripts/ifcfg-eth$NR care contine informatia de configurare efectiva pentru interfata in cauza ca si valori ale variabilelor IPADDR, NETMASK si altele ($NR are aceeasi semnificatie ca mai sus).

Prin traditie, in cazul unui nod cu mai mult de o interfata de retea legata cu exteriorul (i.e. fara lo), se asigneaza indexul 0 interfetei ce leaga nodul de reteaua parinte (e.g. Internet-ul) si apoi, incepand cu 1, se asigneaza cate un numar, in ordinea descrescatoare a importantei, fiecarei interfete ramase.

Atentie: interfetele de tip tunel beneficiaza de alta schema de numerotare, de cele mai multe ori dinamica.

Activarea subsistemului de rutare

In mod implicit, sistemul de operare vine preconfigurat pentru comportament de nod terminal (frunza), adica cu subsistemul de rutare dezactivat.

Acesta se activeaza prin manipularea unui control de sistem (sysctl) si anumenet.ipv4.ip_forwardingce trebuie trecut pe "1".

Activarea schimbarilor

Dupa ce au fost aduse modificari configurarii subsistemului de retea, este necesara propagarea acestor schimbari prin comanda<sh/>service network reload.

Configurarea subsistemului de nomenclatura

Teorie

Orice nod TCP/IP trebuie sa fie capabil a folosi un serviciu de nomenclatura (DNS) pentru a rezolva adrese simbolice la echivalentul lor numeric si vice-versa.

Acest mecanism imbraca, prin traditie, doua forme si anume cautarea intr-o baza de date locala nodului sau folosirea unui serviciu de nomenclatura. Pe Linux, prin traditie, baza de date locala are prioritate (i.e. este consultata prima) in fata oricarui alt mecanism extern.

Mai mult, in majoritatea cazurilor, aceste doua mecanisme sunt combinate printr-un API care ofera aplicatiilor o interfata unitara catre orice serviciu de nomenclatura activ pe nodul in cauza.

Editarea fisierului cu nume de noduri

Acest fisier se regaseste pe Linux ca /etc/hosts si are formatul standard (i.e. cate o intregistrare pe linie cu formatul
$IP $NUME [$ALIAS [,...]]
unde $IP este adresa numerica, $NUME este adresa simbolica iar $ALIAS pot fi zero sau mai multe sinonime simbolice pentru $NUME). Dupa modificarea acestui fisier, nu este necesara nici o alta manevra suplimentara, sistemul detectand automat schimbarea si aplicand modificarile.

Folosirea unui serviciu de nomenclatura extern

Aceasta functionalitate se controleaza prin intermediul fisierului /etc/resolv.conf care contine perechi de forma
nameserver $IP
ce reprezinta adresele numerice ale server(elor) de nomenclatura ce se intentioneaza a fi folosite.

Folosirea unui serviciu de nomenclatura local

Aceasta functionalitate se activeaza prin patru manevre:

  • adaugarea pe prima linie a lui /etc/resolv.conf a liniei
    nameserver 127.0.0.1
  • activarea server-ului BIND (serviciul named)
  • configurarea corespunzatoare a lui BIND (in fisierul /etc/named.conf)
  • pornirea serviciului named

Configurarea filtrului de trafic

Generalitati

Filtrul de pachete (fie el clasic sau inteligent) este realizat cu infrastructura standard prezenta in sistem si anume ipchains sau iptables, de la caz la caz.

Configurarea (i.e. regulile) pentru nod sunt depozitate in fisierul /etc/sysconfig/ip(chains|tables) unde au fost salvate folosind utilitarul ip(chains|tables)-save si de unde sunt preluate cu utilitarul ip(chains|tables)-restore.

Acest mecanism a fost automatizat prin procedee specifice distributiei, respectiv unul din serviciile ipchains sau iptables porneste odata cu masina si reinstaureaza regulile salvate.

Formatul fisierului cu reguli nu face obiectul prezentului document, dar dupa orice modificari ale acestuia este necesara propagarea lor prin rularea comenzii<sh/>service ip(chains|tables) start.

Intersectii cu alte domenii

In cazul in care filtrul de pachete este folosit pentru a coordona mecanisme conexe de control al traficului (e.g. policy routing, traffic control etc.), regulile de coordonare vor fi tinute intr-un fisier separat si vor fi incarcate in tabela mangle din iptables.

In acest caz, vom avea urmatoarea situatie in /etc/sysconfig:

  • iptables.main va contine filtrul propriu-zis, reprezentand politica de filtrare pentru nodul respectiv
  • iptables.extra va contine regulile pentru controlul mecanismelor auxiliare

In sistem va fi configurat (prin cron) un job care sa concateneze periodic acele doua fisiere in cel standard (i.e. /etc/sysconfig/iptables). Infrastructura de acces se pastreaza cu mentiunea ca orice modificare va trebui acum facuta in /etc/sysconfig/iptables.main.

Optimizarea subsistemului de NAT

Subsistemul de NAT este cel care se ocupa cu rescrierea automata a adreselor in cadrul rutarii (e.g. atunci cand avem statii cu adrese din plajele private in spatele nodului in cauza). Pentru a asigura coerenta acestei operatiuni, subsistemul amintit creeaza si intretine niste tabele de evidenta a tuturor conexiunilor care trec prin nodul in cauza. Avand in vedere ca aceste tabele consuma cu volumul lor din memoria RAM si cu intretinerea din timpul de procesor, se impune dimensionarea atenta a lor in procesul de configurare.

Aceasta se realizeaza, in principal, prin manipularea a doua controale de sistem, si anumenet.ipv4.netfilter.ip_conntrack_max net.ipv4.netfilter.ip_conntrack_generic_timeout. Valorile recomandate sunt:

  • de patru ori numarul de noduri active din spate, rotunjit prin adaos la cea mai apropiata putere a lui 2 -- pentru ip_conntrack_max
  • intre unul si doua minute (valoare: 60-120) pentru retelele aglomerate formate in principal din clienti de banda larga (i.e. despre care se presupune ca nu vor avea conexiuni care stau nefolosite mai mult de cateva secunde) si intre doua si cinci minute pentru retelele rarefiate formate in principal din clienti de banda ingusta sau mobili/portabili (i.e. despre care se presupune ca vor avea conexiuni care pot sta nefolosite mai mult de cateva secunde) pentru ip_conntrack_generic_timeout.

Politica

In lipsa unei cerinte exprese a clientului, politica filtrului de pachete este veto inter-implicit, extra-explicit, atat pe lantul de intrare (INPUT) cat si pe cel de retransmisie (FORWARD). Aceasta inseamna ca:

  • politica implicita pe lanturile in cauza va fi de ignorare (DROP) a traficului (veto implicit)
  • ultima regula de pe lanturile in cauza va fi fara argument (i.e. capteaza orice trafic) si cu tinta de rejectie (REJECT) a traficului (veto explicit). Natura rejectiei va fi de tip "port destinatie intangibil" pentru lantul de intrare, respectiv "retea destinatie interzisa/intangibila" pentru cel de retransmisie.

Politica de veto folosita este evitata folosind reguli explicite cu tinta de acceptare (ACCEPT) a traficului pentru urmatoarele categorii de obiecte:

  • pe lantul de intrare:
    • interfata de bucla (i.e. lo)
    • interfata(ele) interne (i.e. cele conectate la interiorul ariei deservite de nodul in cauza)
    • interfetele de VPN (de multe ori specificate in grup, e.g. gre+)
    • protocolul ICMP prin interfata externa
    • protocoalele GRE si IPIP prin interfata externa
    • porturile (si eventual adresele sursa) pe care se permite accesul la serviciile oferite de nod
  • pe lantul de retransmisie:
    • protocolul ICMP
    • statiile carora li s-a permis accesul prin rutare directa
    • eventuale alte protocoale/servicii la care se permite accesul nerestrictionat