По-умолчанию в 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 клиенты) в целях защиты передаваемых по сети данных (обеспечить невозможности перехвата имена и паролей пользователей и других приватных данных).
Предположим, в вашей инфраструктуре уже развернут корпоративный удостоверяющий сервер Certification Authority (CA). Это может быть как полноценная инфраструктура PKI, так и отдельной-стоящий сервер с ролью Certification Authority.
На севере с ролью Certification Authority запустите консоль Certification Authority Management Console, выберите раздел шаблонов сертификатов (Certificate Templates ) и в контекстном меню выберите Manage.
Найдите шаблон Kerberos Authentication certificate и создайте его копию, выбрав в меню Duplicate Template.
На вкладке General переименуйте шаблон сертификата в LDAPoverSSL, укажите период его действия и опубликуйте его в AD (Publish certificate in Active Directory).
На вкладке Request Handling поставьте чекбокс у пункта Allow private key to be exported и сохраните шаблон.
На базе созданного шаблона, опубликуем новый тип сертификата. Для этого, в контекстном меню раздела Certificate Templates выберем пункт New -> Certificate Template to issue.
Из списка доступных шаблонов выберите LDAPoverSSL и нажмите OK.
На контроллере домена, для которого планируется задействовать LDAPS, откройте оснастку управления сертификатами и в хранилище сертификатов Personal запросим новый сертификат (All Tasks -> Request New Certificate).
В списке доступных сертификатов выберите сертификат LDAPoverSSL и нажмите Enroll (выпустить сертификат).
Следующее требование – необходимо, чтобы контроллер домена и клиенты, которые будут взаимодействовать через LDAPS доверяли удостоверяющему центру (CA), который выдал сертификат для контроллера домена.
Если это еще не сделано, экспортируем корневой сертификат удостоверяющего центра в файл, выполнив на сервере с ролью Certification Authority команду:
certutil -ca.cert ca_name.cer
Совет. Файл сертификата сохранится в профиле текущего пользователя и в нашем случае имеет имя ca_name.cer.
А затем добавьте экспортированный сертификат в контейнере сертификатов Trusted Root Certification Authorities хранилища сертификатов на клиенте и контроллере домена. Сделать это можно через вручную через оснастку управления сертификатами, через GPO или из командной строки (подробнее здесь).
certmgr.exe -add C:\ca_name.cer -s -r localMachine ROOT
Необходимо перезапустить службы Active Directory на контроллере домена, либо целиком перезагрузить DC.
Осталось протестировать работу по LDAPS. Для этого на клиенте запустим утилиту ldp.exe и в меню выбираем Connection-> Connect->Укажите полное (FQDN) имя контроллера домена, выберите порт 636 и отметьте SSL -> OK. Если все сделано правильно, подключение должно установиться.
Примечание. Утилита ldp.exe на клиентах устанавливается в составе пакета Remote Server Administration Kit (RSAT): RSAT для Windows 10, для 8.1.
First published on MSDN on Apr 10, 2017
Step-by-step guide for setting up
LDAPS
(LDAP over SSL)
The guide is split into 3 sections :
- Create a Windows Server VM in Azure
- Setup LDAP using AD LDS (Active Directory Lightweight Directory Services)
- Setup LDAPS (LDAP over SSL)
NOTE : The following steps are similar for Windows Server 2008, 2012, 2012 R2 , 2016. In this article, we will use Windows Server 2012 R2.
Create a Windows Server VM in Azure
Create a VM named “ldapstest” Windows Server 2012 R2 Datacenter Standard DS12 using the instructions here:
Create a Windows virtual machine with the Azure portal
Connect to the VM ldapstest using Remote Desktop Connection.
Setup LDAP using AD LDS
Now let us add AD LDS in our VM ldapstest
Click on Start —> Server Manager —> Add Roles and Features. Click Next.
Choose Role-based or feature-based installation. Click Next.
Select ldapstest server from the server pool. Click Next.
Mark Active Directory Lightweight Directory Services from the list of roles and click Next.
From the list of features, choose nothing – just click Next.
Click Next.
Click Install to start installation.
Once installation is complete, click Close.
Now we have successfully set up AD LDS Role. Let us create a new AD LDS Instance “CONTOSO” using the wizard. Click the “Run the Active Directory Lightweight Directory Services Setup Wizard” in the above screen. And then Click Close.
Choose Unique Instance since we are setting it up for the first time.
Type “CONTOSO” in Instance Name and click Next.
By Default, LDAP Port is 389 and LDAPS port is 636, let us choose the default values — click Next.
Create a new Application Directory Partition named “CN=MRS,DC=CONTOSO,DC=COM”. Click Next.
Using the default values for storage location of ADLDS files- Click Next.
Choosing Network Service Account for running the AD LDS Service.
You will receive a prompt warning about data replication. Since we are using a single LDAP Server, we can click Yes.
Choosing the currently logged on user as an administrator for the AD LDS Instance. Click Next.
Mark all the required LDIF files to import (Here we are marking all files). Click Next.
Verify that all the selections are right and then Click Next to confirm Installation.
Once the instance is setup successfully, click Finish.
Now let us try to connect to the AD LDS Instance CONTOSO using ADSI Edit.
Click on Start —> Search “ADSI Edit” and open it.
Right Click on ADSI Edit Folder (on the left pane) and choose Connect To.. . Fill the following values and Click OK.
If the connection is successful, we will be able to browse the Directory CN=MRS,DC=CONTOSO,DC=COM :
Setup LDAPS (LDAP over SSL)
The Certificate to be used for LDAPS must satisfy the following 3 requirements:
• Certificate must be valid for the purpose of Server Authentication. This means that it must also contains the Server Authentication object identifier (OID): 1.3.6.1.5.5.7.3.1
• The Subject name or the first name in the Subject Alternative Name (SAN) must match the Fully Qualified Domain Name (FQDN) of the host machine, such as Subject:CN=contosoldaps. For more information, see How to add a Subject Alternative Name to a secure LDAP certificate .
• The host machine account must have access to the private key.
Now, let’s use Active Directory Certificate Services to create a certificate to be used for LDAPS. If you already have a certificate satisfying the above requirements, you can skip this step.
Click on Start —> Server Manager —> Add Roles and Features. Click Next.
Choose Role-based or feature-based installation. Click Next.
Select ldapstest server from the server pool. Click Next.
Choose Active Directory Certificate Services from the list of roles and click Next.
Choose nothing from the list of features and click Next.
Click Next.
Mark “Certificate Authority” from the list of roles and click Next.
Click Install to confirm installation.
Once installation is complete, Click Close.
Now let’s create a certificate using AD CS Configuration Wizard. To open the wizard, click on “Configure Active Directory Certificate Services on the destination server” in the above screen. And then click Close. We can use the currently logged on user azureuser to configure role services since it belongs to the local Administrators group. Click Next.
Choose Certification Authority from the list of roles. Click Next.
Since this is a local box setup without a domain, we are going to choose a Standalone CA. Click Next.
Choosing Root CA as the type of CA, click Next.
Since we do not possess a private key – let’s create a new one. Click Next.
Choosing SHA1 as the Hash algorithm. Click Next.
UPDATE : Recommended to select the most recent hashing algorithm since
SHA-1 deprecation countdown
The name of the CA must match the Hostname (requirement number 2). Enter “LDAPSTEST” and Click Next.
Specifying validity period of the certificate. Choosing Default 5 years. Click Next.
Choosing default database locations, click Next.
Click Configure to confirm.
Once the configuration is successful/complete. Click Close.
Now let us view the generated certificate.
Click on Start à Search “Manage Computer Certificates” and open it.
Click on Personal Certificates and verify that the certificate “LDAPSTEST” is present:
Now to fulfill the third requirement, let us ensure host machine account has access to the private key. Using the Certutil utility, find the Unique Container Name. Open Command Prompt in Administrator mode and run the following command: certutil -verifystore MY
The private key will be present in the following location C:\ProgramData\Microsoft\Crypto\Keys\<UniqueContainerName>
Right Click C:\ProgramData\Microsoft\Crypto\Keys\874cb49a696726e9f435c1888b69f317_d3e61130-4cd8-4288-a344-7784647ff8c4 and click properties —> Security and add read permissions for NETWORK SERVICE.
We need to import this certificate into JRE key store since our certificate “CN=LDAPSTEST” is not signed by any by any trusted Certification Authority(CA) which is configured in you JRE keystore e.g Verisign, Thwate, goDaddy or entrust etc. In order to import this certificate using the keytool utility, let us first export this cert as a .CER from the machine certificate store:
Click Start —> Search “Manage Computer Certificates” and open it. Open personal, right click LDAPSTEST cert and click “Export”.
This opens the Certificate Export Wizard. Click Next.
Do not export the private key. Click Next.
Choose Base-64 encoded X .509 file format. Click Next.
Exporting the .CER to Desktop. Click Next.
Click Finish to complete the certificate export.
Certificate is now successfully exported to “C:\Users\azureuser\Desktop\ldapstest.cer”.
Now we shall import it to JRE Keystore using the keytool command present in this location:
C:\Program Files\Java\jre1.8.0_92\bin\keytool.exe.
Open Command Prompt in administrator mode. Navigate to “C:\Program Files\Java\jre1.8.0_92\bin\” and run the following command:
keytool -importcert -alias «ldapstest» -keystore «C:\Program Files\Java\jre1.8.0_92\lib\security\cacerts» -storepass changeit -file «C:\Users\azureuser\Desktop\ldapstest.cer»
Type “yes” in the Trust this certificate prompt.
Once certificate is successfully added to the JRE keystore, we can connect to the LDAP server over SSL.
Now let us try to connect to LDAP Server (with and without SSL) using the ldp.exe tool.
Connection strings for
LDAP:\\ldapstest:389
LDAPS:\\ldapstest:636
Click on Start —> Search ldp.exe —> Connection and fill in the following parameters and click OK to connect:
If Connection is successful, you will see the following message in the ldp.exe tool:
To Connect to LDAPS (LDAP over SSL), use port 636 and mark SSL. Click OK to connect.
If connection is successful, you will see the following message in the ldp.exe tool:
REFERENCES
https://technet.microsoft.com/en-us/library/cc770639(v=ws.10)
https://technet.microsoft.com/en-us/library/cc725767(v=ws.10).aspx
http://social.technet.microsoft.com/wiki/contents/articles/2980.ldap-over-ssl-ldaps-certificate….
https://blogs.technet.microsoft.com/askds/2008/03/13/troubleshooting-ldap-over-ssl/
http://javarevisited.blogspot.com/2011/11/ldap-authentication-active-directory.html
По-умолчанию в 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 клиенты) в целях защиты передаваемых по сети данных (обеспечить невозможности перехвата имена и паролей пользователей и других приватных данных).
Предположим, в вашей инфраструктуре уже развернут корпоративный удостоверяющий сервер Certification Authority (CA). Это может быть как полноценная инфраструктура PKI, так и отдельной-стоящий сервер с ролью Certification Authority.
На севере с ролью Certification Authority запустите консоль Certification Authority Management Console, выберите раздел шаблонов сертификатов (Certificate Templates ) и в контекстном меню выберите Manage.
Найдите шаблон Kerberos Authentication certificate и создайте его копию, выбрав в меню Duplicate Template.
На вкладке General переименуйте шаблон сертификата в LDAPoverSSL, укажите период его действия и опубликуйте его в AD (Publish certificate in Active Directory).
На вкладке Request Handling поставьте чекбокс у пункта Allow private key to be exported и сохраните шаблон.
На базе созданного шаблона, опубликуем новый тип сертификата. Для этого, в контекстном меню раздела Certificate Templates выберем пункт New -> Certificate Template to issue.
Из списка доступных шаблонов выберите LDAPoverSSL и нажмите OK.
На контроллере домена, для которого планируется задействовать LDAPS, откройте оснастку управления сертификатами и в хранилище сертификатов Personal запросим новый сертификат (All Tasks -> Request New Certificate).
В списке доступных сертификатов выберите сертификат LDAPoverSSL и нажмите Enroll (выпустить сертификат).
Следующее требование – необходимо, чтобы контроллер домена и клиенты, которые будут взаимодействовать через LDAPS доверяли удостоверяющему центру (CA), который выдал сертификат для контроллера домена.
Если это еще не сделано, экспортируем корневой сертификат удостоверяющего центра в файл, выполнив на сервере с ролью Certification Authority команду:
certutil -ca.cert ca_name.cer
Совет. Файл сертификата сохранится в профиле текущего пользователя и в нашем случае имеет имя ca_name.cer.
А затем добавьте экспортированный сертификат в контейнере сертификатов Trusted Root Certification Authorities хранилища сертификатов на клиенте и контроллере домена. Сделать это можно через вручную через оснастку управления сертификатами, через GPO или из командной строки (подробнее здесь).
certmgr.exe -add C:ca_name.cer -s -r localMachine ROOT
Необходимо перезапустить службы Active Directory на контроллере домена, либо целиком перезагрузить DC.
Осталось протестировать работу по LDAPS. Для этого на клиенте запустим утилиту ldp.exe и в меню выбираем Connection-> Connect->Укажите полное (FQDN) имя контроллера домена, выберите порт 636 и отметьте SSL -> OK. Если все сделано правильно, подключение должно установиться.
Примечание. Утилита ldp.exe на клиентах устанавливается в составе пакета Remote Server Administration Kit (RSAT): RSAT для Windows 10, для 8.1.
Microsoft Active Directory поддерживает протокол LDAPv3. С его помощью можно авторизовать пользователей из сторонних приложений. Чтобы обеспечить безопасность при передаче учетной информации серверу необходимо использовать LDAPS (SSL). В этой статье мы рассмотрим настройку контролера доме, для обеспечения поддержки SSL.
Для того, чтобы SSL нормально функционировал нам потребуются сертификат.
Проверяем наличие сертификата
Для начала будет полезно проверить наличие сертификата в вашем домене, для этого запустим на нашем ПК утилиту ldp.exe.
Она не поставляется с Windows 10, чтобы использовать её, вам придется установить компоненты администрирования RSAT.
Нажмите Подключение — подключить, заполните окно аналогично рисунку.
Используйте имя домена, не сервера — тогда сервер для подключения будет выбран автоматически.
Если в ответ вы получили сообщение:
ld = ldap_sslinit("altuninvv.local", 636, 1);
Error 0 = ldap_set_option(hLdap, LDAP_OPT_PROTOCOL_VERSION, 3);
Error 81 = ldap_connect(hLdap, NULL);
Server error: <empty>
Error <0x51>: Fail to connect to altuninvv.local.
Это означает, что либо недоступен ни один контролер домена, либо неправильно настроен DNS, либо ПК не является членом домена, либо не установлен SSL сертификат на контролере домена.
Если сообщение похоже на такое:
Established connection to xxxx.xxxxxxxxx.xxx.
Retrieving base DSA information...
Getting 1 entries:
Dn: (RootDSE)
configurationNamingContext:
...
forestFunctionality: 6 = ( WIN2012R2 );
highestCommittedUSN: 2153249;
isGlobalCatalogReady: FALSE;
isSynchronized: TRUE;
ldapServiceName: XXXXXXXX$@XXXXXXXXXXXXX;
....
supportedCapabilities (6): 1.2.840.113556.1.4.800 = ( ACTIVE_DIRECTORY ); 1.2.840.113556.1.4.1670 = ( ACTIVE_DIRECTORY_V51 ); 1.2.840.113556.1.4.1791 = ( ACTIVE_DIRECTORY_LDAP_INTEG ); 1.2.840.113556.1.4.1935 = ( ACTIVE_DIRECTORY_V61 ); 1.2.840.113556.1.4.2080 = ( ACTIVE_DIRECTORY_V61_R2 ); 1.2.840.113556.1.4.2237 = ( ACTIVE_DIRECTORY_W8 );
supportedControl (37): 1.2.840.113556.1.4.319 = ( PAGED_RESULT ); 1.2.840.113556.1.4.801 = ( SD_FLAGS ); 1.2.840.113556.1.4.473 = ( SORT ); 1.2.840.113556.1.4.528 = ( NOTIFICATION ); 1.2.840.113556.1.4.417 = ( SHOW_DELETED ); 1.2.840.113556.1.4.619 = ( LAZY_COMMIT ); 1.2.840.113556.1.4.841 = ( DIRSYNC ); 1.2.840.113556.1.4.529 = ( EXTENDED_DN ); 1.2.840.113556.1.4.805 = ( TREE_DELETE ); 1.2.840.113556.1.4.521 = ( CROSSDOM_MOVE_TARGET ); 1.2.840.113556.1.4.970 = ( GET_STATS ); 1.2.840.113556.1.4.1338 = ( VERIFY_NAME ); 1.2.840.113556.1.4.474 = ( RESP_SORT ); 1.2.840.113556.1.4.1339 = ( DOMAIN_SCOPE ); 1.2.840.113556.1.4.1340 = ( SEARCH_OPTIONS ); 1.2.840.113556.1.4.1413 = ( PERMISSIVE_MODIFY ); 2.16.840.1.113730.3.4.9 = ( VLVREQUEST ); 2.16.840.1.113730.3.4.10 = ( VLVRESPONSE ); 1.2.840.113556.1.4.1504 = ( ASQ ); 1.2.840.113556.1.4.1852 = ( QUOTA_CONTROL ); 1.2.840.113556.1.4.802 = ( RANGE_OPTION ); 1.2.840.113556.1.4.1907 = ( SHUTDOWN_NOTIFY ); 1.2.840.113556.1.4.1948 = ( RANGE_RETRIEVAL_NOERR ); 1.2.840.113556.1.4.1974 = ( FORCE_UPDATE ); 1.2.840.113556.1.4.1341 = ( RODC_DCPROMO ); 1.2.840.113556.1.4.2026 = ( DN_INPUT ); 1.2.840.113556.1.4.2064 = ( SHOW_RECYCLED ); 1.2.840.113556.1.4.2065 = ( SHOW_DEACTIVATED_LINK ); 1.2.840.113556.1.4.2066 = ( POLICY_HINTS_DEPRECATED ); 1.2.840.113556.1.4.2090 = ( DIRSYNC_EX ); 1.2.840.113556.1.4.2205 = ( UPDATE_STATS ); 1.2.840.113556.1.4.2204 = ( TREE_DELETE_EX ); 1.2.840.113556.1.4.2206 = ( SEARCH_HINTS ); 1.2.840.113556.1.4.2211 = ( EXPECTED_ENTRY_COUNT ); 1.2.840.113556.1.4.2239 = ( POLICY_HINTS ); 1.2.840.113556.1.4.2255 = ( SET_OWNER ); 1.2.840.113556.1.4.2256 = ( BYPASS_QUOTA );
supportedLDAPPolicies (19): MaxPoolThreads; MaxPercentDirSyncRequests; MaxDatagramRecv; MaxReceiveBuffer; InitRecvTimeout; MaxConnections; MaxConnIdleTime; MaxPageSize; MaxBatchReturnMessages; MaxQueryDuration; MaxTempTableSize; MaxResultSetSize; MinResultSets; MaxResultSetsPerConn; MaxNotificationPerConn; MaxValRange; MaxValRangeTransitive; ThreadMemoryLimit; SystemMemoryLimitPercent;
supportedLDAPVersion (2): 3; 2;
supportedSASLMechanisms (4): GSSAPI; GSS-SPNEGO; EXTERNAL; DIGEST-MD5;
-----------
Это значит, что SSL сертификат уже установлен посредством Службы сертификатов Active Directory и дальнейших действий не потребуется.
Установка OpenSSL
В этой статье я буду использовать виртуальный сервер, созданный для цикла статей.
Имя домена — altununvv.local
Имя контролера домена – addc1.altuninvv.local
Виртуальная организация — Altunin Soft
Скачаем свежую версию OpenSSL — вы можете скачать её отсюда — https://slproweb.com/products/Win32OpenSSL.html
Я рекомендую все команды выполнять сразу на сервере, но вы можете так же работать и на вашем ПК, если используете MSYS2.
Те, кто использует, как и я, MSYS2, могут ввести в консоли:
pacman -Sy openssl
Создаем локальный центр сертификации
Создадим папку и назовем её CA.
Создадим в ней файл ca.conf с содержимым:
[ req ]
distinguished_name = req_distinguished_name
req_extensions = v3_ca
[ req_distinguished_name ]
# Descriptions
countryName=RU
stateOrProvinceName=Magadan region
localityName=Magadan
0.organizationName= Altunin Soft
1.organizationName=IT
commonName=altuninvv.local
#Modify for your details here or answer the prompts from openssl
countryName_default=RU
stateOrProvinceName_default= Magadan region
localityName_default= Magadan
0.organizationName_default= Altunin Soft
1.organizationName_default=IT
commonName_default= altuninvv.local
[ v3_ca ]
keyUsage=critical,keyCertSign
basicConstraints=critical,CA:TRUE,pathlen:1
extendedKeyUsage=serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1 = *. altuninvv.local
DNS.2 = altuninvv.local
Сгенерируем приватный ключ для CA
openssl genrsa -des3 -out ca.key 4096
Укажите пароль для ключа, в нашем случае это будет Pa$$w0rd:
Generating RSA private key, 4096 bit long modulus (2 primes)
......................................................................................................................................
........................................................................................................................................
....++++..........................++++e is 65537 (0x010001)
Enter pass phrase for ca.key:
Verifying - Enter pass phrase for ca.key:
Создадим сертификат для нашего CA:
openssl req -new -x509 -extensions v3_ca -days 3659 -key ca.key -out ca.crt -config ca.conf
Просто нажимайте Enter все поля будут заполнены автоматически!
Enter pass phrase for ca.key:
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
RU [RU]:
Magadan region [Magadan region]:
Magadan [Magadan]:
Altunin Soft [Altunin Soft]:
IT [IT]:
altuninvv.local [altuninvv.local]:
Теперь нужно импортировать созданный сертификат в хранилище доверенных CA на нашем контролере домена.
Скопируем файл ca.crt на контролер домена. Откроем PowerShell от имени администратора, перейдем в папку с файлом ca.cert и введем команду:
Import-Certificate –Verbose -FilePath ca.crt -CertStoreLocation 'Cert:LocalMachineRoot'
VERBOSE: Performing the operation "Import certificate" on target "Item: C:caca.crt Destination: Root".
PSParentPath: Microsoft.PowerShell.SecurityCertificate::LocalMachineRoot
Thumbprint Subject
---------- -------
D5D1306CFFDAF63EDA10710F13F69C0228005350 CN=altuninvv.local, O=IT, O=Altunin Soft, L=Magadan, S=Magadan region, C=RU
Сертификат успешно добавлен.
Теперь пришло время создать запрос на клиентский сертификат, который будет использовать контролер домена.
На контролере домена создадим текстовый файл — req.txt
;----------------- request.inf -----------------
[Version]
Signature="$Windows NT$"
;The Subject will need to be your active directory domain name
[NewRequest]
Subject = "CN=altuninvv.local
KeySpec = 1
KeyLength = 4096
Exportable = TRUE
SMIME = FALSE
MachineKeySet = TRUE
PrivateKeyArchive = FALSE
UseExistingKeySet = FALSE
UserProtected = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0
[EnhancedKeyUsageExtension]
OID = 1.3.6.1.5.5.7.3.1 ; Server Authentication
;The following will add a subject alternative name of a wildcard cert on *.example.com
;so any ad controller with a hostname of somththing.example.com can use it.
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "dns=*.altuninvv.local&"
_continue_ = "dns=altuninvv.local&"
Выполним запрос на сертификат:
certreq -new req.txt addc1.csr
CertReq: Request Created
Выполним запрос на сертификат:
certreq -new req.txt addc1.csr
CertReq: Request Created
Скопируем созданный файл на свой ПК в папку нашего CA
В папке CA создадим файл v3ext.txt с содержимым:
# v3ext.txt
keyUsage=digitalSignature,keyEncipherment
extendedKeyUsage=serverAuth
subjectKeyIdentifier=hash
subjectAltName = @alt_names
#Modify for your details. Must include the commonName in the list below also.
#The *.example.com will allow all Domain controllers with
#the hostname somthing.example.com to use the cert.
[alt_names]
DNS.1 = *.altuninvv.local
DNS.2 = altuninvv.local
Сгенерируем сертификат для addc1
openssl x509 -req -days 825 -in addc1.csr -CA ca.crt -CAkey ca.key -extfile v3ext.txt -set_serial 01 -out addc1-server.crt
Signature ok
subject=CN = altuninvv.local
Getting CA Private Key
Enter pass phrase for ca.key:
Введите пароль закрытого ключа: Pa$$w0rd
Скопируем файл с сертификатом addc1-server.crt обратно на контролер домена addc1 и применим сертификат:
certreq -accept addc1-server.crt
Installed Certificate:
Serial Number: 01
Subject: CN=altuninvv.local (DNS Name=*.altuninvv.local, DNS Name=altuninvv.local)
NotBefore: 2/18/2021 5:37 PM
NotAfter: 5/24/2023 5:37 PM
Thumbprint: 4721d27e9fe34aaa672d20d68c0ec01fd9f7a82c
Из PowerShell проверим наличие сертификата:
PS C:ca> Get-ChildItem "Cert:LocalMachineMy"
PSParentPath: Microsoft.PowerShell.SecurityCertificate::LocalMachineMy
Thumbprint Subject
---------- -------
4721D27E9FE34AAA672D20D68C0EC01FD9F7A82C CN=altuninvv.local
Теперь вы должны перегрузить контролер домена, чтобы все настройки вступили в силу.
Обратите внимание, чтобы подключиться к серверу вы должны указать его полное доменное имя, в нашем случае:
addc1.altuninvv.local
Если ПК входит в состав домена altuninvv.local, вы можете использовать для подключение его имя:
altuninvv.local
Тогда контролер домена для подключения будет выбран автоматически из списка доступных, возможно, это будет работать только, при наличии Службы сертификатов на одном из серверов в AD!
Так как мой ПК не входит в домен altuninvv.local и не использует его DNS-сервера, я прописал в файле
C:WindowsSystem32driversetchosts
строку:
192.168.0.10 addc1.altuninvv.local
Проверяем подключение
Для проверки подключения мы будет использовать утилиту ldp.exe.
Она не поставляется с Windows 10, чтобы использовать её, вам придется установить компоненты администрирования RSAT.
Запустим ldp.exe, откроется окно:
В этом окне выберите подключение – подключить
Введем:
Сервер: addc1.altuninvv.local
Порт: 636
Установим галочку SSL
Нажмем Ок, будет осуществлено подключение и выведена дополнительная информация:
Теперь мы может сделать bind к серверу
Выберите Подключение – Привязка
Заполните поля:
Пользователь: CN=ldap-bind,CN=Users,DC=altuninvv,DC=local
Пароль: Pas#w0rds#1
Установите: Простая привязка
нажмите Ок
Будет выведено сообщение:
res = ldap_simple_bind_s(ld, 'CN=ldap-bind,CN=Users,DC=altuninvv,DC=local', <unavailable>); // v.3
Authenticated as: 'ALTUNINVVldap-bind'.
Это означает, что подключение прошло успешно.
Далее выберем пункт меню Вид – Дерево
И в окне выберем — DC=altuninvv,DC=local
Нажмем Ок
Откроется дерево с разделами домена,
Таким образом вы можете просматривать каталог AD через LDAP по SSL.
Заключение
Сегодня мы рассмотрели подключение к контролеру домена AD с использованием протокола LDAP по SSL.
Мы создали свой локальный центр сертификации CA с помощью OpenSSL.
Был выпущен сертификат и установлен на контролере домена.
С помощью утилиты ldp.exe было осуществлено подключение к контролеру домена по SSL.
Table of Contents
- Applies To:
- DoLdapInitialize
- PortQry output after promoting a DC for SSL ports.
- LDP.EXE output after connecting the SSL ports.
- NETMON capture for SSL Ports
- Network capture without netmon
- Cert server into a domain controller is not recommended.
- Publish a cert Template
- certutil -v -template LDAPSSL
- Find the Template Details using «V» switch.
- Enabling/Disabling CryptoAPI 2.0
- More details for Troubleshooting PKI Problems on Windows
- PKI Info; those are stored in AD ; See the following Snap.using ADSIEDIT.MSC
- Also you can see the ADCS info using DSSITE.MSC
- Some key Points.
- PKI Events.
- Certificate Server Registry Key (Path)
- Some Useful Links
Applies To:
Windows Server 2012, Windows Server 2012 R2 Preview
DoLdapInitialize
ADDS standard ports are opened during DCPROMO mainly LDAP initiation. Ports are opened during dsa init, specifically in ‘ DoLdapInitialize’ — If we stop the ‘Active Directory Domain Service’ in service.msc neither of the port is listening.
My main purpose of this article is ldaps service & msft-gc-ssl service . Port 636 & 3269 are listing after promoting a DC. We can test that using Telnet, PortQuery , Netmon or Wireshark etc. The result below is taken from newly built DC using PortQry.
PortQry output after promoting a DC for SSL ports.
TCP port 636 (ldaps service): LISTENING
portqry.exe -n msft.net -e 636 -p TCP exits with
return
code 0x00000000.
TCP port 3269 (msft-gc-ssl service): LISTENING
portqry.exe -n msft.net -e 3269 -p TCP exits with
return
code 0x00000000.
There is fantastic tool called LDP.EXE which was the part of the windows support tools in earlier version of windows OS (2003). Now days if we installed a DC automatically that is available into a DC due to RSAT. We can connect port 389 & 3268 through ldp
but not 636/3269. Those SSL ports are only listened LDAPS when we put the valid certificate into DCs. We need valid SAN, Intended purpose for that certificate (EKU).
LDP.EXE output after connecting the SSL ports.
If your certificate server itself a DC then you no need to worry for SSL ports. Those ports are connected through LDP.EXE.
ld = ldap_sslinit(
"ADS01HAMLOK.ms.net"
, 636, 1);
Error
0 = ldap_set_option(hLdap, LDAP_OPT_PROTOCOL_VERSION, 3);
Error
0 = ldap_connect(hLdap, NULL);
Error
0 = ldap_get_option(hLdap,LDAP_OPT_SSL,(void*)&lv);
Host supports SSL, SSL cipher strength = 128 bits
Established connection to ADS01HAMLOK.ms.net.
Retrieving base DSA information...
Getting 1 entries:
Dn: (RootDSE)
configurationNamingContext: CN=Configuration,DC=ms,DC=net;
currentTime: 7/6/2013 7:39:46 PM India Standard Time;
defaultNamingContext: DC=ms,DC=net;
dnsHostName: ADS01HAMLOK.ms.net;
domainControllerFunctionality: 4 = ( WIN2008R2 );
domainFunctionality: 2 = ( WIN2003 );
dsServiceName: CN=NTDS Settings,CN=ADS01HAMLOK,CN=Servers,CN=
Default
-First-Site-Name,CN=Sites,CN=Configuration,DC=ms,DC=net;
forestFunctionality: 2 = ( WIN2003 );
highestCommittedUSN: 24762;
isGlobalCatalogReady: TRUE;
isSynchronized: TRUE;
ldapServiceName: ms.net:ads01hamlok$@MS.NET;
namingContexts (5): DC=ms,DC=net; CN=Configuration,DC=ms,DC=net; CN=Schema,CN=Configuration,DC=ms,DC=net; DC=DomainDnsZones,DC=ms,DC=net; DC=ForestDnsZones,DC=ms,DC=net;
rootDomainNamingContext: DC=ms,DC=net;
schemaNamingContext: CN=Schema,CN=Configuration,DC=ms,DC=net;
serverName: CN=ADS01HAMLOK,CN=Servers,CN=
Default
-First-Site-Name,CN=Sites,CN=Configuration,DC=ms,DC=net;
subschemaSubentry: CN=Aggregate,CN=Schema,CN=Configuration,DC=ms,DC=net;
supportedCapabilities (5): 1.2.840.113556.1.4.800 = ( ACTIVE_DIRECTORY ); 1.2.840.113556.1.4.1670 = ( ACTIVE_DIRECTORY_V51 ); 1.2.840.113556.1.4.1791 = ( ACTIVE_DIRECTORY_LDAP_INTEG ); 1.2.840.113556.1.4.1935 = (
ACTIVE_DIRECTORY_V61 ); 1.2.840.113556.1.4.2080;
supportedControl (28): 1.2.840.113556.1.4.319 = ( PAGED_RESULT ); 1.2.840.113556.1.4.801 = ( SD_FLAGS ); 1.2.840.113556.1.4.473 = ( SORT ); 1.2.840.113556.1.4.528 = ( NOTIFICATION ); 1.2.840.113556.1.4.417 = ( SHOW_DELETED
); 1.2.840.113556.1.4.619 = ( LAZY_COMMIT ); 1.2.840.113556.1.4.841 = ( DIRSYNC ); 1.2.840.113556.1.4.529 = ( EXTENDED_DN ); 1.2.840.113556.1.4.805 = ( TREE_DELETE ); 1.2.840.113556.1.4.521 = ( CROSSDOM_MOVE_TARGET ); 1.2.840.113556.1.4.970 = ( GET_STATS );
1.2.840.113556.1.4.1338 = ( VERIFY_NAME ); 1.2.840.113556.1.4.474 = ( RESP_SORT ); 1.2.840.113556.1.4.1339 = ( DOMAIN_SCOPE ); 1.2.840.113556.1.4.1340 = ( SEARCH_OPTIONS ); 1.2.840.113556.1.4.1413 = ( PERMISSIVE_MODIFY ); 2.16.840.1.113730.3.4.9 = ( VLVREQUEST
); 2.16.840.1.113730.3.4.10 = ( VLVRESPONSE ); 1.2.840.113556.1.4.1504 = ( ASQ ); 1.2.840.113556.1.4.1852 = ( QUOTA_CONTROL ); 1.2.840.113556.1.4.802 = ( RANGE_OPTION ); 1.2.840.113556.1.4.1907 = ( SHUTDOWN_NOTIFY ); 1.2.840.113556.1.4.1948 = ( RANGE_RETRIEVAL_NOERR
); 1.2.840.113556.1.4.1974 = ( FORCE_UPDATE ); 1.2.840.113556.1.4.1341 = ( RODC_DCPROMO ); 1.2.840.113556.1.4.2026 = ( DN_INPUT ); 1.2.840.113556.1.4.2064 = ( SHOW_RECYCLED ); 1.2.840.113556.1.4.2065 = ( SHOW_DEACTIVATED_LINK );
supportedLDAPPolicies (14): MaxPoolThreads; MaxDatagramRecv; MaxReceiveBuffer; InitRecvTimeout; MaxConnections; MaxConnIdleTime; MaxPageSize; MaxQueryDuration; MaxTempTableSize; MaxResultSetSize; MinResultSets; MaxResultSetsPerConn;
MaxNotificationPerConn; MaxValRange;
supportedLDAPVersion (2): 3; 2;
supportedSASLMechanisms (4): GSSAPI; GSS-SPNEGO; EXTERNAL; DIGEST-MD5;
-----------
53 = ldap_set_option(ld, LDAP_OPT_ENCRYPT, 1)
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, NEGOTIATE (1158)); // v.3
{NtAuthIdentity: User=
'NULL'; Pwd=<unavailable>; domain = 'NULL'}
Authenticated as:
'MSAdministrator'.
NETMON capture for SSL Ports
Also Netmon results are taken after putting the valid certificate into a Domain Controller. Used the filter » LDAP». Also you can use «.Protocol.LDAP». You will get the same result. Here I have installed the netmon in DC.
Listening the ldaps Port (636) into the below Capture
Listening the gc-ssl Port (3269) into the below Capture
Network capture without netmon
Also you can trace without the Netmon/WireShare. Using Netsh but it is applicable Windows 2008R2 and Windows 7 and upper version OS.
For starting the capture.
netsh trace start capture=yes tracefile=cap.etl
For stopping the capture
netsh trace stop
For reading the .etl file you need the netmon anywhere.
Netsh trace will be created two files. see the below snap. For reading the .etl file you need to select the Windows Parser in Netmon.
Cert server into a domain controller is not recommended.
We need additional steps for listening the ssl ports for DCs If cert server in a member server .We need to publish the certificate template into the cert server & that certificate template need to put DC’s local computer->personal or NTDS->Personal store.
Local computer->personal store
NTDS->Personal store
(This store is available only in DC. When we have more than one cert template for Server Authentication, we can use this store for avoiding the conflict)
Publish a cert Template
Here I have used «Kerberos Authentication» template for publishing the new certificate template.
Log into the certificate server . Run » certtmpl.msc» & chose the Kerberos Authentication Template.
We need to set few properties before publishing a certificate template. Those are marked as green.
Click on Duplicate Templete.
Publish cert in AD.
Allow Pvt. key to be exported.
Subject Name format
After publishing that cert you can check the properties using » certutil -v -template <Template_Name>». Here my cert template name is LDAPSSL. See the following output.
certutil -v -template LDAPSSL
PS C:> certutil -v -template LDAPSSL
Name: Active Directory Enrollment Policy
Id: {32376692-6063-4EDC-A375-572FED78C626}
Url: ldap:
34 Templates:
Template[21]:
TemplatePropCommonName = LDAPSSL
TemplatePropFriendlyName = LDAPSSL
TemplatePropEKUs =
4 ObjectIds:
1.3.6.1.5.2.3.5 KDC Authentication
1.3.6.1.4.1.311.20.2.2 Smart Card Logon
1.3.6.1.5.5.7.3.1 Server Authentication
1.3.6.1.5.5.7.3.2 Client Authentication
TemplatePropCryptoProviders =
0: Microsoft RSA SChannel Cryptographic Provider
TemplatePropMajorRevision = 64 (100)
TemplatePropDescription = Computer
TemplatePropSchemaVersion = 2
TemplatePropMinorRevision = 1
TemplatePropRASignatureCount = 0
TemplatePropMinimumKeySize = 800 (2048)
TemplatePropOID =
1.3.6.1.4.1.311.21.8.1546289.5796744.12012220.14775765.9035062.224.8004685.4056790 LDAPSSL
TemplatePropV1ApplicationPolicy =
4 ObjectIds:
1.3.6.1.5.2.3.5 KDC Authentication
1.3.6.1.4.1.311.20.2.2 Smart Card Logon
1.3.6.1.5.5.7.3.1 Server Authentication
1.3.6.1.5.5.7.3.2 Client Authentication
TemplatePropEnrollmentFlags = 28 (40)
CT_FLAG_PUBLISH_TO_DS -- 8
CT_FLAG_AUTO_ENROLLMENT -- 20 (32)
TemplatePropSubjectNameFlags = 18c00000 (415236096)
CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS -- 400000 (4194304)
CT_FLAG_SUBJECT_ALT_REQUIRE_SPN -- 800000 (8388608)
CT_FLAG_SUBJECT_ALT_REQUIRE_DNS -- 8000000 (134217728)
CT_FLAG_SUBJECT_REQUIRE_DNS_AS_CN -- 10000000 (268435456)
TemplatePropPrivateKeyFlags = 10 (16)
CT_FLAG_EXPORTABLE_KEY -- 10 (16)
TemplatePropGeneralFlags = 20060 (131168)
CT_FLAG_AUTO_ENROLLMENT -- 20 (32)
CT_FLAG_MACHINE_TYPE -- 40 (64)
CT_FLAG_IS_MODIFIED -- 20000 (131072)
TemplatePropSecurityDescriptor = O:LAG:EAD:PAI(OA;;RPCR;0e10c968-78fb-11d2-90d4-00c04f79dc55;;RO)(OA;;RPCR;a05b8cc2
bc-4802-a710-e7c15ab866a2;;RO)(OA;;RPWPCR;0e10c968-78fb-11d2-90d4-00c04f79dc55;;DA)(OA;;RPWPCR;0e10c968-78fb-11d2-90d
0c04f79dc55;;DD)(OA;;RPWPCR;0e10c968-78fb-11d2-90d4-00c04f79dc55;;EA)(OA;;RPWPCR;a05b8cc2-17bc-4802-a710-e7c15ab866a2
D)(OA;;RPWPCR;0e10c968-78fb-11d2-90d4-00c04f79dc55;;ED)(OA;;RPWPCR;a05b8cc2-17bc-4802-a710-e7c15ab866a2;;ED)(A;;CCDCL
RPWPDTLOSDRCWDWO;;;DA)(A;;CCDCLCSWRPWPDTLOSDRCWDWO;;;EA)(A;;CCDCLCSWRPWPDTLOSDRCWDWO;;;LA)(A;;LCRPLORC;;;AU)
Allow Enroll CONTOSOEnterprise Read-only Domain Controllers
Allow
Auto
-Enroll CONTOSOEnterprise Read-only Domain Controllers
Allow Enroll CONTOSODomain Admins
Allow Enroll CONTOSODomain Controllers
Allow Enroll CONTOSOEnterprise Admins
Allow
Auto
-Enroll CONTOSODomain Controllers
Allow Enroll NT AUTHORITYENTERPRISE DOMAIN CONTROLLERS
Allow
Auto
-Enroll NT AUTHORITYENTERPRISE DOMAIN CONTROLLERS
Allow Full Control CONTOSODomain Admins
Allow Full Control CONTOSOEnterprise Admins
Allow Full Control CONTOSOAdministrator
Allow Read NT AUTHORITYAuthenticated Users
TemplatePropExtensions =
4 Extensions:
Extension[0]:
1.3.6.1.4.1.311.21.7: Flags = 0, Length = 30
Certificate Template Information
Template=LDAPSSL(1.3.6.1.4.1.311.21.8.1546289.5796744.12012220.14775765.9035062.224.8004685.4056790)
Major Version Number=100
Minor Version Number=1
Extension[1]:
2.5.29.37: Flags = 0, Length = 2b
Enhanced Key Usage
KDC Authentication (1.3.6.1.5.2.3.5)
Smart Card Logon (1.3.6.1.4.1.311.20.2.2)
Server Authentication (1.3.6.1.5.5.7.3.1)
Client Authentication (1.3.6.1.5.5.7.3.2)
Extension[2]:
2.5.29.15: Flags = 1(Critical), Length = 4
Key Usage
Digital Signature, Key Encipherment (a0)
Extension[3]:
1.3.6.1.4.1.311.21.10: Flags = 0, Length = 33
Application Policies
[1]Application Certificate Policy:
Policy Identifier=KDC Authentication
[2]Application Certificate Policy:
Policy Identifier=Smart Card Logon
[3]Application Certificate Policy:
Policy Identifier=Server Authentication
[4]Application Certificate Policy:
Policy Identifier=Client Authentication
TemplatePropValidityPeriod = 1 Years
TemplatePropRenewalPeriod = 6 Weeks
CertUtil: -Template command completed successfully.
PS C:>
Find that Template from computer store using «certutil -store my». See the below snap.
Find the Template Details using «V» switch.
PS C:> certutil -store -v my 1
my
================ Certificate 1 ================
X509 Certificate:
Version: 3
Serial Number: 611b0cbe000000000004
Signature Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.5 sha1RSA
Algorithm Parameters:
05 00
Issuer:
CN=contoso-PKIROOTCA-CA
DC=contoso
DC=com
NotBefore: 6/26/2013 1:42 PM
NotAfter: 6/26/2014 1:42 PM
Subject:
CN=BAN-ADS01.contoso.com
Public
Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_SIGN)
Algorithm Parameters:
05 00
Public
Key Length: 2048 bits
Public
Key: UnusedBits = 0
0000 30 82 01 0a 02 82 01 01 00 d2 97 d0 1d 7d 8a 2a
0010 f9 1f ac 21 b2 ae 0b e7 b8 69 83 5c e5 d3 52 0c
0020 91 ed 6f cf c6 33 25 f2 b3 2a 47 da 66 2e 82 f9
0030 17 65 f8 ee 83 27 e6 64 9c 13 70 bb 2a 5e 6b 9c
0040 ed d6 a4 1a 1f de 7d 82 73 4b 98 38 ec 85 f0 f1
0050 fc ed 01 74 2b dc 93 19 e8 d1 21 c7 2c ff e4 8d
0060 03 67 f7 ce b6 01 e1 86 29 91 55 d1 0c d5 73 a6
0070 84 ad 78 5f c3 38 60 43 20 6b 72 25 42 90 df bf
0080 44 93 d8 09 f9 19 93 05 b3 98 8d b3 d6 a3 cd be
0090 86 1d d7 db 57 db 29 36 27 8f f6 84 d0 5b 1e f5
00a0 c1 01 fc d4 a6 6e 1e c7 77 ed 28 d5 98 3e 9f 45
00b0 99 fc 9c f7 dc 9d 05 70 dd 69 5f b1 83 26 a8 51
00c0 cd ae f5 f6 83 5b d7 67 bf 0b dc 89 1b 40 77 cc
00d0 df 87 99 83 77 a4 61 4d c9 78 ce be 75 bf b4 60
00e0 9b 39 1a 96 ff bf 98 9f c2 8d 89 1d 7c 28 33 09
00f0 33 e1 cc 8c f9 6e 83 10 d3 2c 42 99 57 d6 4d cf
0100 45 05 44 21 70 e1 ad c4 3d 02 03 01 00 01
Certificate Extensions: 9
1.3.6.1.4.1.311.21.7: Flags = 0, Length = 30
Certificate Template Information
Template=LDAPSSL(1.3.6.1.4.1.311.21.8.1546289.5796744.12012220.14775765.9035062.224.8004685.4056790)
Major Version Number=100
Minor Version Number=1
2.5.29.37: Flags = 0, Length = 2b
Enhanced Key Usage
KDC Authentication (1.3.6.1.5.2.3.5)
Smart Card Logon (1.3.6.1.4.1.311.20.2.2)
Server Authentication (1.3.6.1.5.5.7.3.1)
Client Authentication (1.3.6.1.5.5.7.3.2)
2.5.29.15: Flags = 1(Critical), Length = 4
Key Usage
Digital Signature, Key Encipherment (a0)
1.3.6.1.4.1.311.21.10: Flags = 0, Length = 33
Application Policies
[1]Application Certificate Policy:
Policy Identifier=KDC Authentication
[2]Application Certificate Policy:
Policy Identifier=Smart Card Logon
[3]Application Certificate Policy:
Policy Identifier=Server Authentication
[4]Application Certificate Policy:
Policy Identifier=Client Authentication
2.5.29.14: Flags = 0, Length = 16
Subject Key Identifier
ae 5f a1 12 09 ef c9 35 2c e7 31 89 38 e1 f9 2a c2 78 5e f4
2.5.29.35: Flags = 0, Length = 18
Authority Key Identifier
KeyID=36 e5 92 e8 53 3b 14 fe 23 ec 64 d3 22 49 0b eb cb a8 45 f6
2.5.29.31: Flags = 0, Length = cc
CRL Distribution Points
[1]CRL Distribution Point
Distribution Point Name:
Full Name:
=Configuration,DC=contoso,DC=com?certificateRevocationList?base?objectClass=cRLDistributionPoint
1.3.6.1.5.5.7.1.1: Flags = 0, Length = b9
Authority Information Access
[1]Authority Info Access
Access Method=Certification Authority Issuer (1.3.6.1.5.5.7.48.2)
Alternative Name:
contoso,DC=com?cACertificate?base?objectClass=certificationAuthority
2.5.29.17: Flags = 0, Length = 57
Subject Alternative Name
Other Name:
Principal Name=BAN-ADS01$@contoso.com
DNS Name=BAN-ADS01.contoso.com
DNS Name=contoso.com
DNS Name=CONTOSO
Signature Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.5 sha1RSA
Algorithm Parameters:
05 00
Signature: UnusedBits=0
0000 b4 40 8b 4c f9 83 ae c0 68 8b 05 1f a2 37 f8 a1
0010 14 42 5b ae 2c 37 60 9b 3c 95 24 c4 ed 86 ee b5
0020 22 f7 e3 90 bd 74 e2 f9 0f 51 bd 72 f6 03 75 53
0030 fb dd 70 3f 5c 44 11 2b 3b f8 a4 f8 91 59 73 f4
0040 b2 bb 04 00 4d 80 34 be db 65 31 2a 96 f7 7f ef
0050 bf 1d 42 56 9d 98 b2 be f3 7d 21 47 fb 94 12 6f
0060 ee 42 89 64 a2 c1 38 a3 db 75 a5 02 48 e1 44 c5
0070 af d3 48 ba 33 ed 49 1c ec dd f2 35 83 8b c6 61
0080 db 24 bc fc 38 27 8c 0d d7 df e1 1a f7 dd c1 22
0090 aa 4e 4c b5 b5 ad f1 f7 b3 fe 6e e5 e2 e3 53 cf
00a0 2f 57 27 bf 8a c6 f5 87 b0 79 43 24 3b a3 35 db
00b0 0b 6a b2 9c d6 e4 e9 c3 77 85 e9 07 e4 2e 15 fc
00c0 2d 24 13 fa e9 7e f9 37 f2 96 10 41 f3 ae 26 e1
00d0 22 a3 1b 87 13 71 04 02 b3 f0 10 bb 36 3a a9 cb
00e0 f4 a8 9e dc 27 56 7a a1 2c 69 dc 61 e6 6f bc 8f
00f0 5a 67 f1 34 1c 9e c9 e2 9e f4 b9 54 3e 93 87 7f
Non-root Certificate
Key Id Hash(rfc-sha1): ae 5f a1 12 09 ef c9 35 2c e7 31 89 38 e1 f9 2a c2 78 5e f4
Key Id Hash(sha1): c7 c8 c4 4c 19 84 b8 11 45 03 6d 78 f0 0f 85 a3 61 a2 45 30
Cert Hash(md5): 46 78 5a 30 c8 67 58 33 d0 59 7b 8a 55 89 a2 ac
Cert Hash(sha1): ed 80 d4 35 e9 97 f2 59 b5 29 ca ff 72 60 ad 78 e4 d4 6d 7e
CERT_REQUEST_ORIGINATOR_PROP_ID(71):
BAN-ADS01.contoso.com
CERT_CEP_PROP_ID(87):
Enrollment Policy Url: ldap:
Enrollment Policy Id: {32376692-6063-4EDC-A375-572FED78C626}
Enrollment Server Url: PKIRootCA.contoso.comcontoso-PKIROOTCA-CA
Request Id: 4
Flags = 0
DefaultNone -- 0
Url Flags = 20 (32)
PsfAllowUnTrustedCA -- 20 (32)
Authentication = 2
Kerberos -- 2
Enrollment Server Authentication = 2
Kerberos -- 2
CERT_KEY_PROV_INFO_PROP_ID(2):
Key Container = 8f97dfc0a002a569360e48e62702d8d8_f1f08ee9-bf5c-4df4-aaed-e26f8eaa8ea6
Simple container name: le-LDAPSSL-a7c1c867-6c1b-488b-b519-463156b8d26f
Provider = Microsoft RSA SChannel Cryptographic Provider
ProviderType = c
Flags = 20
KeySpec = 1 -- AT_KEYEXCHANGE
CERT_ISSUER_PUBLIC_KEY_MD5_HASH_PROP_ID(24):
ac 47 4e aa 5d 0a 63 d4 0c 90 09 8f b8 09 b2 97
CERT_SUBJECT_PUBLIC_KEY_MD5_HASH_PROP_ID(25):
27 40 4a d2 6b 5f 0e a9 48 bc 24 00 91 1c c9 e9
CERT_KEY_IDENTIFIER_PROP_ID(20):
ae 5f a1 12 09 ef c9 35 2c e7 31 89 38 e1 f9 2a c2 78 5e f4
CERT_SIGNATURE_HASH_PROP_ID(15):
f2 2f 01 a4 6e 1d 2f 1b 96 a8 95 41 5e 2b d2 fc 80 5a 4c 21
CERT_MD5_HASH_PROP_ID(4):
46 78 5a 30 c8 67 58 33 d0 59 7b 8a 55 89 a2 ac
CERT_SHA1_HASH_PROP_ID(3):
ed 80 d4 35 e9 97 f2 59 b5 29 ca ff 72 60 ad 78 e4 d4 6d 7e
Simple container name: le-LDAPSSL-a7c1c867-6c1b-488b-b519-463156b8d26f
PP_KEYSTORAGE = 1
CRYPT_SEC_DESCR -- 1
KP_PERMISSIONS = 3f (63)
CRYPT_ENCRYPT -- 1
CRYPT_DECRYPT -- 2
CRYPT_EXPORT -- 4
CRYPT_READ -- 8
CRYPT_WRITE -- 10 (16)
CRYPT_MAC -- 20 (32)
D:PAI(A;;GAGR;;;SY)(A;;GAGR;;;BA)
Allow Full Control NT AUTHORITYSYSTEM
Allow Full Control BUILTINAdministrators
Private
Key:
PRIVATEKEYBLOB
Version: 2
aiKeyAlg: 0xa400
CALG_RSA_KEYX
Algorithm
Class
: 0xa000(5) ALG_CLASS_KEY_EXCHANGE
Algorithm Type: 0x400(2) ALG_TYPE_RSA
Algorithm
Sub
-id: 0x0(0) ALG_SID_RSA_ANY
0000 52 53 41 32 RSA2
0000 ...
048c
Encryption test passed
CertUtil: -store command completed successfully.
PS C:>
Enabling/Disabling CryptoAPI 2.0
Enabling CryptoAPI 2.0 Diagnostic Logging
wevtutil sl microsoft-windows-capi2/operational /e:
True
Disabling CryptoAPI 2.0 Diagnostic Logging
wevtutil sl microsoft-windows-capi2/operational /e:
False
More details for Troubleshooting PKI Problems on Windows
Troubleshooting PKI Problems on Windows
PKI Info; those are stored in AD ; See the following Snap.using ADSIEDIT.MSC
Also you can see the ADCS info using DSSITE.MSC
Some key Points.
- Cert Templates are stored in AD (Configuration Partition).
- Enterprise Certificate Server in a Domain controller is enabled LDAPS(636) & GC SSL(3269) ports for all the Domain controller)
- [Due to Certificate Template Domain Controller]
- If all Sub CAs host the same certificate templates for enrolment those servers we can use for Redundancy & fault tolerance.
- Also you can use Certificate server cluster for Redundancy & fault tolerance.
PKI Events.
(Snap is taken from Windows Server 2008 PKI — Brian Komar)
Certificate Server Registry Key (Path)
We are used «certutil -setreg» for changing those keys.
___________________________________________________
Some Useful Links
- How to enable LDAP signing in Windows Server 2008
- TroubleshootingLDAP Over SSL
- Reading LDAP SSL Network Traffic with NetMon 3.4 and NMDecrypt
- How to decrypt an SSL or TLS session by using Wireshark
- How to enable LDAP over SSL with a third-party certification authority
- Certutil Examples for Managing Active Directory Certificate Services (AD CS)
from the Command Line - Configure SSL/TLS on a Web site in the domain with an Enterprise CA
- What’s New in AD CS and PKI?
- How to add a Subject Alternative Name to a secure LDAP certificate
- Custom Certificate Request in Windows Vista
- Step-by-Step Example Deployment of the PKI Certificates for Configuration Manager: Windows Server 2008 Certification Authority
- Publish certificates in a foreign Active Directory forest
- Exporting Certificates using CertUtil
- VPN Client Compatibility with Windows 7 and Windows Server 2008 R2
- Online Responder Installation, Configuration, and Troubleshooting Guide
- LDAP client tracing… using Tracelog
- HowTo: Determine if a user has logged on via smart card
LDAP (Lightweight Directory Access Protocol) — это протокол для доступа к службам каталогов, который широко применяется в Windows Server 2012 для управления пользователями, группами и другой информацией. LDAP также используется для проверки подлинности и авторизации пользователей. Настройка LDAP на сервере Windows Server 2012 является важным шагом для обеспечения безопасности и эффективной работы сети.
В этой статье мы рассмотрим шаги по настройке LDAP на сервере Windows Server 2012. Мы рассмотрим, как установить и настроить службу Active Directory Domain Services (AD DS) и как создать и настроить объекты каталога, такие как пользователи и группы. Мы также рассмотрим процесс настройки авторизации и проверки подлинности через LDAP.
Вам понадобятся права администратора для выполнения этих шагов. Перед началом настройки LDAP удостоверьтесь, что ваш сервер Windows Server 2012 находится в рабочем состоянии и имеет подключение к Интернету. Также убедитесь, что у вас есть все необходимые учетные данные и информация о сети, такие как IP-адрес сервера и домена, которые вы хотите использовать для настройки LDAP.
Примечание: Настройка LDAP может быть сложной процедурой, поэтому рекомендуется следовать инструкциям шаг за шагом и бэкапировать важные данные перед внесением изменений.
Содержание
- Установка Windows Server 2012
- Создание учетной записи администратора
- Установка службы Active Directory
- Создание контейнера для LDAP
- Создание группы пользователей
- Настройка разрешений для группы
- Создание пользователей в LDAP
Установка Windows Server 2012
- Вставьте загрузочный носитель (диск или флешку) с операционной системой Windows Server 2012 в компьютер или сервер.
- Перезагрузите компьютер или сервер и выберите загрузку с установочного носителя.
- На экране выбора региона и языка, выберите соответствующие настройки и щелкните «Далее».
- Нажмите на ссылку «Установить сейчас» на экране «Установка операционной системы».
- Примите лицензионное соглашение и нажмите «Далее».
- На экране выбора типа установки, выберите «Пользовательская: установка новой копии с удалением всех старых данных» и нажмите «Далее».
- Выберите диск для установки операционной системы и нажмите «Далее».
- Дождитесь завершения установки операционной системы.
- После завершения установки будет запущен мастер настройки Windows Server 2012, который поможет вам настроить базовые параметры операционной системы.
- Следуйте инструкциям мастера настройки для настройки имени компьютера, пароля администратора и других необходимых параметров.
После завершения мастера настройки Windows Server 2012 вы будете готовы приступить к настройке LDAP на сервере.
Создание учетной записи администратора
1. Откройте Панель управления на сервере Windows Server 2012.
2. Выберите Учетные записи пользователей в меню Управление пользователями.
3. Нажмите на Создать новую учетную запись.
4. Введите имя пользователя и его полное имя в соответствующие поля. Стойте на внимании, что полное имя может быть отображено в системных сообщениях и логах.
5. Укажите сильный пароль для учетной записи. Пароль должен содержать комбинацию букв верхнего и нижнего регистра, цифр и специальных символов.
6. Включите или отключите опцию Изменение пароля при следующем входе, в зависимости от ваших требований безопасности.
7. Выберите вариант Администратор в качестве типа учетной записи, чтобы назначить административные привилегии.
8. Нажмите на Создать, чтобы завершить процесс создания учетной записи администратора.
Теперь у вас есть учетная запись администратора, которую можно использовать для управления сервером Windows Server 2012 через LDAP.
Установка службы Active Directory
1. Запустите Установщик Windows Server 2012 и выберите «Добавить роли и компоненты».
2. В Стандартном установочном типе выберите «Службы домена Active Directory».
3. Инструкция по конфигурации появится после выбора службы домена Active Directory. Нажмите «Добавить службы домена Active Directory».
4. Появится окно с предупреждением о необходимости установки роли DNS сервера. Нажмите «Добавить роли и функции».
5. Выберите «Сервер DNS» в списке ролей и нажмите «Далее».
6. Появится окно с предупреждением о необходимости установки роли AD DS (службы домена Active Directory). Нажмите «Добавить роли и функции».
7. Выберите «Службы домена Active Directory» в списке ролей и нажмите «Далее».
8. Прочитайте описание настройки службы домена Active Directory и нажмите «Далее».
9. Настройте опции установки службы домена Active Directory по своему усмотрению и нажмите «Далее».
10. Подтвердите выбранные опции установки и нажмите «Установить».
11. Дождитесь завершения установки службы домена Active Directory.
12. После завершения установки службы домена Active Directory, сервер будет перезапущен.
Создание контейнера для LDAP
Прежде чем мы сможем настраивать службу LDAP в Windows Server 2012, нам необходимо создать контейнер для хранения данных.
Вот шаги, которые нужно выполнить для создания контейнера:
- Откройте «Службы компонентов» через «Панель управления».
- В меню «Вид» выберите «Каталоги» и перейдите в «Активные каталоги».
- Нажмите правой кнопкой мыши на папке «Активные каталоги» и выберите «Новый» -> «Каталог».
- Установите имя для контейнера, например, «LDAP».
- Во вкладке «Параметры» установите тип контейнера как «Корневой контейнер».
- Нажмите «ОК», чтобы создать контейнер.
Поздравляю, вы только что создали контейнер для LDAP! Теперь мы готовы приступить к настройке службы LDAP в Windows Server 2012.
Создание группы пользователей
1. Откройте «Панель управления» на сервере Windows Server 2012.
2. Выберите «Инструменты» и затем «Установка и удаление ролей».
3. Выберите «Добавить роль» и выберите «Служба домена Active Directory». Нажмите «Далее».
4. Пройдите по мастеру установки, приняв стандартные настройки. Нажмите «Далее» и «Установить».
5. После установки службы домена Active Directory, вернитесь в «Панель управления».
6. Выберите «Администрирование служб Active Directory» и затем «Пользователи и компьютеры Active Directory».
7. Щелкните правой кнопкой мыши на «Пользователи» в разделе «Домен» и выберите «Новая группа».
8. Введите имя группы, которое хотите создать, и нажмите «ОК».
9. Выберите «Добавить» и введите имя пользователей, которых вы хотите добавить в данную группу.
10. Нажмите «ОК», чтобы завершить создание группы пользователей.
Поздравляю! Вы успешно создали группу пользователей в службе домена Active Directory на сервере Windows Server 2012.
Настройка разрешений для группы
Чтобы настроить разрешения для группы в Windows Server 2012, выполните следующие шаги:
- Откройте «Диспетчер сервера» и выберите «Пользователи и группы».
- Найдите нужную группу в списке и щелкните правой кнопкой мыши на ней.
- В контекстном меню выберите «Свойства».
- На вкладке «Разрешения» нажмите «Добавить».
- Введите имя или группу, для которых вы хотите настроить разрешения, и нажмите «Проверить имена».
- Выберите нужные разрешения из списка.
- Нажмите «ОК» для сохранения настроек.
Теперь выбранной группе будут присвоены установленные вами разрешения.
Создание пользователей в LDAP
Для создания пользователей в LDAP в Windows Server 2012 выполните следующие шаги:
- Откройте «Управление пользователями и группами» в меню «Серверный менеджер».
- Щелкните «Создать» в разделе «Действия».
- Выберите «Пользователь» и нажмите «Далее».
- Введите имя и фамилию пользователя.
- Введите имя учетной записи.
- Введите пароль и подтвердите его.
- Нажмите «Далее» и укажите необходимые параметры, такие как дата окончания действия учетной записи и роль пользователя.
- Нажмите «Готово», чтобы создать пользователя в LDAP.
После выполнения этих шагов пользователь будет успешно создан в LDAP и сможет использовать свою учетную запись для аутентификации на сервере.
Обратите внимание, что для создания пользователей в LDAP вам может потребоваться наличие соответствующих прав доступа.
LDAP (Lightweight Directory Access Protocol) – это протокол, который используется для доступа к и управления информацией о пользователях и ресурсах в распределенной сети. Обычно LDAP используется для настройки централизованного каталога, который содержит информацию о пользователях, группах и других объектах в сети.
Windows Server 2012 R2 предоставляет интегрированную поддержку для LDAP, что делает его одним из наиболее популярных и удобных выборов для создания централизованного каталога. В этой статье мы рассмотрим пошаговое руководство по настройке LDAP на Windows Server 2012 R2.
Процесс настройки LDAP включает в себя несколько шагов, которые мы рассмотрим далее. Сначала мы установим и настроим роль службы каталога Active Directory на сервере. Затем мы создадим и настроим объекты в каталоге, такие как пользователи и группы. Наконец, мы проверим работу LDAP, чтобы убедиться, что все настроено правильно.
Важно помнить, что настройка LDAP на Windows Server 2012 R2 требует административных привилегий и базовых знаний сетевой инфраструктуры. Рекомендуется проводить настройку под руководством опытного специалиста.
В следующих разделах мы рассмотрим каждый шаг подробнее и предоставим пошаговые инструкции для настройки LDAP на Windows Server 2012 R2. Следуйте этим инструкциям, чтобы успешно настроить и использовать LDAP в вашей сети.
Содержание
- Что такое LDAP
- Преимущества использования LDAP на Windows Server 2012 R2
- Установка и настройка LDAP
- Шаг 1: Установка роли LDAP
- Шаг 2: Создание домена Active Directory
- Шаг 3: Настройка параметров LDAP
- 1. Настройка прослушивающих портов
- 2. Настройка аутентификации
- 3. Настройка доступа к данным
- 4. Настройка стратегий безопасности
- Шаг 4: Проверка функциональности LDAP
- 1. Проверка настройки порта
- 2. Проверка настройки аутентификации
- 3. Проверка поиска объектов
Что такое LDAP
LDAP (Lightweight Directory Access Protocol) — это протокол, который используется для доступа к службам каталога. Он позволяет клиентам выполнить поиск, добавление, изменение и удаление записей в каталоге.
Каталог — это база данных, которая хранит структурированную информацию о ресурсах, таких как пользователи, компьютеры, группы и другие объекты. LDAP предоставляет клиентам возможность получить доступ к этой информации и выполнять различные операции с записями в каталоге.
LDAP является стандартом в индустрии и широко используется в сетевых приложениях, таких как веб-серверы, электронная почта, VPN и множество других систем. Он обеспечивает простой и эффективный способ хранения и доступа к данным в каталогах, что делает его очень полезным инструментом для организации и управления информацией о пользователях и ресурсах в сети.
LDAP работает по клиент-серверной модели, где клиенты отправляют запросы на сервер, а сервер отвечает на них. Клиенты могут выполнять операции поиска, добавления, изменения и удаления записей, а сервер обрабатывает эти запросы и возвращает результаты.
LDAP использует иерархическую модель организации данных, где информация о пользователях и ресурсах хранится в виде древовидной структуры. Каждая запись в каталоге имеет уникальное имя, которое состоит из компонентов, разделенных запятыми. Компоненты называются rDN (Relative Distinguished Name) и определяют положение записи в древовидной структуре.
LDAP также поддерживает различные атрибуты, которые описывают данные в записях. Атрибуты могут быть одиночными или множественными, и хранят информацию, такую как имена, адреса, телефоны и другие характеристики объектов.
Использование LDAP для настройки службы каталога на Windows Server 2012 R2 позволяет эффективно управлять пользователями и ресурсами в сети, обеспечивая централизованное хранение и доступ к информации.
Преимущества использования LDAP на Windows Server 2012 R2
LDAP (Lightweight Directory Access Protocol) — протокол доступа к каталогам, который служит для управления и доступа к информации в иерархических каталогах. Использование LDAP на сервере Windows Server 2012 R2 имеет несколько преимуществ.
- Централизованное управление данными. LDAP предоставляет возможность хранить и организовывать информацию о пользователях, группах, ресурсах и других объектах в централизованном каталоге. Это позволяет администраторам эффективно управлять данными, контролировать доступ и осуществлять авторизацию пользователей.
- Удобный поиск и доступ к данным. С помощью LDAP на Windows Server 2012 R2 можно выполнять быстрый и эффективный поиск информации в каталоге. Пользователи могут получать доступ к данным через LDAP-клиенты, такие как Active Directory Users and Computers, что упрощает проведение операций с данными и повышает производительность.
- Интеграция с другими системами. LDAP обеспечивает возможность интеграции с различными системами, такими как почтовые серверы, веб-приложения, VPN-серверы и др. Это позволяет синхронизировать данные и обеспечить единый доступ к ним, что способствует повышению эффективности работы и безопасности системы.
- Управление доступом и безопасностью. LDAP предоставляет механизмы аутентификации, контроля доступа и шифрования данных. Это позволяет обеспечить безопасность информации, контролировать доступ пользователей к ресурсам и предотвращать несанкционированный доступ к данным.
В целом, использование LDAP на Windows Server 2012 R2 позволяет организовать эффективное управление данными, повысить безопасность и удобство доступа к информации. Это способствует повышению производительности и эффективности работы системы в целом.
Установка и настройка LDAP
Шаг 1: Установка роли LDAP
- Откройте панель управления сервером и выберите «Установка и удаление ролей».
- На экране выбора ролей установите отметку напротив «Службы доменных служб» и нажмите «Далее».
- Продолжайте установку, выбрав установку «Локального сервера AD DS» и нажав «Далее».
- По завершении установки сервер будет перезагружен.
Шаг 2: Создание и настройка домена
- После перезагрузки сервера, откройте «Server Manager» и выберите «Добавить роль и функцию».
- Первым этапом выберите «Установка процесса» и нажмите «Далее».
- На странице выбора ролей выберите «Службы доменного контроллера Active Directory» и нажмите «Далее».
- Продолжайте установку, выбрав установку «Базовый службы домена» и нажав «Далее».
- Настройте имя вашего домена и дадайте необходимые учетные данные.
- Завершите установку и перезагрузите сервер.
Шаг 3: Создание и настройка LDAP
- Откройте «Server Manager» и выберите «Функции».
- Выберите «Добавить функцию» и найдите «Службы доменного поля LDAP».
- Установите флажок напротив «Службы доменного поля LDAP» и нажмите «Установить».
- После установки переходите к настройкам LDAP, указав необходимые параметры, такие как порт, SSL и директорию.
- Сохраните настройки и перезапустите службу LDAP для применения изменений.
Шаг 4: Проверка настройки LDAP
- Откройте командную строку и введите команду «telnet localhost порт», где порт — это номер порта вашей службы LDAP.
- Если соединение установлено успешно, вы будете подключены к службе LDAP и увидите результаты запроса.
- Для проверки работы LDAP можно использовать также специальное программное обеспечение, например, LDAP Browser или LDAP Admin.
После успешной установки и настройки LDAP вы сможете использовать его для управления данными в вашем домене, а также для авторизации пользователей и доступа к ресурсам.
Шаг 1: Установка роли LDAP
Перед тем, как начать настраивать LDAP на Windows Server 2012 R2, необходимо установить соответствующую роль на сервере.
Для установки роли LDAP следуйте следующим шагам:
- Запустите «Серверный менеджер» на сервере Windows Server 2012 R2.
- На панели навигации слева выберите «Управление» и затем «Добавить роли и компоненты».
- В мастере добавления ролей и компонентов нажмите «Далее».
- Выберите сервер, на котором желаете установить роль LDAP, и нажмите «Далее».
- В списке ролей найдите «Службы доменных служб каталогов» и отметьте его галочкой.
- В появившемся окне «Служба доменных служб каталогов» нажмите «Добавить функции».
- Нажмите «Далее» и затем «Установить». Подождите, пока установка роли не будет завершена.
- После завершения установки нажмите «Закрыть».
Теперь роль LDAP установлена на сервере Windows Server 2012 R2 и готова к настройке.
Шаг 2: Создание домена Active Directory
После установки Windows Server 2012 R2 на компьютер сервера, необходимо создать домен Active Directory, который позволит управлять пользователями и группами в сети.
Для создания домена Active Directory выполните следующие шаги:
- Запустите «Server Manager» с рабочего стола или из меню «Start».
- На главной странице «Server Manager» нажмите на «Add roles and features» в разделе «Dashboard».
- В открывшемся «Add Roles and Features Wizard» нажмите «Next» на первом экране.
- Выберите «Role-based or feature-based installation» и нажмите «Next».
- Выберите сервер, на котором будет создан домен Active Directory, и нажмите «Next».
- На экране «Server Roles» найдите «Active Directory Domain Services» и отметьте его галочкой. Затем нажмите «Next».
- На экране «Features» можно оставить значения по умолчанию и нажать «Next».
- На экране «AD DS» нажмите «Next».
- На экране «Confirm installation selections» нажмите «Install».
- После завершения установки нажмите «Close».
- В «Server Manager» нажмите на «Promote this server to a domain controller» в разделе «Notifications».
- В открывшемся «Active Directory Domain Services Configuration Wizard» выберите «Add a new forest» и укажите имя вашего домена. Затем нажмите «Next».
- Выберите уровень функциональности домена и леса, а также пароль администратора домена. Затем нажмите «Next».
- Укажите путь для файлов базы данных, журнала транзакций и SYSVOL. Затем нажмите «Next».
- На экране «DNS Options» оставьте автоматическую настройку и нажмите «Next».
- На экране «Additional Options» можно оставить значения по умолчанию и нажать «Next».
- На экране «Paths» можно оставить значения по умолчанию и нажать «Next».
- Проверьте все выбранные параметры и нажмите «Next» для начала установки.
- После завершения установки компьютер будет перезагружен и создан новый домен Active Directory.
Теперь вы создали домен Active Directory на сервере Windows Server 2012 R2. В следующих шагах вы сможете добавить и управлять пользователями и группами в вашей сети.
Шаг 3: Настройка параметров LDAP
После установки службы LDAP на Windows Server 2012 R2 необходимо настроить параметры службы, чтобы обеспечить корректную работу и безопасность системы. Ниже приведены основные параметры, которые следует настроить при настройке LDAP.
1. Настройка прослушивающих портов
LDAP использует TCP/IP протокол для общения между клиентами и сервером. По умолчанию, LDAP слушает порт 389 для обычного соединения и порт 636 для защищенного соединения с использованием SSL/TLS.
Чтобы настроить порты, откройте файл конфигурации службы LDAP (обычно расположен в директории C:\Windows\System32\ldap.conf) и отредактируйте следующие строки:
# Порт для обычного соединения LDAP_PORT=389 # Порт для защищенного соединения с использованием SSL/TLS LDAPS_PORT=636
Сохраните файл после внесения изменений и перезапустите службу LDAP, чтобы изменения вступили в силу.
2. Настройка аутентификации
LDAP поддерживает различные методы аутентификации, такие как базовая аутентификация и аутентификация с использованием SASL. При настройке LDAP следует выбрать подходящий метод аутентификации в зависимости от требований системы и безопасности.
Для выбора метода аутентификации, откройте файл конфигурации службы LDAP и отредактируйте следующую строку:
# Метод аутентификации LDAP_AUTH_METHOD=simple
В данном примере используется базовая аутентификация (simple). После выбора метода аутентификации, сохраните файл и перезапустите службу LDAP.
3. Настройка доступа к данным
LDAP позволяет настраивать доступ к данным с помощью правил доступа или списков контроля доступа (ACL). С помощью ACL можно указать, кто имеет доступ к каким данным и с какими правами.
Для настройки ACL, откройте файл конфигурации службы LDAP и добавьте следующую секцию:
# ACL ACCESS_CONTROL=["dn.subtree",""
"by anonymous auth",
"by self write",
"by * read"]
В данном примере, анонимный доступ разрешен только для чтения данных, а пользователь может записывать в свою собственную запись.
Сохраните файл после внесения изменений и перезапустите службу LDAP.
4. Настройка стратегий безопасности
LDAP поддерживает различные стратегии безопасности, такие как использование SSL/TLS для защиты соединения и авторизацию на основе сертификатов.
Для настройки стратегий безопасности, откройте файл конфигурации службы LDAP и отредактируйте следующие строки:
# Использовать или не использовать SSL/TLS USE_TLS=true # Путь к сертификатам SSL/TLS CERTIFICATE_PATH=C:\path\to\certificate # Путь к приватному ключу SSL/TLS PRIVATE_KEY_PATH=C:\path\to\private_key
Сохраните файл после внесения изменений и перезапустите службу LDAP.
После настройки всех параметров LDAP, система будет готова к использованию. Убедитесь, что все параметры настроены правильно и соответствуют требованиям вашей организации.
Шаг 4: Проверка функциональности LDAP
После настройки сервера LDAP на Windows Server 2012 R2 необходимо проверить его функциональность, чтобы убедиться, что все работает корректно. Для этого можно использовать различные инструменты и методы.
1. Проверка настройки порта
-
Убедитесь, что порт LDAP (по умолчанию 389) открыт и доступен для подключения. Для этого можно использовать команду Telnet:
telnet localhost 389
Если соединение установлено успешно и вы видите пустой экран, значит порт открыт.
2. Проверка настройки аутентификации
-
Проверьте, что корректно заданы учетные данные для аутентификации на сервере. Для этого можно использовать консольную утилиту ldapsearch:
ldapsearch -x -D "имя_пользователя" -W -b "базовый_путь_домена"
Вам будет запрошен пароль для пользователя. Если получите список записей, значит аутентификация работает.
3. Проверка поиска объектов
-
Проверьте, что сервер корректно выполняет поиск объектов. Для этого можно использовать консольную утилиту ldapsearch с фильтром:
ldapsearch -x -D "имя_пользователя" -W -b "базовый_путь_домена" "(условие_поиска)"
Условие поиска может быть любым, например, «(objectClass=пользователь)». Если получите список найденных объектов, значит поиск работает.
Правильная настройка и функционирование сервера LDAP на Windows Server 2012 R2 открывает широкие возможности для управления и аутентификации пользователей в системе. После проведения указанных проверок можно приступать к использованию данного сервиса на практике.