Ресурс iis_site
Используйте ресурс аудита Chef InSpec, чтобы проверить состояние IIS на сервере Windows Server 2012 (и более поздних версиях).
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс стал доступен в версии InSpec v1.0.0.
Синтаксис
Блок ресурса iis_site объявляет детали о заданном сайте:
describe iis_site('site_name') do
it { should exist }
it { should be_running }
it { should have_app_pool('app_pool_name') }
it { should have_binding('binding_details') }
it { should have_path('path_to_site') }
end
где
-
'site_name'— имя сайта, например'Default Web Site' -
('app_pool_name')— имя пула приложений, в котором выполняется корневое приложение сайта, например'DefaultAppPool' -
('binding_details')— привязка к сайту, например'net.pipe *'. Сайт может иметь несколько привязок; поэтому используйтеhave_bindingдля каждого связывания сайта, которое нужно проверить -
('path_to_site')— путь к сайту, например'C:\\inetpub\\wwwroot'
Например:
describe iis_site('Default Web Site') do
it { should exist }
it { should be_running }
it { should have_app_pool('DefaultAppPool') }
it { should have_binding('https :443:www.contoso.com sslFlags=0') }
it { should have_binding('net.pipe *') }
it { should have_path('C:\\inetpub\\wwwroot') }
end
Свойства
app_pool, bindings, path, state
Примеры свойств
В следующих примерах показано, как использовать этот ресурс аудита Chef InSpec.
Проверка стандартного сайта IIS
describe iis_site('Default Web Site') do
it { should exist }
it { should be_running }
it { should have_app_pool('DefaultAppPool') }
it { should have_binding('http *:80:') }
it { should have_path('%SystemDrive%\\inetpub\\wwwroot') }
end
Проверка, запущен ли сервис IIS
describe service('W3SVC') do
it { should be_installed }
it { should be_running }
end
Матчеры
Полный список доступных матчеров можно найти на странице матчеров.
be_running
Матчер be_running проверяет, запущен ли сайт:
it { should be_running }
exist
Матчер exist проверяет, существует ли сайт:
it { should exist }
have_app_pool
Матчер have_app_pool проверяет, существует ли указанный пул приложений для сайта:
it { should have_app_pool('DefaultAppPool') }
Например, проверка того, наследует ли пул приложений сайта настройки родительского пула приложений:
it { should have_app_pool('/') }
have_binding
Матчер have_binding проверяет, существует ли указанная привязка к сайту:
it { should have_binding('http :80:*') }
или:
it { should have_binding('net.pipe *') }
Сайт может иметь несколько привязок; используйте матчер have_binding для каждой уникальной привязки сайта, которую нужно проверить.
Атрибуты привязки
Матчер have_binding также может проверять атрибуты, определённые для привязки к сайту. Например, атрибут sslFlags определяет, включен ли SSL, и (при включении) какой уровень SSL применяется к сайту.
Проверка сайта с выключенным SSL:
it { should have_binding('https :443:www.contoso.com sslFlags=0') }
Проверка сайта с включённым SSL:
it { should have_binding('https :443:www.contoso.com sslFlags=Ssl') }
Проверка сайта с включённой аутентификацией по отображению сертификата:
it { should have_binding('https :443:www.contoso.com sslFlags=SslMapCert') }
Проверка сайта с включенным 128-битным SSL:
it { should have_binding('https :443:www.contoso.com sslFlags=Ssl128') }
have_path
Матчер have_path проверяет, определён ли указанный путь для сайта:
it { should have_path('C:\\inetpub\\wwwroot') }
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/iis_site/