Compare commits
7 Commits
621b6b68c0
...
master
Author | SHA1 | Date | |
---|---|---|---|
7958f33a9e | |||
64ab52571b
|
|||
86a584e465
|
|||
c4088cb74a
|
|||
579305158a
|
|||
124b8eb400
|
|||
b31f4b09f8
|
@@ -42,6 +42,7 @@ enableRobotsTXT = true
|
||||
mastodon = "social.v.b4tman.ru/@b4tman"
|
||||
# bitbucket = "b4tman"
|
||||
vk = "0xffff"
|
||||
boosty="0xffff"
|
||||
|
||||
[[menu.main]]
|
||||
name = "Блог"
|
||||
|
@@ -11,6 +11,5 @@ tags: [sponsor,donation,бусти,донаты,поддержка,спонсо
|
||||
Поддержать меня можно тут:
|
||||
|
||||
- [Подписка на Бусти](https://boosty.to/0xffff)
|
||||
- [DonationAlerts](https://www.donationalerts.com/r/b4tman1)
|
||||
- [Канал на VK Play Live](https://live.vkplay.ru/0xffff)
|
||||
|
||||
|
70
content/post/2024-10-10-minica.md
Normal file
70
content/post/2024-10-10-minica.md
Normal file
@@ -0,0 +1,70 @@
|
||||
---
|
||||
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]
|
||||
---
|
||||
|
||||
Описал как создавать и использовать сертификаты для веб публикаций 1С.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Введение
|
||||
|
||||
Для автоматического обновления тонких клиентов через веб-публикацию, включая **1C Link**, необходимо использовать либо протокол **http**, что не является безопасным, либо **https** с корректным сертификатом, так как самоподписанный сертификат больше не подходит.
|
||||
|
||||
## Создание сертификатов
|
||||
|
||||
Для решения этой задачи можно воспользоваться программой **minica**, доступной по следующей ссылке:
|
||||
https://github.com/jsha/minica
|
||||
|
||||
Например:
|
||||
|
||||
~~~bash
|
||||
minica -ca-cert company-ca.pem -ca-key company-ca-key.pem -domains *.company.local,mysrv,anothername,localhost -ip-addresses 127.0.0.1,192.168.1.21
|
||||
~~~
|
||||
|
||||
Получим файлы CA:
|
||||
|
||||
- `company-ca.pem` — корневой сертификат, можно переименовать в `.crt` и установить на клиентах и на сервере
|
||||
|
||||
- `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** позволяет пользоваться автоматическим обновлением тонких клиентов, при этом не жертвуя безопасностью.
|
||||
|
216
data/beautifulhugo/social.toml
Normal file
216
data/beautifulhugo/social.toml
Normal file
@@ -0,0 +1,216 @@
|
||||
[[social_icons]]
|
||||
id = "email"
|
||||
url = "mailto:%s"
|
||||
title = "Email me"
|
||||
icon = "fas fa-envelope"
|
||||
|
||||
[[social_icons]]
|
||||
id = "boosty"
|
||||
url = "https://boosty.to/%s"
|
||||
title = "Boosty"
|
||||
icon = "fa fa-bolt"
|
||||
|
||||
[[social_icons]]
|
||||
id = "github"
|
||||
url = "https://github.com/%s"
|
||||
title = "GitHub"
|
||||
icon = "fab fa-github"
|
||||
|
||||
[[social_icons]]
|
||||
id = "gitlab"
|
||||
url = "https://gitlab.com/%s"
|
||||
title = "GitLab"
|
||||
icon = "fab fa-gitlab"
|
||||
|
||||
[[social_icons]]
|
||||
id = "bitbucket"
|
||||
url = "https://bitbucket.org/%s"
|
||||
title = "Bitbucket"
|
||||
icon = "fab fa-bitbucket"
|
||||
|
||||
[[social_icons]]
|
||||
id = "twitter"
|
||||
url = "https://twitter.com/%s"
|
||||
title = "Twitter"
|
||||
icon = "fab fa-twitter"
|
||||
|
||||
[[social_icons]]
|
||||
id = "slack"
|
||||
url = "https://%s.slack.com/"
|
||||
title = "Slack"
|
||||
icon = "fab fa-slack"
|
||||
|
||||
[[social_icons]]
|
||||
id = "reddit"
|
||||
url = "https://reddit.com/u/%s"
|
||||
title = "Reddit"
|
||||
icon = "fab fa-reddit-alien"
|
||||
|
||||
[[social_icons]]
|
||||
id = "linkedin"
|
||||
url = "https://linkedin.com/in/%s"
|
||||
title = "LinkedIn"
|
||||
icon = "fab fa-linkedin"
|
||||
|
||||
[[social_icons]]
|
||||
id = "xing"
|
||||
url = "https://www.xing.com/profile/%s"
|
||||
title = "Xing"
|
||||
icon = "fab fa-xing"
|
||||
|
||||
[[social_icons]]
|
||||
id = "stackoverflow"
|
||||
url = "https://stackoverflow.com/%s"
|
||||
title = "StackOverflow"
|
||||
icon = "fab fa-stack-overflow"
|
||||
|
||||
[[social_icons]]
|
||||
id = "snapchat"
|
||||
url = "https://www.snapchat.com/add/%s"
|
||||
title = "Snapchat"
|
||||
icon = "fab fa-snapchat-ghost"
|
||||
|
||||
[[social_icons]]
|
||||
id = "instagram"
|
||||
url = "https://www.instagram.com/%s"
|
||||
title = "Instagram"
|
||||
icon = "fab fa-instagram"
|
||||
|
||||
[[social_icons]]
|
||||
id = "youtube"
|
||||
url = "https://www.youtube.com/%s"
|
||||
title = "Youtube"
|
||||
icon = "fab fa-youtube"
|
||||
|
||||
[[social_icons]]
|
||||
id = "soundcloud"
|
||||
url = "https://soundcloud.com/%s"
|
||||
title = "SoundCloud"
|
||||
icon = "fab fa-soundcloud"
|
||||
|
||||
[[social_icons]]
|
||||
id = "spotify"
|
||||
url = "https://open.spotify.com/user/%s"
|
||||
title = "Spotify"
|
||||
icon = "fab fa-spotify"
|
||||
|
||||
[[social_icons]]
|
||||
id = "bandcamp"
|
||||
url = "https://%s.bandcamp.com/"
|
||||
title = "Bandcamp"
|
||||
icon = "fab fa-bandcamp"
|
||||
|
||||
[[social_icons]]
|
||||
id = "itchio"
|
||||
url = "https://itch.io/profile/%s"
|
||||
title = "Itch.io"
|
||||
icon = "fas fa-gamepad"
|
||||
|
||||
[[social_icons]]
|
||||
id = "keybase"
|
||||
url = "https://keybase.io/%s"
|
||||
title = "Keybase"
|
||||
icon = "fab fa-keybase"
|
||||
|
||||
[[social_icons]]
|
||||
id = "vk"
|
||||
url = "https://vk.com/%s"
|
||||
title = "VK"
|
||||
icon = "fab fa-vk"
|
||||
|
||||
[[social_icons]]
|
||||
id = "paypal"
|
||||
url = "https://paypal.me/%s"
|
||||
title = "PayPal"
|
||||
icon = "fab fa-paypal"
|
||||
|
||||
[[social_icons]]
|
||||
id = "telegram"
|
||||
url = "https://telegram.me/%s"
|
||||
title = "Telegram"
|
||||
icon = "fab fa-telegram"
|
||||
|
||||
[[social_icons]]
|
||||
id = "500px"
|
||||
url = "https://500px.com/%s"
|
||||
title = "500px"
|
||||
icon = "fab fa-500px"
|
||||
|
||||
[[social_icons]]
|
||||
id = "codepen"
|
||||
url = "https://codepen.io/%s"
|
||||
title = "CodePen"
|
||||
icon = "fab fa-codepen"
|
||||
|
||||
[[social_icons]]
|
||||
id = "kaggle"
|
||||
url = "https://www.kaggle.com/%s"
|
||||
title = "kaggle"
|
||||
icon = "fab fa-kaggle"
|
||||
|
||||
[[social_icons]]
|
||||
id = "mastodon"
|
||||
url = "https://%s"
|
||||
title = "Mastodon"
|
||||
icon = "fab fa-mastodon"
|
||||
rel = "me"
|
||||
|
||||
[[social_icons]]
|
||||
id = "weibo"
|
||||
url = "https://weibo.com/%s"
|
||||
title = "Weibo"
|
||||
icon = "fab fa-weibo"
|
||||
|
||||
[[social_icons]]
|
||||
id = "medium"
|
||||
url = "https://medium.com/@%s"
|
||||
title = "Medium"
|
||||
icon = "fab fa-medium"
|
||||
|
||||
[[social_icons]]
|
||||
id = "discord"
|
||||
url = "https://discord.gg/%s"
|
||||
title = "Discord"
|
||||
icon = "fab fa-discord"
|
||||
|
||||
[[social_icons]]
|
||||
id = "strava"
|
||||
url = "https://www.strava.com/athletes/%s"
|
||||
title = "Strava"
|
||||
icon = "fab fa-strava"
|
||||
|
||||
[[social_icons]]
|
||||
id = "steam"
|
||||
url = "https://steamcommunity.com/id/%s"
|
||||
title = "Steam"
|
||||
icon = "fab fa-steam"
|
||||
|
||||
[[social_icons]]
|
||||
id = "quora"
|
||||
url = "https://www.quora.com/profile/%s"
|
||||
title = "Quora"
|
||||
icon = "fab fa-quora"
|
||||
|
||||
[[social_icons]]
|
||||
id = "amazonwishlist"
|
||||
url = "https://amzn.com/w/%s"
|
||||
title = "Amazon Wishlist"
|
||||
icon = "fab fa-amazon"
|
||||
|
||||
[[social_icons]]
|
||||
id = "slideshare"
|
||||
url = "https://www.slideshare.net/%s"
|
||||
title = "Slideshare"
|
||||
icon = "fab fa-slideshare"
|
||||
|
||||
[[social_icons]]
|
||||
id = "angellist"
|
||||
url = "https://www.angel.co/p/%s"
|
||||
title = "AngelList"
|
||||
icon = "fab fa-angellist"
|
||||
|
||||
[[social_icons]]
|
||||
id = "about"
|
||||
url = "%s"
|
||||
title = "About"
|
||||
icon = "fas fa-at"
|
@@ -11,10 +11,11 @@
|
||||
{{- $pages = $pages | first $limit -}}
|
||||
{{- end -}}
|
||||
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru" >
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:georss="http://www.georss.org/georss" >
|
||||
<channel>
|
||||
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
|
||||
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
|
||||
<language>{{.}}</language>{{end}}{{ with .Site.Params.author.email }}
|
||||
@@ -30,6 +31,7 @@
|
||||
<item turbo="true">
|
||||
<title>{{ .Title }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<category>native-yes</category>
|
||||
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||
{{ with .Site.Params.author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
@@ -41,8 +43,13 @@
|
||||
<header><h1>{{ .Title }}</h1></header>
|
||||
{{ .Content }}
|
||||
{{- printf "]]>" | safeHTML }}
|
||||
</turbo:content>
|
||||
</turbo:content>
|
||||
<content:encoded>
|
||||
{{- printf "<![CDATA[" | safeHTML }}
|
||||
{{ .Content }}
|
||||
{{- printf "]]>" | safeHTML }}
|
||||
</content:encoded>
|
||||
</item>
|
||||
{{ end }}
|
||||
</channel>
|
||||
</rss>
|
||||
</rss>
|
||||
|
@@ -10,6 +10,10 @@
|
||||
theme: 'light'
|
||||
};
|
||||
|
||||
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
remark_config.theme = "dark";
|
||||
}
|
||||
|
||||
(function(c) {
|
||||
for(var i = 0; i < c.length; i++){
|
||||
var d = document, s = d.createElement('script');
|
||||
@@ -18,6 +22,11 @@
|
||||
(d.head || d.body).appendChild(s);
|
||||
}
|
||||
})(remark_config.components || ['embed']);
|
||||
|
||||
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
|
||||
const newColorScheme = event.matches ? "dark" : "light";
|
||||
window.REMARK42.changeTheme(newColorScheme);
|
||||
});
|
||||
</script>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
Reference in New Issue
Block a user