Configurare server Web IIS – delegarea administrării și administrare la distanță

Știu că am promis să scriu despre schimbările arhitecturale din Internet Information Services 7.0. Și mai spuneam la un moment dat că mare parte din schimbările în ultima versiune IIS îi vizează exact pe furnizorii de servicii de hosting, cei care găzduiesc multiple site-uri de Web pe același server. Ei bine, delegarea administrării chiar că ajută în scenariul ăsta.

În IIS 6.0 numai administratorul serverului de Web putea modifica setările de configurare, care erau stocate în Metabase. La IIS 7.0 configurarea este distribuită și cascadată. Ceea ce înseamnă că dezvoltatorul sau administratorul unui site de Web (nu al serverului) poate consulta și/sau suprascrie unele setări, după nevoi, acolo unde i se permite. Da’ hai să vedem cum se face, cum e posibil.

Consola de administrare

Delegarea de administrare se poate face editând direct fișierul XML applicationHost.config din C:\Windows\System32\inetsrv\config\ (cred că m-aș uita după atribute de genul overrideMode). Dar parcă e mult mai elegant să folosesc consola de administrare IIS pentru asta…

Atunci când selectez nodul server, am o întreagă secțiune de setări pentru administrare, printre care și Feature Delegation. Practic, aici administratorul serverului de Web decide ce setări de configurare vor putea fi citite și/sau modificate de către non-administratori. Unele din setări pot fi chiar ascunse – non-administratorii nu le pot vedea.

Feature Delegation aplicat

În scenariul de hosting, non-aministratorii vor fi probabil deținătorii acelor site-uri pe care le găzduim. Ca administrator de server web, probabil ca vrei să-i lași pe clienți să se joace cu configurările site-urilor lor. În felul ăsta clienții au mai multă libertate și te pot degreva de unele sarcini triviale.

Există trei stări posibile pentru o setare de configurare. Din punct de vedere al unui non-administrator, o setare poate fi

  1. ascunsă (not delegated): non-administratorii nici măcar nu pot vedea setarea
  2. consultabilă (read only): acolo unde non-aministratorii ar avea nevoie să vadă setările la nivel de server; de exemplu, setările SSL sau tipurile de autentificare suportate
  3. delegată cu totul (read/write): non-administratorii pot modifica o setare la nivelul site-ului lor; de exemplu, pot modifica Default Document.

Delegarea poate fi făcută numai la nivel de site, către cei care au site-uri găzduite pe serverul de web. Setările la nivel de server, remote sau local, pot fi realizate numai de către administratorul serverului.

Remote Administration

Acum, ca administrator de server, degeaba am spus ce setări se pot schimba dacă nu specific cine și unde are drepturi. Și să deschid portița pentru administrare la distanță.

Utilizatorii către care deleg posibilitatea modificării de setări se vor conecta pentru asta fie folosind conturi de Windows, fie conturi IIS. În primul caz, va trebui să creez conturi Windows locale (sau de domeniu) pentru fiecare. În al doilea, va trebui să creez conturi în IIS Manager Users. Conturile din IIS Manager Users sunt stocate chiar de IIS, probabil în fișierul administration.config aflat la C:\Windows\System32\inetsrv\config\.

Buuuun. Acum că am creat conturile pentru cei care-și țin site-uri pe serverul meu, înseamnă că dânșii pot modifica setări de configurare. Pentru site-urile și aplicațiile lor, nu pentru tot serverul.

În secțiunea de administrare, la IIS Manager Permissions voi face maparea de drepturi de configurare. Ce utilizatori pentru ce site-uri pot modifica setări.

Ultimul pas va fi activarea administrării la distanță. În Management Service practic configurez un serviciu care poate fi apelat de la distanță pe portul (implicit) 8172. Nu uitați să porniți acest serviciu dacă vreți administrare de la distanță a serverului de Web. Tot în Management Service spun dacă delegații mei se pot conecta numai cu conturi Windows sau și cu conturi IIS.

Conectarea la distanță cu serviciul de administrare de pe serverul Web IIS se face cu, ați ghicit, consola de management a IIS. Consola permite administrarea serverului local dar oferă și opțiunea de conectare la un server remote. Conexiunea se face prin SSL pe portul 8172 (implicit, dar poate fi schimbat).

OBSERVAȚIE: Consola de management IIS din Windows Vista trebuie actualizată cu una pe care o descărcați de pe site-ul iis.net, mai exact de aici. Versiunea asta actualizată a consolei de administrare este (ca) cea inclusă în Windows Server 2008; merge și pe Windows XP.

O chestie cool: tot de la distanță se pot face și operații de management al bazelor de date ale unui site, și tot din consola de management a IIS. Se instalează un modul suplimentar care la această oră este încă în stadiul de beta, dar vine tare din urmă. Adăugarea de noi module în IIS 7.0 (de exemplu, serviciul FTP reconstruit), adaugă facilități noi și în consola de administrare a IIS.

O mie de vorbe nu fac cât o demonstrație. Pe site-ul iis.net, am găsit și ceva screencast-uri care vorbesc despre delegarea administrării și administrarea la distanță. S-ar putea să lămurească subiectul mult mai bine decât am făcut-o eu aici.

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s