1"use strict";(self.webpackChunkyucca_docs=self.webpackChunkyucca_docs||[]).push([[1650],{21516:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/files/nginx5-8a3f66842bdeabfcf25bef14aa513371.png"},28453:(e,n,s)=>{s.d(n,{R:()=>t,x:()=>i});var c=s(96540);const r={},a=c.createContext(r);function t(e){const n=c.useContext(a);return c.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:t(e.components),c.createElement(a.Provider,{value:n},e.children)}},30541:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/images/nginx2-e7de29f0a6cc5a16824219d0540ab0f1.png"},33658:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/files/nginx3-4ca009416e84aca46f3096bd20af3521.png"},39862:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/images/nginx1-f71285a8a03081e772a4456d3f3b9241.png"},48978:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/images/nginx5-8a3f66842bdeabfcf25bef14aa513371.png"},60705:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>i,default:()=>h,frontMatter:()=>t,metadata:()=>c,toc:()=>d});const c=JSON.parse('{"id":"guides/Nginx","title":"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx + Let\'s Encrypt \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0435\u0440\u0435\u0434 Yucca","description":"\u0412\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0434\u043e\u043c\u0430 \u0438 \u0431\u0438\u0437\u043d\u0435\u0441\u0430","source":"@site/docs/guides/Nginx.md","sourceDirName":"guides","slug":"/guides/Nginx","permalink":"/docs/guides/Nginx","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx + Let\'s Encrypt \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0435\u0440\u0435\u0434 Yucca","description":"\u0412\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0434\u043e\u043c\u0430 \u0438 \u0431\u0438\u0437\u043d\u0435\u0441\u0430"},"sidebar":"documentationSidebar","previous":{"title":"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0434\u0435\u0442\u0435\u043a\u0446\u0438\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u0430\u043c\u0435\u0440\u0430\u0445 XM","permalink":"/docs/guides/smtp/xm"},"next":{"title":"API \u0442\u043e\u043a\u0435\u043d\u044b","permalink":"/docs/guides/PersonalTokens"}}');var r=s(74848),a=s(28453);const t={title:"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx + Let's Encrypt \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0435\u0440\u0435\u0434 Yucca",description:"\u0412\u0438\u0434\u0435\u043e\u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0434\u043e\u043c\u0430 \u0438 \u0431\u0438\u0437\u043d\u0435\u0441\u0430"},i="\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx + Let's Encrypt \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0435\u0440\u0435\u0434 Yucca",o={},d=[{value:"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435",id:"\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435",level:2},{value:"\u0428\u0430\u0433 0. \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430",id:"\u0448\u0430\u0433-0-\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430",level:2},{value:"\u0428\u0430\u0433 1. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx",id:"\u0448\u0430\u0433-1-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430-\u0438-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430-nginx",level:2},{value:"\u0428\u0430\u0433 2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Certbot \u0438 \u0432\u044b\u043f\u0443\u0441\u043a letsencrypt \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430",id:"\u0448\u0430\u0433-2-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430-certbot-\u0438-\u0432\u044b\u043f\u0443\u0441\u043a-letsencrypt-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430",level:2},{value:"\u0428\u0430\u0433 3. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",id:"\u0448\u0430\u0433-3-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430-\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",level:2}];function l(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",em:"em",h1:"h1",h2:"h2",header:"header",img:"img",li:"li",ol:"ol",p:"p",pre:"pre",...(0,a.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.header,{children:(0,r.jsx)(n.h1,{id:"\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430-nginx--lets-encrypt-\u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439-\u043f\u0440\u043e\u043a\u0441\u0438-\u043f\u0435\u0440\u0435\u0434-yucca",children:"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx + Let's Encrypt \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u0435\u0440\u0435\u0434 Yucca"})}),"\n",(0,r.jsx)(n.h2,{id:"\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435",children:"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435"}),"\n",(0,r.jsxs)(n.p,{children:["\u0412 \u044d\u0442\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u044f \u043e\u043f\u0438\u0448\u0443 \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Nginx \u0438 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c Let's Encrypt SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0434\u043b\u0435\u0432\u0430\u0442\u044c\u0441\u044f. Nginx \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e\u0439 Web \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0435\u0440\u0435\u0434 Yucca \u0434\u043b\u044f \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0446\u0438\u0438 SSL \u0441\u0435\u0441\u0441\u0438\u0438 \u0438 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442\u0430 \u0441 80 \u043d\u0430 443 \u043f\u043e\u0440\u0442.",(0,r.jsx)(n.br,{}),"\n","\u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c Nginx, \u0432\u0435\u0434\u044c Yucca \u0438 \u0441\u0430\u043c\u0430 \u043c\u043e\u0436\u0435\u0442 \u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c SSL \u0438 \u0434\u0430\u0436\u0435 ",(0,r.jsx)(n.a,{href:"/docs/configuration/#cert_file",children:"\u0444\u043b\u0430\u0433\u0438"})," \u0435\u0441\u0442\u044c? \u042d\u0442\u043e \u0432\u0435\u0440\u043d\u043e, \u043d\u043e \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u0439\u043c\u0451\u0442\u0435 443 \u043f\u043e\u0440\u0442 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u041f\u041e, \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0434\u0440\u0443\u0433\u043e\u0439, \u0430 \u0442\u0430\u043a \u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442\u0430 \u0441 HTTP \u043d\u0430 HTTPS \u2013 \u0435\u0441\u043b\u0438 \u0432\u0430\u0441 \u044d\u0442\u043e \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442, \u0442\u043e \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043c\u0435\u043b\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441\u0435\u043a\u0446\u0438\u044e \u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 Nginx \u0428\u0430\u0433 1 \u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u0428\u0430\u0433 2.",(0,r.jsx)(n.br,{}),"\n","\u0412\u0441\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u044f \u0431\u0443\u0434\u0443 \u043f\u0440\u043e\u0434\u0435\u043b\u044b\u0432\u0430\u0442\u044c \u043d\u0430 Ubuntu Server 22.04, \u043d\u043e \u0432\u0441\u0451 \u0442\u043e\u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438 \u043d\u0430 SUSE, CentOS, Fedora, Debian \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u0420\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u043f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0443 \u0432\u0441\u0435\u0445 \u0431\u0443\u0434\u0435\u0442 \u0441\u0432\u043e\u0439, \u043d\u043e \u044f \u043d\u0430\u0434\u0435\u044e\u0441\u044c \u0432\u044b \u043e\u0442\u043b\u0438\u0447\u0438\u0442\u0435 apt \u043e\u0442 zypper \ud83d\ude42"]}),"\n",(0,r.jsx)(n.h2,{id:"\u0448\u0430\u0433-0-\u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430",children:"\u0428\u0430\u0433 0. \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430"}),"\n",(0,r.jsx)(n.p,{children:"\u0418 \u0442\u0430\u043a \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f:"}),"\n",(0,r.jsxs)(n.ol,{children:["\n",(0,r.jsx)(n.li,{children:"\u0425\u043e\u0441\u0442 \u0441 \u0431\u0435\u043b\u044b\u043c IP \u0430\u0434\u0440\u0435\u0441\u043e\u043c"}),"\n",(0,r.jsx)(n.li,{children:"\u0414\u043e\u043c\u0435\u043d \u0438\u043b\u0438 \u043f\u043e\u0434\u0434\u043e\u043c\u0435\u043d \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0430\u0434\u0440\u0435\u0441"}),"\n",(0,r.jsx)(n.li,{children:(0,r.jsx)(n.a,{href:"/docs/install/",children:"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0430\u044f Yucca"})}),"\n"]}),"\n",(0,r.jsxs)(n.p,{children:["\u0412 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u044f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043e\u043c\u0435\u043d ",(0,r.jsx)(n.code,{children:"foobar.yuccastream.com"}),", \u0432\u0430\u0448 \u0434\u043e\u043c\u0435\u043d \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"nslookup foobar.yuccastream.com\nServer:\t\t127.0.0.53\nAddress:\t127.0.0.53#53\n\nNon-authoritative answer:\nName:\tfoobar.yuccastream.com\nAddress: 128.140.2.103\n"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(60904).A+"",children:(0,r.jsx)(n.img,{alt:"nginx1",src:s(39862).A+"",width:"976",height:"447"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u0418\u0442\u0430\u043a \u0443 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c Yucca, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 ",(0,r.jsx)(n.code,{children:"http://foobar.yuccastream.com:9910"})]}),"\n",(0,r.jsx)(n.h2,{id:"\u0448\u0430\u0433-1-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430-\u0438-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430-nginx",children:"\u0428\u0430\u0433 1. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Nginx"}),"\n",(0,r.jsx)(n.p,{children:"\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c nginx:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo apt install nginx\n"})}),"\n",(0,r.jsxs)(n.p,{children:["\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c ",(0,r.jsx)(n.code,{children:"http://foobar.yuccastream.com"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(97763).A+"",children:(0,r.jsx)(n.img,{alt:"nginx2",src:s(30541).A+"",width:"976",height:"447"})})}),"\n",(0,r.jsx)(n.p,{children:"\u0414\u0430\u043b\u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f Yucca:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo nano /etc/nginx/conf.d/yucca.conf\n"})}),"\n",(0,r.jsx)(n.admonition,{type:"warning",children:(0,r.jsxs)(n.p,{children:["\u0414\u043e\u043c\u0435\u043d ",(0,r.jsx)(n.code,{children:"foobar.yuccastream.com"})," \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0441\u0432\u043e\u0439"]})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"upstream yucca_upstream {\n server 127.0.0.1:9910 fail_timeout=0;\n}\n\nserver {\n listen 80;\n server_name foobar.yuccastream.com;\n location / {\n proxy_set_header Host $http_host;\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n proxy_pass http://yucca_upstream;\n }\n}\n"})}),"\n",(0,r.jsx)(n.p,{children:"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo nginx -t\nnginx: the configuration file /etc/nginx/nginx.conf syntax is ok\nnginx: configuration file /etc/nginx/nginx.conf test is successful\n"})}),"\n",(0,r.jsxs)(n.p,{children:["\u0415\u0441\u043b\u0438 \u0432\u0441\u0451 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0432\u044b \u0443\u0432\u0438\u0434\u0438\u0442\u0435 ",(0,r.jsx)(n.em,{children:"syntax is ok"}),"\n\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e nginx:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"nginx -s reload\n"})}),"\n",(0,r.jsxs)(n.p,{children:["\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443 \u0438 \u0432\u0438\u0434\u0438\u043c \u0443\u0436\u0435 \u0432\u0435\u0431 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Yucca ",(0,r.jsx)(n.code,{children:"http://foobar.yuccastream.com"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(33658).A+"",children:(0,r.jsx)(n.img,{alt:"nginx3",src:s(88036).A+"",width:"976",height:"447"})})}),"\n",(0,r.jsx)(n.h2,{id:"\u0448\u0430\u0433-2-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430-certbot-\u0438-\u0432\u044b\u043f\u0443\u0441\u043a-letsencrypt-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430",children:"\u0428\u0430\u0433 2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Certbot \u0438 \u0432\u044b\u043f\u0443\u0441\u043a letsencrypt \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430"}),"\n",(0,r.jsx)(n.p,{children:"\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043f\u0430\u043a\u0435\u0442\u044b:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo apt install certbot python3-certbot-nginx\n"})}),"\n",(0,r.jsx)(n.p,{children:"\u0412\u044b\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u0430:"}),"\n",(0,r.jsx)(n.admonition,{type:"warning",children:(0,r.jsxs)(n.p,{children:["\u0414\u043e\u043c\u0435\u043d ",(0,r.jsx)(n.code,{children:"foobar.yuccastream.com"})," \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430
1\u0441\u0432\u043e\u0439"]})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo certbot --nginx -d foobar.yuccastream.com\n"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(73781).A+"",children:(0,r.jsx)(n.img,{alt:"nginx4",src:s(97979).A+"",width:"890",height:"824"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u0421ertbot \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442 \u0432\u0432\u0435\u0441\u0442\u0438 E-mail (1), \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0432\u0432\u0435\u0441\u0442\u0438 \u0432\u0430\u0448 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u044f\u0449\u0438\u043a, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0435\u0441\u043b\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u0442\u0435\u043a\u0430\u0442\u044c \u0438 \u043d\u0435 \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u044c\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 Let's Encrypt \u043f\u0440\u0438\u0448\u043b\u0451\u0442 \u0432\u0430\u043c \u043e\u0431 \u044d\u0442\u043e\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435. \u0422\u0430\u043a\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u0442\u0441\u044f \u0441 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c\u0438 (2), (3). \u0414\u0430\u043b\u0435\u0435 certbot \u0441\u0430\u043c \u043d\u0430\u0439\u0434\u0451\u0442 \u043d\u0443\u0436\u043d\u044b\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u043d\u0443\u0436\u043d\u044b\u043c \u0434\u043e\u043c\u0435\u043d\u043e\u043c, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442 \u0441\u0435\u043a\u0446\u0438\u044e \u0441 SSL \u0438 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442, \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0432\u0430\u043c \u0441\u0441\u044b\u043b\u043a\u0443.\n\u041c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0447\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432 \u0444\u0430\u0439\u043b\u0435 ",(0,r.jsx)(n.code,{children:"/etc/nginx/conf.d/yucca.conf"})]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"\nupstream yucca_upstream {\n server 127.0.0.1:9910 fail_timeout=0;\n}\n\nserver {\n server_name foobar.yuccastream.com;\n location / {\n proxy_set_header Host $http_host;\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n proxy_pass http://yucca_upstream;\n }\n\n listen 443 ssl; # managed by Certbot\n ssl_certificate /etc/letsencrypt/live/foobar.yuccastream.com/fullchain.pem; # managed by Certbot\n ssl_certificate_key /etc/letsencrypt/live/foobar.yuccastream.com/privkey.pem; # managed by Certbot\n include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot\n ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot\n}\n\nserver {\n if ($host = foobar.yuccastream.com) {\n return 301 https://$host$request_uri;\n } # managed by Certbot\n\n listen 80;\n server_name foobar.yuccastream.com;\n return 404; # managed by Certbot\n}\n"})}),"\n",(0,r.jsx)(n.p,{children:"\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0442\u043e certbot \u0441\u043e\u0437\u0434\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u043e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u0435\u043d:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo systemctl status certbot.timer\n\u25cf certbot.timer - Run certbot twice daily\n Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)\n Active: active (waiting) since Fri 2023-09-22 11:54:02 UTC; 7min ago\n Trigger: Fri 2023-09-22 14:13:25 UTC; 2h 11min left\n Triggers: \u25cf certbot.service\n\nSep 22 11:54:02 foobar systemd[1]: Started Run certbot twice daily.\n"})}),"\n",(0,r.jsxs)(n.p,{children:["\u041e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u043c \u0441\u0442\u0440\u0438\u043d\u0446\u0443 ",(0,r.jsx)(n.code,{children:"http://foobar.yuccastream.com"})," \u0438 \u0432\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0443\u0436\u0435 \u0447\u0435\u0440\u0435\u0437 HTTPS, \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442 \u0442\u043e\u0436\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442."]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(21516).A+"",children:(0,r.jsx)(n.img,{alt:"nginx5",src:s(48978).A+"",width:"976",height:"488"})})}),"\n",(0,r.jsx)(n.h2,{id:"\u0448\u0430\u0433-3-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430-\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",children:"\u0428\u0430\u0433 3. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438"}),"\n",(0,r.jsxs)(n.p,{children:["\u041c\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0434\u043e\u0441\u0442\u0443 \u043f\u043e HTTPS \u0447\u0435\u0440\u0435\u0437 nginx, \u043d\u043e Yucca \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u043f\u043e HTTP \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0435 ",(0,r.jsx)(n.a,{href:"http://foobar.yuccastream.com:9910",children:"http://foobar.yuccastream.com:9910"}),". \u042d\u0442\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e \u0432\u043e\u0442 \u0441 \u044d\u0442\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:'listen_address = ":9910"\n'})}),"\n",(0,r.jsx)(n.p,{children:"\u0418\u0434\u0451\u043c \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b Yucca \u0438 \u043f\u0440\u0430\u0432\u0438\u043c \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo nano /opt/yucca/yucca.toml\n"})}),"\n",(0,r.jsx)(n.p,{children:"\u0414\u0435\u043b\u0430\u0435\u043c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b Yucca \u0441\u043b\u0443\u0448\u0430\u043b\u0430 \u0442\u043e\u043b\u044c\u043a\u043e localhost:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:'listen_address = "127.0.0.1:9910"\n'})}),"\n",(0,r.jsx)(n.p,{children:"\u0418 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440 Yucca:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-sh",children:"sudo systemctl restart yucca\n"})}),"\n",(0,r.jsxs)(n.p,{children:["\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 ",(0,r.jsx)(n.code,{children:"http://foobar.yuccastream.com:9910"})," \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u0442, \u0430 \u0442\u0443\u0442 ",(0,r.jsx)(n.code,{children:"https://foobar.yuccastream.com"})," \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442."]})]})}function h(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},60904:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/files/nginx1-f71285a8a03081e772a4456d3f3b9241.png"},73781:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/files/nginx4-257ee55cf8f90940b2c91fc87749bcb0.png"},88036:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/images/nginx3-4ca009416e84aca46f3096bd20af3521.png"},97763:(e,n,s)=>{s.d(n,{A:()=>c});
1const c=s.p+"assets/files/nginx2-e7de29f0a6cc5a16824219d0540ab0f1.png"},97979:(e,n,s)=>{s.d(n,{A:()=>c});const c=s.p+"assets/images/nginx4-257ee55cf8f90940b2c91fc87749bcb0.png"}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.