зеркало из
https://github.com/iharh/notes.git
synced 2025-10-30 05:06:05 +02:00
m
Этот коммит содержится в:
родитель
b64c93eedd
Коммит
a50b664dd3
@ -1,7 +1,13 @@
|
|||||||
Vladimir Anatolievich Lepehin
|
Vladimir Anatolievich Lepehin
|
||||||
Director of EAES Institute
|
Director of EAES Institute
|
||||||
|
|
||||||
|
https://vk.com/vladimirlepehin
|
||||||
|
https://t.me/vladimirlepehin
|
||||||
|
https://boosty.to/rsse
|
||||||
|
|
||||||
2023
|
2023
|
||||||
|
Lepehin - The Economist Uncovers Rotshield Plans of 17:23
|
||||||
|
https://www.youtube.com/watch?v=kuzRwwVKSUE
|
||||||
Spets - Lepehin - Who Coontrols Putins Elites of 1:06:42
|
Spets - Lepehin - Who Coontrols Putins Elites of 1:06:42
|
||||||
https://www.youtube.com/watch?v=VqtuWkDKRWA
|
https://www.youtube.com/watch?v=VqtuWkDKRWA
|
||||||
DayTV - Peretolchin - Lepehin - Shock Therapy for Elites of 21:54 of ...
|
DayTV - Peretolchin - Lepehin - Shock Therapy for Elites of 21:54 of ...
|
||||||
|
|||||||
@ -28,6 +28,9 @@ marinina - hapiness formula
|
|||||||
key to yourself
|
key to yourself
|
||||||
C550C89667F8DF7981F76837BFA6253B
|
C550C89667F8DF7981F76837BFA6253B
|
||||||
|
|
||||||
|
2023
|
||||||
|
KeyMethod - Aliev - Ostretsov - Why Elites Slows Down Mind Development of 1:11:59
|
||||||
|
https://www.youtube.com/watch?v=JOXU95-HJhA
|
||||||
2021
|
2021
|
||||||
KeyMethod - Aliev - Gazenko for Cosmanauts of 8:38
|
KeyMethod - Aliev - Gazenko for Cosmanauts of 8:38
|
||||||
https://www.youtube.com/watch?v=3V_paqW1ch8
|
https://www.youtube.com/watch?v=3V_paqW1ch8
|
||||||
|
|||||||
@ -1,3 +1,5 @@
|
|||||||
|
2023
|
||||||
|
https://proglib.io/p/effektivnaya-rabota-s-json-v-go-2023-10-16
|
||||||
2020
|
2020
|
||||||
https://eli.thegreenplace.net/2020/optional-json-fields-in-go/
|
https://eli.thegreenplace.net/2020/optional-json-fields-in-go/
|
||||||
https://habr.com/ru/company/otus/blog/529318/
|
https://habr.com/ru/company/otus/blog/529318/
|
||||||
|
|||||||
2
pl/java/libfws/math/ml/djl.txt
Обычный файл
2
pl/java/libfws/math/ml/djl.txt
Обычный файл
@ -0,0 +1,2 @@
|
|||||||
|
https://docs.djl.ai/index.html
|
||||||
|
https://github.com/deepjavalibrary/djl
|
||||||
2
pl/java/libfws/math/ml/neureka.txt
Обычный файл
2
pl/java/libfws/math/ml/neureka.txt
Обычный файл
@ -0,0 +1,2 @@
|
|||||||
|
https://github.com/Gleethos/neureka
|
||||||
|
https://gleethos.github.io/neureka/showcase.html
|
||||||
@ -11,5 +11,8 @@ https://speedment.github.io/jpa-streamer/jpa-streamer/latest/stream-fundamentals
|
|||||||
https://speedment.github.io/jpa-streamer/jpa-streamer/latest/stream-fundamentals/terminal_operations.html
|
https://speedment.github.io/jpa-streamer/jpa-streamer/latest/stream-fundamentals/terminal_operations.html
|
||||||
https://github.com/speedment/jpa-streamer-demo/
|
https://github.com/speedment/jpa-streamer-demo/
|
||||||
|
|
||||||
|
2023
|
||||||
|
freeCodeCamp - Java Web App with Quakus and JPAStreamer – Tutorial 0:00 of 1:02:53
|
||||||
|
https://www.youtube.com/watch?v=KZnQ5R8Kd4I
|
||||||
2021
|
2021
|
||||||
https://piotrminkowski.com/2021/07/13/express-jpa-queries-as-java-streams/
|
https://piotrminkowski.com/2021/07/13/express-jpa-queries-as-java-streams/
|
||||||
|
|||||||
3
science/ai/llm/libs/list.txt
Обычный файл
3
science/ai/llm/libs/list.txt
Обычный файл
@ -0,0 +1,3 @@
|
|||||||
|
2023
|
||||||
|
https://betterprogramming.pub/frameworks-for-serving-llms-60b7f7b23407
|
||||||
|
https://nuancesprog.ru/p/19058/
|
||||||
7
science/ai/llm/libs/vllm.txt
Обычный файл
7
science/ai/llm/libs/vllm.txt
Обычный файл
@ -0,0 +1,7 @@
|
|||||||
|
https://vllm.readthedocs.io/en/latest/
|
||||||
|
https://github.com/vllm-project/vllm
|
||||||
|
|
||||||
|
https://vllm.readthedocs.io/en/latest/getting_started/installation.html
|
||||||
|
https://vllm.readthedocs.io/en/latest/getting_started/quickstart.html
|
||||||
|
|
||||||
|
https://vllm.readthedocs.io/en/latest/models/supported_models.html
|
||||||
115
security/ssl/cfssl.txt
Обычный файл
115
security/ssl/cfssl.txt
Обычный файл
@ -0,0 +1,115 @@
|
|||||||
|
https://cfssl.org/
|
||||||
|
https://github.com/cloudflare/cfssl
|
||||||
|
https://serveradmin.ru/kak-perevypustit-novyj-ca-dlya-openvpn/
|
||||||
|
https://serveradmin.ru/nastroyka-openvpn-na-centos/#Sozdanie_sertifikatov
|
||||||
|
|
||||||
|
В современном интернете очень активно используется протокол шифрования TLS. Чаще всего с ним сталкиваешься в HTTPS, VPN, STARTTLS (imap и smtp в основном). В Linux (и Unix в целом) этот протокол в основном реализован посредством OpenSSL. Это библиотека libssl и утилита командной строки openssl. Работа с этой утилитой настоящий вынос мозга. Там море всяких ключей, длиннющих конструкций и команд. Сталкиваться с этим напрямую приходится, например, при настройке своего OpenVPN сервера.
|
||||||
|
|
||||||
|
Чтобы упростить задачу управления сертификатами с помощью OpenSSL, придумали набор скриптов EasyRSA, которые даже в винду портировали. Именно с ними я всегда взаимодействовал, когда нужно было создать CA, серверные и клиентские ключи для OpenVPN (вот пример из моей статьи (https://serveradmin.ru/nastroyka-openvpn-na-centos/#Sozdanie_sertifikatov)). Да и не только. Для всех подобных задач использовал EasyRSA и не знал, что есть инструменты проще.
|
||||||
|
|
||||||
|
В одном из комментариев увидел информацию, что есть CFSSL. Это утилита от cloudflare, с помощью которой можно создать и управлять CA, только без лишних костылей и подпорок. У неё вполне простой и понятный CLI, которым пользоваться в разы удобнее и проще, чем у openssl. Покажу сразу на примере создания CA и выпуска сертификатов для нужд OpenVPN сервера. Использую потом эту заметку при очередном обновлении статьи (уже назрело).
|
||||||
|
|
||||||
|
CFSSL это просто бинарник, скомпилированный из исходников на GO. В репозиториях Debian 12 он живёт под названием golang-cfssl:
|
||||||
|
# apt install golang-cfssl
|
||||||
|
Версия почему-то очень древнючая - 1.2.0, когда в репе уже 1.6.4 есть (https://github.com/cloudflare/cfssl). Можно вручную скачать свежий бинарник.
|
||||||
|
|
||||||
|
Для cfssl нужно готовить конфиги в формате json. Сделать это нужно будет 1 раз. Интерактивного ввода, как у easyrsa, как я понял, нет. Готовим простой конфиг для выпуска СА:
|
||||||
|
{
|
||||||
|
"CN": "My Root CA",
|
||||||
|
"key": {
|
||||||
|
"algo": "rsa",
|
||||||
|
"size": 2048
|
||||||
|
},
|
||||||
|
"ca": {
|
||||||
|
"expiry": "87600h"
|
||||||
|
},
|
||||||
|
"names": [
|
||||||
|
{
|
||||||
|
"C": "RU",
|
||||||
|
"L": "Moscow",
|
||||||
|
"O": "Serveradmin Company",
|
||||||
|
"OU": "OpenVPN",
|
||||||
|
"ST": "Moscow"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
Сохранили с именем ca-csr.json. Тут срок действия стоит 10 лет. Кажется, что много. Но на самом деле у меня лично был случай, когда 10-ти летний CA протух (https://serveradmin.ru/kak-perevypustit-novyj-ca-dlya-openvpn/).
|
||||||
|
|
||||||
|
Генерируем ключ для CA:
|
||||||
|
# mkdir keys && cd keys
|
||||||
|
# cfssl gencert -initca ca-csr.json | cfssljson -bare ca
|
||||||
|
|
||||||
|
Получили 3 файла:
|
||||||
|
▪️ ca-key.pem - приватный ключ для подписи сертификатов
|
||||||
|
▪️ ca.pem - сам сертификат удостоверяющего центра
|
||||||
|
▪️ ca.csr - запрос на сертификат
|
||||||
|
|
||||||
|
Подготовим конфиг профилей, которые нужны будут для сертификата сервера и клиентов:
|
||||||
|
|
||||||
|
{
|
||||||
|
"signing": {
|
||||||
|
"profiles": {
|
||||||
|
"server": {
|
||||||
|
"expiry": "87600h",
|
||||||
|
"usages": [
|
||||||
|
"digital signature",
|
||||||
|
"key encipherment",
|
||||||
|
"server auth"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"client": {
|
||||||
|
"expiry": "87600h",
|
||||||
|
"usages": [
|
||||||
|
"signing",
|
||||||
|
"client auth"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Сохранили с именем ca.json. И делаем конфиг для запроса, такой же как для CA, только секцию с CA убираем:
|
||||||
|
|
||||||
|
{
|
||||||
|
"CN": "My Root CA",
|
||||||
|
"key": {
|
||||||
|
"algo": "rsa",
|
||||||
|
"size": 2048
|
||||||
|
},
|
||||||
|
"names": [
|
||||||
|
{
|
||||||
|
"C": "RU",
|
||||||
|
"L": "Moscow",
|
||||||
|
"O": "Serveradmin Company",
|
||||||
|
"OU": "OpenVPN",
|
||||||
|
"ST": "Moscow"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
Сохранили с именем csr.json. Выпускаем сертификат сервера:
|
||||||
|
# cfssl gencert -ca=ca.pem -ca-key=ca-key.pem \
|
||||||
|
-config=ca.json -profile="server" \
|
||||||
|
-cn="openvpn.server.local" -hostname="openvpn" \
|
||||||
|
csr.json | cfssljson -bare server
|
||||||
|
|
||||||
|
Получили 3 файла:
|
||||||
|
# ls | grep server
|
||||||
|
server.csr
|
||||||
|
server-key.pem
|
||||||
|
server.pem
|
||||||
|
|
||||||
|
Выпускаем сертификат для клиента:
|
||||||
|
# cfssl gencert -ca=ca.pem -ca-key=ca-key.pem \
|
||||||
|
-config=ca.json -profile="client" \
|
||||||
|
-cn="client01" -hostname="User 01" \
|
||||||
|
csr.json | cfssljson -bare client01
|
||||||
|
|
||||||
|
Проверяем:
|
||||||
|
# ls | grep client01
|
||||||
|
client01.csr
|
||||||
|
client01-key.pem
|
||||||
|
client01.pem
|
||||||
|
|
||||||
|
Вот и всё. Подготовили удостоверяющий центр и выпустили сертификаты клиента и сервера. Выглядит действительно удобнее и проще EasyRSA.
|
||||||
Загрузка…
x
Ссылка в новой задаче
Block a user