master
Долгий Артём 2023-10-16 14:32:30 +03:00
parent b3f462262d
commit b9f2db9e08
1 changed files with 23 additions and 25 deletions

View File

@ -24,11 +24,11 @@ mkdir /home/$USER/cert && cd /home/$USER/cert
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /home/$USER/cert/astra.lan.key -out /home/$USER/cert/astra.lan.crt
```
`req -x509` - указывает, что мы хотим использовать управление запросами на подписание сертификатов X.509 (CSR). X.509 — это инфраструктура открытых ключей, используемая стандартами SSL и TLS для управления ключами и сертификатами;
`-nodes` - предписывает OpenSSL пропустить опцию защиты нашего сертификата кодовой фразой;
`-days 365` - эта опция устанавливает период действия сертификата. Здесь мы устанавливаем срок действия в один год. Многие современные браузеры отклоняют любые сертификаты, срок действия которых превышает один год;
`-newkey rsa:2048` - указывает, что мы хотим сгенерировать новый сертификат и новый ключ одновременно. Мы не создали требуемый ключ для подписи сертификата на предыдущем шаге, и поэтому нам нужно создать его вместе с сертификатом. Часть rsa:2048 предписывает создать ключ RSA длиной 2048 бит;
`-keyout` - эта строка указывает OpenSSL, где разместить генерируемый файл закрытого ключа;
`req -x509` - указывает, что мы хотим использовать управление запросами на подписание сертификатов X.509 (CSR). X.509 — это инфраструктура открытых ключей, используемая стандартами SSL и TLS для управления ключами и сертификатами;
`-nodes` - предписывает OpenSSL пропустить опцию защиты нашего сертификата кодовой фразой;
`-days 365` - эта опция устанавливает период действия сертификата. Здесь мы устанавливаем срок действия в один год. Многие современные браузеры отклоняют любые сертификаты, срок действия которых превышает один год;
`-newkey rsa:2048` - указывает, что мы хотим сгенерировать новый сертификат и новый ключ одновременно. Мы не создали требуемый ключ для подписи сертификата на предыдущем шаге, и поэтому нам нужно создать его вместе с сертификатом. Часть rsa:2048 предписывает создать ключ RSA длиной 2048 бит;
`-keyout` - эта строка указывает OpenSSL, где разместить генерируемый файл закрытого ключа;
`-out` - указывает OpenSSL, где разместить создаваемый сертификат.
Далее необходимо ответить на вопросы. Наиболее важная строка `Common Name`. Нужно ввести имя узла, которое будее использоваться для доступа к серверу. Чтобы иметь возможность использования сертификата в поддоменах, необходимо в имени указать маску поддоменов - `*.`. Например Common name для wildcard сертификата для домена astra.lan будет выглядеть так - `*.astra.lan`.
@ -60,7 +60,7 @@ mkdir /home/$USER/cert && cd /home/$USER/cert
openssl genrsa -out rootCA.key 2048
```
`genrsa` - создать закрытый ключ RSA
`genrsa` - создать закрытый ключ RSA
`-out` - выходной файл
Получим файл: `rootCA.key`
@ -70,12 +70,12 @@ openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 7200 -out rootCA.pem
```
`-x509` экземпляр сертификата;
`-new` новый запрос сертификата;
`-nodes` отключить шифрование выходного ключа;
`-key rootCA.key` файл ключа;
`-sha256` алгоритм подписи;
`-days 7200` период действия сертификата (в днях);
`-x509` экземпляр сертификата;
`-new` новый запрос сертификата;
`-nodes` отключить шифрование выходного ключа;
`-key rootCA.key` файл ключа;
`-sha256` алгоритм подписи;
`-days 7200` период действия сертификата (в днях);
`-out rootCA.pem` имя сгенерированного сертификата.
Пример вывода:
@ -151,10 +151,10 @@ CSR - обычно это та информация, которая отправ
openssl req -new -key astra.lan.key -out astra.lan-req.csr
```
`-req` - создать запрос на подпись
`-new` - новый запрос
`-key` - путь к закрытому ключу
`-out` - выходной файл
`-req` - создать запрос на подпись;
`-new` - новый запрос;
`-key` - путь к закрытому ключу;
`-out` - выходной файл;
Вводим [Пример]:
@ -178,12 +178,12 @@ email: [можно пропустить]
openssl x509 -req -in astra.lan-req.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out astra.lan.crt -days 999 -sha256
```
`req` - создать запрос на подпись
`in` - вводимый файл запроса
`CA` - файл корневого сертификата
`CAkey` - ключ корневого сертификата
`out` - выходной crt-файл
`days` - количество дней действия
`-req` - создать запрос на подпись;
`-in` - вводимый файл запроса;
`-CA` - файл корневого сертификата;
`-CAkey` - ключ корневого сертификата;
`-out` - выходной crt-файл;
`-days` - количество дней действия;
#### Заключительный этап
@ -202,11 +202,9 @@ sysadmin@doc:~/cert$ ls -l
В конфигурации web-сервера (Apache, Nginx) необходимо указать пути
- к сертификату - `astra.lan.crt`
- к сертификату - `astra.lan.crt`
- к приватному ключу - `astra.lan.key`
В браузеры на клиенты добавить в доверенные корневой сертификат нашего удостоверяющего центра `rootCA.pem`
***