add minica.md
This commit is contained in:
		
							
								
								
									
										66
									
								
								content/post/2024-10-10-minica.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								content/post/2024-10-10-minica.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,66 @@
 | 
			
		||||
---
 | 
			
		||||
title: "minica - программа для создания сертификатов ssl"
 | 
			
		||||
author: "Dmitry Belyaev"
 | 
			
		||||
date: 2024-10-10T16:45:26+03:00
 | 
			
		||||
tags: [minica,pkcs12,https,iis,apache,nginx,openssl,1C,1C Link]
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## Введение
 | 
			
		||||
 | 
			
		||||
Начиная с платформы **8.3.25**, для автоматического обновления тонких клиентов через веб-публикацию, включая **1C Link**, необходимо использовать либо протокол **http**, что не является безопасным, либо **https** с корректным сертификатом, так как самоподписанный сертификат больше не подходит.
 | 
			
		||||
 | 
			
		||||
## Создание сертификатов
 | 
			
		||||
 | 
			
		||||
Для решения этой задачи можно воспользоваться программой **minica**, доступной по следующей ссылке:
 | 
			
		||||
https://github.com/jsha/minica
 | 
			
		||||
 | 
			
		||||
Например:
 | 
			
		||||
 | 
			
		||||
~~~bash
 | 
			
		||||
minica -ca-cert cb-company-ca.pem -ca-key cb-company-ca-key.pem -domains *.company.local,mysrv,anothername,localhost -ip-addresses 127.0.0.1,192.168.1.21
 | 
			
		||||
~~~
 | 
			
		||||
 | 
			
		||||
Получим файлы CA:
 | 
			
		||||
 | 
			
		||||
- `cb-company-ca.pem` — корневой сертификат, можно переименовать в `.crt` и установить на клиентах и на сервере
 | 
			
		||||
 | 
			
		||||
- `cb-company-ca-key.pem` — ключ коренного сертификата (не нужен)
 | 
			
		||||
 | 
			
		||||
и папку `_.company.local` с файлами:
 | 
			
		||||
- `cert.pem` — можно переименовать в `.crt` и установить на сервер
 | 
			
		||||
- `key.pem` — ключ сертификата
 | 
			
		||||
 | 
			
		||||
Но это файлы в формате `pem` (для закрытого ключа), который подходит для **apache** и **nginx**, но не подойдёт для **IIS**.
 | 
			
		||||
 | 
			
		||||
## Конвертация для IIS
 | 
			
		||||
 | 
			
		||||
Для использования с **IIS** нужно сконвертировать файлы сертификатов.
 | 
			
		||||
Это можно сделать с помощью `openssl`:
 | 
			
		||||
 | 
			
		||||
~~~bash
 | 
			
		||||
openssl pkcs12 -export -out cert.pfx -inkey .\key.pem -in .\cert.pem -certfile .\cert.pem
 | 
			
		||||
~~~
 | 
			
		||||
 | 
			
		||||
В итоге получится файл `cert.pfx`, который можно импортировать в хранилище сертификатов Windows и использовать в **IIS**.
 | 
			
		||||
 | 
			
		||||
## Установка на клиентах
 | 
			
		||||
 | 
			
		||||
Сертификаты CA нужно установить на клиентах в "Доверенные корневые центры сертификации".
 | 
			
		||||
 | 
			
		||||
На Windows можно установить так:
 | 
			
		||||
 | 
			
		||||
~~~bat
 | 
			
		||||
certutil -addstore "Root" 1C-Link-CA.crt
 | 
			
		||||
~~~
 | 
			
		||||
 | 
			
		||||
## Сертификаты 1С Линк
 | 
			
		||||
 | 
			
		||||
Сейчасм можно скачать тут:
 | 
			
		||||
https://d.1c.link/1C-Link-CA.crt
 | 
			
		||||
 | 
			
		||||
Но путь могут изменить, лучше посмотреть в документации. 
 | 
			
		||||
 | 
			
		||||
## Заключение
 | 
			
		||||
 | 
			
		||||
Исползование корневых сертификатов созданных с помощью **minica** позволяет пользоваться автоматическим обновлением тонких клиентов, при этом не жертвуя безопасностью.
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user