http://wm-monitoring.ru/ ')) {alert('Спасибо за то что установили нашу кнопку! =)');} else {alert('Очень жаль! =(');}"> http://wm-monitoring.ru/

Как создать самоподписанный сертификат в Windows

Опубликовано: 25.06.2018


Большинству администраторов Windows, знакомых с темой PKI, известна утилита MakeCert. exe , с помощью которой можно создать самоподписанный сертификат. Эта утилита включена в состав Microsoft .NET Framework SDK и Microsoft Windows SDK. В Windows 8 и Windows Server 2012 появилась возможность создания самоподписанного сертификата средствами PowerShell 3.0 и выше без использования специальных утилит.

Для создания сапоподписанного сертификата в PowerShell предлагается использовать командлет New- SelfSignedCertificate , входящий в состав модуля PoSh с именем PKI (Public Key Infrastructure):

Список всех командлетов в модуле PKI

Get-Command -Module PKI

Примечание . В отличии от утилиты MakeCert, командлет New-SelfSifgnedCertificate позволяет выпустить только SSL сертификат, таким сертификатом не получится подписать код драйвераили приложения.

Самоподписанный сертификат можно использовать в тестовых целях или для обеспечения сертификатами внутренних интранет служб (IIS, Exchange, Web Application Proxy , LDAPS , ADRMS , DirectAccessи т.п.), в тех случая когда по какой-то причине разворачивание инфраструктуры PKI/CA невозможно.

Для создания сертификата нужно указать значения DnsName (DNS имя сервера, имя может быть произвольным и отличаться от имени localhost) и CertStoreLocation (раздел локального хранилища сертификатов, в который будет помещен сгенерированный сертификат). Командлет можно использовать для создания самоподписанного сертификата в Windows 10 (в нашем примере), Windows 8/8.1 и Windows Server 2012/2012 R2.



Самоподписанный SSL сертификат: преимущества и недостатки


Все системные администраторы время от времени стоят перед выбором: купить SSL сертификат от Comodo, Thawte, Symantec и т.д. или же создать его самому? Зачем покупать вообще, если можно сгенерировать самоподписанный SSL сертификат? В этой статье мы постараемся разобраться, в каких случаях можно обойтись самоподписанным, а когда все же лучше приобрести доверенный SSL сертификат .

Что такое самоподписанный SSL сертификат?

В криптографии под самоподписанным SSL сертификатом понимают сертификат открытого ключа, изданный и подписанный тем же лицом, которое он идентифицирует. Проще говоря, если Вы сами для своего домена или IP-адреса создали SSL сертификат он будет называться самоподписанным. Также существуют другие названия: «самоизданный» или «самозаверенный», что является одним и тем же.

SSL сертификаты необходимы для обеспечения безопасной передачи информации в сети (как в Интернете, так и в интранете). Самоподписанные SSL сертификаты лучше всего подходят для внутреннего пользования в силу некоторых неудобств, которые мы опишем ниже, и зачастую применяются частными лицами или же в малых фирмах, сотрудники которых осведомлены о его наличии и необходимости добавлять его в списки браузера.

Преимущества самоподписанных SSL сертификатов:

Возможность самостоятельно создавать неограниченное количество SSL сертификатов без обращения к поставщикам услуг по их оформлению. Отсутствие денежных затрат, если Вы создаете SSL сертификат сами, а не обращаетесь за помощью к «неофициальному производителю» за символическую плату. Во втором случае лучше вложить символические 590 рублей в официально заверенный PositiveSSL от Comodo . Быстрота в создании – только в том случае, если Вы хорошо знакомы с процессом создания SSL сертификатов и необходимыми утилитами. Иначе их изучение может занять больше сил и времени, нежели оформление заказа у официального поставщика.

Аудит доступа к файлам и папкам в Windows Server 2008 R2


Для ведения аудита доступа к файлам и папкам в Windows Server 2008 R2, необходимо включить функцию аудита, а также указать папки и файлы, доступ к которым необходимо фиксировать. После настройки аудита, в журнале сервера будет содержаться информация о доступе и других событиях на выбранные файлы и папки. Стоит заметить, что аудит доступа к файлам и папкам может вестись только на томах с файловой системой NTFS.

