Как правило создаётся конфигурационный файл. Им будут определяться параметры подписи запроса. В Ubuntu это можно сделать следующей командой (где $user — имя пользователя):
nano /home/$user/ca.config
Примерное содержание конфигурационного файла представлено ниже
[ ca ]
· default_ca = CA_CLIENT # При подписи сертификатов # использовать секцию CA_CLIENT.
[ CA_CLIENT ]
· dir =./db # Каталог для служебных файлов.
· certs = $dir/certs # Каталог для сертификатов.
· new_certs_dir = $dir/newcerts # Каталог для новых сертификатов.
· database = $dir/index.txt # Файл с базой данных подписанных сертификатов.
· serial = $dir/serial # Файл содержащий серийный номер сертификата (в шестнадцатеричном формате).
· certificate =./ca.crt # Файл сертификата CA.
· private_key =./ca.key # Файл закрытого ключа CA.
· default_days = 365 # Срок действия подписываемого сертификата.
· default_crl_days = 7 # Срок действия CRL.
· default_md = md5 # Алгоритм подписи.
· policy = policy_anything # Название секции с описанием политики в отношении данных сертификата.
[ policy_anything ]
· countryName = optional # Поля optional - не обязательны, supplied - обязательны
· stateOrProvinceName = optional
· localityName = optional
· organizationName = optional
· organizationalUnitName = optional
· commonName = optional
· emailAddress = optional
Необходимо подготовить структуру каталогов и файлов, соответствующую описанной в конфигурационном файле. В ОС Ubuntu это делается при помощи следующих команд:
mkdir db
mkdir db/certs
mkdir db/newcerts
touch db/index.txt
echo "01"> db/serial
Создание клиентского закрытого ключа и запроса на сертификат (CSR) осуществляется следующим образом:
openssl req -new -newkey rsa:1024-keyout client01.key -subj -Ключ
/C=RU/ST=Moscow/L=Moscow/O=Companyname/OU=User/CN=etc/emailAddress=support@site.com -out
client01.csr
Для создания подписи запроса на сертификат (CSR) с помощью доверенного сертификата (CA) используются параметры, заданные в файле ca.config, следующим образом:
openssl ca -config ca.config -in client01.csr -out client01.crt -batch
Создание сертификата в формате PKCS#12 для браузера клиента производится следующей командой
openssl pkcs12 -export -in client01.crt -inkey client01.key -certfile ca.crt -out client01.p12 -passout
pass:q1w2e3
Порядок выполнения лабораторной работы
1. Создайте собственный самоподписанный доверенный сертификат. Собственный доверенный сертификат (Certificate Authority или CA) необходим для подписи клиентских сертификатов и для их проверки при авторизации клиента веб-сервером.
2. Создайте сертификат сервера и подпишите его собственной подписью
3. Создайте клиентские сертификаты (Подготовьте CA, создайте клиентский закрытый ключ и запрос на сертификат, подпись запроса на сертификат, сертификат в формате PKCS#12 для браузера клиента)
4. Составьте отчет, дайте пояснения и сделайте выводы по всем ключевым действиям
Содержание отчёта
В отчет по работе должны войти следующие разделы:
· Титульный лист с названием работы;
· Задание;
· Цель работы и краткие теоретические сведения по тематике работы;
· Снимки экранов, полученных в результате выполнения формирования сертификатов, и пояснения к ним;
· Заключение, содержащее выводы по всем этапам формирования сертификатов.
Контрольные вопросы
1. Что такое самоподписанный доверенный сертификат?
2. Какие преимущества дает использование SSL?
3. Как посетители сайта могут узнать используется ли SSL?
4. Что означает "доверие" браузера к сертификату?
5. Как получить SSL-сертификат?
6. Кто выдает SSL-сертификат?
7. Что такое Центр Сертификации?
8. Что такое цифровая подпись сертификата?
9. Чем протокол HTTPS отличается от HTTP?
10. В основе SSL лежит симметричный или асимметричный алгоритм?
Практикум №6
Установка и настройка сервера приложений Glassfish
Цель работы
Овладеть навыками настройки виртуальных хостов, HTTP-аутентификации и SSL/TLS на сервере приложений Glassfish,
Краткие теоретические сведения
Установка Glassfish
1. Перейти на сайт: https://javaee.github.io/glassfish/download и скачать нужную версию glassfish (в данном случае 5.0).
2. Распаковать скачанный архив в выбранную вами папку
3. Скачать и установить версию JDK, поддерживаемую вашей версией glassfish с сайта: http://www.oracle.com/technetwork/java/javase/downloads/index.html
4. Перейти в папку с установленным glassfish и перейти в …\glassfish\config\ и открыть в текстовом редакторе файл asenav.bat
5. Добавить в файл asenav.bat расположение скачанного вами JDK:
asenav.bat
set AS_IMQ_LIB=..\..\mq\lib
set AS_IMQ_BIN=..\..\mq\bin
set AS_CONFIG=..\config
set AS_INSTALL=..
set AS_DEF_DOMAINS_PATH=..\domains
set AS_DEF_NODES_PATH=..\nodes
set AS_DERBY_INSTALL=..\..\javadb
set AS_JAVA=F:\Program Files\Java\jdk1.8.144
AS_JAVA=F:\Program Files\Java\jdk1.8.144 – переменная, содержащая путь к jdk.
Glassfish готов к эксплуатации.