Compare commits

...

7 Commits

Author SHA1 Message Date
7958f33a9e upd 2024-10-07-sponsor.md 2025-08-07 17:10:43 +00:00
64ab52571b rss: add tags for dzen.ru
https://dzen.ru/help/ru/website/rss-modify.html
2024-10-12 19:20:59 +03:00
86a584e465 fix remark42 theme 2024-10-10 23:17:20 +03:00
c4088cb74a add boosty social icon 2024-10-10 22:56:32 +03:00
579305158a fix minica post 2024-10-10 17:59:28 +03:00
124b8eb400 fix minica.md 2024-10-10 17:16:19 +03:00
b31f4b09f8 add minica.md 2024-10-10 17:13:00 +03:00
6 changed files with 306 additions and 4 deletions

View File

@@ -42,6 +42,7 @@ enableRobotsTXT = true
mastodon = "social.v.b4tman.ru/@b4tman"
# bitbucket = "b4tman"
vk = "0xffff"
boosty="0xffff"
[[menu.main]]
name = "Блог"

View File

@@ -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)

View 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** позволяет пользоваться автоматическим обновлением тонких клиентов, при этом не жертвуя безопасностью.

View 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"

View File

@@ -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>

View File

@@ -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 }}