Администрирование веб-сервера.

Сценарии VisualBasic управления доступом.

  1. Войдите в локальный сервер, используя параметры Вашей учетной записи.
  2. Откройте командную строку и определите с помощью скриптов список веб-узлов, созданных на сервере. Каков синтаксис команды? Какие параметры веб-узла команда позволяет определить? Каковы параметры веб-узла, созданного Вами?
  3. Используя MS Visual Studio, создайте сценарий на языке Visual Basic ListOfWebSites.VBS. Внесите следующие команды (внесите изменения, используя имя Вашего компьютера):

' VBScript source code
' отображает список веб-сайтов на сервере

Option Explicit
dim strComputer ' имя компьютера
dim objIIS, objSite
dim strPath

 

strComputer="test.tc.rosnou.ru"
strPath = "W3SVC"

set objIIS = GetObject("IIS://" & strComputer & "/" & strPath)

for each objSite in objIIS
if(objSite.Class = "IIsWebServer") then
WScript.Echo objSite.ServerComment & " (" & objSite.Name & ")"
end if
next

  1. Найдите в списке веб-узелов узел, созданный Вами. Какой идентификатор имеет данный узел?
  2. Используя MS Visual Studio, создайте сценарий на языке Visual Basic CreateNewSite.VBS. Внесите следующие команды (внесите изменения, используя имя Вашего компьютера, установите порт 90##, в качестве идентификатора сайта укажите 1##, где ## - ваш номер в списке группы, установите другой домашний каталог):

VBScript source code
' Создание нового веб-сайта

Option Explicit
dim strComputer ' имя компьютера
dim strSiteName ' описание веб-сайта
dim strRootDir  ' корневой каталог веб-сайта
dim objIIS, objSite
dim newIIS
dim strPath
dim objServerBindings
dim strNewSiteID

' необязательные параметры сайта
dim strPort     ' номер порта
dim strIP       ' ip-адрес
dim strHostHeader ' заголовок сайта
dim strSiteID   ' идентификатор сайта

strPort = 90##

strComputer = "admin-is.tc.rosnou.ru"
strSiteName = "myNewSite"
strRootDir = "d:\dima\www"
strPath = "W3SVC"
strSiteID = 1##

set objIIS = GetObject("IIS://" & strComputer & "/" & strPath)
objServerBindings = Array(0)
objServerBindings(0) = strIP & ":" & strPort & ":" & strHostHeader

strNewSiteID = objIIS.CreateNewSite(strSiteName,objServerBindings,strRootDir,strSiteID)

Wscript.Echo "web сайт " & strSiteName & " на " & strComputer & " успешно запущен" & " с ID " & strNewSiteID

  1. Найдите новый веб-сайт в списке. Каковы его параметры?
  2. Для запуска веб-узлов создайте следующий сценарий StartWeb.VBS команды (внесите изменения, используя имя Вашего компьютера):

' VBScript source code
' Запуск веб-сайтов

Option Explicit
dim strComputer
dim strPath
dim objIIS, objSite

strComputer="admin-is.tc.rosnou.ru"
strPath = "W3SVC"

set objIIS = GetObject("IIS://" & strComputer & "/" & strPath)

for each objSite in objIIS
if(objSite.Class = "IIsWebServer") then
objSite.Stop
WScript.Echo objSite.ServerComment & " (" & objSite.Name & ")" & " stopped"
end if
next

 

  1. В Вашем веб-узле с помощью скриптов, создайте виртуальный каталог с собственным именем (используйте латинское написание). Для создания виртуального каталога используйте сценарий CreateVirDir.VBS. (измените в тексте на Ваш компьютер, в качестве веб-узла используйте созданный сайт, в качестве места размещения укажите папку www, предварительно созданную в Вашем каталоге):

' создание виртуальных каталогов

Option Explicit
dim strComputer ' имя компьютера
dim strVirDirName   ' имя виртуального каталога VirtualDirectory
dim objIIS, objWebSite, objVdir
dim strVirDirPath ' месторасположение виртуального каталога d:\dima\virdir
dim strPath, strSiteID

strComputer = "admin-is.tc.rosnou.ru"
strVirDirName = "VirtualDirectory"
strVirDirPath = "d:\dima\virdir"
strPath = "W3SVC"
strSiteID = 1##

set objIIS = GetObject("IIS://" & strComputer & "/" & strPath & "/" & strSiteID)

set objWebSite = objIIS.GetObject("IISwebVirtualDir","Root")
set objVdir = objWebSite.Create("IISwebVirtualDir", strVirDirName)
objVdir.AccessRead = True
objVdir.Path = strVirDirPath
objVdir.SetInfo
Wscript.Echo "виртуальный каталог " & objVdir.Name & " successfully created "

  1. Просмотрите, какие файлы заданы в качестве станиц по умолчанию для веб-узла. Создайте файл страницы, загружаемой по умолчанию при обращении к Вашему виртуальному каталогу. Используя Visual Studio, внесите изменения в данный файл:
    1. Включите в файл информацию в строку заголовка окна браузера – Домашняя страница Фамилия Имя.
    2. В текст внесите Добро пожаловать на домашнюю страницу студента группы №№№№ Фамилия Имя.
    3. Задайте фон для страницы, внесите иную интересную Вам информацию.
  2. Создайте сценарий ControlPermission.VBS для задания прав доступа к веб-узлу:

 

' VBScript source code
' код настройки разрешений веб-узла

Option Explicit
dim strComputer ' имя компьютера
dim objWebSite
dim strPath, strSiteID ' имя службы, идентификатор узла

strComputer = "admin-is.tc.rosnou.ru"
strPath = "W3SVC"
strSiteID = 1##

 

set objWebSite = GetObject("IIS://" & strComputer & "/" & strPath & "/" & strSiteID)

objWebSite.AccessRead = True
objWebSite.AccessWrite = True
objWebSite.AccessSource = False
objWebSite.AccessScript = False
objWebSite.AccessExecute = False

objWebSite.SetInfo

Wscript.Echo "разрешения для веб-сайта " & objWebSite.ServerComment & " установлены "

 

  1. Просмотрите какие разрешения были установлены, после выполнения сценария.
  2. Создайте сценарий ControlAccess.VBS для задания ограничений на доступ к веб-узлу по сети (для указания ip-адреса установите ip-адреса соседнего компьютера и по завершению выполнения проверьте результаты):

' VBScript source code  ограничивает доступ к веб-сайту
Option Explicit
dim strComputer ' имя компьютера
dim objWebSite
dim strPath, strSiteID ' имя службы, идентификатор узла
dim objIPRestrict
dim arrDeny, i

strComputer = "admin-is.tc.rosnou.ru"
strPath = "W3SVC"
strSiteID = 1##

set objWebSite = GetObject("IIS://" & strComputer & "/" & strPath & "/" & strSiteID)
set objIPRestrict = objWebSite.Get("IPSecurity")
objIPRestrict.IPDeny = Array("192.168.0.105")
objIPrestrict.DomainDeny = Array("tc.rosnou.ru")
objWebSite.IPSecurity = objIPRestrict
objWebSite.SetInfo

WScript.Echo "установлены ограничения на подключение к веб-сайту" & objWebSite.ServerComment
WScript.Echo ""
WScript.Echo "IP Deny:"

arrDeny = objWebSite.Get("IPSecurity").IPDeny
for i=0 to Ubound(arrDeny)
WScript.Echo arrDeny(i)
next

arrDeny = objWebSite.Get("IPSecurity").DomainDeny

WScript.Echo ""
WScript.Echo "Domain Deny:"

arrDeny = objWebSite.Get("IPSecurity").DomainDeny
for i=0 to Ubound(arrDeny)
WScript.Echo arrDeny(i)
next

  1. Просмотрите с помощью Диспетчера Служб IIS какие свойства в итоге были установлены для Вашего веб-сайта.
  2. Покажите результаты выполнения работы.