{"id":453198,"date":"2025-03-24T21:01:05","date_gmt":"2025-03-24T21:01:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=453198"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=453198","title":{"rendered":"<span>Service Mesh \u0432 \u0434\u0438\u043a\u043e\u0439 \u043f\u0440\u0438\u0440\u043e\u0434\u0435 \u0438\u043b\u0438 \u043a\u0430\u043a \u043d\u0435 \u0441\u0442\u0430\u0442\u044c \u0436\u0435\u0440\u0442\u0432\u043e\u0439 \u0430\u0442\u0430\u043a<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/article\/893938#%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B1\" rel=\"noopener noreferrer nofollow\">\u0423\u0433\u0440\u043e\u0437\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Service Mesh<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B2\" rel=\"noopener noreferrer nofollow\">1. \u041e\u0448\u0438\u0431\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u0444\u0430\u043a\u0442\u043e\u0440<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B3\" rel=\"noopener noreferrer nofollow\">2. \u0410\u0442\u0430\u043a\u0438 \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c (control plane)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B4\" rel=\"noopener noreferrer nofollow\">3. \u041e\u0431\u0445\u043e\u0434 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 (\u0430\u0442\u0430\u043a\u0438 \u043d\u0430 data plane)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B5\" rel=\"noopener noreferrer nofollow\">4. \u041a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044f mTLS \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B6\" rel=\"noopener noreferrer nofollow\">5. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 Ingress \u0438 Egress (\u0433\u0440\u0430\u043d\u0438\u0446\u044b mesh)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B7\" rel=\"noopener noreferrer nofollow\">6. \u041f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438 \u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442\u043d\u043e\u0441\u0442\u044c<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B8\" rel=\"noopener noreferrer nofollow\">7. \u042d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0441\u0430\u043c\u043e\u0433\u043e mesh-\u0441\u043e\u0444\u0442\u0430<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%841\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%842\" rel=\"noopener noreferrer nofollow\">Permissive \u043cTLS \u0432 Istio \u2013 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0436\u0435\u043b\u0430\u043d\u0438\u044e<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%843\" rel=\"noopener noreferrer nofollow\">\u0421\u043b\u0438\u0448\u043a\u043e\u043c \u0448\u0438\u0440\u043e\u043a\u0430\u044f Authorization Policy<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%844\" rel=\"noopener noreferrer nofollow\">\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0432 Linkerd<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%845\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u043e\u0447\u0438\u0435 \u043a\u043e\u0432\u0430\u0440\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0438<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%821\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Service Mesh<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%822\" rel=\"noopener noreferrer nofollow\">\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%823\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0439\u0442\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 &#171;\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u043a\u0440\u044b\u0442\u043e&#187;<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%824\" rel=\"noopener noreferrer nofollow\">\u0417\u0430\u0449\u0438\u0442\u0438\u0442\u0435 Ingress \u0438 Egress<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%825\" rel=\"noopener noreferrer nofollow\">\u041c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u0430\u0432\u0430 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 POD\u2019\u043e\u0432<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%826\" rel=\"noopener noreferrer nofollow\">\u041e\u0431\u0435\u0441\u043f\u0435\u0447\u044c\u0442\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0441\u0442\u044c \u0438 \u0430\u0443\u0434\u0438\u0442<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%827\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0439\u0442\u0435 \u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 \u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%828\" rel=\"noopener noreferrer nofollow\">\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0439\u0442\u0435\u0441\u044c \u0438 \u0431\u0443\u0434\u0443\u0442\u0435 \u0432 &#171;\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438&#187;<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%829\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0443\u0439\u0442\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u201cDefense in Depth\u201d<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%8210\" rel=\"noopener noreferrer nofollow\">\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%821\" rel=\"noopener noreferrer nofollow\">\u041e\u043f\u044b\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%822\" rel=\"noopener noreferrer nofollow\">Airbnb<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%823\" rel=\"noopener noreferrer nofollow\">Lyft<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%97%D0%B0%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8\" rel=\"noopener noreferrer nofollow\">\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438<\/a><\/p>\n<\/li>\n<\/ul>\n<h3>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h3>\n<p><a class=\"anchor\" name=\"%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5\" id=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435\"><\/a><\/p>\n<p>\u0412\u0441\u0451, \u043a\u0430\u043a \u044f \u043b\u044e\u0431\u043b\u044e, \u043d\u0430\u0447\u043d\u0435\u043c \u0441 \u043e\u0441\u043d\u043e\u0432, \u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043c \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c4d\/2e8\/22f\/c4d2e822f69ed2ae247abcbbb83bb053.png\" width=\"595\" height=\"353\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c4d\/2e8\/22f\/c4d2e822f69ed2ae247abcbbb83bb053.png\"\/><\/figure>\n<p><strong>Service mesh<\/strong> \u2013 \u044d\u0442\u043e \u0441\u043b\u043e\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0435\u0440\u0451\u0442 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438. \u041f\u0440\u043e\u0435\u043a\u0442\u044b <strong>Istio<\/strong> \u0438 <strong>Linkerd<\/strong> \u2013 \u043e\u0434\u043d\u0438 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 service mesh \u0434\u043b\u044f Kubernetes. \u041e\u043d\u0438 \u043e\u0431\u0435\u0449\u0430\u044e\u0442 \u043d\u0430\u043c \u00ab<em>\u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438<\/em>\u00bb \u043c\u044c\u044e\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 (\u044f\u0437\u044b\u043a \u0441\u043b\u043e\u043c\u0430\u0435\u0448\u044c) TLS (<em>mTLS<\/em>) \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u0433\u0438\u0431\u043a\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u043e\u043c \u0438 \u0442\u043e\u043d\u043a\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u2013 \u0441\u043b\u043e\u0432\u043e\u043c, \u0432\u0441\u0451 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 Zero Trust. \u0417\u0432\u0443\u0447\u0438\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u043e, \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c, \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0441\u0442\u044c \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0431\u0435\u0437 \u043f\u0440\u0430\u0432\u043a\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041d\u043e, \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u00ab\u0441\u0430\u043c\u043e\u0435 \u043f\u0440\u043e\u0447\u043d\u043e\u0435 \u0436\u0435\u043b\u0435\u0437\u043e \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u0434\u0432\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u043f\u0435\u0442\u043b\u044f\u043c\u0438 \u043d\u0430\u0440\u0443\u0436\u0443\u00bb. \u041f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, <strong>\u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f<\/strong> \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b mesh \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e \u0441\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u043d\u0435\u0442 \u0432\u0441\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430. \u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043e\u0442\u0447\u0451\u0442\u0443, \u0434\u043e 55% \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u043e\u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Kubernetes \u0441\u0432\u044f\u0437\u0430\u043d\u044b \u0441 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u2013 \u0430 service mesh \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0449\u0451 \u0441\u0432\u043e\u0439 \u043f\u043b\u0430\u0441\u0442 YAML-\u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u043e\u0432 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. \u0414\u043b\u044f \u0438\u0431\u0448\u043d\u0438\u043a\u0430 \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 &#8212; \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u0442\u044c Istio \u0438\u043b\u0438 Linkerd, \u043d\u0430\u0434\u043e \u0437\u043d\u0430\u0442\u044c, \u0433\u0434\u0435 \u043d\u0430\u0441 \u043f\u043e\u0434\u0441\u0442\u0435\u0440\u0435\u0433\u0430\u044e\u0442 \u0433\u0440\u0430\u0431\u043b\u0438.<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u043c\u0441\u044f \u0432 \u0442\u0435\u043c\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 service mesh \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Istio \u0438 Linkerd. \u0420\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0433\u0440\u043e\u0437\u044b: \u043e\u0442 \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u0432 YAML \u0434\u043e \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0445, \u043f\u044b\u0442\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043e\u0431\u043e\u0439\u0442\u0438 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 \u0438\u043b\u0438 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c mTLS. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0443\u044f\u0437\u0432\u0438\u043c\u044b\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u2013 \u0434\u0430-\u0434\u0430, \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u044b\u0445 YAML-\u043e\u0432.  \u041e\u0431\u0441\u0443\u0434\u0438\u043c \u043b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438: \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c mesh \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u2013 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432. \u0418 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u0435\u0439\u0441\u044b \u2013 \u043a\u0430\u043a \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 (Airbnb \u0438 Lyft) \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0442 \u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 service mesh, \u043a\u0430\u043a\u0438\u0435 \u0443\u0440\u043e\u043a\u0438 \u043e\u043d\u0438 \u0432\u044b\u043d\u0435\u0441\u043b\u0438.<\/p>\n<hr\/>\n<h3>\u0423\u0433\u0440\u043e\u0437\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Service Mesh<\/h3>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B1\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b1\"><\/a><\/p>\n<p>Service mesh \u0440\u0435\u0448\u0430\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043d\u043e \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u0438 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u044b \u0430\u0442\u0430\u043a. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0433\u0440\u043e\u0437\u044b \u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438, \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u043d\u044b\u0435 \u0434\u043b\u044f Istio\/Linkerd. <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/53e\/505\/fe0\/53e505fe0db4864ba93a9ab1ed22723e.png\" width=\"1045\" height=\"724\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/53e\/505\/fe0\/53e505fe0db4864ba93a9ab1ed22723e.png\"\/><\/figure>\n<h4>1. \u041e\u0448\u0438\u0431\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u0444\u0430\u043a\u0442\u043e\u0440<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B2\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b2\"><\/a><\/p>\n<p>\u042d\u0442\u043e \u0432\u0440\u0430\u0433 \u21161. Service mesh \u2013 \u044d\u0442\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u0438 CRD \u0438 \u0441\u043e\u0442\u043d\u0438 \u043e\u043f\u0446\u0438\u0439, \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u044b\u0440\u043a\u0443 \u0432 \u043e\u0431\u043e\u0440\u043e\u043d\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <strong>\u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS<\/strong> \u2013 \u0438 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u0438\u043c\u0443\u0442 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u043e\u0442 \u043a\u043e\u0433\u043e \u0443\u0433\u043e\u0434\u043d\u043e. \u0418\u043b\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e\u0449\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u2013 \u0438 \u043d\u0435\u0432\u043e\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043b\u0438\u0448\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c. \u041f\u043e\u0440\u043e\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438 \u0438\u043b\u0438 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0412 2017 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043e\u0431\u0440\u0443\u0448\u0438\u043b\u0430 \u043f\u043e\u043b-\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 (\u043f\u0440\u0438\u0432\u0435\u0442 AWS outage) \u2013 \u0430 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 YAML \u0432 mesh \u043c\u043e\u0436\u0435\u0442 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. Kubernetes \u0438 Istio \u0441\u0442\u0430\u0440\u0430\u044e\u0442\u0441\u044f \u0432\u0430\u043b\u0438\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u043e \u043e\u043d\u0438 \u043d\u0435 \u0432\u0441\u0435\u0441\u0438\u043b\u044c\u043d\u044b, Mesh \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u0430\u043b\u0438\u0434\u043d\u0430, \u043d\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432\u044b \u0434\u0443\u043c\u0430\u0435\u0442\u0435.<\/p>\n<h4>2. \u0410\u0442\u0430\u043a\u0438 \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c (control plane)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B3\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b3\"><\/a><\/p>\n<p>Istio-\u044f\u0434\u0440\u043e (istiod) \u0438\u043b\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b Linkerd \u043c\u043e\u0433\u0443\u0442 \u0441\u0442\u0430\u0442\u044c \u043c\u0438\u0448\u0435\u043d\u044c\u044e. \u042d\u0442\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b: \u043e\u043d\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u0432\u0441\u0435\u043c\u0438 \u043f\u0440\u043e\u043a\u0441\u0438. \u0415\u0441\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043d\u0430\u0439\u0434\u0451\u0442 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 istiod \u0438\u043b\u0438 \u043f\u0440\u043e\u043d\u0438\u043a\u043d\u0435\u0442 \u0432 \u043d\u0435\u0433\u043e, \u043e\u043d \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c \u0438\u043b\u0438 \u043f\u043e\u0434\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u0432\u0441\u0435\u0433\u043e mesh. <\/p>\n<p>\u0411\u044b\u043b\u0438 \u043f\u0440\u0435\u0446\u0435\u0434\u0435\u043d\u0442\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0448\u0430\u044f \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438 istiod \u0431\u0435\u0437 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 (Stack exhaustion DoS) \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0432 Istio \u2013 <a href=\"https:\/\/github.com\/istio\/istio\/security\/advisories\/GHSA-8w5h-qr4r-2h6g\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. Control plane \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0432\u043e\u0432\u0440\u0435\u043c\u044f (\u043f\u043e\u0437\u0436\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e\u0431 \u044d\u0442\u043e\u043c) \u0438 \u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0435\u043c\u0443. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043f\u043e\u0434\u043c\u0435\u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u0438 \u2013 \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u043d\u043e \u043f\u0443\u0433\u0430\u044e\u0449\u0438\u0439 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439. \u0415\u0441\u043b\u0438 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439 \u0441\u0443\u043c\u0435\u0435\u0442 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438 \u0432\u0435\u0440\u0438\u0442\u044c \u0444\u0430\u043b\u044c\u0448\u0438\u0432\u043e\u043c\u0443 istiod, \u043e\u043d \u0441\u043c\u043e\u0436\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u043c\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438 \u043c\u043d\u043e\u0433\u043e\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\u0445 \u0447\u0430\u0441\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e\u0442 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c \u2013 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b\u043d\u0435\u0441\u0442\u0438 istiod \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043e\u0442 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a.<\/p>\n<h4>3. \u041e\u0431\u0445\u043e\u0434 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 (\u0430\u0442\u0430\u043a\u0438 \u043d\u0430 data plane)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B4\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b4\"><\/a><\/p>\n<p>Service mesh \u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438 (Envoy \u0432 Istio, Linkerd-proxy \u0432 Linkerd). \u041e\u0434\u043d\u0430\u043a\u043e &#171;<em>\u043f\u043b\u043e\u0445\u043e\u0435&#187;<\/em> \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043e\u0431\u043e\u0439\u0442\u0438 \u044d\u0442\u043e\u0442 \u201c\u0441\u043b\u043e\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f\u201d. Kubernetes-\u043f\u043e\u0434 \u0438 \u0435\u0433\u043e sidecar \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u044e\u0442 \u0441\u0435\u0442\u044c \u0438 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0440\u044c\u0435\u0440\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0438 \u043f\u0440\u043e\u043a\u0441\u0438 \u043d\u0435\u0442. \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u043c\u0438 \u043f\u0440\u0430\u0432\u0430\u043c\u0438, \u043e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c iptables-\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043d\u0430\u0447\u0430\u0442\u044c \u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u043c\u0438\u043d\u0443\u044f proxy. <\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434 \u0441 Capability <code>NET_ADMIN<\/code> \u0438\u043b\u0438 <code>NET_RAW<\/code> \u0432\u043f\u043e\u043b\u043d\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0441\u043d\u0435\u0441\u0442\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f Istio \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u0445 \u2013 \u0438 \u0442\u0440\u0430\u0444\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u00ab\u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u00bb \u0438\u0434\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 sidecar \u2013 <a href=\"https:\/\/tetrate.io\/blog\/securing-istio-addressing-critical-security-gaps-and-best-practices\/\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. Istio \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 <code>UID 1337<\/code> \u0434\u043b\u044f Envoy-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0438 \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u0442\u0435\u043c \u0436\u0435 <code>UID 1337<\/code>, \u043e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f (iptables \u0434\u0443\u043c\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u043f\u0440\u043e\u043a\u0441\u0438). \u0411\u0435\u0437 \u0434\u043e\u043b\u0436\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 (\u0438\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a\u0438, \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438) \u043c\u043e\u0433\u0443\u0442 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u043f\u043e\u0434 \u0438\u0437-\u043f\u043e\u0434 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f mesh. <\/p>\n<p>Linkerd \u0437\u0434\u0435\u0441\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u044b\u0438\u0433\u0440\u044b\u0448\u043d\u0435\u0435: \u0435\u0433\u043e proxy \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 Rust \u0438 \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0441 <code>UID 0<\/code>, \u0430 iptables \u043e\u0431\u044b\u0447\u043d\u043e \u0441\u0442\u0430\u0432\u0438\u0442 init-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440. \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u043e\u0431\u0449\u0430\u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f \u2013 <strong>\u043d\u0435 \u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c \u043b\u0438\u0448\u043d\u0438\u0445 \u043f\u0440\u0430\u0432 \u0432 \u043f\u043e\u0434\u0435<\/strong>. \u0412 \u0438\u0434\u0435\u0430\u043b\u0435, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c Istio CNI, \u0447\u0442\u043e\u0431\u044b iptables-\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0441\u0442\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0443\u0437\u043b\u0430 \u0431\u0435\u0437 <code>NET_ADMIN<\/code> \u0432 \u0441\u0430\u043c\u043e\u043c \u043f\u043e\u0434\u0435, \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c <strong>Pod Security Policy\/Admission Control<\/strong>, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0435 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 <code>UID<\/code>.<\/p>\n<h4>4. \u041a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044f mTLS \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B5\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b5\"><\/a><\/p>\n<p>\u0421\u0430\u043c \u043f\u043e \u0441\u0435\u0431\u0435 mTLS \u2013 \u0445\u043e\u0440\u043e\u0448\u0435\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e &#171;\u043e\u0442 \u0432\u0441\u0435\u0433\u043e&#187; \u2013 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0448\u0438\u0444\u0440\u0443\u044e\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u044e\u0442 \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438, \u0438\u0437\u0431\u0430\u0432\u043b\u044f\u044f \u043d\u0430\u0441 \u043e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u0435\u0442\u0438. \u041d\u043e \u0441\u043f\u0440\u043e\u0441\u0438\u043c \u0441\u0435\u0431\u044f: &#8212; &#171;<em>\u0413\u0434\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u044d\u0442\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438 \u043a\u043b\u044e\u0447\u0438?<\/em>&#187; <\/p>\n<p>\u0412 Istio \u0437\u0430 \u0432\u044b\u0434\u0430\u0447\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Citadel (\u0447\u0430\u0441\u0442\u044c istiod) \u2013 \u043e\u043d \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0445 \u0432 sidecar \u0447\u0435\u0440\u0435\u0437 SDS (Secret Discovery Service). \u041a\u043b\u044e\u0447 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u043a\u0441\u0438. \u0417\u043d\u0430\u0447\u0438\u0442, \u0435\u0441\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u0441\u0443\u043c\u0435\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 Envoy \u0438\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0434\u0430\u043c\u043f \u043f\u0430\u043c\u044f\u0442\u0438, \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0442\u0430\u0449\u0438\u0442\u044c \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u0430. \u0421 \u044d\u0442\u0438\u043c \u043e\u043d \u043c\u043e\u0436\u0435\u0442 <strong>\u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u0435\u0431\u044f \u0437\u0430 \u0441\u0435\u0440\u0432\u0438\u0441 \u0432 mesh<\/strong>, \u043f\u043e\u043a\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d. \u0422\u0430\u043a\u0436\u0435, \u0435\u0441\u043b\u0438 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 (CA) mesh, \u0432\u0441\u0451 \u0440\u0443\u0448\u0438\u0442\u0441\u044f \u2013 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u043b\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u0433\u043e \u0443\u0433\u043e\u0434\u043d\u043e. <\/p>\n<p>\u0412 Linkerd \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 \u2013 \u044d\u0442\u043e \u201ctrust anchor\u201d (\u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442), \u0438 \u0441 \u043d\u0438\u043c \u0442\u0435 \u0436\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0421\u0440\u043e\u043a \u0436\u0438\u0437\u043d\u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d (\u0432 Istio \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e <em>~90 \u0434\u043d\u0435\u0439<\/em>, \u0432 Linkerd \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 24 \u0447\u0430\u0441\u0430 \u0434\u043b\u044f \u0432\u044b\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432), \u043d\u043e \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u0430\u043a \u0447\u0430\u0441\u044b, \u0438\u043d\u0430\u0447\u0435 \u0447\u0435\u0440\u0435\u0437 N \u0434\u043d\u0435\u0439 \u0432\u044b \u0441\u0430\u043c\u0438 DoS\u2019\u043d\u0435\u0442\u0435 \u0441\u0432\u043e\u0439 mesh \u043f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438. <\/p>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0443 Istio \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u0441\u0442\u0430\u0440\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 mTLS \u0440\u0435\u0436\u0438\u043c <code>Permissive<\/code> \u2013 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u0438 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0436\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u044f\u0442\u044c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435. \u0415\u0441\u043b\u0438 \u0430\u0434\u043c\u0438\u043d \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b Strict, \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c TLS \u0438 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 mTLS \u2013 \u043d\u0435 \u043f\u0430\u043d\u0430\u0446\u0435\u044f, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u043a\u043b\u044e\u0447\u0438 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u0441\u0451 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c. \u041d\u0443\u0436\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0438\u0445 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439, \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 (Authentication+Authorization, \u043e \u0447\u0451\u043c \u043d\u0438\u0436\u0435) \u0438 \u0438\u043c\u0435\u0442\u044c \u043f\u043b\u0430\u043d \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 (\u043e\u0442\u0437\u044b\u0432, \u0437\u0430\u043c\u0435\u043d\u0430).<\/p>\n<h4>5. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 Ingress \u0438 Egress (\u0433\u0440\u0430\u043d\u0438\u0446\u044b mesh)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B6\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b6\"><\/a><\/p>\n<p>\u041e\u0431\u044b\u0447\u043d\u043e Istio \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u044e\u0442 Ingress Gateway \u2013 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Envoy, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a. \u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 ingress \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0430\u0440\u0443\u0436\u0443 \u0442\u043e, \u0447\u0442\u043e \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0432\u0438\u0434\u043d\u043e. \u041a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440 \u2013 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435 \u043f\u0443\u0442\u0438 \u043d\u0430 \u0441\u0435\u0440\u0432\u0438\u0441 \u0431\u0435\u0437 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0437\u0430\u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c JWT-\u0442\u043e\u043a\u0435\u043d\u044b \u043d\u0430 \u0432\u0445\u043e\u0434\u0435, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 HTTP \u0431\u0435\u0437 TLS \u0442\u0430\u043c, \u0433\u0434\u0435 \u043e\u0436\u0438\u0434\u0430\u043b\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e HTTPS. <\/p>\n<p>Linkerd \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043d\u043e mesh-\u043f\u0440\u043e\u043a\u0441\u0438 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043f\u043e\u0441\u043b\u0435 ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 Kubernetes. \u0415\u0441\u043b\u0438 ingress-\u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0447\u0442\u043e-\u0442\u043e \u043b\u0438\u0448\u043d\u0435\u0435, \u0434\u0430\u043b\u044c\u0448\u0435 mesh \u0443\u0436\u0435 \u043d\u0435 \u0441\u043f\u0430\u0441\u0451\u0442. \u0421 Egress \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e, Istio \u0443\u043c\u0435\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0435\u0436\u0438\u043c <code>REGISTRY_ONLY<\/code> \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0445\u043e\u0441\u0442\u0430\u043c, \u043d\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u0432 ServiceEntry). \u041d\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0438\u0442 <code>ALLOW_ANY<\/code> \u2013 \u043b\u044e\u0431\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0430\u0434\u0440\u0435\u0441 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 mesh \u043c\u043e\u0436\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u0441\u043b\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438\u043b\u0438 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u044d\u043a\u0441\u043f\u043b\u043e\u0438\u0442 \u2013 proxy \u0435\u0433\u043e \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442.<\/p>\n<p>\u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d <code>REGISTRY_ONLY<\/code>, \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u0432\u0441\u0451 \u0435\u0449\u0451 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0439\u0442\u0438 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u043e\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0441\u0432\u043e\u0439 ServiceEntry \u0441 wildcard-\u0445\u043e\u0441\u0442\u043e\u043c \u0438\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c \u0442\u0438\u043f\u0430 ExternalName, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u044f\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0432\u043e\u0432\u043d\u0435 \u2013 <a href=\"https:\/\/tetrate.io\/blog\/securing-istio-addressing-critical-security-gaps-and-best-practices\/#h-bypassing-outbound-traffic-constraints\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>.<\/p>\n<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0438\u0437 \u043b\u0443\u0447\u0448\u0438\u0445 \u043f\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0439 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c ServiceEntry \u0434\u043b\u044f \u201c\u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430\u201d (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a\u043e \u0432\u0441\u0435\u043c *.example[.]com), \u0430 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u044d\u0442\u0438\u043c \u043e\u043a\u043d\u043e\u043c \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f. <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043c\u0443, \u0442\u043e ingress\/egress \u0442\u043e\u0447\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043e\u0441\u043e\u0431\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f. \u041d\u0430\u0434\u043e \u044f\u0432\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0435\u043b\u044c\u0437\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430 \u0432\u044b\u0445\u043e\u0434\u0430 \u2013 Egress Gateway, \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0435\u0441\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0434\u043b\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438.<\/p>\n<h4>6. \u041f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438 \u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442\u043d\u043e\u0441\u0442\u044c<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B7\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b7\"><\/a><\/p>\n<p>Service mesh \u0447\u0430\u0441\u0442\u043e \u0432\u043d\u0435\u0434\u0440\u044f\u044e\u0442 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0438 \u043a\u043e\u043c\u0430\u043d\u0434. \u0412\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0432\u043e\u043f\u0440\u043e\u0441: &#8212; &#171;<em>\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0435 \u0432\u0441\u0435\u043c \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0430\u043c mesh?<\/em>&#187; <\/p>\n<p>\u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0435\u0441\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d \u043a mesh, \u043e\u043d \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0435\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u2013 \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043e\u0434\u0438\u043d \u043e\u0431\u0449\u0438\u0439 mesh \u043d\u0430 \u0432\u0435\u0441\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0442\u043e \u0431\u0435\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043b\u044e\u0431\u043e\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043b\u044e\u0431\u043e\u043c\u0443 (\u043f\u0443\u0441\u0442\u044c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e, \u043d\u043e \u0441\u0430\u043c\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0435\u0441\u0442\u044c). \u0412 \u0441\u0440\u0435\u0434\u0435 \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u0438\u043b\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 (\u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0442\u0438\u043f\u0430 SaaS) \u2013 \u044d\u0442\u043e \u0440\u0438\u0441\u043a. <\/p>\n<p>\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f Wiz \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0438, \u043a\u0430\u043a \u0432 cloud-\u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0432 \u0441\u0432\u043e\u0439 \u043a\u043e\u0434, \u0441\u0443\u043c\u0435\u043b \u0447\u0435\u0440\u0435\u0437 Istio-\u043f\u0440\u043e\u043a\u0441\u0438 \u0432\u044b\u0439\u0442\u0438 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c \u0434\u0440\u0443\u0433\u0438\u0445 \u0430\u0440\u0435\u043d\u0434\u0430\u0442\u043e\u0440\u043e\u0432 \u2013 \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0441\u0440\u0435\u0434\u0430 \u043f\u043e\u043b\u0430\u0433\u0430\u043b\u0430\u0441\u044c \u043d\u0430 mesh, \u043d\u043e \u043d\u0435 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043b\u0430 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0443\u043b\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u2013 <a href=\"https:\/\/www.wiz.io\/blog\/sapwned-sap-ai-vulnerabilities-ai-security\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. <\/p>\n<p>\u0412 Istio \u0435\u0441\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c AuthorizationPolicy \u043a\u0430\u043a \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442 \u043c\u0435\u0436\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u0440\u0432\u043e\u043b\u0430, \u0430 \u0432 Linkerd \u0441 \u0432\u0435\u0440\u0441\u0438\u0438 2.11+ \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u0432\u043e\u044f \u043c\u043e\u0434\u0435\u043b\u044c <code>Default deny\/allow policies<\/code>. \u041d\u043e \u0438\u0445 \u0435\u0449\u0451 \u043d\u0430\u0434\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u2013 \u0438 \u043d\u0435 \u0437\u0430\u0431\u044b\u0442\u044c, \u0447\u0442\u043e \u0441\u0435\u0442\u044c Kubernetes \u0442\u043e\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u043c\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c\u0438 <code>NetworkPolicy<\/code> (\u0441\u0435\u0442\u0435\u0432\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442 \u0442\u0440\u0430\u0444\u0438\u043a, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 mesh \u043f\u043e \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442).<\/p>\n<h4>7. \u042d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0441\u0430\u043c\u043e\u0433\u043e mesh-\u0441\u043e\u0444\u0442\u0430<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B8\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b8\"><\/a><\/p>\n<p>\u041d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u0431\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e Istio \u0438 Linkerd \u2013 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b (\u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043d\u0430 Go\/Cpp \u0438 Rust). \u0412 \u043d\u0438\u0445 \u0442\u043e\u0436\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u0431\u0430\u0433\u0438. Envoy (\u0441\u0435\u0440\u0434\u0446\u0435 Istio) \u2013 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u0440\u043e\u043a\u0441\u0438, \u043d\u043e \u0432\u0440\u0435\u043c\u044f \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0443 \u043d\u0435\u0433\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f CVE. <\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/blog.qrator.net\/ru\/4-strategii-zashity-ot-uyazvimosti-http2-rapid-res_200\/\" rel=\"noopener noreferrer nofollow\">\u043d\u0430\u0448\u0443\u043c\u0435\u0432\u0448\u0430\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c<\/a> HTTP\/2 (<em>CVE-2023-44487, \u201cRapid Reset\u201d<\/em>) \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u043b\u0430 \u0437\u0430\u0432\u0430\u043b\u0438\u0442\u044c \u043c\u043d\u043e\u0433\u0438\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u043e\u0442\u043e\u043a\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u2013 Linkerd, \u043a\u0441\u0442\u0430\u0442\u0438, \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438. \u0411\u044b\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u043c\u0438 Envoy, \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 JWT \u2013 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u044f\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u043b\u0433\u043e. \u0410\u0442\u0430\u043a\u0430 \u043d\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c data plane \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a DoS (\u043e\u0442\u043a\u0430\u0437\u0443 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438) \u0438\u043b\u0438, \u0432 \u0445\u0443\u0434\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u043c\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u043a\u043e\u0434\u0430 \u0432 \u043f\u0440\u043e\u043a\u0441\u0438. \u0425\u043e\u0442\u044f \u0442\u0430\u043a\u0438\u0445 RCE \u043d\u0435 \u043f\u0440\u0438\u043f\u043e\u043c\u043d\u044e, \u043d\u043e \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. Control plane Istio \u0442\u043e\u0436\u0435 \u0438\u043c\u0435\u043b CVE, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0439 DoS, \u0438 \u0434\u0440\u0443\u0433\u0438\u0435. <\/p>\n<p>\u0424\u0443\u0445, \u043f\u043e\u0440\u0430 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0434\u043e\u0445\u043d\u0443\u0442\u044c, \u0430 \u0442\u043e \u043c\u044b \u0443\u0436\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0438\u043b\u0438 \u043f\u0443\u0433\u0430\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0443\u0433\u0440\u043e\u0437. \u0427\u0442\u043e \u0441\u043e \u0432\u0441\u0435\u043c \u044d\u0442\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c? \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u2013 <strong>\u043d\u0435 \u043e\u0442\u0447\u0430\u0438\u0432\u0430\u0442\u044c\u0441\u044f<\/strong>. \u0414\u0430, service mesh \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u043e\u0432\u0443\u044e \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c, \u043d\u043e \u043f\u0440\u0438 \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u043e\u043d \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u0438\u043b\u0438\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0432\u0430\u0448\u0438\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0435\u0437 mesh \u0442\u0440\u0443\u0434\u043d\u043e \u0434\u043e\u0441\u0442\u0438\u0447\u044c (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, mTLS \u201c\u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\u201d, \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0443\u0434\u0438\u0442 \u043a\u0442\u043e \u043a \u043a\u043e\u043c\u0443 \u0445\u043e\u0434\u0438\u0442, \u0438 \u0442.\u0434.). \u041d\u0443\u0436\u043d\u043e \u043b\u0438\u0448\u044c \u0437\u043d\u0430\u0442\u044c \u0441\u043b\u0430\u0431\u044b\u0435 \u043c\u0435\u0441\u0442\u0430 \u0438 \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043e\u0431\u043e\u0440\u043e\u043d\u0443 \u0432\u0433\u043b\u0443\u0431\u044c. <\/p>\n<hr\/>\n<h3>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/h3>\n<p><a class=\"anchor\" name=\"%D0%9A%D0%BE%D0%BD%D1%841\" id=\"\u041a\u043e\u043d\u04441\"><\/a><\/p>\n<p>\u041d\u0438\u0436\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 (\u0438 \u0443\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u044b\u0445) \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 YAML-\u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u043e\u0432 \u0434\u043b\u044f Istio \u0438 Linkerd, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u0440\u0435\u0447\u0438\u0442\u044c \u0446\u0435\u043b\u044f\u043c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u0420\u0430\u0437\u0431\u0435\u0440\u0451\u043c, \u0447\u0442\u043e \u0432 \u043d\u0438\u0445 \u043d\u0435 \u0442\u0430\u043a.<\/p>\n<blockquote>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0431\u044b\u043b\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c ChatGPT-o3-mini-high, \u0432\u0435\u0434\u044c \u043d\u0430\u0439\u0442\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u044b\u0435 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u044b \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u0442\u0438\u0447\u043d\u043e. \u0410 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 &#8212; \u0432\u0430\u0436\u043d\u043e, \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0442\u0435\u043c\u044b.<\/p>\n<\/blockquote>\n<h4>Permissive \u043cTLS \u0432 Istio \u2013 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0436\u0435\u043b\u0430\u043d\u0438\u044e<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9A%D0%BE%D0%BD%D1%842\" id=\"\u041a\u043e\u043d\u04442\"><\/a><\/p>\n<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c, \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 Istio \u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c mTLS. \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Istio \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 <code>PERMISSIVE<\/code>, \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u043a\u0430\u043a mTLS, \u0442\u0430\u043a \u0438 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 HTTP. \u0415\u0441\u043b\u0438 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u0440\u0438\u0448\u043b\u0451\u0442 TLS \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u2013 \u043e\u0442\u043b\u0438\u0447\u043d\u043e, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u041d\u0435 \u043f\u0440\u0438\u0448\u043b\u0451\u0442 \u2013 \u043d\u0443 \u0447\u0442\u043e \u0436, \u043f\u0443\u0441\u0442\u0438\u043c \u043a\u0430\u043a \u0435\u0441\u0442\u044c. \u042d\u0442\u043e \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438, \u043d\u043e \u0435\u0441\u043b\u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u0430\u043a \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435 \u2013 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c. \u0417\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u0432\u043d\u0443\u0442\u0440\u0438 \u0432\u0430\u0448\u0435\u0439 \u0441\u0435\u0442\u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c TLS \u0438 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438, \u043f\u0440\u0438\u0442\u0432\u043e\u0440\u0438\u0432\u0448\u0438\u0441\u044c \u201c\u0441\u0442\u0430\u0440\u044b\u043c\u201d \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c. \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u043c <strong>PeerAuthentication<\/strong> \u0441 \u0440\u0435\u0436\u0438\u043c\u043e\u043c <code>STRICT<\/code>.<\/p>\n<p>\u041e\u043f\u0430\u0441\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"yaml\">apiVersion: security.istio.io\/v1beta1 kind: PeerAuthentication metadata:   name: enable-permissive-mtls   namespace: prod-apps spec:   mtls:     mode: PERMISSIVE<\/code><\/pre>\n<p>\u041c\u044b \u044f\u0432\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 Permissive-\u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f <code>namespace prod-apps<\/code>. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e <strong>\u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0432 \u044d\u0442\u043e\u043c \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a<\/strong>. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0430\u0434\u043c\u0438\u043d \u0434\u0443\u043c\u0430\u043b, \u0447\u0442\u043e &#171;<em>\u043d\u0443 mTLS \u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0451\u043d, Permissive \u2013 \u044d\u0442\u043e \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u0437\u0430\u0449\u0438\u0449\u0451\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c<\/em>&#171;. <\/p>\n<p>\u041d\u043e \u043d\u0435\u0442, Permissive \u043d\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e, \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438. \u0412 \u0431\u043e\u0435\u0432\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u0430\u043a\u043e\u0439 YAML \u2013 \u0431\u0435\u0434\u0430 \u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041b\u044e\u0431\u043e\u0439 \u043a\u043b\u0438\u0435\u043d\u0442, \u0443\u043c\u0435\u044e\u0449\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u0447\u0430\u0442\u044c\u0441\u044f \u043f\u043e IP \u0434\u043e \u043f\u043e\u0434\u043e\u0432 <code>prod-apps<\/code>, \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430. \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <code>mode: STRICT<\/code> \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u0433\u043e\u0442\u043e\u0432\u044b, \u0430 \u043b\u0443\u0447\u0448\u0435 \u2013 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS \u0441\u0440\u0430\u0437\u0443 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, PeerAuthentication \u0441 STRICT \u0432 istio-system \u043d\u0430 \u0432\u0435\u0441\u044c mesh). \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0432\u0440\u043e\u0434\u0435 Snowcat \u2013 <a href=\"https:\/\/github.com\/praetorian-inc\/snowcat\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a> \u0441\u0440\u0430\u0437\u0443 \u0443\u043a\u0430\u0436\u0443\u0442 \u043d\u0430 namespaces \u0441 Permissive \u043a\u0430\u043a \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443.<\/p>\n<h4>\u0421\u043b\u0438\u0448\u043a\u043e\u043c \u0448\u0438\u0440\u043e\u043a\u0430\u044f Authorization Policy<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9A%D0%BE%D0%BD%D1%843\" id=\"\u041a\u043e\u043d\u04443\"><\/a><\/p>\n<p>Istio \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u2013 \u043a\u0442\u043e \u0438 \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c. \u042d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0434\u043b\u044f Zero Trust, \u0435\u0441\u043b\u0438 \u0441\u0430\u043c\u0438 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u044b\u0440.<\/p>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443:<\/p>\n<pre><code class=\"yaml\">apiVersion: security.istio.io\/v1beta1 kind: AuthorizationPolicy metadata:   name: allow-with-exception   namespace: payments spec:   action: ALLOW   rules:   - to:     - operation:         notPaths: [\"\/admin\"]<\/code><\/pre>\n<p>\u042d\u0442\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0433\u043e\u0432\u043e\u0440\u0438\u0442: &#171;<em>\u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0432\u0441\u0451, \u043a\u0440\u043e\u043c\u0435 \u043f\u0443\u0442\u0438 <\/em><strong><em>\/admin<\/em><\/strong>&#171;. \u041d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u0437\u0432\u0443\u0447\u0438\u0442 \u0440\u0430\u0437\u0443\u043c\u043d\u043e, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u0438\u0439 \u044d\u043d\u0434\u043f\u043e\u0438\u043d\u0442, \u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u2013 \u043f\u0443\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e <strong>\u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043e\u043f\u0430\u0441\u0435\u043d \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/strong>. \u0415\u0441\u043b\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0437\u0430\u0432\u0442\u0440\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u0442 \u043d\u043e\u0432\u044b\u0439 \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u044d\u043d\u0434\u043f\u043e\u0438\u043d\u0442, \u0441\u043a\u0430\u0436\u0435\u043c <strong>\/superadmin<\/strong> \u0438\u043b\u0438 <strong>\/bh-cat<\/strong>, \u0442\u043e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0435\u0433\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e URL, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u043d\u0430 <strong>\/admin<\/strong>. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u00ab\u043e\u0442 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u0433\u043e\u00bb, \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043e \u0432\u0441\u0451, \u0447\u0442\u043e \u043d\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043e \u043a\u0430\u043a \u0437\u0430\u043f\u0440\u0435\u0449\u0451\u043d\u043d\u043e\u0435.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c AuthorizationPolicy \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u043e\u0437\u0438\u0442\u0438\u0432\u043d\u043e, \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u044f\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0435 \u043f\u0443\u0442\u0438, \u043c\u0435\u0442\u043e\u0434\u044b, \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041b\u0438\u0431\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443-DENY \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c ALLOW \u0434\u043b\u044f \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u2013 \u043d\u043e \u043d\u0443\u0436\u043d\u043e \u0442\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043b\u0435\u0434\u0438\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043d\u043e\u0432\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0442\u043e\u0436\u0435 \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u0438 \u043f\u043e\u0434 \u0437\u0430\u0449\u0438\u0442\u0443. \u041e\u0431\u0449\u0438\u0439 \u0441\u043e\u0432\u0435\u0442 \u043e\u0442 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0438 ChatGPT \u2013 <strong>\u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c notPaths \u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432<\/strong> <a href=\"https:\/\/www.praetorian.com\/blog\/introducing-snowcat\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. \u041b\u0443\u0447\u0448\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044f\u0432\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043f\u0443\u0442\u0438, \u0447\u0435\u043c \u043e\u0434\u043d\u043e \u201c<em>\u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0432\u0441\u0451 \u043a\u0440\u043e\u043c\u0435 X<\/em>\u201d.<\/p>\n<h4>\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0432 Linkerd<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9A%D0%BE%D0%BD%D1%844\" id=\"\u041a\u043e\u043d\u04444\"><\/a><\/p>\n<p>\u0412 Linkerd \u043c\u043e\u0434\u0435\u043b\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0434\u0440\u0443\u0433\u0430\u044f, \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u0440\u0430\u0437\u0440\u0435\u0448\u0451\u043d (<code>policy mode all-unauthenticated<\/code>), \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043b\u043e\u043c\u0430\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435. \u041d\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e &#171;<code>deny<\/code>&#187; \u0438 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441\u044b \u044f\u0432\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 Server \u0438 ServerAuthorization. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0445\u043e\u0447\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u043d\u0435\u043a\u0438\u0439 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0438\u0437\u0432\u043d\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u0442\u0443\u0447\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438):<\/p>\n<pre><code class=\"yaml\">apiVersion: policy.linkerd.io\/v1beta1 kind: ServerAuthorization metadata:   name: web-open-to-world   namespace: prod-apps spec:   server:     name: web-http   client:     unauthenticated: true     networks:       - cidr: 0.0.0.0\/0       - cidr: ::\/0<\/code><\/pre>\n<p><strong>\u042d\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0432\u0437\u044f\u0442\u0430 \u0438\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 Linkerd<\/strong> \u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442: &#171;<em>\u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u0438\u0437 \u043b\u044e\u0431\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 <\/em><code>web-http<\/code>&#171;. <\/p>\n<p>\u041f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0431\u0449\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c, \u0431\u0435\u0437 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f mTLS. \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u044d\u0442\u043e \u043d\u0443\u0436\u043d\u043e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0432\u0435\u0431-\u043f\u043e\u0440\u0442\u0430\u043b). \u041d\u043e \u044d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u043b\u044e\u0431\u043e\u0439 \u043a\u043b\u0438\u0435\u043d\u0442, \u0434\u0430\u0436\u0435 \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0447\u0430\u0441\u0442\u044c\u044e \u0432\u0430\u0448\u0435\u0433\u043e mesh, \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f. \u0415\u0441\u043b\u0438 \u0433\u0434\u0435-\u0442\u043e \u0432\u043d\u0435\u0448\u043d\u044f\u044f \u0437\u0430\u0449\u0438\u0442\u0430 \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 (\u0441\u043a\u0430\u0436\u0435\u043c, \u043d\u0435\u0432\u0435\u0440\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d Ingress \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0438\u043b\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044b \u043b\u0438\u0448\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u044b), \u044d\u0442\u043e\u0442 YAML \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u0430\u0441\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u0438\u0437\u0432\u043d\u0435 \u043f\u0440\u044f\u043c\u043e \u0434\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430.<\/p>\n<p>\u0418\u0437-\u0437\u0430 \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0442\u0435\u0440\u044f\u0435\u043c \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 mesh \u2013 \u0437\u0434\u0435\u0441\u044c <code>unauthenticated: true<\/code> \u044f\u0432\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430. \u0410 \u043f\u043e\u043b\u0435 <code>networks: 0.0.0.0\/0<\/code> \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u0442 \u0434\u043e\u043f\u0443\u0441\u043a \u043d\u0430 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442). \u0415\u0441\u043b\u0438 \u0442\u0430\u043a\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0430 \u043f\u043e \u043e\u0448\u0438\u0431\u043a\u0435 \u043d\u0435 \u043a \u0442\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0434\u044b\u0440\u0443 \u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/p>\n<blockquote>\n<p>\u041d\u0443 \u0445\u043e\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0443 \u043d\u0430\u0441 \u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438<\/p>\n<\/blockquote>\n<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u044c\u0442\u0435, \u043a\u0442\u043e-\u0442\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b \u044d\u0442\u043e\u0442 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442 \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u0437\u0430\u0431\u044b\u043b \u0441\u0443\u0437\u0438\u0442\u044c cidr \u0434\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u2013 \u0438 \u0432\u043e\u0442, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 API \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432\u0441\u0435\u043c\u0443 \u043c\u0438\u0440\u0443, \u0433\u043e\u0442\u043e\u0432\u044c\u0442\u0435\u0441\u044c \u043a DDoS.<\/p>\n<p>\u0418\u0437-\u0437\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 Linkerd \u043d\u0443\u0436\u043d\u043e \u0441 \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u0441 ServerAuthorization. \u041f\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 <strong>\u0434\u0435\u0440\u0436\u0430\u0442\u044c<\/strong> <strong>all-authenticated \u0440\u0435\u0436\u0438\u043c \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/strong>, \u0447\u0442\u043e\u0431\u044b \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u0448\u043b\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u043e\u043a\u0441\u0438 Linkerd (\u0441 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432). \u0410 \u043a\u043e\u0433\u0434\u0430 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0435 \u0447\u0442\u043e-\u0442\u043e \u043d\u0430\u0440\u0443\u0436\u0443, \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0439\u0442\u0435 CIDR (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u044c\u0442\u0435\u0441\u044c \u043f\u043e\u0434\u0441\u0435\u0442\u044c\u044e \u0432\u0430\u0448\u0435\u0433\u043e ingress). <\/p>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0435\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c, Linkerd\u00a0\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 all-unauthenticated \u2013 \u0447\u0442\u043e, \u043a\u0430\u043a \u043c\u044b \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u043b\u0438, \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442 \u0432\u0441\u0451 \u043f\u043e\u0434\u0440\u044f\u0434. \u0418\u0431\u0448\u043d\u0438\u043a\u0443 \u0441\u0442\u043e\u0438\u0442 \u044d\u0442\u043e \u0437\u043d\u0430\u0442\u044c \u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u0438 \u0434\u0435\u043f\u043b\u043e\u0435 Linkerd \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c default policy \u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0440\u043e\u0433\u0443\u044e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, cluster-authenticated) \u0438 \u0437\u0430\u0442\u0435\u043c \u044f\u0432\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0435 \u043f\u043e\u0440\u0442\u044b. \u0422\u0430\u043a \u0432\u044b \u0438\u0437\u0431\u0435\u0436\u0438\u0442\u0435 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438, \u043a\u043e\u0433\u0434\u0430 \u043a\u0442\u043e-\u0442\u043e \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441, \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u0430 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043d \u043e\u0442\u043a\u0440\u044b\u0442 \u043a\u043e\u043c\u0443 \u043f\u043e\u043f\u0430\u043b\u043e.<\/p>\n<h4>\u041f\u0440\u043e\u0447\u0438\u0435 \u043a\u043e\u0432\u0430\u0440\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0438<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9A%D0%BE%D0%BD%D1%845\" id=\"\u041a\u043e\u043d\u04445\"><\/a><\/p>\n<p>\u0415\u0441\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f mesh \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0441\u0442\u0440\u0435\u043b\u0438\u0442\u044c \u0432 \u043d\u043e\u0433\u0443(\u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u043f\u0440\u043e \u043d\u0438\u0445 \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438):<\/p>\n<ul>\n<li>\n<p>\u041f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u043a \u0441\u0435\u0440\u0432\u0438\u0441-\u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430\u043c;<\/p>\n<\/li>\n<li>\n<p>\u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p>EnvoyFilter \u0438 Sidecar \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u0432 Istio.<\/p>\n<\/li>\n<\/ul>\n<hr\/>\n<h3>\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Service Mesh<\/h3>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%821\" id=\"\u041f\u0440\u0430\u043a\u04421\"><\/a><\/p>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c service mesh \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u2013 \u0437\u0430\u0434\u0430\u0447\u0430 \u043c\u043d\u043e\u0433\u043e\u0433\u0440\u0430\u043d\u043d\u0430\u044f. \u041e\u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0441\u0430\u043c\u043e\u0433\u043e mesh, \u0438 \u043e\u0431\u0449\u0438\u0435 DevSecOps-\u043f\u043e\u0434\u0445\u043e\u0434\u044b. <\/p>\n<p>\u041d\u0438\u0436\u0435 \u044f \u0441\u043e\u0431\u0440\u0430\u043b <strong>best practices<\/strong> \u2013 \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u043e\u0434\u0430 \u0447\u0435\u043a\u043b\u0438\u0441\u0442 \u0434\u043b\u044f \u0438\u0431\u0448\u043d\u0438\u043a\u0430, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0435\u0433\u043e \u0437\u0430 Istio \u0438\u043b\u0438 Linkerd \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/94d\/cee\/b25\/94dceeb256dfa4e9ed332b889bc57e46.png\" width=\"599\" height=\"414\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/94d\/cee\/b25\/94dceeb256dfa4e9ed332b889bc57e46.png\"\/><\/figure>\n<h4>\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%822\" id=\"\u041f\u0440\u0430\u043a\u04422\"><\/a><\/p>\n<p>\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0441\u0435\u0440\u0432\u0438\u0441-\u0441\u0435\u0440\u0432\u0438\u0441 \u043f\u043e TLS \u2013 \u043e\u0441\u043d\u043e\u0432\u0430 Zero Trust. \u0412 Istio <strong>\u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0440\u0435\u0436\u0438\u043c STRICT \u0434\u043b\u044f \u0432\u0441\u0435\u0445 namespace<\/strong> (PeerAuthentication \u0431\u0435\u0437 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439). \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u043e\u0434\u043d\u0443 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 default \u043d\u0430 \u0432\u0435\u0441\u044c mesh. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043d\u0435\u0442 legacy \u0441 Permissive.<\/p>\n<p>\u0412 Linkerd \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 <code>default policy all-authenticated<\/code> \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 <code>cluster-authenticated<\/code> (\u0447\u0442\u043e\u0431\u044b \u043c\u0435\u0436-\u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u043d\u0435 \u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f) \u0432\u043c\u0435\u0441\u0442\u043e all-unauthenticated \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u042d\u0442\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442, \u0447\u0442\u043e \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u043d\u0435 \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0438 \u043d\u0435\u0437\u0430\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u043c. \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u0431\u0443\u0434\u0435\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u043e\u0441\u0435\u0434\u0430. \u0422\u0430\u043a, \u0435\u0441\u043b\u0438 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043b\u0435\u0432\u044b\u0439 POD \u0431\u0435\u0437 sidecar \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0443\u0447\u0430\u0442\u044c\u0441\u044f \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0440\u0433\u043d\u0443\u0442.<\/p>\n<p>\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0440\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 ingress-\u043f\u0440\u043e\u043a\u0441\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u2013 \u043e\u043d, \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c TLS \u043e\u0442 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u043f\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0443 \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c\u0443 \u0438\u043b\u0438 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0432\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438. \u041d\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u2013 \u0432\u0441\u0451 \u0434\u043e\u043b\u0436\u043d\u043e \u0438\u0434\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 mTLS.<\/p>\n<h4>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0439\u0442\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 &#171;\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u043a\u0440\u044b\u0442\u043e&#187;<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%823\" id=\"\u041f\u0440\u0430\u043a\u04423\"><\/a><\/p>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0432 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u0430\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0430, \u043a\u0442\u043e \u043a\u043e\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u0437\u0432\u043e\u043d\u0438\u0442\u044c. \u0411\u0435\u0437 \u044d\u0442\u043e\u0433\u043e mesh \u043a\u0430\u043a \u0431\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u2013 <em>\u00ab\u041b\u0430\u0434\u043d\u043e, \u044f \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u0438\u043b\u0441\u044f, \u0447\u0442\u043e &#171;service A&#187; \u2013 \u044d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0435\u0440\u0432\u0438\u0441 \u0410, \u043d\u043e \u043f\u0443\u0449\u0443 \u0435\u0433\u043e \u043a\u0443\u0434\u0430 \u0443\u0433\u043e\u0434\u043d\u043e \u0432\u043d\u0443\u0442\u0440\u0438, \u0440\u0430\u0437 \u043e\u043d \u0441\u0432\u043e\u0439\u00bb<\/em>. \u0422\u0430\u043a\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e. \u0412 Istio \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <strong>AuthorizationPolicy<\/strong>, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430 (\u0438\u043b\u0438 \u0433\u0440\u0443\u043f\u043f\u044b) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e\u0449\u0443\u044e \u0432\u0445\u043e\u0434 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441-\u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432 \u0438\u043b\u0438 \u0438\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u043e\u0432. <\/p>\n<p>\u0425\u043e\u0440\u043e\u0448\u0430\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u2013 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c <code>DENY all<\/code> \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043d\u0430 namespace, \u0430 \u043f\u043e\u0442\u043e\u043c \u0434\u043b\u044f \u043d\u0443\u0436\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 <code>ALLOW<\/code> \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. \u0415\u0441\u043b\u0438 <code>DENY all<\/code> \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e, \u0442\u043e \u0445\u043e\u0442\u044f \u0431\u044b \u043d\u0435 \u043f\u043e\u043b\u0430\u0433\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 = \u043f\u043e\u043b\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0435\u0441\u043b\u0438 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 ALLOW-\u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043d\u0435\u0442, Istio \u043f\u0443\u0441\u0442\u0438\u0442 \u0437\u0430\u043f\u0440\u043e\u0441 \u2013 <a href=\"https:\/\/istio.io\/latest\/docs\/reference\/config\/security\/authorization-policy\/\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>). \u041b\u0443\u0447\u0448\u0435 \u044f\u0432\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f. \u0412 Linkerd \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <code>default policy = deny<\/code> (\u0438\u043b\u0438 <code>all-authenticated<\/code>) \u0438 \u0434\u0430\u043b\u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c <strong>ServerAuthorization<\/strong> \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0451\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0439. <\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c payments \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a billing, monitoring-\u0441\u0435\u0440\u0432\u0438\u0441\u0443 Prometheus \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043c\u0435\u0442\u0440\u0438\u043a\u0430\u043c \u0432\u0441\u0435\u0445, \u0438 \u0442.\u0434. \u0414\u0430, \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u2013 \u0437\u0430\u0442\u043e \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0437\u0433\u0443\u043b\u0438\u0432\u0430\u0442\u044c \u043f\u043e \u0432\u0441\u0435\u043c\u0443 mesh, \u043f\u0440\u043e\u043a\u0441\u0438 \u0431\u0443\u0434\u0443\u0442 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b.<\/p>\n<h4>\u0417\u0430\u0449\u0438\u0442\u0438\u0442\u0435 Ingress \u0438 Egress<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%824\" id=\"\u041f\u0440\u0430\u043a\u04424\"><\/a><\/p>\n<p>\u0414\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<ul>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u0430\u0448 Istio Ingress Gateway \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d <strong>\u0441 TLS<\/strong> (\u043b\u0443\u0447\u0448\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u0438\u0435\u043c \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e HTTP, \u0435\u0441\u043b\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043d \u043d\u0435 \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442\u0430 \u043d\u0430 HTTPS);<\/p>\n<\/li>\n<li>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <strong>RequestAuthentication+AuthorizationPolicy<\/strong> \u043d\u0430 ingress, \u0447\u0442\u043e\u0431\u044b \u0432\u0430\u043b\u0438\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c JWT \u0442\u043e\u043a\u0435\u043d\u044b \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0435 auth-\u0441\u0445\u0435\u043c\u044b \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u2013 \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u0448\u0438\u0444\u0440\u0443\u0435\u0442\u0435, \u0430 \u043a\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u043b\u044f \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<ul>\n<li>\n<p>\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u044c\u0442\u0435 egress \u2013  \u0432 Istio, \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 <code>outboundTrafficPolicy: REGISTRY_ONLY<\/code> \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043b\u0435\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u043d\u0435 \u0434\u043e\u0441\u0442\u0438\u0436\u0438\u043c \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0433\u043e ServiceEntry;<\/p>\n<\/li>\n<li>\n<p> \u041f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0441\u0435 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0447\u0435\u0440\u0435\u0437 Egress Gateway;<\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p>Egress Gateway \u2013 \u044d\u0442\u043e \u043f\u043e \u0441\u0443\u0442\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 Envoy, \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432\u044b\u0445\u043e\u0434 \u043d\u0430\u0440\u0443\u0436\u0443. \u041d\u0430 \u043d\u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0432\u0435\u0441\u0438\u0442\u044c Firewall rules, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0438 \u043e\u043d \u043e\u0442\u0434\u0435\u043b\u044f\u0435\u0442 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u043e\u0442 \u043e\u0431\u0449\u0435\u0433\u043e east-west. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d, \u0435\u043c\u0443 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0438\u0434\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 egress-gateway, \u0433\u0434\u0435 \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u044e \u0438\u043b\u0438 \u043e\u0442\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u0442\u044c.<\/p>\n<\/blockquote>\n<ul>\n<li>\n<p>\u0412 Linkerd \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e egress-\u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043d\u0435\u0442, \u043d\u043e \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043f\u043e\u0445\u043e\u0436\u0435\u0433\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0430 <code>network policy<\/code> \u0438\u043b\u0438 \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 proxy \u0432\u043d\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430;<\/p>\n<\/li>\n<\/ul>\n<blockquote>\n<p> \u0413\u043b\u0430\u0432\u043d\u043e\u0435 \u2013 \u0437\u043d\u0430\u0442\u044c, \u0447\u0442\u043e \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0438\u0437 \u0432\u0430\u0448\u0435\u0433\u043e mesh.<\/p>\n<\/blockquote>\n<ul>\n<li>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 DNS-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438\u043b\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439, \u0447\u0442\u043e\u0431\u044b \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u0437 \u043f\u043e\u0434\u0430 \u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u0438\u0438 \u0438\u0434\u0451\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u043d\u0430 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c api[.]easymoneydogecoin[.]com.<\/p>\n<\/li>\n<\/ul>\n<h4>\u041c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u0430\u0432\u0430 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 POD\u2019\u043e\u0432<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%825\" id=\"\u041f\u0440\u0430\u043a\u04425\"><\/a><\/p>\n<p>\u041c\u044b \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u043f\u0440\u043e NET_ADMIN \u2013 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c <strong>\u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0445 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445<\/strong>. <\/p>\n<p>\u0412 Istio-\u0441\u0435\u0442\u0430\u043f\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 <strong>Istio CNI<\/strong> \u2013 \u0442\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f initContainer \u0441 iptables \u043e\u0442 \u0440\u0443\u0442\u0430 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u043e\u0434\u0435, \u0438 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441 \u043c\u0435\u043d\u044c\u0448\u0438\u043c\u0438 \u043f\u0440\u0430\u0432\u0430\u043c\u0438. <\/p>\n<p>\u0412 Kubernetes \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0439\u0442\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f: PSP\/OPA-\u0433\u0435\u0439\u0442\u043a\u0438\u043f\u0435\u0440\u044b, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <code>UID 1337<\/code> \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445 (Istio-\u043f\u0440\u043e\u043a\u0441\u0438 \u043d\u0430 Linux \u043e\u0431\u044b\u0447\u043d\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0441 \u0442\u0430\u043a\u0438\u043c UID), \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0435 <code>CAP_NET_ADMIN<\/code> \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u042d\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u0440\u044e\u043a\u0438 \u0441 \u043e\u0431\u0445\u043e\u0434\u043e\u043c. <\/p>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, <strong>\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u044c\u0442\u0435 \u043a\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 mesh<\/strong>. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c, \u0434\u0435\u043f\u043b\u043e\u044f\u0449\u0438\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u043f\u0440\u0430\u0432\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u0442\u0438\u043f\u0430 ServiceEntry, Gateway, EnvoyFilter, Sidecar \u0438 \u0442.\u043f. \u041f\u0443\u0441\u0442\u044c \u044d\u0442\u0438 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0443 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u043b\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0447\u0435\u0440\u0435\u0437 GitOps. \u0418\u043d\u0430\u0447\u0435 \u043a\u0442\u043e-\u0442\u043e \u043f\u043e \u043d\u0435\u0437\u043d\u0430\u043d\u0438\u044e (\u0438\u043b\u0438 \u0437\u043b\u043e\u043c\u0443 \u0443\u043c\u044b\u0441\u043b\u0443) \u043e\u0442\u043a\u0440\u043e\u0435\u0442 \u0434\u044b\u0440\u043a\u0443. <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u0442\u044c OPA Gatekeeper \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c\u0438: \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0442\u044c \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435 Deployment\u2019\u0430\u043c \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044e <code>sidecar.istio.io\/disableInjection: \"true\"<\/code>, \u0447\u0442\u043e\u0431\u044b \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0432\u044b\u0432\u0435\u043b \u0441\u0432\u043e\u0439 \u043f\u043e\u0434 \u0438\u0437 mesh-\u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b, \u043b\u0438\u0431\u043e \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c PeerAuthentication \u0441 Permissive.<\/p>\n<h4>\u041e\u0431\u0435\u0441\u043f\u0435\u0447\u044c\u0442\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0441\u0442\u044c \u0438 \u0430\u0443\u0434\u0438\u0442<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%826\" id=\"\u041f\u0440\u0430\u043a\u04426\"><\/a><\/p>\n<blockquote>\n<p>\u041a\u0430\u043a \u043f\u043e\u043d\u044f\u0442\u044c, \u0447\u0442\u043e mesh \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043e? \u0422\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u044f \u0437\u0430 \u043d\u0438\u043c. <\/p>\n<\/blockquote>\n<p>\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0430\u0436\u043d\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439. Istio \u0438\u043c\u0435\u0435\u0442 \u0442\u0435\u043b\u0435\u043c\u0435\u0442\u0440\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0438 \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u0442\u0438\u043f\u0430 Kiali \u2013 <a href=\"https:\/\/github.com\/kiali\/kiali\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a> \u043f\u043e\u043a\u0430\u0436\u0435\u0442, \u043a\u0430\u043a\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0431\u044b\u043b\u0438 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u044b \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438 (\u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0430\u0443\u0434\u0438\u0442 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u043d\u0430\u0440\u0443\u0448\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0430). \u041c\u0435\u0442\u0440\u0438\u043a\u0438 Envoy \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u043e\u0432 \u043f\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 <code>RBAC_DENY<\/code>.<\/p>\n<p>\u0412 Linkerd \u0435\u0441\u0442\u044c \u0443\u0434\u043e\u0431\u043d\u044b\u0439 <a href=\"https:\/\/linkerd.io\/2-edge\/tasks\/securing-linkerd-tap\/\" rel=\"noopener noreferrer nofollow\"><strong>linkerd tap<\/strong><\/a> \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0443\u043f \u043a tap \u0437\u0430\u0449\u0438\u0449\u0451\u043d RBAC (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0442\u043e\u043b\u044c\u043a\u043e \u0430\u0434\u043c\u0438\u043d), \u0432\u0435\u0434\u044c tap \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 <strong>\u0441\u044b\u0440\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a<\/strong> \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0441\u043b\u0435\u0434\u0438\u0442\u0435 \u0437\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438, \u0432 Istio \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0435\u0441\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0434\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u0432\u044b \u043d\u0435 \u0437\u0430\u0431\u044b\u043b\u0438 \u043f\u0440\u043e \u0440\u043e\u0442\u0430\u0446\u0438\u044e CA. \u0415\u0441\u043b\u0438 mesh \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 remote logging \u2013 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044d\u0442\u043e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Envoy \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043d\u0430 \u0432\u044b\u0432\u043e\u0434 access log, \u0438 \u0432\u0441\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 \u0431\u0443\u0434\u0443\u0442 \u043f\u0438\u0441\u0430\u0442\u044c, \u043a\u0442\u043e \u043a \u043d\u0438\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u0438 \u0441 \u043a\u0430\u043a\u0438\u043c SPIFFE-ID. <\/p>\n<h4>\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0439\u0442\u0435 \u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 \u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%827\" id=\"\u041f\u0440\u0430\u043a\u04427\"><\/a><\/p>\n<p>Mesh \u0441\u0430\u043c \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u043c\u044e\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 TLS-\u0441\u0435\u0440\u0442\u044b, \u043d\u043e <strong>\u0432\u044b \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442\u0435 \u0437\u0430 Root CA<\/strong>. \u0412 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c, \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u043c PKI (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Istio \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c CA \u0447\u0435\u0440\u0435\u0437 Istio CSR API \u0438\u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u0447\u0435\u0440\u0435\u0437 SPIRE). \u0421\u0440\u043e\u043a \u0436\u0438\u0437\u043d\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 Istio \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 10 \u043b\u0435\u0442 \u2013 \u043b\u0443\u0447\u0448\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u043e\u0442\u0430\u0446\u0438\u044e root CA \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0437 \u0432 \u0433\u043e\u0434-\u0434\u0432\u0430. \u0423 Istio \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0441\u043c\u0435\u043d\u044b \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0431\u0435\u0437 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u044b. \u0415\u044e \u043d\u0443\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u044d\u043a\u0441\u043f\u0438\u0440\u0430\u0446\u0438\u0438. <\/p>\n<p>\u0414\u043b\u044f Linkerd trust anchor \u0442\u043e\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u0437\u0430\u043c\u0435\u043d\u0443 \u0434\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f (Linkerd \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0445\u043e\u0442\u044f \u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u043e\u043a\u0441\u0438). <\/p>\n<blockquote>\n<p>\u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d \u043d\u0430 self-signed CA &#171;\u043a\u0430\u043a \u0432 \u0442\u0443\u0442\u043e\u0440\u0438\u0430\u043b\u0435&#187; \u043d\u0430\u0432\u0435\u0447\u043d\u043e<\/p>\n<\/blockquote>\n<p>\u0422\u0430\u043a\u0436\u0435, \u0437\u0430\u0449\u0438\u0449\u0430\u0439\u0442\u0435 \u0441\u0435\u043a\u0440\u0435\u0442\u044b \u0432 istio-system (\u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 external CA) \u2013 \u0442\u0430\u043c \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043a\u043b\u044e\u0447\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430. \u0414\u0430\u0439\u0442\u0435 \u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u043d\u0438\u0445 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0430\u043c\u044b\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c. <\/p>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0431\u0443\u0434\u0435\u0442 <strong>\u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c TTL \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432<\/strong> (\u0432 Istio \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 MeshConfig). \u0427\u0435\u043c \u043a\u043e\u0440\u043e\u0447\u0435 \u0436\u0438\u0437\u043d\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u2013 \u0442\u0435\u043c \u043c\u0435\u043d\u044c\u0448\u0435 \u043e\u043a\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c. \u041d\u043e \u043d\u0435 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c, \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0447\u0430\u0441\u0442\u0430\u044f \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u2013 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 control plane \u0438 \u0440\u0438\u0441\u043a \u0441\u0431\u043e\u0435\u0432. \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442 24 \u0447\u0430\u0441\u0430 \u2013 72 \u0447\u0430\u0441\u0430 \u0434\u043b\u044f workload cert \u2013 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. \u0418 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043e\u0442\u043e\u0437\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 (CRL) \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e CA, \u0438\u043d\u0430\u0447\u0435 \u043e\u0442\u043e\u0437\u0432\u0430\u043b\u0438 \u0432\u044b \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0430 \u043f\u0440\u043e\u043a\u0441\u0438 \u043e\u0431 \u044d\u0442\u043e\u043c \u043d\u0435 \u0437\u043d\u0430\u044e\u0442.<\/p>\n<h4>\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0439\u0442\u0435\u0441\u044c \u0438 \u0431\u0443\u0434\u0443\u0442\u0435 \u0432 &#171;\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438&#187;\u0451<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%828\" id=\"\u041f\u0440\u0430\u043a\u04428\"><\/a><\/p>\n<p>\u042d\u0442\u043e \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u043e, \u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e. <\/p>\n<p>\u0421\u043b\u0435\u0434\u0438\u0442\u0435 \u0437\u0430 \u043d\u043e\u0432\u044b\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 Istio\/Linkerd \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e proxy. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 mesh \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u044e\u0442 security bulletins. \u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 Istio \u0438\u043b\u0438 CNCF. \u0415\u0441\u043b\u0438 \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0432 \u0432\u0430\u0448\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0431\u0430\u0433, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439, \u0441\u043a\u0430\u0436\u0435\u043c, \u043e\u0431\u043e\u0439\u0442\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e \u0438\u043b\u0438 \u043e\u0431\u0440\u0443\u0448\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438 \u2013 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0439\u0442\u0435 \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0439 \u0430\u043f\u0433\u0440\u0435\u0439\u0434. \u0412 \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445 mesh \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442 \u0432\u0435\u0441\u044c\u043c\u0430 \u0447\u0430\u0441\u0442\u043e: \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Pinterest \u0432\u0441\u0442\u0440\u043e\u0438\u043b \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 service mesh \u0432 \u0441\u0432\u043e\u0439 PaaS, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u043b\u0438 \u0441\u0432\u0435\u0436\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u201c\u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c\u201d \u0431\u0435\u0437 \u0443\u0441\u0438\u043b\u0438\u0439 \u2013 <a href=\"https:\/\/medium.com\/pinterest-engineering\/pincompute-a-kubernetes-backed-general-purpose-compute-platform-for-pinterest-8ad408df2d6f\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>.<\/p>\n<h4>\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0443\u0439\u0442\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u201cDefense in Depth\u201d<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%829\" id=\"\u041f\u0440\u0430\u043a\u04429\"><\/a><\/p>\n<p>\u041e\u0434\u0438\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u0440\u0432\u0438\u0441 \u043c\u0435\u0448 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0435\u0439 \u043e\u0431\u043e\u0440\u043e\u043d\u044b. \u041a\u0430\u043a \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f Istio, mesh \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0431\u0440\u0430\u043d\u0434\u043c\u0430\u0443\u044d\u0440 \u0434\u043b\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0438 \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u0432\u0441\u0435\u0445 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0437\u0430\u0449\u0438\u0442\u044b. <\/p>\n<p>\u041b\u0443\u0447\u0448\u0435 \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 K8s \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0441 mesh-\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438 \u2013 \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u0436\u0435 \u043f\u0440\u0438 \u043e\u0431\u0445\u043e\u0434\u0435 \u043f\u0440\u043e\u043a\u0441\u0438, \u043f\u0430\u043a\u0435\u0442 \u043d\u0435 \u0443\u0448\u0451\u043b \u043f\u043e \u0441\u0435\u0442\u0438 \u2013 <a href=\"https:\/\/istio.io\/latest\/docs\/ops\/best-practices\/security\/#defense-in-depth-with-networkpolicy\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. <\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <strong>Pod Security Standards<\/strong> (OPA) \u2013 \u0447\u0442\u043e\u0431\u044b \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u043c\u043e\u0433 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0438 \u0432\u0441\u043a\u0440\u044b\u0442\u044c \u0443\u0437\u0435\u043b \u0438\u0437\u043d\u0443\u0442\u0440\u0438. <\/p>\n<p>\u0412\u043d\u0435\u0448\u043d\u0438\u0439 <strong>WAF\/API Gateway<\/strong> \u043f\u0435\u0440\u0435\u0434 ingress mesh \u2013 \u0447\u0442\u043e\u0431\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0438 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 (mesh \u0441\u0430\u043c \u043f\u043e \u0441\u0435\u0431\u0435 \u043d\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 HTTP, \u043e\u043d \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 L4\/L7 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438). \u0422\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0439\u0442\u0435 \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043a\u043e\u0434\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u2013 mesh \u043d\u0435 \u0441\u043f\u0430\u0441\u0451\u0442, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 RCE \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435, \u0445\u043e\u0442\u044f \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u0442 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0435\u043c\u0443 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435. \u041f\u043e\u043c\u043d\u0438\u0442\u0435, \u0447\u0442\u043e service mesh \u2013 \u044d\u0442\u043e \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0430, \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u044e\u0449\u0430\u044f \u0432\u0430\u0448\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c, \u043d\u043e \u043d\u0435 \u0432\u043e\u043b\u0448\u0435\u0431\u043d\u044b\u0439 \u0449\u0438\u0442.<\/p>\n<h4>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9F%D1%80%D0%B0%D0%BA%D1%8210\" id=\"\u041f\u0440\u0430\u043a\u044210\"><\/a><\/p>\n<p>\u0412\u0440\u0443\u0447\u043d\u0443\u044e \u0443\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u0434\u0435\u0441\u044f\u0442\u043a\u0430\u043c\u0438 YAML-\u043e\u0432 \u0441\u043b\u043e\u0436\u043d\u043e\u0432\u0430\u0442\u043e, \u044f \u0432 \u0412\u0430\u0441 \u0432\u0435\u0440\u044e, \u043d\u043e \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0431\u0443\u0434\u0435\u043c \u0440\u0435\u0430\u043b\u0438\u0441\u0442\u0430\u043c\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b, \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0449\u0438\u0435 \u043d\u0430\u0439\u0442\u0438 \u043e\u043f\u0430\u0441\u043d\u044b\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b. \u041f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439 istioctl analyze \u2013 <a href=\"https:\/\/tetrate.io\/blog\/istio-configuration-security-how-to-avoid-misconfigurations\/\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a> \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Istio \u2013 \u043e\u043d\u0430 \u043b\u043e\u0432\u0438\u0442 \u043c\u043d\u043e\u0433\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0441\u0441\u044b\u043b\u0430\u044e\u0449\u0435\u0435\u0441\u044f \u043d\u0430 \u043d\u0435\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u0435\u0440\u0432\u0438\u0441, \u0438\u043b\u0438 \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u044b). <\/p>\n<p>\u0414\u043b\u044f \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u044b \u0432\u0440\u043e\u0434\u0435 <a href=\"https:\/\/github.com\/praetorian-inc\/snowcat\" rel=\"noopener noreferrer nofollow\">Snowcat<\/a>, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043a\u0430\u0441\u0430\u043b\u0438\u0441\u044c. \u041e\u043d \u0443\u043c\u0435\u0435\u0442 <strong>\u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u0442\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f \u043e\u0442 best practices<\/strong> \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u0439\u0434\u0435\u0442 \u0432\u0441\u0435 namespace \u0441 Permissive mTLS, \u0438\u043b\u0438 policy \u0441 notPaths, \u0438\u043b\u0438 DestinationRule \u0431\u0435\u0437 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u0438 \u0442.\u0434. <a href=\"https:\/\/github.com\/kiali\/kiali\" rel=\"noopener noreferrer nofollow\">Kiali<\/a> \u0442\u043e\u0436\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. <\/p>\n<p>\u0414\u043b\u044f Linkerd, \u043a\u0441\u0442\u0430\u0442\u0438, \u0442\u043e\u0436\u0435 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043b\u0438\u043d\u0442\u0435\u0440\u044b <a href=\"https:\/\/github.com\/linkerd\/linkerd2-conformance\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a> \u2013 \u043d\u043e \u0442\u0430\u043c \u0438 \u0441\u0430\u043c\u0438\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043c\u0435\u043d\u044c\u0448\u0435. <\/p>\n<hr\/>\n<h3>\u041e\u043f\u044b\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439<\/h3>\n<p><a class=\"anchor\" name=\"%D0%9E%D0%BF%D1%8B%D1%821\" id=\"\u041e\u043f\u044b\u04421\"><\/a><\/p>\n<p>\u0422\u0435\u043e\u0440\u0438\u044f \u2013 \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e, \u043d\u043e \u043a\u0430\u043a \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u043e\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u0438\u0442\u044c mesh \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435? \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u0435\u0439\u0441\u043e\u0432.<\/p>\n<h4>Airbnb<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9E%D0%BF%D1%8B%D1%822\" id=\"\u041e\u043f\u044b\u04422\"><\/a><\/p>\n<p>\u041e\u043d\u0438 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e \u043f\u043e\u0434\u043e\u0448\u043b\u0438 \u043a \u0432\u043e\u043f\u0440\u043e\u0441\u0443 \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0441\u0442\u0438 mesh. \u0412 \u0441\u0432\u043e\u0435\u043c \u0432\u044b\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0438 \u043d\u0430 IstioCon \u043e\u043d\u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u043b\u0438 Istio \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 <strong>External Control Plane \u0438 flat network<\/strong> \u2013 <a href=\"https:\/\/hackdojo.io\/presentations\/9DPEWBGPY\/building-a-multi-cluster-env-service-mesh-at-airbnb\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. Control plane (istiod) \u0443 \u043d\u0438\u0445 \u0432\u044b\u043d\u0435\u0441\u0435\u043d \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0430 \u0434\u0430\u043d\u043d\u044b\u0435 (\u043f\u0440\u043e\u043a\u0441\u0438) \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445. \u042d\u0442\u043e \u0434\u0430\u043b\u043e \u043b\u0443\u0447\u0448\u0443\u044e \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u044e, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u043f\u043e\u0439\u0434\u0451\u0442 \u043d\u0435 \u0442\u0430\u043a (\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044f \u0443\u0437\u043b\u0430, \u0430\u0442\u0430\u043a\u0430 \u0438 \u0442.\u0434.), istiod \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0432\u043d\u0435 \u0434\u043e\u0441\u044f\u0433\u0430\u0435\u043c\u043e\u0441\u0442\u0438, \u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0438. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u043b\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f Istio \u0431\u0435\u0437 \u0432\u043e\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. <\/p>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, Airbnb \u0432\u043d\u0435\u0434\u0440\u0438\u043b\u0438 <strong>\u043c\u043d\u043e\u0433\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 mesh<\/strong> \u2013 \u0443 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c sandbox-\u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435, \u0433\u0434\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0435 \u0444\u0438\u0447\u0438 mesh \u0438 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u043a\u0430\u0442\u043e\u043c \u0432 \u043f\u0440\u043e\u0434. \u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 (multi-tier mesh) \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u201c\u0440\u0430\u0434\u0438\u0443\u0441 \u0432\u0437\u0440\u044b\u0432\u0430\u201d \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u0432\u0441\u0435 \u043d\u043e\u0432\u044b\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u043a\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435, \u0438\u043c\u0438\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u043c \u043f\u0440\u043e\u0434, \u043d\u043e \u0431\u0435\u0437 \u0432\u043b\u0438\u044f\u043d\u0438\u044f \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u2013 <a href=\"https:\/\/hackdojo.io\/presentations\/9DPEWBGPY\/building-a-multi-cluster-env-service-mesh-at-airbnb\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>.<\/p>\n<h4>Lyft<\/h4>\n<p><a class=\"anchor\" name=\"%D0%9E%D0%BF%D1%8B%D1%823\" id=\"\u041e\u043f\u044b\u04423\"><\/a><\/p>\n<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0437\u0434\u0430\u043b\u0430 Envoy, \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0430\u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 service mesh. \u0423 \u043d\u0438\u0445 \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 mesh (\u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u0430\u043c\u044b\u0439 \u0431\u043e\u043b\u044c\u0448\u043e\u0439) \u2013 \u0442\u044b\u0441\u044f\u0447\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u044b \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a\u0443\u043b\u044c\u0442\u0443\u0440\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0443 \u043d\u0438\u0445 \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u0432\u043e\u043a\u0440\u0443\u0433 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Envoy \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 code review \u0438 \u0442\u0435\u0441\u0442\u044b \u2013 \u0443\u0440\u043e\u043d\u0438\u0442\u044c mesh \u0437\u043d\u0430\u0447\u0438\u0442 \u0443\u0440\u043e\u043d\u0438\u0442\u044c Lyft, \u0446\u0435\u043d\u0430 \u043e\u0433\u0440\u043e\u043c\u043d\u0430. Lyft <a href=\"https:\/\/eng.lyft.com\/scaling-productivity-on-microservices-at-lyft-part-3-extending-our-envoy-mesh-with-staging-fdaafafca82f\" rel=\"noopener noreferrer nofollow\">\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430<\/a>, \u0447\u0442\u043e \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u043e\u043d\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432, \u0430 staging-\u0441\u0440\u0435\u0434\u0443 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u201c\u043f\u0435\u0440\u0432\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u043e\u0439\u201d: \u043b\u044e\u0431\u0443\u044e \u043d\u043e\u0432\u0443\u044e \u0444\u0438\u0447\u0443 mesh \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u044e\u0442 \u0447\u0435\u0440\u0435\u0437 staging, \u0438\u0437\u043e\u043b\u0438\u0440\u0443\u044f \u0442\u0440\u0430\u0444\u0438\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445.<\/p>\n<hr\/>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p><a class=\"anchor\" name=\"%D0%97%D0%B0%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5\" id=\"\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\"><\/a><\/p>\n<p>\u0412\u043d\u0435\u0434\u0440\u044f\u044f Istio \u0438\u043b\u0438 Linkerd, \u043b\u0435\u0433\u043a\u043e \u0443\u0432\u043b\u0435\u0447\u044c\u0441\u044f \u0432\u0441\u0435\u043c\u0438 \u0438\u0445 \u0444\u0438\u0447\u0430\u043c\u0438 \u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u0437 \u0432\u0438\u0434\u0443 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041d\u043e, \u043a\u0430\u043a \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438, service mesh \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u0438\u043b\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u0435\u0441\u043b\u0438 \u0441\u043e\u0431\u043b\u044e\u0441\u0442\u0438 \u0440\u044f\u0434 \u0443\u0441\u043b\u043e\u0432\u0438\u0439. <\/p>\n<p>\u041a\u0440\u0430\u0442\u043a\u043e \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u043c \u0441\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435:<\/p>\n<ul>\n<li>\n<p><strong>\u0412\u0441\u0435\u0433\u0434\u0430 \u0448\u0438\u0444\u0440\u0443\u0439\u0442\u0435 \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0439\u0442\u0435 \u0441\u0435\u0440\u0432\u0438\u0441-\u0441\u0435\u0440\u0432\u0438\u0441 \u0442\u0440\u0430\u0444\u0438\u043a (mTLS)<\/strong> \u2013 \u0438 \u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u044d\u0442\u043e \u0441\u0442\u0440\u043e\u0433\u043e, \u0431\u0435\u0437 \u00ab\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438\u0437 \u043f\u0440\u0430\u0432\u0438\u043b\u00bb. \u042d\u0442\u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0441\u043b\u043e\u0439 Zero Trust, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 mesh \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0447\u0442\u0438 \u0431\u0435\u0437 \u0443\u0441\u0438\u043b\u0438\u0439, \u0433\u0440\u0435\u0445 \u043d\u0435 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e;<\/p>\n<\/li>\n<li>\n<p><strong>\u042f\u0432\u043d\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0439\u0442\u0435, \u043a\u0442\u043e \u0441 \u043a\u0435\u043c \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f<\/strong>, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a. \u041f\u0440\u0438\u043d\u0446\u0438\u043f \u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0438\u0445 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439: \u0435\u0441\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0443 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0437\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u043e\u0439 \u2013 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0442\u0435. \u041b\u0443\u0447\u0448\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043c, \u0447\u0435\u043c \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u043a\u0430\u043a \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043f\u0440\u043e\u043a\u0440\u0430\u043b\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0442\u0440\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043f\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p><strong>\u0421\u043b\u0435\u0434\u0438\u0442\u0435 \u0437\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0430\u043c\u0438<\/strong> \u2013 \u043e\u0448\u0438\u0431\u043a\u0430 \u0432 YAML \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u043e\u0439. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0439\u0442\u0435 \u0438\u0445 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 (istioctl, \u043b\u0438\u043d\u0442\u0435\u0440\u044b), \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u044c\u0442\u0435, \u043a\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0432\u043d\u043e\u0441\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0438 \u0440\u0435\u0432\u044c\u044e\u0439\u0442\u0435 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0439\u0442\u0435, \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u0430 \u0442\u0430 \u0438\u043b\u0438 \u0438\u043d\u0430\u044f \u0434\u044b\u0440\u043e\u0447\u043a\u0430 (\u0435\u0441\u043b\u0438 \u0443\u0436 \u043d\u0430\u0434\u043e), \u0438 \u043d\u0435 \u0437\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u044c, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430\u0434\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043f\u0430\u043b\u0430;<\/p>\n<\/li>\n<li>\n<p><strong>\u0417\u0430\u0449\u0438\u0442\u0438\u0442\u0435 \u0441\u0440\u0435\u0434\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f<\/strong>. \u041d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0439\u0442\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c \u0432\u044b\u0440\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437-\u043f\u043e\u0434 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f (<code>NET_ADMIN<\/code> \u0438 \u043f\u0440\u043e\u0447.), \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0439\u0442\u0435 proxy \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c, \u0434\u0435\u0440\u0436\u0438\u0442\u0435 \u0441\u0435\u043a\u0440\u0435\u0442\u044b (\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b) \u043f\u043e\u0434 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u043e\u0439. \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0439\u0442\u0435 mesh \u2013 \u043a\u0430\u0436\u0434\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043e\u0431\u044b\u0447\u043d\u043e \u0443\u043a\u0440\u0435\u043f\u043b\u044f\u0435\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438;<\/p>\n<\/li>\n<li>\n<p><strong>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0438 \u0430\u0443\u0434\u0438\u0442<\/strong> \u2013 \u0432\u0430\u0448\u0438 \u043b\u0443\u0447\u0448\u0438\u0435 \u0434\u0440\u0443\u0437\u044c\u044f. \u041b\u043e\u0433\u0438, \u043c\u0435\u0442\u0440\u0438\u043a\u0438, \u0442\u0440\u0435\u0439\u0441\u0438\u043d\u0433 \u2013 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432\u0441\u0451, \u0447\u0442\u043e\u0431\u044b \u0432\u0438\u0434\u0435\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u0443: \u043a\u0442\u043e \u0441\u0442\u0443\u0447\u0438\u0442\u0441\u044f, \u0433\u0434\u0435 \u043e\u0442\u043a\u0430\u0437\u044b, \u0433\u0434\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043e\u0431\u043e\u0439\u0442\u0438;<\/p>\n<\/li>\n<li>\n<p><strong>\u041c\u043d\u043e\u0433\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u0430\u044f \u043e\u0431\u043e\u0440\u043e\u043d\u0430<\/strong>. \u041d\u0435 \u043f\u043e\u043b\u0430\u0433\u0430\u0439\u0442\u0435\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 mesh. \u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0443\u0439\u0442\u0435 \u0441 NetworkPolicy, \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0445 \u0442\u043e\u043a\u0435\u043d\u043e\u0432, web application firewall \u2013 \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0431\u0430\u0440\u044c\u0435\u0440\u043e\u0432, \u0442\u0435\u043c \u0432\u044b\u0448\u0435 \u0448\u0430\u043d\u0441 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0430\u0442\u0430\u043a\u0443 \u043d\u0430 \u0440\u0430\u043d\u043d\u0435\u043c \u044d\u0442\u0430\u043f\u0435. Service mesh \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0432\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 Zero Trust \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443, \u043d\u043e \u043e\u043d \u2013 \u0447\u0430\u0441\u0442\u044c \u0435\u0451, \u0430 \u043d\u0435 \u0432\u0441\u044f \u043e\u043d\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u0443 \u0438 \u043d\u0430\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u043a \u0432<strong>\u043e\u0432\u043b\u0435\u043a\u0430\u0439\u0442\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0438 DevOps-\u043e\u0432 \u0432 \u0442\u0435\u043c\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 mesh<\/strong>. \u0427\u0430\u0441\u0442\u043e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u0435 \u043e\u0442 \u0437\u043b\u043e\u0433\u043e \u0443\u043c\u044b\u0441\u043b\u0430, \u0430 \u043e\u0442 \u043d\u0435\u0437\u043d\u0430\u043d\u0438\u044f. \u041f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f, \u043f\u0438\u0448\u0438\u0442\u0435 \u0433\u0430\u0439\u0434\u044b (\u043f\u043e\u0434\u043e\u0431\u043d\u043e \u044d\u0442\u043e\u043c\u0443): <em>\u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0442\u0430\u0432\u0438\u0442\u044c Permissive, \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u043d\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0442\u044c sidecar \u0434\u0430\u0436\u0435 \u0432 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u044b\u0445 \u0446\u0435\u043b\u044f\u0445 \u043d\u0430 \u043f\u0440\u043e\u0434\u0435, \u0438 \u0442.\u0434<\/em>. \u041a\u0443\u043b\u044c\u0442\u0443\u0440\u0430 DevSecOps \u0432 microservices \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u2013 \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e, \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u044b \u0434\u0430\u0451\u0442\u0435 \u0438\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b (policy-as-code, \u0448\u0430\u0431\u043b\u043e\u043d\u044b, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438).<\/p>\n<hr\/>\n<h3>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438<\/h3>\n<p><a class=\"anchor\" name=\"%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8\" id=\"\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438\"><\/a><\/p>\n<ol>\n<li>\n<p>\u041e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 Istio \u043f\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: <a href=\"https:\/\/istio.io\/latest\/docs\/ops\/best-practices\/security\/\" rel=\"noopener noreferrer nofollow\">Istio Security Best Practices<\/a> \u2013 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e, \u0442\u0430\u043c \u043c\u043d\u043e\u0433\u043e \u0442\u043e\u043d\u043a\u043e\u0441\u0442\u0435\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0438 \u0441\u043e\u0432\u0435\u0442\u044b \u043f\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e Network Policy \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 Istio;<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0437\u0431\u043e\u0440 \u0442\u0438\u043f\u043e\u0432\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Istio \u0438 \u043a\u0430\u043a \u0438\u0445 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c: \u0441\u0442\u0430\u0442\u044c\u044f <a href=\"https:\/\/tetrate.io\/blog\/istio-configuration-security-how-to-avoid-misconfigurations\" rel=\"noopener noreferrer nofollow\">Tetrate Istio Configuration Security: How to avoid misconfigurations<\/a> \u2013 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043f\u043e\u043d\u044f\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u0430\u043b\u0438\u0434\u043d\u044b\u0439 \u043d\u0430 \u0432\u0438\u0434 YAML \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e;<\/p>\n<\/li>\n<li>\n<p>\u0411\u043b\u043e\u0433 Praetorian \u043e \u0441\u043a\u0430\u043d\u0435\u0440\u0435 Snowcat \u0438 \u043e\u0431\u0437\u043e\u0440\u0435 \u0440\u0438\u0441\u043a\u043e\u0432 Istio: &#171;<a href=\"https:\/\/www.praetorian.com\/blog\/introducing-snowcat\" rel=\"noopener noreferrer nofollow\">Introducing Snowcat: Istio Security Scanner<\/a>&#187; \u2013 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b (\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u044b \u043f\u0440\u0438\u0432\u0435\u043b\u0438) \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d\u0438 \u043e\u043f\u0430\u0441\u043d\u044b;<\/p>\n<\/li>\n<li>\n<p>\u041a\u0435\u0439\u0441-\u0441\u0442\u0430\u0434\u0438 Istio: IstioCon <a href=\"https:\/\/hackdojo.io\/presentations\/9DPEWBGPY\/building-a-multi-cluster-env-service-mesh-at-airbnb\" rel=\"noopener noreferrer nofollow\">\u043f\u0440\u0435\u0437\u0435\u043d\u0442\u0430\u0446\u0438\u044f Airbnb<\/a> \u2013 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u044f\u0442\u044c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043c\u0435\u0440\u044b;<\/p>\n<\/li>\n<li>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f Solo.io \u043e \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u043e\u0431\u0445\u043e\u0434\u0430 Istio \u0438 \u0432\u044b\u0432\u043e\u0434\u0430\u0445: <a href=\"https:\/\/www.solo.io\/blog\/best-practices-for-secure-istio-deployment-with-gloo-mesh-core\" rel=\"noopener noreferrer nofollow\">Best practices for secure Istio deployment<\/a> \u2013 \u0446\u0435\u043d\u043d\u0430 \u0442\u0435\u043c, \u0447\u0442\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0435 \u0430\u0442\u0430\u043a\u0438 \u0438 \u043f\u043e\u0434\u0447\u0435\u0440\u043a\u0438\u0432\u0430\u0435\u0442 \u0432\u0430\u0436\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 (UID, NetworkPolicy \u0438 \u0434\u0440.);<\/p>\n<\/li>\n<li>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u043e\u0442 <a href=\"https:\/\/www.wiz.io\/blog\/sapwned-sap-ai-vulnerabilities-ai-security\" rel=\"noopener noreferrer nofollow\">Wiz: SAPwned: SAP AI vulnerabilities expose customers\u2019 cloud environments and private AI artifacts<\/a> \u2013 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437 \u0438 \u043e\u043f\u044b\u0442;<\/p>\n<\/li>\n<li>\n<p>\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 <a href=\"https:\/\/github.com\/praetorian-inc\/snowcat\" rel=\"noopener noreferrer nofollow\">Snowcat<\/a><\/p>\n<\/li>\n<li>\n<p>\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 <a href=\"https:\/\/github.com\/kiali\/kiali\" rel=\"noopener noreferrer nofollow\">Kiali<\/a><\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/893938\/\"> https:\/\/habr.com\/ru\/articles\/893938\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/article\/893938#%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B1\" rel=\"noopener noreferrer nofollow\">\u0423\u0433\u0440\u043e\u0437\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Service Mesh<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B2\" rel=\"noopener noreferrer nofollow\">1. \u041e\u0448\u0438\u0431\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u0444\u0430\u043a\u0442\u043e\u0440<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B3\" rel=\"noopener noreferrer nofollow\">2. \u0410\u0442\u0430\u043a\u0438 \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c (control plane)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B4\" rel=\"noopener noreferrer nofollow\">3. \u041e\u0431\u0445\u043e\u0434 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 (\u0430\u0442\u0430\u043a\u0438 \u043d\u0430 data plane)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B5\" rel=\"noopener noreferrer nofollow\">4. \u041a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044f mTLS \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B6\" rel=\"noopener noreferrer nofollow\">5. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 Ingress \u0438 Egress (\u0433\u0440\u0430\u043d\u0438\u0446\u044b mesh)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B7\" rel=\"noopener noreferrer nofollow\">6. \u041f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438 \u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442\u043d\u043e\u0441\u0442\u044c<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B8\" rel=\"noopener noreferrer nofollow\">7. \u042d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0441\u0430\u043c\u043e\u0433\u043e mesh-\u0441\u043e\u0444\u0442\u0430<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%841\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%842\" rel=\"noopener noreferrer nofollow\">Permissive \u043cTLS \u0432 Istio \u2013 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0436\u0435\u043b\u0430\u043d\u0438\u044e<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%843\" rel=\"noopener noreferrer nofollow\">\u0421\u043b\u0438\u0448\u043a\u043e\u043c \u0448\u0438\u0440\u043e\u043a\u0430\u044f Authorization Policy<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%844\" rel=\"noopener noreferrer nofollow\">\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0432 Linkerd<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9A%D0%BE%D0%BD%D1%845\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u043e\u0447\u0438\u0435 \u043a\u043e\u0432\u0430\u0440\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0438<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%821\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Service Mesh<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%822\" rel=\"noopener noreferrer nofollow\">\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%823\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0439\u0442\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 &#171;\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u043a\u0440\u044b\u0442\u043e&#187;<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%824\" rel=\"noopener noreferrer nofollow\">\u0417\u0430\u0449\u0438\u0442\u0438\u0442\u0435 Ingress \u0438 Egress<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%825\" rel=\"noopener noreferrer nofollow\">\u041c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u0430\u0432\u0430 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 POD\u2019\u043e\u0432<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%826\" rel=\"noopener noreferrer nofollow\">\u041e\u0431\u0435\u0441\u043f\u0435\u0447\u044c\u0442\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0441\u0442\u044c \u0438 \u0430\u0443\u0434\u0438\u0442<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%827\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0439\u0442\u0435 \u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 \u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%828\" rel=\"noopener noreferrer nofollow\">\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0439\u0442\u0435\u0441\u044c \u0438 \u0431\u0443\u0434\u0443\u0442\u0435 \u0432 &#171;\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438&#187;<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%829\" rel=\"noopener noreferrer nofollow\">\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0443\u0439\u0442\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u201cDefense in Depth\u201d<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9F%D1%80%D0%B0%D0%BA%D1%8210\" rel=\"noopener noreferrer nofollow\">\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%821\" rel=\"noopener noreferrer nofollow\">\u041e\u043f\u044b\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439<\/a><\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%822\" rel=\"noopener noreferrer nofollow\">Airbnb<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%9E%D0%BF%D1%8B%D1%823\" rel=\"noopener noreferrer nofollow\">Lyft<\/a><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%97%D0%B0%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/893938#%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8\" rel=\"noopener noreferrer nofollow\">\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438<\/a><\/p>\n<\/li>\n<\/ul>\n<h3>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h3>\n<p><a class=\"anchor\" name=\"%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5\" id=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435\">\u043d\u0438\u0435&#187;><\/a><\/p>\n<p>\u0412\u0441\u0451, \u043a\u0430\u043a \u044f \u043b\u044e\u0431\u043b\u044e, \u043d\u0430\u0447\u043d\u0435\u043c \u0441 \u043e\u0441\u043d\u043e\u0432, \u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043c \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p><strong>Service mesh<\/strong> \u2013 \u044d\u0442\u043e \u0441\u043b\u043e\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0435\u0440\u0451\u0442 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438. \u041f\u0440\u043e\u0435\u043a\u0442\u044b <strong>Istio<\/strong> \u0438 <strong>Linkerd<\/strong> \u2013 \u043e\u0434\u043d\u0438 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 service mesh \u0434\u043b\u044f Kubernetes. \u041e\u043d\u0438 \u043e\u0431\u0435\u0449\u0430\u044e\u0442 \u043d\u0430\u043c \u00ab<em>\u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438<\/em>\u00bb \u043c\u044c\u044e\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 (\u044f\u0437\u044b\u043a \u0441\u043b\u043e\u043c\u0430\u0435\u0448\u044c) TLS (<em>mTLS<\/em>) \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u0433\u0438\u0431\u043a\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u043e\u043c \u0438 \u0442\u043e\u043d\u043a\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u2013 \u0441\u043b\u043e\u0432\u043e\u043c, \u0432\u0441\u0451 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 Zero Trust. \u0417\u0432\u0443\u0447\u0438\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u043e, \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c, \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c\u043e\u0441\u0442\u044c \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0431\u0435\u0437 \u043f\u0440\u0430\u0432\u043a\u0438 \u043a\u043e\u0434\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041d\u043e, \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u00ab\u0441\u0430\u043c\u043e\u0435 \u043f\u0440\u043e\u0447\u043d\u043e\u0435 \u0436\u0435\u043b\u0435\u0437\u043e \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u0434\u0432\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u043f\u0435\u0442\u043b\u044f\u043c\u0438 \u043d\u0430\u0440\u0443\u0436\u0443\u00bb. \u041f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, <strong>\u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f<\/strong> \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b mesh \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e \u0441\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u043d\u0435\u0442 \u0432\u0441\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430. \u0421\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043e\u0442\u0447\u0451\u0442\u0443, \u0434\u043e 55% \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u043e\u0432 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Kubernetes \u0441\u0432\u044f\u0437\u0430\u043d\u044b \u0441 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u2013 \u0430 service mesh \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0449\u0451 \u0441\u0432\u043e\u0439 \u043f\u043b\u0430\u0441\u0442 YAML-\u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u043e\u0432 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. \u0414\u043b\u044f \u0438\u0431\u0448\u043d\u0438\u043a\u0430 \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 &#8212; \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u0438\u0442\u044c Istio \u0438\u043b\u0438 Linkerd, \u043d\u0430\u0434\u043e \u0437\u043d\u0430\u0442\u044c, \u0433\u0434\u0435 \u043d\u0430\u0441 \u043f\u043e\u0434\u0441\u0442\u0435\u0440\u0435\u0433\u0430\u044e\u0442 \u0433\u0440\u0430\u0431\u043b\u0438.<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u043c\u0441\u044f \u0432 \u0442\u0435\u043c\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 service mesh \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Istio \u0438 Linkerd. \u0420\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0433\u0440\u043e\u0437\u044b: \u043e\u0442 \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u0432 YAML \u0434\u043e \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0445, \u043f\u044b\u0442\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043e\u0431\u043e\u0439\u0442\u0438 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 \u0438\u043b\u0438 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c mTLS. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0443\u044f\u0437\u0432\u0438\u043c\u044b\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u2013 \u0434\u0430-\u0434\u0430, \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u044b\u0445 YAML-\u043e\u0432.  \u041e\u0431\u0441\u0443\u0434\u0438\u043c \u043b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438: \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c mesh \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u2013 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432. \u0418 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u043b\u044f\u043d\u0435\u043c \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u0435\u0439\u0441\u044b \u2013 \u043a\u0430\u043a \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 (Airbnb \u0438 Lyft) \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0442 \u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 service mesh, \u043a\u0430\u043a\u0438\u0435 \u0443\u0440\u043e\u043a\u0438 \u043e\u043d\u0438 \u0432\u044b\u043d\u0435\u0441\u043b\u0438.<\/p>\n<hr\/>\n<h3>\u0423\u0433\u0440\u043e\u0437\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 Service Mesh<\/h3>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B1\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b1\">\u0437\u044b1&#8243;<\/a><\/p>\n<p>Service mesh \u0440\u0435\u0448\u0430\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043d\u043e \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u0438 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u044b \u0430\u0442\u0430\u043a. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0433\u0440\u043e\u0437\u044b \u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438, \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u043d\u044b\u0435 \u0434\u043b\u044f Istio\/Linkerd. <\/p>\n<figure class=\"full-width\"><\/figure>\n<h4>1. \u041e\u0448\u0438\u0431\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u0444\u0430\u043a\u0442\u043e\u0440<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B2\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b2\">\u0437\u044b2&#8243;<\/a><\/p>\n<p>\u042d\u0442\u043e \u0432\u0440\u0430\u0433 \u21161. Service mesh \u2013 \u044d\u0442\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u0438 CRD \u0438 \u0441\u043e\u0442\u043d\u0438 \u043e\u043f\u0446\u0438\u0439, \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u044b\u0440\u043a\u0443 \u0432 \u043e\u0431\u043e\u0440\u043e\u043d\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <strong>\u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0441\u0442\u0440\u043e\u0433\u0438\u0439 mTLS<\/strong> \u2013 \u0438 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u0438\u043c\u0443\u0442 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u043e\u0442 \u043a\u043e\u0433\u043e \u0443\u0433\u043e\u0434\u043d\u043e. \u0418\u043b\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e\u0449\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u2013 \u0438 \u043d\u0435\u0432\u043e\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043b\u0438\u0448\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c. \u041f\u043e\u0440\u043e\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438 \u0438\u043b\u0438 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0412 2017 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043e\u0431\u0440\u0443\u0448\u0438\u043b\u0430 \u043f\u043e\u043b-\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 (\u043f\u0440\u0438\u0432\u0435\u0442 AWS outage) \u2013 \u0430 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 YAML \u0432 mesh \u043c\u043e\u0436\u0435\u0442 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0432\u0441\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. Kubernetes \u0438 Istio \u0441\u0442\u0430\u0440\u0430\u044e\u0442\u0441\u044f \u0432\u0430\u043b\u0438\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u043e \u043e\u043d\u0438 \u043d\u0435 \u0432\u0441\u0435\u0441\u0438\u043b\u044c\u043d\u044b, Mesh \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u0430\u043b\u0438\u0434\u043d\u0430, \u043d\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0432\u044b \u0434\u0443\u043c\u0430\u0435\u0442\u0435.<\/p>\n<h4>2. \u0410\u0442\u0430\u043a\u0438 \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c (control plane)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B3\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b3\">\u0437\u044b3&#8243;<\/a><\/p>\n<p>Istio-\u044f\u0434\u0440\u043e (istiod) \u0438\u043b\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b Linkerd \u043c\u043e\u0433\u0443\u0442 \u0441\u0442\u0430\u0442\u044c \u043c\u0438\u0448\u0435\u043d\u044c\u044e. \u042d\u0442\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b: \u043e\u043d\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u0432\u0441\u0435\u043c\u0438 \u043f\u0440\u043e\u043a\u0441\u0438. \u0415\u0441\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043d\u0430\u0439\u0434\u0451\u0442 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 istiod \u0438\u043b\u0438 \u043f\u0440\u043e\u043d\u0438\u043a\u043d\u0435\u0442 \u0432 \u043d\u0435\u0433\u043e, \u043e\u043d \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c \u0438\u043b\u0438 \u043f\u043e\u0434\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u0432\u0441\u0435\u0433\u043e mesh. <\/p>\n<p>\u0411\u044b\u043b\u0438 \u043f\u0440\u0435\u0446\u0435\u0434\u0435\u043d\u0442\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0448\u0430\u044f \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438 istiod \u0431\u0435\u0437 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 (Stack exhaustion DoS) \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0432 Istio \u2013 <a href=\"https:\/\/github.com\/istio\/istio\/security\/advisories\/GHSA-8w5h-qr4r-2h6g\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. Control plane \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0432\u043e\u0432\u0440\u0435\u043c\u044f (\u043f\u043e\u0437\u0436\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e\u0431 \u044d\u0442\u043e\u043c) \u0438 \u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0435\u043c\u0443. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043f\u043e\u0434\u043c\u0435\u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u0438 \u2013 \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u043d\u043e \u043f\u0443\u0433\u0430\u044e\u0449\u0438\u0439 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439. \u0415\u0441\u043b\u0438 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439 \u0441\u0443\u043c\u0435\u0435\u0442 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438 \u0432\u0435\u0440\u0438\u0442\u044c \u0444\u0430\u043b\u044c\u0448\u0438\u0432\u043e\u043c\u0443 istiod, \u043e\u043d \u0441\u043c\u043e\u0436\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u043c\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438 \u043c\u043d\u043e\u0433\u043e\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\u0445 \u0447\u0430\u0441\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e\u0442 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c \u2013 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b\u043d\u0435\u0441\u0442\u0438 istiod \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043e\u0442 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a.<\/p>\n<h4>3. \u041e\u0431\u0445\u043e\u0434 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 (\u0430\u0442\u0430\u043a\u0438 \u043d\u0430 data plane)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B4\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b4\">\u0437\u044b4&#8243;<\/a><\/p>\n<p>Service mesh \u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438 (Envoy \u0432 Istio, Linkerd-proxy \u0432 Linkerd). \u041e\u0434\u043d\u0430\u043a\u043e &#171;<em>\u043f\u043b\u043e\u0445\u043e\u0435&#187;<\/em> \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043e\u0431\u043e\u0439\u0442\u0438 \u044d\u0442\u043e\u0442 \u201c\u0441\u043b\u043e\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f\u201d. Kubernetes-\u043f\u043e\u0434 \u0438 \u0435\u0433\u043e sidecar \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u044e\u0442 \u0441\u0435\u0442\u044c \u0438 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0440\u044c\u0435\u0440\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0438 \u043f\u0440\u043e\u043a\u0441\u0438 \u043d\u0435\u0442. \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u043c\u0438 \u043f\u0440\u0430\u0432\u0430\u043c\u0438, \u043e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c iptables-\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043d\u0430\u0447\u0430\u0442\u044c \u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u043c\u0438\u043d\u0443\u044f proxy. <\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434 \u0441 Capability <code>NET_ADMIN<\/code> \u0438\u043b\u0438 <code>NET_RAW<\/code> \u0432\u043f\u043e\u043b\u043d\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0441\u043d\u0435\u0441\u0442\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f Istio \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u0445 \u2013 \u0438 \u0442\u0440\u0430\u0444\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u00ab\u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u00bb \u0438\u0434\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 sidecar \u2013 <a href=\"https:\/\/tetrate.io\/blog\/securing-istio-addressing-critical-security-gaps-and-best-practices\/\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>. Istio \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 <code>UID 1337<\/code> \u0434\u043b\u044f Envoy-\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0438 \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u0442\u0435\u043c \u0436\u0435 <code>UID 1337<\/code>, \u043e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f (iptables \u0434\u0443\u043c\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u043f\u0440\u043e\u043a\u0441\u0438). \u0411\u0435\u0437 \u0434\u043e\u043b\u0436\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 (\u0438\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a\u0438, \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438) \u043c\u043e\u0433\u0443\u0442 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u043f\u043e\u0434 \u0438\u0437-\u043f\u043e\u0434 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f mesh. <\/p>\n<p>Linkerd \u0437\u0434\u0435\u0441\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u044b\u0438\u0433\u0440\u044b\u0448\u043d\u0435\u0435: \u0435\u0433\u043e proxy \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 Rust \u0438 \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0441 <code>UID 0<\/code>, \u0430 iptables \u043e\u0431\u044b\u0447\u043d\u043e \u0441\u0442\u0430\u0432\u0438\u0442 init-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440. \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u043e\u0431\u0449\u0430\u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f \u2013 <strong>\u043d\u0435 \u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c \u043b\u0438\u0448\u043d\u0438\u0445 \u043f\u0440\u0430\u0432 \u0432 \u043f\u043e\u0434\u0435<\/strong>. \u0412 \u0438\u0434\u0435\u0430\u043b\u0435, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c Istio CNI, \u0447\u0442\u043e\u0431\u044b iptables-\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0441\u0442\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0443\u0437\u043b\u0430 \u0431\u0435\u0437 <code>NET_ADMIN<\/code> \u0432 \u0441\u0430\u043c\u043e\u043c \u043f\u043e\u0434\u0435, \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c <strong>Pod Security Policy\/Admission Control<\/strong>, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u044e\u0449\u0438\u0435 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 <code>UID<\/code>.<\/p>\n<h4>4. \u041a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u044f mTLS \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B5\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b5\">\u0437\u044b5&#8243;<\/a><\/p>\n<p>\u0421\u0430\u043c \u043f\u043e \u0441\u0435\u0431\u0435 mTLS \u2013 \u0445\u043e\u0440\u043e\u0448\u0435\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e &#171;\u043e\u0442 \u0432\u0441\u0435\u0433\u043e&#187; \u2013 sidecar-\u043f\u0440\u043e\u043a\u0441\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0448\u0438\u0444\u0440\u0443\u044e\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u044e\u0442 \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438, \u0438\u0437\u0431\u0430\u0432\u043b\u044f\u044f \u043d\u0430\u0441 \u043e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u0435\u0442\u0438. \u041d\u043e \u0441\u043f\u0440\u043e\u0441\u0438\u043c \u0441\u0435\u0431\u044f: &#8212; &#171;<em>\u0413\u0434\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u044d\u0442\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438 \u043a\u043b\u044e\u0447\u0438?<\/em>&#187; <\/p>\n<p>\u0412 Istio \u0437\u0430 \u0432\u044b\u0434\u0430\u0447\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Citadel (\u0447\u0430\u0441\u0442\u044c istiod) \u2013 \u043e\u043d \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0445 \u0432 sidecar \u0447\u0435\u0440\u0435\u0437 SDS (Secret Discovery Service). \u041a\u043b\u044e\u0447 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u043a\u0441\u0438. \u0417\u043d\u0430\u0447\u0438\u0442, \u0435\u0441\u043b\u0438 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u0441\u0443\u043c\u0435\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 Envoy \u0438\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0434\u0430\u043c\u043f \u043f\u0430\u043c\u044f\u0442\u0438, \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0442\u0430\u0449\u0438\u0442\u044c \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u0430. \u0421 \u044d\u0442\u0438\u043c \u043e\u043d \u043c\u043e\u0436\u0435\u0442 <strong>\u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u0435\u0431\u044f \u0437\u0430 \u0441\u0435\u0440\u0432\u0438\u0441 \u0432 mesh<\/strong>, \u043f\u043e\u043a\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d. \u0422\u0430\u043a\u0436\u0435, \u0435\u0441\u043b\u0438 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 (CA) mesh, \u0432\u0441\u0451 \u0440\u0443\u0448\u0438\u0442\u0441\u044f \u2013 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u043b\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u0433\u043e \u0443\u0433\u043e\u0434\u043d\u043e. <\/p>\n<p>\u0412 Linkerd \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 \u2013 \u044d\u0442\u043e \u201ctrust anchor\u201d (\u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442), \u0438 \u0441 \u043d\u0438\u043c \u0442\u0435 \u0436\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0421\u0440\u043e\u043a \u0436\u0438\u0437\u043d\u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d (\u0432 Istio \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e <em>~90 \u0434\u043d\u0435\u0439<\/em>, \u0432 Linkerd \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 24 \u0447\u0430\u0441\u0430 \u0434\u043b\u044f \u0432\u044b\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432), \u043d\u043e \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u0430\u043a \u0447\u0430\u0441\u044b, \u0438\u043d\u0430\u0447\u0435 \u0447\u0435\u0440\u0435\u0437 N \u0434\u043d\u0435\u0439 \u0432\u044b \u0441\u0430\u043c\u0438 DoS\u2019\u043d\u0435\u0442\u0435 \u0441\u0432\u043e\u0439 mesh \u043f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438. <\/p>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0443 Istio \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u0441\u0442\u0430\u0440\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 mTLS \u0440\u0435\u0436\u0438\u043c <code>Permissive<\/code> \u2013 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u0438 \u043d\u0435\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0436\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0432\u043d\u0435\u0434\u0440\u044f\u0442\u044c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435. \u0415\u0441\u043b\u0438 \u0430\u0434\u043c\u0438\u043d \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b Strict, \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c TLS \u0438 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 mTLS \u2013 \u043d\u0435 \u043f\u0430\u043d\u0430\u0446\u0435\u044f, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u043a\u043b\u044e\u0447\u0438 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u0441\u0451 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c. \u041d\u0443\u0436\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0438\u0445 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439, \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 (Authentication+Authorization, \u043e \u0447\u0451\u043c \u043d\u0438\u0436\u0435) \u0438 \u0438\u043c\u0435\u0442\u044c \u043f\u043b\u0430\u043d \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439 \u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 (\u043e\u0442\u0437\u044b\u0432, \u0437\u0430\u043c\u0435\u043d\u0430).<\/p>\n<h4>5. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 Ingress \u0438 Egress (\u0433\u0440\u0430\u043d\u0438\u0446\u044b mesh)<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B6\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b6\">\u0437\u044b6&#8243;<\/a><\/p>\n<p>\u041e\u0431\u044b\u0447\u043d\u043e Istio \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u044e\u0442 Ingress Gateway \u2013 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Envoy, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a. \u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 ingress \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0430\u0440\u0443\u0436\u0443 \u0442\u043e, \u0447\u0442\u043e \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0432\u0438\u0434\u043d\u043e. \u041a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440 \u2013 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435 \u043f\u0443\u0442\u0438 \u043d\u0430 \u0441\u0435\u0440\u0432\u0438\u0441 \u0431\u0435\u0437 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0437\u0430\u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c JWT-\u0442\u043e\u043a\u0435\u043d\u044b \u043d\u0430 \u0432\u0445\u043e\u0434\u0435, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 HTTP \u0431\u0435\u0437 TLS \u0442\u0430\u043c, \u0433\u0434\u0435 \u043e\u0436\u0438\u0434\u0430\u043b\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e HTTPS. <\/p>\n<p>Linkerd \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043d\u043e mesh-\u043f\u0440\u043e\u043a\u0441\u0438 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043f\u043e\u0441\u043b\u0435 ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 Kubernetes. \u0415\u0441\u043b\u0438 ingress-\u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0447\u0442\u043e-\u0442\u043e \u043b\u0438\u0448\u043d\u0435\u0435, \u0434\u0430\u043b\u044c\u0448\u0435 mesh \u0443\u0436\u0435 \u043d\u0435 \u0441\u043f\u0430\u0441\u0451\u0442. \u0421 Egress \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e, Istio \u0443\u043c\u0435\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0435\u0436\u0438\u043c <code>REGISTRY_ONLY<\/code> \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0445\u043e\u0441\u0442\u0430\u043c, \u043d\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u0432 ServiceEntry). \u041d\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0438\u0442 <code>ALLOW_ANY<\/code> \u2013 \u043b\u044e\u0431\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0430\u0434\u0440\u0435\u0441 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 mesh \u043c\u043e\u0436\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u0441\u043b\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438\u043b\u0438 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u044d\u043a\u0441\u043f\u043b\u043e\u0438\u0442 \u2013 proxy \u0435\u0433\u043e \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442.<\/p>\n<p>\u0411\u043e\u043b\u0435\u0435 \u0442\u043e\u0433\u043e, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0451\u043d <code>REGISTRY_ONLY<\/code>, \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u0432\u0441\u0451 \u0435\u0449\u0451 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0439\u0442\u0438 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u043e\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0441\u0432\u043e\u0439 ServiceEntry \u0441 wildcard-\u0445\u043e\u0441\u0442\u043e\u043c \u0438\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c \u0442\u0438\u043f\u0430 ExternalName, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u044f\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0432\u043e\u0432\u043d\u0435 \u2013 <a href=\"https:\/\/tetrate.io\/blog\/securing-istio-addressing-critical-security-gaps-and-best-practices\/#h-bypassing-outbound-traffic-constraints\" rel=\"noopener noreferrer nofollow\">\u0422\u042b\u041a<\/a>.<\/p>\n<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0438\u0437 \u043b\u0443\u0447\u0448\u0438\u0445 \u043f\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0439 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c ServiceEntry \u0434\u043b\u044f \u201c\u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430\u201d (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a\u043e \u0432\u0441\u0435\u043c *.example[.]com), \u0430 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u044d\u0442\u0438\u043c \u043e\u043a\u043d\u043e\u043c \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f. <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043c\u0443, \u0442\u043e ingress\/egress \u0442\u043e\u0447\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043e\u0441\u043e\u0431\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f. \u041d\u0430\u0434\u043e \u044f\u0432\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0435\u043b\u044c\u0437\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430 \u0432\u044b\u0445\u043e\u0434\u0430 \u2013 Egress Gateway, \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0435\u0441\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0434\u043b\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438.<\/p>\n<h4>6. \u041f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438 \u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442\u043d\u043e\u0441\u0442\u044c<\/h4>\n<p><a class=\"anchor\" name=\"%D0%A3%D0%B3%D1%80%D0%BE%D0%B7%D1%8B7\" id=\"\u0423\u0433\u0440\u043e\u0437\u044b7\">\u0437\u044b7&#8243;<\/a><\/p>\n<p>Service mesh \u0447\u0430\u0441\u0442\u043e \u0432\u043d\u0435\u0434\u0440\u044f\u044e\u0442 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0438 \u043a\u043e\u043c\u0430\u043d\u0434. \u0412\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0432\u043e\u043f\u0440\u043e\u0441: &#8212; &#171;<em>\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0435 \u0432\u0441\u0435\u043c \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0430\u043c mesh?<\/em>&#187; <\/p>\n<p>\u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0435\u0441\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d \u043a mesh, \u043e\u043d \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0435\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u2013 \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043e\u0434\u0438\u043d \u043e\u0431\u0449\u0438\u0439 mesh \u043d\u0430 \u0432\u0435\u0441\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440, \u0442\u043e \u0431\u0435\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043b\u044e\u0431\u043e\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043b\u044e\u0431\u043e\u043c\u0443 (\u043f\u0443\u0441\u0442\u044c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u0438 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e, \u043d\u043e \u0441\u0430\u043c\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0435\u0441\u0442\u044c). \u0412 \u0441\u0440\u0435\u0434\u0435 \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u0438\u043b\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 (\u043c\u0443\u043b\u044c\u0442\u0438-\u0442\u0435\u043d\u0430\u043d\u0442 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0442\u0438\u043f\u0430 SaaS) \u2013 \u044d\u0442\u043e \u0440\u0438\u0441\u043a. <\/p>\n<p>\u0418\u0441\u0441\u043b\u0435\u0434\u043e<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-453198","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/453198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=453198"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/453198\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=453198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=453198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=453198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}