diff --git a/nontech/politics/clubs/streetoftruth/lepehin.txt b/nontech/politics/clubs/streetoftruth/lepehin.txt index 0b22de7ae..74b0e0fb0 100644 --- a/nontech/politics/clubs/streetoftruth/lepehin.txt +++ b/nontech/politics/clubs/streetoftruth/lepehin.txt @@ -1,7 +1,13 @@ Vladimir Anatolievich Lepehin Director of EAES Institute +https://vk.com/vladimirlepehin +https://t.me/vladimirlepehin +https://boosty.to/rsse + 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 https://www.youtube.com/watch?v=VqtuWkDKRWA DayTV - Peretolchin - Lepehin - Shock Therapy for Elites of 21:54 of ... diff --git a/nontech/psycho/people/hasay-aliev.txt b/nontech/psycho/people/hasay-aliev.txt index 116d34c9b..1724bc0e8 100644 --- a/nontech/psycho/people/hasay-aliev.txt +++ b/nontech/psycho/people/hasay-aliev.txt @@ -28,6 +28,9 @@ marinina - hapiness formula key to yourself C550C89667F8DF7981F76837BFA6253B +2023 +KeyMethod - Aliev - Ostretsov - Why Elites Slows Down Mind Development of 1:11:59 + https://www.youtube.com/watch?v=JOXU95-HJhA 2021 KeyMethod - Aliev - Gazenko for Cosmanauts of 8:38 https://www.youtube.com/watch?v=3V_paqW1ch8 diff --git a/pl/go/libfws/io/fileformats/json/articles.txt b/pl/go/libfws/io/fileformats/json/articles.txt index 4fb867a59..a35e43362 100644 --- a/pl/go/libfws/io/fileformats/json/articles.txt +++ b/pl/go/libfws/io/fileformats/json/articles.txt @@ -1,3 +1,5 @@ +2023 +https://proglib.io/p/effektivnaya-rabota-s-json-v-go-2023-10-16 2020 https://eli.thegreenplace.net/2020/optional-json-fields-in-go/ https://habr.com/ru/company/otus/blog/529318/ diff --git a/pl/java/libfws/math/ml/djl.txt b/pl/java/libfws/math/ml/djl.txt new file mode 100644 index 000000000..9bc47cbb3 --- /dev/null +++ b/pl/java/libfws/math/ml/djl.txt @@ -0,0 +1,2 @@ +https://docs.djl.ai/index.html +https://github.com/deepjavalibrary/djl diff --git a/pl/java/libfws/math/ml/neureka.txt b/pl/java/libfws/math/ml/neureka.txt new file mode 100644 index 000000000..d701839ed --- /dev/null +++ b/pl/java/libfws/math/ml/neureka.txt @@ -0,0 +1,2 @@ +https://github.com/Gleethos/neureka +https://gleethos.github.io/neureka/showcase.html diff --git a/pl/java/libfws/spring/data/jpa/tools/jpastreamer.txt b/pl/java/libfws/spring/data/jpa/tools/jpastreamer.txt index c9c814c4c..44f419ba8 100644 --- a/pl/java/libfws/spring/data/jpa/tools/jpastreamer.txt +++ b/pl/java/libfws/spring/data/jpa/tools/jpastreamer.txt @@ -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://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 https://piotrminkowski.com/2021/07/13/express-jpa-queries-as-java-streams/ diff --git a/science/ai/llm/presentations.txt b/science/ai/llm/docs/presentations.txt similarity index 100% rename from science/ai/llm/presentations.txt rename to science/ai/llm/docs/presentations.txt diff --git a/science/ai/llm/libs/list.txt b/science/ai/llm/libs/list.txt new file mode 100644 index 000000000..defbeb479 --- /dev/null +++ b/science/ai/llm/libs/list.txt @@ -0,0 +1,3 @@ +2023 +https://betterprogramming.pub/frameworks-for-serving-llms-60b7f7b23407 + https://nuancesprog.ru/p/19058/ diff --git a/science/ai/llm/libs/vllm.txt b/science/ai/llm/libs/vllm.txt new file mode 100644 index 000000000..ae7e65d18 --- /dev/null +++ b/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 diff --git a/security/ssl/cfssl.txt b/security/ssl/cfssl.txt new file mode 100644 index 000000000..4ddf169eb --- /dev/null +++ b/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. diff --git a/security/openssl/1-pvt.txt b/security/ssl/openssl/1-pvt.txt similarity index 100% rename from security/openssl/1-pvt.txt rename to security/ssl/openssl/1-pvt.txt diff --git a/security/openssl/2-csr.txt b/security/ssl/openssl/2-csr.txt similarity index 100% rename from security/openssl/2-csr.txt rename to security/ssl/openssl/2-csr.txt diff --git a/security/openssl/3-sig.txt b/security/ssl/openssl/3-sig.txt similarity index 100% rename from security/openssl/3-sig.txt rename to security/ssl/openssl/3-sig.txt diff --git a/security/openssl/4-exam.txt b/security/ssl/openssl/4-exam.txt similarity index 100% rename from security/openssl/4-exam.txt rename to security/ssl/openssl/4-exam.txt diff --git a/security/openssl/certs.txt b/security/ssl/openssl/certs.txt similarity index 100% rename from security/openssl/certs.txt rename to security/ssl/openssl/certs.txt diff --git a/security/openssl/check.txt b/security/ssl/openssl/check.txt similarity index 100% rename from security/openssl/check.txt rename to security/ssl/openssl/check.txt diff --git a/security/openssl/docs/articles.txt b/security/ssl/openssl/docs/articles.txt similarity index 100% rename from security/openssl/docs/articles.txt rename to security/ssl/openssl/docs/articles.txt diff --git a/security/openssl/docs/courses.txt b/security/ssl/openssl/docs/courses.txt similarity index 100% rename from security/openssl/docs/courses.txt rename to security/ssl/openssl/docs/courses.txt diff --git a/security/openssl/features/encryption.txt b/security/ssl/openssl/features/encryption.txt similarity index 100% rename from security/openssl/features/encryption.txt rename to security/ssl/openssl/features/encryption.txt diff --git a/security/openssl/openssl-conf.txt b/security/ssl/openssl/openssl-conf.txt similarity index 100% rename from security/openssl/openssl-conf.txt rename to security/ssl/openssl/openssl-conf.txt diff --git a/security/openssl/openssl.txt b/security/ssl/openssl/openssl.txt similarity index 100% rename from security/openssl/openssl.txt rename to security/ssl/openssl/openssl.txt diff --git a/security/openssl/vulnerabilities.txt b/security/ssl/openssl/vulnerabilities.txt similarity index 100% rename from security/openssl/vulnerabilities.txt rename to security/ssl/openssl/vulnerabilities.txt