Включаем аудит на объекты файловой системы в Windows Server 2008 R2

Аудит доступа на файлы и папки включается и отключается при помощи групповых политик: доменный политик для домена Active Directory либо локальных политик безопасности для отдельно стоящих серверов. Чтобы включить аудит на отдельном сервере, необходимо открыть консоль управления локальный политик Start -> All Programs -> Administrative Tools -> Local Security Policy. В консоли локальной политики нужно развернуть дерево локальный политик (Local Policies) и выбрать элемент Audit Policy.


В правой панели нужно выбрать элемент Audit Object Access и в появившемся окне указать какие типы событий доступа к файлам и папкам нужно фиксировать (успешный/ неудачный доступ):


После выбора необходимой настройки нужно нажать OK.

Выбор файлов и папок, доступ к которым будет фиксироваться

После того, как активирован аудит доступа к файлам и папкам, необходимо выбрать конкретные объекты файловой системы, аудит доступа к которым будет вестись. Так же как и разрешения NTFS, настройки аудита по-умолчанию наследуются на все дочерние объекты (если не настроено иначе). Точно так же, как при назначении прав доступа на файлы и папки, наследование настроек аудита может быть включено как для всех, так и только  для выбранных объектов.



Активируем LDAP over SSL (LDAPS) в Windows Server 2012 R2


По-умолчанию в Active Directory трафик по протоколу LDAP между контроллерами домена и клиентами не шифруется, т.е. данные по сети передаются в открытом виде. Потенциально это означает, что злоумышленник с помощью снифера пакетов может прочитать эти данные. Для стандартной среды Windows среды это в общем-то не критично, но ограничивает возможности разработчиков сторонних приложений, которые  используют  LDAP.

Так, например, операция смены пароля должна обязательно осуществляться через безопасный канал (например Kerberos или SSL/TLS). Это означает, что например, с помощью функции-php, обеспечивающей работу с AD по протоколу LDAP  изменить пароль пользователя в домене не удастся.

Защитить данные, передаваемых по протоколу LDAP между клиентом и контроллером домена можно с помощью SSL версии протокола LDAP – LDAPS , который работает по порту 636 (LDAP «живет» на порту 389).  Для этого на контроллере домена необходимо установить специальный SSL сертификат. Сертификат может быть как сторонним, выданным 3-ей стороной (например,  Verisign), самоподписанным или выданным корпоративным центром сертификации.

В этой статье мы покажем, как с помощью установки сертификата задействовать   LDAPS (LDAP over Secure Sockets Layer) на котроллере домена под управление Windows Server 2012 R2. При наличии требуемого сертификата служба LDAP на контроллере домена может устанавливать SSL соединения для передачи трафика LDAP и трафика сервера глобального каталога (GC).

Отметим, что LDAPS преимущественно используется сторонними приложениями (имеются в виде не-Microsoft клиенты) в целях защиты передаваемых по сети данных (обеспечить невозможности перехвата имена и паролей пользователей и других приватных данных).



Как создать и установить самоподписанный сертификат на Apache


SSL является неотъемлемой частью создания защищенного сайта на Apache.  SSL сертификатыпозволяют шифровать весь трафик как к, так и от вашего Apache веб-сайт, чтобы предотвратить с другой стороны просмотр всего трафика. Он использует криптографию с открытым ключом для установления защищенного соединения. Это означает, что все зашифрованные с помощью открытого ключа (сертификат SSL) могут быть расшифрованы только при помощи закрытого ключа (хранится только на сервере), и наоборот.

Когда можно использовать самоподписанный сертификат

Вы никогда не должны использовать самоподписанный сертификат для сайта электронной торговли, или любого сайта, который  служит для передачи ценных личных данных,  таких как кредитные карты, номера социального страхования и т.д.

