Ресурс sshd_config
Используйте ресурс аудита Chef InSpec, чтобы проверить данные конфигурации демона OpenSSH, расположенного по адресу /etc/ssh/sshd_config на платформах Linux и Unix. sshd — демон OpenSSH — прослушивает отдельные порты, запускает демон для каждого входящего подключения, а затем обрабатывает шифрование, аутентификацию, обмен ключами, выполнение команд и обмен данными.
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс стал доступен в версии InSpec v1.0.0.
Синтаксис
Блок ресурса sshd_config объявляет данные конфигурации демона OpenSSH, которые необходимо проверить:
describe sshd_config('path') do
its('name') { should include('foo') }
end
где
-
name— это параметр конфигурации вsshd_config -
('path')— это значение параметра/path/to/sshd_configпо умолчанию -
{ should include('foo') }проверяет значениеname, прочитанное изsshd_config, по сравнению со значением, объявленным в тесте
Примеры
В следующих примерах показано, как использовать этот ресурс аудита Chef InSpec.
Проверка переменных, которые могут быть отправлены на сервер
describe sshd_config do
its('AcceptEnv') { should include('CI_ENABLE_COVERAGE') }
end
Проверка на IPv6-только адреса
describe sshd_config do
its('AddressFamily') { should cmp 'inet6' }
end
Проверка параметра Protocol
describe sshd_config do
its('Protocol') { should cmp 2 }
end
Проверка на утверждённые, сильные шифры
describe sshd_config do
its('Ciphers') { should cmp('chacha20-poly1305@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr') }
end
Проверка протоколов SSH
describe sshd_config do
its('Port') { should cmp 22 }
its('UsePAM') { should eq 'yes' }
its('ListenAddress') { should eq nil }
its('HostKey') do
should eq [
'/etc/ssh/ssh_host_rsa_key',
'/etc/ssh/ssh_host_dsa_key',
'/etc/ssh/ssh_host_ecdsa_key',
]
end
end
Сопоставители
Полный список доступных сопоставителей можно найти на нашей странице сопоставителей.
name
Сопоставитель name проверяет значение name, прочитанное из sshd_config по сравнению со значением, объявленным в тесте:
its('name') { should cmp 'foo' }
или:
its('name') {should include('bar') }
© 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/sshd_config/