зеркало из
				https://github.com/iharh/notes.git
				synced 2025-10-30 21:26:09 +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
	 Ihar Hancharenka
						Ihar Hancharenka