Сертификат SSL необходим не только для распространения открытых ключей: если он будет подписан доверенной третьей стороны, он проверяет подлинность сервера, так что клиенты знают, что они не отдают информацию (зашифрованную или нет), не тому человеку. Так что же такое самоподписанный сертификат? Это сертификат, который подписан самостоятельно, а не доверенной третьей стороной. Разве это не плохо? В большинстве случаев, да. Вы почти никогда не захотите использовать самоподписанный сертификат на публичном Apache-сервере, который требует соединения анонимных посетителей с вашим сайтом, потому что они могут легко стать жертвой атаки «человек в середине». Однако, самоподписанные сертификаты имеют свое место:

Самоподписанные сертификаты могут быть использованы на сервере разработки Apache. Нету необходимости тратить дополнительные деньги на покупку доверенного сертификата, когда вы только разрабатываете и тестируете приложения. Самоподписанные сертификаты могут быть использованы в интрасети. Когда клиенты должны только пройти через локальную интрасеть, чтобы добраться до сервера, практически нету шансов на атаку «человек в середине». Самоподписанные сертификаты могут быть использованы на личных сайтах с малым количеством посетителей. Если у вас есть небольшой персональный сайт, через который проходит нечувствительная информация, существует очень мало стимулов для кого-то атаковать соединение.

Просто имейте в виду, что посетители будут видеть предупреждение в своих браузерах (как на картинке ниже) при подключении к сайту на Apache, который использует самоподписанный сертификат, пока он не будет постоянно храниться в хранилище сертификатов. Вы никогда не должны использовать самоподписанный сертификат для подписания сайта электронной коммерции, или любой сайт, который передает ценные личные данные, такие как данные кредитных карт, номера социального страхования и т.д. Просто потратьте несколько десятков долларов на проверенный дешевый SSL сертификат или бесплатный SSL сертификат.



Сертификаты


Одной из наиболее распространенных форм криптографии сегодня является криптография на открытых ключах. Криптография на открытых ключах использует открытый (public) и закрытый (secret) ключи. Система выполняет шифрование с использованием открытого ключа. Расшифрована такая информация может быть только с использованием закрытого ключа.

Обычное использование криптографии на открытых ключах - шифрование трафика приложений с использованием соединений по протоколам SSL и TLS. Например, настройка Apache для предоставления HTTPS, протокола HTTP поверх SSL . Это позволяет применить шифрование трафика с протоколом, который сам по себе шифрование не поддерживает.

Сертификат - это метод, используемый для распространения открытого ключа и другой информации о сервере и организации, ответственной за него. Сертификаты могут иметь цифровую подпись, сделанную Центром сертификации или CA. CA - это третья сторона, которая подтверждает, что информация, содержащаяся в сертификате, верна.

Типы сертификатов

Для установки безопасного сервера с использованием криптографии на открытых ключах в большинстве случаев вы посылаете свой запрос на сертификат (включающий ваш открытый ключ), подтверждение идентичности вашей компании и оплату центру сертификации. Центр проверяет запрос на сертификат и вашу идентичность, и затем отсылает в ответ сертификат для вашего сервера. В качестве альтернативы вы можете использовать самоподписанный сертификат.

Обратите внимание, что самоподписанный сертификат не может быть использованным в большинстве производственных сред.



Создание групп в Active Direcotry



Введение

К одному из ключевых моментов концепции доменных служб Active Directory можно отнести обеспечение авторизации принципалов безопасности для получения доступа к имеющимся сетевым ресурсам. Несмотря на то, что весь доступ к сетевым ресурсам основан на учетных записях отдельных пользователей, компьютеров или служб, со временем они могут меняться. В средних и крупных компаниях управление существующими пользователями требует большой административной нагрузки. Стоит учесть, что пользователи, выполняющие в компании конкретную роль, могут меняться, но сама роль должна оставаться без каких-либо изменений. Если назначать доступ к сетевым ресурсами индивидуально для каждого отдельного пользователя, то списки контроля доступа ACL вскоре станут неуправляемыми и при изменении отдела пользователем вам нужно будет учесть все возможные разрешения доступа. Так как этот процесс может легко выйти из-под контроля, задачи, связанные с управлением должны быть привязаны к объектам групп. Чаще всего группы используются для идентификации ролей пользователей и компьютеров, фильтрации групповой политики, назначения уникальных политик паролей, прав, разрешений доступа, приложений электронной почты и многое другое. Сами по себе, группы представляют собой принципалы безопасности с уникальными SID, которые могут содержать в атрибуте member такие принципалы безопасности, как пользователи, компьютеры, группы и контакты.

