π ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β Zero Trust Π΄ΠΎΡΡΡΠΏ ΠΊ Π²Π°ΡΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌ
ΠΡ ΡΠ°Π΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Tuna β ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΉ reverse proxy, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ Π»ΡΠ±ΠΎΠΉ Π²Π°Ρ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ, SSO ΠΈ Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ° β Π±Π΅Π· Π΅Π΄ΠΈΠ½ΠΎΠΉ ΡΡΡ ΠΎΡΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΌΠΎΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ΅.
ΠΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠ°Π·Π΄Π΅Π»Ρ ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ?β
ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅: Ρ Π²Π°Ρ Π΅ΡΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ β Π°Π΄ΠΌΠΈΠ½ΠΊΠ°, staging-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅, Grafana, Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ API. ΠΡ Ρ ΠΎΡΠΈΡΠ΅ Π΄Π°ΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ Π½ΡΠΆΠ½ΡΠΌ Π»ΡΠ΄ΡΠΌ, ΠΈΠ· Π½ΡΠΆΠ½ΡΡ ΡΡΡΠ°Π½, Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΠΉ SSO. Π Π°Π½ΡΡΠ΅ ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π»ΠΎ Π²ΠΎΠ·Π½Ρ Ρ nginx, oauth2-proxy, ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°ΠΌΠΈ ΠΈ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ°.
Π‘ ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Tuna ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²Ρ ΠΎΠ΄ΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ: ΠΊΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠ°ΠΊ ΠΎΠ½ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π»ΡΡ, ΠΎΡΠΊΡΠ΄Π° ΠΏΡΠΈΡΡΠ» ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π»ΠΈ ΠΏΡΠ°Π²ΠΎ Π²ΠΈΠ΄Π΅ΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΏΡΡΡ. ΠΡΡ ΡΡΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° ΠΏΠ°ΡΡ ΠΌΠΈΠ½ΡΡ.
Π§ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
- Π·Π°ΠΊΡΡΡΡ Π»ΡΠ±ΠΎΠΉ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄Π΅;
- Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎ ΡΠ°Π·Π³ΡΠ°Π½ΠΈΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
/admin/*ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² ΠΈΠ· Π ΠΎΡΡΠΈΠΈ, Π°/api/healthΠΎΡΠΊΡΡΡΡ Π±Π΅Π· Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ; - ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΠΉ SSO (Google, Yandex, GitHub, GitLab, VK, Π»ΡΠ±ΠΎΠΉ OIDC-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ);
- ΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ MFA ΠΈΠ»ΠΈ ΡΡΡΠ½ΠΎΠ΅ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π΄Π»Ρ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ;
- ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ²ΠΈΡ Π±Π΅Π· ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ IP ΡΠ΅ΡΠ΅Π· ΡΡΠ½Π½Π΅Π»Ρ β Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ;
- Π²ΡΠ΄Π°ΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΡΠΎΠΊΠ΅Π½Ρ Π΄Π»Ρ CI/CD, ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠ²Π° ΡΠ΅ΠΆΠΈΠΌΠ° Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ ΡΡΠ°ΡΠΈΠΊΠ°β
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅, ΠΊΠ°ΠΊ Tuna Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡ ΠΎΠ΄ΠΈΡΡ Π΄ΠΎ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ°.
| Π Π΅ΠΆΠΈΠΌ | ΠΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ |
|---|---|
| ΠΡΠΎΠΊΡΠΈ | Π‘Π΅ΡΠ²ΠΈΡ ΡΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ ΡΠ΅ΡΠΈ β Π² Kubernetes, ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ VM ΠΈΠ»ΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΡΠΈ, ΡΡΠΎ ΠΈ Π½ΠΎΠ΄Π°. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ upstream Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΎΠΉ ΠΏΠΎ Π²Π΅ΡΠ°ΠΌ |
| Π’ΡΠ½Π½Π΅Π»Ρ | Π‘Π΅ΡΠ²ΠΈΡ Π±Π΅Π· ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ IP β Π·Π° NAT, Π½Π° dev-ΠΌΠ°ΡΠΈΠ½Π΅ ΠΈΠ»ΠΈ Π² ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΡΠ΅ΡΠΈ. ΠΡΠΊΠ΅Π½Π΄ ΡΠ°ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΊ Tuna ΡΠ΅ΡΠ΅Π· ΠΊΠ»ΠΈΠ΅Π½Ρ-Π°Π³Π΅Π½Ρ |
Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΠ½Π½Π΅Π»Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
tuna app <ΠΈΠΌΡ> --url=http://127.0.0.1:8080
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π΅Ρ Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ β ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΉ Π΄ΠΎΠΌΠ΅Π½.