User Tools

Site Tools


протокол_acme

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
протокол_acme [2025/11/28 08:52]
val
протокол_acme [2025/12/26 10:29] (current)
val [Запись вебинара]
Line 19: Line 19:
 ===== Запись вебинара ===== ===== Запись вебинара =====
  
-  * Тэги: HAProxy, Apache, Nginx, Linux, Docker, Kubernetes, Certbot, cert-manager, ...+  ​* Ютуб: https://​youtu.be/​74KpYfTNffM 
 +  * Рутуб: https://​rutube.ru/​video/​61ae7d137f22c4180c186e32683f731f/​ 
 +  * Вк: https://​vkvideo.ru/​video-2190892_456239496 
 +  ​* Тэги: HAProxy, Apache, Nginx, Linux, Docker, Kubernetes, Minikube, Ingress, ACME, Certbot, cert-manager
  
 ===== Шаг 1. Что у нас есть, для начала ===== ===== Шаг 1. Что у нас есть, для начала =====
Line 39: Line 42:
  
   * [[Letsencrypt Certbot#​Запрос и подтверждение сертификата "​автоматически"​]]   * [[Letsencrypt Certbot#​Запрос и подтверждение сертификата "​автоматически"​]]
 +
 +<​code>​
 +vps:~# systemctl disable apache2.service --now
 +
 +...
 +
 +vps:~# systemctl disable nginx.service --now
 +</​code>​
  
 ===== Шаг 4. Управление сертификатами Let's Encrypt в Kubernetes ===== ===== Шаг 4. Управление сертификатами Let's Encrypt в Kubernetes =====
Line 44: Line 55:
   * [[Технология Docker]]   * [[Технология Docker]]
   * [[Система Kubernetes#​Установка minikube]]   * [[Система Kubernetes#​Установка minikube]]
-  ​* [[Система Kubernetes#Minikube ingress-nginx-controller]]+ 
 +  * Если есть время, можно:​ 
 +  ​* [[Система Kubernetes#Использование в minikube своих docker образов]] 
 +  * [[Технология Docker#​Приложение golang gowebd]] 
 +  * или, использовать образ httpd и lifecycle postStart exec
  
   * [[Система Kubernetes#​Deployment]],​ [[Система Kubernetes#​Service]]   * [[Система Kubernetes#​Deployment]],​ [[Система Kubernetes#​Service]]
 +  * [[Система Kubernetes#"​Внутри"​ minikube]]
 +
 +  * [[Система Kubernetes#​Minikube ingress-nginx-controller]]
   * [[Система Kubernetes#​ingress example]] (с tls)   * [[Система Kubernetes#​ingress example]] (с tls)
 <​code>​ <​code>​
-student@vps:​~/​apwebd-k8s$ curl -H "Host: siteN.mgtu.ru"​ http://​192.168.49.2 -v+student@vps:​~/​webd-k8s$ curl -H "Host: siteN.mgtu.ru"​ http://​192.168.49.2 -v
  
-student@vps:​~/​apwebd-k8s$ curl -H "Host: siteN.mgtu.ru"​ https://​192.168.49.2 -k+student@vps:​~/​webd-k8s$ curl -H "Host: siteN.mgtu.ru"​ https://​192.168.49.2 -kv
 </​code>​ </​code>​
  
Line 64: Line 82:
 } }
 </​code><​code>​ </​code><​code>​
-$ curl http://site194.mgtu.ru -v+$ curl http://siteN.mgtu.ru -v
  
-$ curl https://site194.mgtu.ru -k+$ curl https://siteN.mgtu.ru -k
 </​code>​ </​code>​
  
-  * [[Система Kubernetes#​cert-manager]]+  * Kubernetes ​[[Система Kubernetes#​cert-manager]]
  
 <​code>​ <​code>​
-student@vps:​~/​apwebd-k8s$ kubectl -n my-ns get ingress -o yaml | less 
- 
 student@vps:​~$ kubectl -n my-ns get pods student@vps:​~$ kubectl -n my-ns get pods
 ... ...
Line 79: Line 95:
 ... ...
  
-student@vps:​~/​apwebd-k8s$ curl http://​site190.mgtu.ru/​.well-known/acme-challenge/​zg0xFIIdvgLB2HNaygDY+student@vps:​~/​webd-k8s$ kubectl ​-n my-ns get ingress -o yaml | grep acme-challenge
  
-student@vps:​~/​apwebd-k8s$ kubectl ​-n my-ns exec -ti pods/my-webd-6cd67b7ff8-qn77r -- bash       +student@vps:​~/​webd-k8s$ curl http://​siteN.mgtu.ru/​.well-known/acme-challenge/NNNNNNNNNNNNNNNNNNNNN
  
-root@my-webd-6cd67b7ff8-qn77r:/usr/​local/​apache2#​ curl http://​site190.mgtu.ru/​.well-known/acme-challenge/​zg0xFIIdvgLB2HNaygDY ​    +student@vps:​~/​webd-k8s$ kubectl -n my-ns exec -ti pods/my-webd-<​TAB> ​-- bash 
 +  ИЛИ 
 +student@vps:~/webd-k8s$ kubectl run -ti my-debian --image=debian -- bash
  
-student@vps:~/apwebd-k8s$ kubectl -n my-ns get pods +:/# apt update; apt install curl 
-... + 
-cm-acme-http-solver-... +:/# curl http://​siteN.mgtu.ru/.well-known/acme-challenge/​NNNNNNNNNNNNNNNNNNNNN ​    
-...+
 </​code>​ </​code>​
  
   * Убираем 80-й порт из Keepalive   * Убираем 80-й порт из Keepalive
-  ​* [[Решение HAProxy]]+ 
 +  ​Использование Nginx ([[Сервис HTTP#​Прокси "​красивого"​ URL в приложение (пример 3)]]) или ​[[Решение HAProxy]]
 <​code>​ <​code>​
 ... ...
Line 103: Line 121:
     server ​ minikube 192.168.49.2:​80 check     server ​ minikube 192.168.49.2:​80 check
 </​code>​ </​code>​
 +<​code>​ 
 +$ curl https://​siteN.mgtu.ru -v 
 +</​code>​
  
протокол_acme.1764309146.txt.gz · Last modified: 2025/11/28 08:52 by val