Перед тем как создавать группы следует знать, какие существуют разновидности групп. Так как структура доменных служб предназначена для поддержки сложных и крупных распределительных сред, Active Directory включает в себя два типа групп домена с тремя областями действия в каждой из них, а также локальную группу безопасности. Типы групп, а также их область действия подробно рассмотрены в следующих подразделах.



Команды OpenSSL


Полезные команды при работе с SSL-сертификатами

Создание ключа для SSL-сертификата. openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key

В случае утери пароля или файла ключа придется заказывать пересоздание сертификата.

Генерация CSR-запроса: openssl req -new -key cert.key -out cert.csr

Имя домена на который создается запрос прописывается в Common Name - example.com, A challenge password и An optional company name вводить не нужно (просто нажимаем enter).

Создание ключа и запроса с данными одной командой: openssl req -batch -new -newkey rsa:2048 -nodes -keyout cert.key -subj '/C=RU/ST=Moscow/L=Moscow/O=Jingel Inc/OU=Research team/[email protected]/CN=example.com' -out cert.csr Создание ключа и самоподписанного сертификата одной командой: openssl req -newkey rsa:1024 -nodes -keyout server.key -out server.crt -x509 -days 3650 -subj \ "/C=XX/ST=XX/L=XX/O=XX/OU=XX/CN=example.com/emailAddress="[email protected] Убрать пароль с ключа (необходимо когда сертификат ставится руками в конфигурацию Apache иначе он при запуске будет просить пароль): openssl rsa -in cert.key -out cert.key

и вводим пароль с консоли (либо -passin pass:supersecretpassw0rd что менее секурно так как пароль сохраняется в .history)

Посмотреть данные CSR: openssl req -noout -text -in cert.csr Данные сертификата (проверить кем выдан например): openssl x509 -noout -text -in cert.crt Проверить, что ключ соответствует сертификату: openssl x509 -noout -modulus -in cert.crt | openssl md5 openssl rsa -noout -modulus -in cert.key | openssl md5

Два значения должны совпадать.

Узнать длину запроса: echo '(' `openssl req -noout -modulus -in cert.csr | cut -d'=' -f2 | wc -c` '-1)*4' | bc Проверить выдачу HTTPS: openssl s_client -connect localhost:443 -state -debug GET / HTTP/1.0

Для почты:

openssl s_client -connect localhost:993 -showcerts На операционной системе Windows (в IIS в частности) используется PFX-контейнер для сертификата, его можно создать из файлов ключа и сертификата командой: openssl pkcs12 -export -in certificate.crt -inkey certificate.key -out certificate.pfx

Как изменить ssl-сертификат, выданный при регистрации сервера?

# openssl req -new -newkey rsa:1024 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 5000 -out /etc/pki/tls/certs/localhost.crt

Далее отвечаете на вопросы и перезапускаете сервер Apache.



Самоподписанные SSL сертификаты


Самоподписанные (самоизданные) сертификаты образуют специальный тип сертификатов УЦ, в которых издатель сертификата является одновременно субъектом сертификата. Эти сертификаты используются в PKI для установления пунктов доверия, распространения нового открытого ключа подписи УЦ и изменения политик применения сертификатов.

Сертификаты установления пункта доверия

Самоподписанные сертификаты являются сертификатами только в том смысле, что имеют формат сертификата стандарта X.509. Подпись на самоподписанном сертификате подтверждает только то, что у издателя есть открытый и секретный ключи, и ничего более - ничего имеющего отношение к содержанию сертификата. Пользователь может доверять самоподписанному сертификату только тогда, когда получил его защищенным способом, гарантирующим подлинность источника - данного УЦ.

Самоподписанные сертификаты должны иметь формат X.509 v1 и не содержать дополнений, поскольку в этом нет необходимости. В такие сертификаты пока не включается информация о политиках применения сертификатов, особенно в сертификаты головного УЦ иерархической PKI. Так как изменения в наборе политик отражаются на валидности пути сертификации, можно ожидать, что в будущем самоподписанные сертификаты будут иметь формат X.509 v3 и устанавливать пункты доверия с учетом политик применения сертификатов.

Сертификаты обновления ключа

Чтобы ввести в действие новый сертификат или ключ подписи САС, УЦ выпускает пару сертификатов обновления ключа . Первый сертификат содержит старый открытый ключ и подписывается новым секретным ключом. Второй сертификат содержит новый открытый ключ и подписывается старым секретным ключом. Таким образом, пользователи сертификатов, подписанных старым секретным ключом, и пользователи сертификатов, подписанных новым секретным ключом, могут проверять валидность сертификатов друг друга. В обоих сертификатах обновления имена издателя и субъекта совпадают, оба сертификата принадлежат УЦ одной и той же корпоративной PKI.

Старый сертификат УЦ, подписанный новым ключом , позволяет пользователям сертификатов, подписанных новым секретным ключом, строить валидный путь сертификации к сертификатам, подписанным старым секретным ключом.

Новый сертификат УЦ, подписанный старым ключом , дает возможность пользователям сертификатов, подписанных старым секретным ключом, строить валидный путь сертификации к сертификатам, подписанным новым секретным ключом.



Как создать самоподписанный сертификат на IIS 7


SSL является важной частью обеспечения безопасности вашего IIS 7.0 сайта, и ее гораздо легче обеспечить, чем в предыдущих версиях IIS. SSL сертификаты позволяют шифрованить весь трафик, которым обмениваются с вашего IIS сайта , предотвращая других от просмотра конфиденциальной информации. Он использует криптографию с открытым ключом для установления защищенного соединения. Это означает, что все зашифрованные с помощью открытого ключа (сертификат SSL) данные могут быть расшифрованы только при помощи закрытого ключа и наоборот.

Когда следует использовать на IIS самоподписанный сертификат

Никогда не используйте самоподписанный сертификат для сайтов электронной коммерции, или любых других, которые передают ценные личные данные, такие как номера кредитных карт, номера социального страхования и т.д.

Сертификат SSL необходим не только для распространения открытых ключей: если он будет подписан доверенной третьей стороны, он проверяет подлинность сервера, так что клиенты знают, что они не отдают информацию (зашифрованную или нет), не тому человеку. Так что же такое самоподписанный сертификат? Это сертификат, который подписан самостоятельно, а не доверенной третьей стороной. Разве это не плохо? В большинстве случаев, да. Вы почти никогда не захотите использовать самоподписанный сертификат на публичном IIS-сервере, который требует соединения анонимных посетителей с вашим сайтом, потому что они могут легко стать жертвой атаки «человек в середине». Однако, самоподписанные сертификаты имеют свое место:

Самоподписанные сертификаты могут быть использованы на сервере разработки IIS. Нету необходимости тратить дополнительные деньги на покупку доверенного сертификата, когда вы только разрабатываете и тестируете приложения. Самоподписанные сертификаты могут быть использованы в интрасети. Когда клиенты должны только пройти через локальную интрасеть, чтобы добраться до сервера, практически нету шансов на атаку «человек в середине». Самоподписанные сертификаты могут быть использованы на личных сайтах с малым количеством посетителей. Если у вас есть небольшой персональный сайт, через который проходит нечувствительная информация, существует очень мало стимулов для кого-то атаковать соединение.

Просто имейте в виду, что посетители будут видеть предупреждение в своих браузерах (как на картинке ниже) при подключении к сайту на Apache, который использует самоподписанный сертификат, пока он не будет постоянно храниться в хранилище сертификатов. Вы никогда не должны использовать самоподписанный сертификат для подписания сайта электронной коммерции, или любой сайт, который передает ценные личные данные, такие как данные кредитных карт, номера социального страхования и т.д.


Карта