{"id":464579,"date":"2025-06-25T21:01:22","date_gmt":"2025-06-25T21:01:22","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=464579"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=464579","title":{"rendered":"<span>\u0413\u0430\u0439\u0434 \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0447\u0430\u0441\u0442\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 (VPS) \u0441 \u043d\u0443\u043b\u044f<\/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<p>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f, \u043a\u0430\u043a \u0430\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 &#8212; \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043e\u0442 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0442\u0440\u0435\u0442\u044c\u0438\u043c\u0438 \u043b\u0438\u0446\u0430\u043c\u0438 (\u043f\u0440\u043e\u0441\u043b\u0443\u0448\u043a\u0438) \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0435\u0439. \u041a\u043e\u0440\u043e\u0442\u043a\u043e, \u043e \u0447\u0451\u043c \u0433\u0430\u0439\u0434:<\/p>\n<p>&#8212; \u0421\u0435\u0440\u0432\u0435\u0440 Linux Debian 11<br \/>&#8212; \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u043d\u0430\u044f \u0441\u0435\u0442\u044c Wireguard<br \/>&#8212; \u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 Grafana<br \/>&#8212; \u0421\u043f\u0430\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u0440\u0443\u0433: backups &amp; snapshots<br \/>&#8212; \u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 \u0432\u0437\u043b\u043e\u043c\u0430 \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u043e\u043c fali2ban<br \/>&#8212; \u0424\u0438\u043b\u044c\u0442\u0440 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430, \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0437\u0430\u0446\u0438\u044f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 QoS <\/p>\n<p> <strong>\u0428\u0430\u0433 1: \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0445\u043e\u0441\u0442\u0438\u043d\u0433<\/strong><\/p>\n<p>\u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c &#171;\u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0430\u043c\u044b\u0445 \u0434\u0435\u0448\u0451\u0432\u044b\u0445 VPS \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u043e\u0432&#187; \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0446\u0435\u043d\u044b \u0431\u044b\u0432\u0430\u044e\u0442 \u0440\u0430\u0437\u043d\u044b\u0435, \u0441\u0430\u043c\u044b\u0435 \u0434\u0435\u0448\u0451\u0432\u044b\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u043e\u0442 \u0434\u0432\u0443\u0445 \u0435\u0432\u0440\u043e \u0432 \u043c\u0435\u0441\u044f\u0446. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 &#8212; <a href=\"http:\/\/hip.hosting\" rel=\"noopener noreferrer nofollow\">hip.hosting<\/a><\/p>\n<p><strong>\u0428\u0430\u0433 2: \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043b\u043e\u043a\u0430\u0446\u0438\u044e, \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043e\u043f\u043b\u0430\u0442\u0438\u0442\u044c \u0430\u0440\u0435\u043d\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<\/strong><\/p>\n<p>\u041b\u043e\u043a\u0430\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0438\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u0439. \u041e\u0431\u044b\u0447\u043d\u043e &#8212; \u0447\u0435\u043c \u0431\u043b\u0438\u0436\u0435 \u043b\u043e\u043a\u0430\u0446\u0438\u044f, \u0442\u0435\u043c \u043d\u0438\u0436\u0435 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u044f \u0441\u043e\u0432\u0435\u0442\u0443\u044e Debian.<\/p>\n<p><strong>\u0428\u0430\u0433 3: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/strong><\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 Putty \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 IP \u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u0430\u0440\u043e\u043b\u044c, \u043d\u0443\u0436\u043d\u043e \u0432\u043e\u0439\u0442\u0438 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f:<\/p>\n<p><code>sudo apt update &amp;&amp; apt upgrade -y<\/p>\n<p>sudo apt-get install iptables net-tools vim rsync parted -y<\/code><\/p>\n<p>\u0412 \u0444\u0430\u0439\u043b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u0437\u043d\u0430\u043a \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f &#171;#&#187; \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 &#171;<strong>net.ipv4.ip_forward=1<\/strong>&#171;, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0430\u0448\u0435\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0440\u043e\u043b\u044c \u043f\u0440\u043e\u043a\u0441\u0438:<\/p>\n<p><code>vim \/etc\/sysctl.conf<\/code><\/p>\n<blockquote>\n<p><em>vim, vi &#8212; \u0441\u0430\u043c\u044b\u0439 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 linux. \u0420\u0435\u0436\u0438\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u043e\u0439 i, \u0432\u044b\u0445\u043e\u0434 \u0438\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043d\u043e\u043f\u043a\u0430 esc. \u0427\u0442\u043e\u0431\u044b \u0432\u044b\u0439\u0442\u0438 \u0431\u0435\u0437 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0434\u043e \u0432\u0432\u0435\u0441\u0442\u0438 &#171;:q!&#187; (\u0431\u0435\u0437 \u043a\u0430\u0432\u044b\u0447\u0435\u043a), \u0432\u044b\u0445\u043e\u0434 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c &#8212; &#171;:wq!&#187; <\/em><\/p>\n<\/blockquote>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c Wireguard:<br \/><code>sudo apt install wireguard -y<\/code><\/p>\n<p>\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u043f\u0430\u043f\u043a\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:<br \/><code>cd \/etc\/wireguard\/<br \/><\/code><br \/>\u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043a\u043b\u044e\u0447\u0438:<br \/><code>wg genkey | tee privatekey | wg pubkey | tee publickey<br \/><\/code><br \/>\u041f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0434\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u043e\u043d\u0444\u0438\u0433 Wireguard; \u0437\u0434\u0435\u0441\u044c Address = \u044d\u0442\u043e \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u0430 ListenPort = \u043f\u043e\u0440\u0442, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u044b (\u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u043e\u0440\u0442 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e):<\/p>\n<p><code>echo \"[Interface]<br \/>PrivateKey = $(cat privatekey)<br \/>Address = 10.0.0.1\/24<br \/>ListenPort = 51820\" &gt; wg0.conf<\/code><\/p>\n<blockquote>\n<p>\u0432 Putty \u0442\u0435\u043a\u0441\u0442 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438. \u0412 vim \u0447\u0435\u0440\u0435\u0437 Putty &#8212; \u043a\u043b\u0430\u0432\u0438\u0448\u0430 shift+\u043f\u0440\u0430\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u043c\u044b\u0448\u0438. \u0410 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0451\u043c\u043e\u0432 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 <strong>\u0432\u0435\u0431-\u043a\u043e\u043d\u0441\u043e\u043b\u044c<\/strong>, \u0443 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c \u043f\u0430\u0440\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 &#8212; <a href=\"https:\/\/habr.com\/ru\/articles\/824452\/\" rel=\"noopener noreferrer nofollow\"><strong>typewriter <\/strong><\/a>\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/869462\/\" rel=\"noopener noreferrer nofollow\"><strong>infill<\/strong><\/a>.<\/p>\n<\/blockquote>\n<p>\u0414\u0430\u043b\u0435\u0435 &#8212; \u043d\u0430\u0434\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0441\u0435\u0442\u0435\u0432\u043e\u043c \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0435:<br \/><code>INTERFACE=$(ip route | grep default | awk '{print $5}' | head -n1); sudo tee -a wg0.conf &lt;&lt;EOF<br \/>PostUp = iptables -A FORWARD -i wg0 -j ACCEPT<br \/>PostUp = iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE<br \/>PostDown = iptables -D FORWARD -i wg0 -j ACCEPT<br \/>PostDown = iptables -t nat -D POSTROUTING -o $INTERFACE -j MASQUERADE<br \/>EOF<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e, \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u044b:<br \/><code>[Peer]<br \/>PublicKey = uJWPI0zpKSB7C4G9LLdy4VMX2bPXs33g7nfdo2CVanw=<br \/>AllowedIPs = 10.10.10.30\/32<br \/><\/code><br \/><strong>PublicKey<\/strong>\u00a0&#8212; \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 <strong>AllowedIPs, <\/strong><em>\u0430 \u043c\u0430\u0441\u043a\u0430 \/32\u00a0\u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0445\u043e\u0441\u0442\u0430.<\/em><\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <strong>wg0.conf<\/strong>\u00a0\u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u0432\u0438\u0434 \u0442\u0438\u043f\u0430 \u0442\u0430\u043a\u043e\u0433\u043e:<\/p>\n<blockquote>\n<p>[Interface]<br \/>Address = 10.10.10.1\/24<\/p>\n<p>ListenPort = 21212<\/p>\n<p>PrivateKey = qPSUFPcGiHUQkOo2RHPGWeb3XmSjfiSWqSMuPd3SnCs=<\/p>\n<p>PostUp = iptables -A FORWARD -i wg0 -j ACCEPT<br \/>PostUp = iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE<br \/>PostDown = iptables -D FORWARD -i wg0 -j ACCEPT<br \/>PostDown = iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE<\/p>\n<p>[Peer]<br \/>PublicKey = uJWPI0zpKSB7C4G9LLdy4VMX2bPXs33g7nfdo2CVanw=<br \/>AllowedIPs = 10.10.10.30\/32<\/p>\n<p>[Peer]<br \/>PublicKey = YXnyogyq5930eFdueaFivCqpJCRMEmawJrpP1lcGEDc=<br \/>AllowedIPs = 10.10.10.20\/32<\/p>\n<\/blockquote>\n<p>\u0433\u0434\u0435 <br \/> <strong>PrivateKey<\/strong>\u00a0&#8212; \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>Address<\/strong>\u00a0&#8212; \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>ListenPort<\/strong>\u00a0&#8212; \u043f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>PublicKey<\/strong>\u00a0&#8212; \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 <strong>AllowedIPs<\/strong>\u00a0\u0438\u0437 \u0435\u0433\u043e \u0441\u0435\u043a\u0446\u0438\u0438 <strong>[Peer]<\/strong><\/p>\n<p><u>\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Wireguard \u0434\u043b\u044f Windows), \u0433\u0434\u0435 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043d\u043e\u0432\u043e\u0433\u043e &#171;\u043f\u0443\u0441\u0442\u043e\u0433\u043e&#187; \u0442\u0443\u043d\u043d\u0435\u043b\u044f.<\/u><\/p>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0442\u0443\u043d\u043d\u0435\u043b\u044c \u0432 \u0430\u0432\u0442\u043e\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u0441\u044f:<br \/><code>sudo systemctl enable wg-quick@wg0<br \/><\/code><br \/><code>sudo reboot<\/code><\/p>\n<p><em>\u0413\u043e\u0442\u043e\u0432\u043e! \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430<\/em>,<\/p>\n<p>\u0442\u0435\u043f\u0435\u0440\u044c \u0432\u0432\u0435\u0434\u044f \u0432 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 IP-\u0430\u0434\u0440\u0435\u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 IP=\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u043f\u043e\u0440\u0442\u043e\u043c &#8212; \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0435\u0442\u044c\u044e. \u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 Grafana \u0434\u043b\u044f \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c:<\/p>\n<p><code>sudo tee \/etc\/apt\/sources.list.d\/grafana.list &lt;&lt;'EOF' deb [signed-by=\/etc\/apt\/keyrings\/grafana.gpg] <\/code><a href=\"https:\/\/apt.grafana.com\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/apt.grafana.com<\/code><\/a><code> stable main EOF<\/p>\n<p>sudo mkdir -p \/etc\/apt\/keyrings\/<\/p>\n<p>apt-get install gpg<\/p>\n<p>wget -q -O - <\/code><a href=\"https:\/\/apt.grafana.com\/gpg.key\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/apt.grafana.com\/gpg.key<\/code><\/a><code> | gpg --dearmor | sudo tee \/etc\/apt\/keyrings\/grafana.gpg &gt; \/dev\/null<\/p>\n<p>sudo apt install -y prometheus grafana<\/p>\n<p>sudo iptables -A INPUT -i wg0 -j ACCEPT<\/p>\n<p>sudo iptables -A OUTPUT -o wg0 -j ACCEPT<\/p>\n<p>curl <\/code><a href=\"https:\/\/sh.rustup.rs\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/sh.rustup.rs<\/code><\/a><code> -sSf | sh<\/code><\/p>\n<p><code>source $HOME\/.cargo\/env<\/code><\/p>\n<p><code>sudo apt install cargo build-essential -y<\/code><\/p>\n<p><code>cargo install clap --version 4.0.26<\/p>\n<p>exec bash<\/p>\n<p>cargo install prometheus_wireguard_exporter<\/p>\n<p>vim \/etc\/prometheus\/prometheus.yml<br \/><\/code><br \/>\u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\u043c, <strong><u>\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u0432 \u043d\u0430\u0447\u0430\u043b\u0430\u0445 \u0441\u0442\u0440\u043e\u043a<\/u><\/strong>!<br \/><code>scrape_configs:<br \/>  - job_name: 'wireguard'<br \/>    scrape_interval: 10s<br \/>    static_configs:<br \/>      - targets: ['localhost:9586']<\/code><\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b\u0441\u044f \u0441\u043e \u0441\u0442\u0430\u0440\u0442\u043e\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c systemd-\u0441\u0435\u0440\u0432\u0438\u0441:<br \/><code>vim  \/etc\/systemd\/system\/wireguard-exporter.service<\/code>  <\/p>\n<blockquote>\n<p>[Unit]<br \/>Description=Prometheus WireGuard Exporter<br \/>After=<a href=\"http:\/\/network-online.target\" rel=\"noopener noreferrer nofollow\">network-online.target<\/a> <\/p>\n<p>[Service]<br \/>ExecStart=\/usr\/bin\/prometheus_wireguard_exporter &#8212;interfaces wg0<br \/>Restart=on-failure <\/p>\n<p>[Install]<br \/>WantedBy=<a href=\"http:\/\/multi-user.target\" rel=\"noopener noreferrer nofollow\">multi-user.target<\/a><\/p>\n<\/blockquote>\n<p><code>sudo systemctl daemon-reload<\/code><\/p>\n<p><code>sudo systemctl enable --now grafana-server<\/code><\/p>\n<p><code>sudo systemctl enable --now wireguard-exporter.service<\/code> <\/p>\n<p><code>prometheus_wireguard_exporter --interfaces wg0 &amp;&gt;&gt; \/var\/log\/wireguard-exporter.log &amp;<\/code><\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<br \/><code>jobs -l<\/code><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0439\u0442\u0438 \u043d\u0430 \u0432\u0435\u0431-\u043f\u0430\u043d\u0435\u043b\u044c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0430\u0434\u0440\u0435\u0441 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u043e\u0440\u0442 3000: <a href=\"http:\/\/your-server-ip:3000\" rel=\"noopener noreferrer nofollow\">http:\/\/your-server-ip:3000<\/a><\/p>\n<p>\u0414\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0445\u043e\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c <strong>admin<\/strong><\/p>\n<p>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 &#171;Dashboards&#187;. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 &#171;edit&#187; &#8212; \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u0435\u0440\u0445\u0443 \u0441\u043f\u0440\u0430\u0432\u0430 &#8212; \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c <strong>Add &#8212; visualisation<\/strong>. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c prometheus, \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u044b\u0439 (<a href=\"http:\/\/localhost:9090\" rel=\"noopener noreferrer nofollow\">http:\/\/localhost:9090<\/a>) \u0438 save. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0434\u0430\u0448\u0431\u043e\u0440\u0434 \u043f\u043e\u0434 \u043a\u0430\u043a\u0438\u043c-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0438 \u0437\u0430\u0445\u043e\u0434\u0438\u043c \u0432 \u043d\u0435\u0433\u043e \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u043d\u044e Dashboards. \u0423\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0441\u0435 query \u0438 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043d\u043e\u0432\u0443\u044e, \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435<strong> + Add query<\/strong>. \u0412 \u043f\u043e\u043b\u0435 Data source \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d <strong>prometheus. <\/strong>\u0421\u043f\u0440\u0430\u0432\u0430 &#8212; \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c <strong>Code<\/strong>, \u0435\u0441\u043b\u0438 \u0432\u0434\u0440\u0443\u0433 \u0432\u044b\u0431\u0440\u0430\u043d Builder. \u0414\u0430\u043b\u0435\u0435 &#8212; \u0432 \u043f\u043e\u043b\u0435 &#171;Enter a PromQL query&#8230;&#187; \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441:<br \/><code>rate(wireguard_received_bytes_total[1m])<\/code><\/p>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Run queries \u0438 \u0441\u0432\u0435\u0440\u0445\u0443 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u0433\u0440\u0430\u0444\u0438\u043a. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0434\u0430\u0448\u0431\u043e\u0440\u0434 \u0441\u043f\u0440\u0430\u0432\u0430 \u0441\u0432\u0435\u0440\u0445\u0443. \u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u0430. \u0427\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u0444\u0438\u043a\u0438 &#8212; \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c Panel options \u0432\u043d\u0438\u0437 \u0434\u043e \u043a\u043d\u043e\u043f\u043a\u0438 + Add field override, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043d\u0435\u0451 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0440\u0430\u0444\u0438\u043a \u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e.<\/p>\n<p><u>\u0414\u043b\u044f \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043e\u0442 \u0432\u0437\u043b\u043e\u043c\u0430 &#8212; \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 <\/u><strong><u>fail2ban<\/u><\/strong><u>:<\/u><br \/><code>sudo apt install fail2ban -y<\/code><\/p>\n<p><code>vim \/etc\/fail2ban\/jail.local<\/code><\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 <code>\/etc\/fail2ban\/jail.local<\/code>:<\/p>\n<blockquote>\n<p>[sshd]<br \/>enabled = true<br \/>port = ssh<br \/>filter = sshd<br \/>logpath = \/var\/log\/auth.log<br \/>maxretry = 7<br \/>bantime = 1h<\/p>\n<\/blockquote>\n<p><code>sudo systemctl start fail2ban<\/code><\/p>\n<p><code>sudo systemctl enable fail2ban<\/code><\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 &#8212; \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f: \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0434\u0440\u0443\u0433\u0443\u044e \u0444\u0430\u0439\u043b\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u043d\u0438\u043c\u043a\u0438, \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438, \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430.<\/p>\n<h3>\u042d\u0442\u0430\u043f 1: \u0421\u043c\u0435\u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u0441\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u0430\u0437\u0443\u0441\u044b, \u043f\u043e\u0441\u043b\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043e\u0441\u0442\u0440\u043e\u0435 \u0436\u0435\u043b\u0430\u043d\u0438\u0435 \u043e\u0442\u043a\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434. \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 &#8212; \u0442\u0430\u043a\u043e\u0439 \u043e\u0442\u043a\u0430\u0442 \u043d\u0430 \u043e\u0434\u043d\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0435\u0439 \u043a\u043b\u0430\u0432\u0438\u0448 <strong>CTRL+Z<\/strong>, \u043e\u0434\u043d\u0430\u043a\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0438 \u043d\u0435 \u0432\u0435\u0437\u0434\u0435. \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 &#8212; \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u043f\u043e\u043b\u043d\u0443\u044e \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u041b\u0443\u0447\u0448\u0435, \u043a\u043e\u0433\u0434\u0430 \u043e\u043d\u0430 \u0435\u0441\u0442\u044c \u0438 \u043d\u0435 \u043d\u0443\u0436\u043d\u0430, \u0447\u0435\u043c \u043a\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u0430 \u0438 \u0435\u0451 \u043d\u0435\u0442.<\/p>\n<p>\u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 Linux, <strong>EXT4 <\/strong>&#8212; \u043d\u0435 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0441\u043d\u0438\u043c\u043a\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b &#8212; \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043c\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u0443\u044e <strong>BTRFS<\/strong><\/p>\n<ol>\n<li>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u0442\u044c \u043c\u0435\u0441\u0442\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>df -h<\/strong>. \u0412 \u043c\u043e\u0451\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 10\u0413\u0411 \u0434\u0438\u0441\u043a\u043e\u043c.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0434\u0435\u043b\u0438\u043c \u0447\u0443\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435 \u0447\u0435\u043c \u043f\u043e\u043f\u043e\u043b\u0430\u043c \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e parted \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043c \u043f\u043e\u0434 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e<\/p>\n<\/li>\n<\/ol>\n<p><code>sudo apt install parted btrfs-progs -y<\/code><\/p>\n<p><code>sudo parted \/dev\/sda<\/code><\/p>\n<blockquote>\n<p>resizepart 1 \u2192 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440: 4.8GB.<\/p>\n<p>mkpart primary btrfs 4.8GB 100% \u2192 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \/dev\/sda2 \u0438\u0437 \u043e\u0441\u0442\u0430\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u043c\u0435\u0441\u0442\u0430.<\/p>\n<p>print \u2192 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c.<\/p>\n<p>q<\/p>\n<\/blockquote>\n<p><code>sudo mkdir \/mnt\/btrfs_backup<\/code><\/p>\n<p><code>sudo mount \/dev\/sda2 \/mnt\/btrfs_backup<\/code><\/p>\n<p>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0433\u043e, \u0431\u0435\u0437 \u043b\u0438\u0448\u043d\u0438\u0445 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 (\u0438 \u0443\u0434\u0430\u043b\u044f\u044f \u0432\u0441\u0451 \u043b\u0438\u0448\u043d\u0435\u0435 \u0432 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438): <br \/><code>sudo rsync -aAXv --delete --exclude={\"\/dev\/<em>\",\"\/proc\/<\/em>\",\"\/sys\/<em>\",\"\/tmp\/<\/em>\",\"\/run\/<em>\",\"\/mnt\/<\/em>\",\"\/media\/*\",\"\/lost+found\"} \/ \/mnt\/btrfs_backup\/<\/code><\/p>\n<p><code>sudo mkdir \/mnt\/btrfs_backup\/{dev,proc,sys,tmp,run,mnt,media}<\/code><\/p>\n<p>\u041f\u043e\u0434\u043c\u0435\u043d\u044f\u0435\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u044b \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 \u0431\u044d\u043a\u0430\u043f\u0430 &#8212; \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c <strong>fstab<\/strong>:<br \/><code>sudo sed -i \"| \/ |c UUID=$(sudo blkid -s UUID -o value \/dev\/sda2) \/ btrfs defaults,compress=zstd,noatime 0 1\" \/mnt\/btrfs_backup\/etc\/fstab<\/code><\/p>\n<p>\u0418 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a <strong>grub<\/strong>:<br \/> <code>sudo mount --bind \/dev \/mnt\/btrfs_backup\/dev<\/code><\/p>\n<p><code>sudo mount --bind \/proc \/mnt\/btrfs_backup\/proc<\/code><\/p>\n<p><code>sudo mount --bind \/sys \/mnt\/btrfs_backup\/sys<\/code><\/p>\n<p><code>sudo chroot \/mnt\/btrfs_backup<\/code><\/p>\n<p><code>update-grub<\/code><\/p>\n<p><code>grub-install \/dev\/sda<\/code><\/p>\n<p><code>exit<\/code><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0441 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 BTRFS.<\/p>\n<p><code>sudo reboot<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0443\u0431\u0435\u0434\u0438\u043c\u0441\u044f, \u0447\u0442\u043e \u043a\u043e\u0440\u0435\u043d\u044c (<strong>\/<\/strong>) \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430 <strong>\/dev\/sda2<\/strong> \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>df -h<\/strong>, \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c <strong>\/dev\/sda1<\/strong> \u0432 BTRFS: <\/p>\n<p><code>sudo mkfs.btrfs -f \/dev\/sda1<\/code><\/p>\n<p><code>sudo mkdir \/mnt\/sda1<\/code><\/p>\n<p><code>sudo mount \/dev\/sda1 \/mnt\/sda1<\/code><\/p>\n<p>mkfs \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0444\u0430\u0439\u043b\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u0435 \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u044f \u0434\u0430\u043d\u043d\u044b\u0435, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0438\u0445 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438:<br \/><code>sudo rsync -aAXv --delete --exclude={\"\/dev\/<em>\",\"\/proc\/<\/em>\",\"\/sys\/<em>\",\"\/tmp\/<\/em>\",\"\/run\/<em>\",\"\/mnt\/<\/em>\",\"\/media\/*\",\"\/lost+found\"} \/ \/mnt\/sda1\/<\/code><\/p>\n<p>\u0421\u043d\u043e\u0432\u0430 \u043f\u0440\u0430\u0432\u0438\u043c GRUB, \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 sda1:<br \/> <code>sudo mount --bind \/dev \/mnt\/sda1\/dev<\/code><\/p>\n<p><code>sudo mount --bind \/proc \/mnt\/sda1\/proc<\/code><\/p>\n<p><code>sudo mount --bind \/sys \/mnt\/sda1\/sys<\/code><\/p>\n<p><code>sudo chroot \/mnt\/sda1<\/code><\/p>\n<p><code>update-grub<\/code><\/p>\n<p><code>grub-install \/dev\/sda<\/code><\/p>\n<p><code>exit<\/code><\/p>\n<p>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u0441\u044f \u0438 \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c fstab<br \/><code>sudo reboot<\/code><\/p>\n<p><code>sudo sed -i \"s\/^UUID=[^ ]* \/ btrfs\/UUID=(blkid -s UUID -o value(findmnt -n -o SOURCE \/)\") \/ btrfs\/\" \/etc\/fstab<\/code><\/p>\n<h4>\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u0437 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e GRUB RESCUE<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u043f\u043e \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438, \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0436\u0435\u043b\u0430\u043d\u0438\u044f &#8212; \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u043d\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 GRUB.<\/p>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432:<br \/><code>ls<\/code><\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u043a\u0442\u043e\u0440\u0430:<br \/><code>ls (hd0,gpt2)\/boot\/<\/code><\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0444\u0430\u0439\u043b\u044b \u0442\u0438\u043f\u0430 vmlinuz \u0438 initrd.img, \u0437\u043d\u0430\u0447\u0438\u0442, \u044d\u0442\u043e \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0440\u0430\u0437\u0434\u0435\u043b. \u0414\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f &#8212; \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0440\u0430\u0437\u0434\u0435\u043b \u0441 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0435\u0439.<\/p>\n<p>\u041e\u0431\u044b\u0447\u043d\u043e, \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044f \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432 \u0442\u0430\u043a\u0430\u044f \u0436\u0435, \u043a\u0430\u043a \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043a\u0435, \u0430 hd &#8212; \u044d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 (\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044f \u0441 \u043d\u0443\u043b\u044f)<\/p>\n<p>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430:<br \/><code>set root=(hd0,gpt2)<\/code><\/p>\n<p><code>set prefix=(hd0,gpt2)\/boot\/grub<\/code><\/p>\n<p><code>insmod normal<\/code><\/p>\n<p><code>normal<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0439 \u0440\u0430\u0437\u0434\u0435\u043b &#8212; \u043d\u0443\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044e 5) \u0438 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0440\u0430\u0437\u0434\u0435\u043b, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0432 \u043d\u0435\u0433\u043e (\u0438 fstab \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c).<\/p>\n<h4>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u043d\u0438\u043c\u043a\u0430\u043c\u0438<\/h4>\n<p>\u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u0439:<br \/><code>sudo mkdir \/snapshots<\/code><\/p>\n<p><code>sudo btrfs subvolume snapshot \/ \/snapshots\/root_$(date +%Y-%m-%d_%H-%M)<\/code><\/p>\n<p>\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u043f\u0438\u0441\u043a\u0430 &#171;\u0431\u044b\u0441\u0442\u0440\u044b\u0445 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0439&#187;:<br \/><code>sudo btrfs subvolume list \/<\/code><\/p>\n<h4>\u041e\u0442\u043a\u0430\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043a \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0441\u043d\u0438\u043c\u043a\u0443<\/h4>\n<p><code>sudo btrfs subvolume set-default $(sudo btrfs subvolume list \/ | sort -n -k2 | tail -1 | awk '{print $2}') \/ &amp;&amp; sudo reboot<\/code><\/p>\n<p>&#8212; \u042d\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043e\u0442\u043a\u0430\u0442 \u043a \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c\u0443 \u0441\u043d\u0430\u043f\u0448\u043e\u0442\u0443, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0443.<\/p>\n<h3>\u042d\u0442\u0430\u043f 2: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0440\u0435\u043a\u043b\u0430\u043c\u044b \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 DNS<\/h3>\n<p>\u041d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u043d\u0443\u044e \u0441\u0435\u0442\u044c, (\u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432) \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Wireguard:<\/p>\n<ul>\n<li>\n<p>\u0421\u0435\u043a\u0446\u0438\u044f [<strong>Interface<\/strong>] \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443 \u043a\u043b\u0438\u0435\u043d\u0442\u0430; \u0435\u043c\u0443 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c (\u0438\u043b\u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c) \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 (wireguard), \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u043e\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0410\u0434\u0440\u0435\u0441 &#8212; \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0435\u0442\u0438, \u0442\u043e \u0431\u0438\u0448\u044c \u0432 VPN. \u0410 DNS &#8212; \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043e\u0442 AdGuard, \u0441 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u043e\u0439 \u0440\u0435\u043a\u043b\u0430\u043c\u044b \u0438 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u044b\u0445 \u0441\u0430\u0439\u0442\u043e\u0432, \u0438 \u0437\u0430\u043f\u0430\u0441\u043d\u043e\u0439 \u043e\u0442 Google, \u043a\u0430\u043a \u0441\u0430\u043c\u044b\u0439 \u043d\u0430\u0434\u0451\u0436\u043d\u044b\u0439 &#8212; \u043a \u043d\u0435\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e (\u0447\u0435\u0433\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u0442\u043e\u0436\u0435 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f).<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0441\u0435\u043a\u0446\u0438\u0438 [<strong>Peer<\/strong>] \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430, Endpoint &#8212; \u044d\u0442\u043e IP-\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0435\u0433\u043e listenport; PersistentKeepalive &#8212; \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 \u043a\u043e\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u0440\u0443\u043a\u043e\u043f\u043e\u0436\u0430\u0442\u0438\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u0430 AllowedIPs &#8212; \u044d\u0442\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u0442\u0440\u0430\u0444\u0438\u043a \u0434\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0447\u0435\u0440\u0435\u0437 VPN. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 &#8212; \u0435\u0441\u043b\u0438 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0430\u0434\u0440\u0435\u0441 \u043d\u0435 \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432 \u044d\u0442\u043e\u043c \u0441\u043f\u0438\u0441\u043a\u0435 &#8212; \u0442\u043e \u0442\u0440\u0430\u0444\u0438\u043a \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0434\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 VPN. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u0441 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432, \u0438\u043b\u0438 \u0434\u043b\u044f \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d-\u0438\u0433\u0440\u0430\u0445.<\/p>\n<\/li>\n<\/ul>\n<p>\u0427\u0442\u043e\u0431\u044b &#171;\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0432\u043b\u0438\u044f\u043d\u0438\u0435&#187; VPN \u043d\u0430 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u044b, \u0434\u0435\u043b\u0430\u044e\u0442\u0441\u044f \u0442\u0440\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f:<\/p>\n<ol>\n<li>\n<p>\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c &#8212; \u043f\u0440\u043e\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0438\u0441\u043a\u0430 \u0432 \u0421\u0435\u0442\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u044e\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u0430\u0445, \u043b\u0438\u0431\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 \u0442\u0438\u043f\u0430 WireShark<\/p>\n<\/li>\n<li>\n<p>\u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0430 (<a href=\"https:\/\/www.procustodibus.com\/blog\/2021\/03\/wireguard-allowedips-calculator\/\" rel=\"noopener noreferrer nofollow\">https:\/\/www.procustodibus.com\/blog\/2021\/03\/wireguard-allowedips-calculator\/<\/a>) \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0434\u043b\u044f AllowedIPs<\/p>\n<\/li>\n<li>\n<p>\u0432\u0432\u0435\u0441\u0442\u0438 \u044d\u0442\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u0441\u0435\u043a\u0446\u0438\u044e AllowedIPs \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 (\u043f\u0438\u0440\u0430)<\/p>\n<\/li>\n<\/ol>\n<p><u>\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u0441 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u043e\u0439 \u0440\u0435\u043a\u043b\u0430\u043c\u044b \u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u0435\u0442\u0438 11.7.0.0\/16:<\/u><\/p>\n<blockquote>\n<p> [Interface]<br \/> PrivateKey = e3rmxdsBWO5pcHR4wRaQSiOJ9lrz7w8dALNIKeMUc0M=<br \/> Address = 10.10.10.99\/24<br \/> DNS = 94.140.14.14, 8.8.8.8<\/p>\n<p>[Peer]<br \/> PublicKey = Hp3gn3oQOHO2QBWSL0jlYVhrCSNh\/HW3a\/e+O1jR2Ts=<br \/> AllowedIPs = 0.0.0.0\/5, 8.0.0.0\/7, 10.0.0.0\/8, 11.0.0.0\/14, 11.4.0.0\/15, 11.6.0.0\/16, 11.8.0.0\/13, 11.16.0.0\/12, 11.32.0.0\/11, 11.64.0.0\/10, 11.128.0.0\/9, 12.0.0.0\/6, 16.0.0.0\/4, 32.0.0.0\/3, 64.0.0.0\/2, 128.0.0.0\/1<br \/> Endpoint = 2.21.189.131:33444<br \/> PersistentKeepalive = 60<\/p>\n<\/blockquote>\n<h3>\u042d\u0442\u0430\u043f 3: \u0444\u0438\u043b\u044c\u0442\u0440 HTTP \u0440\u0435\u043a\u043b\u0430\u043c\u044b Privoxy<\/h3>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c Privoxy \u0438 \u0441\u043a\u0430\u0447\u0430\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0435 \u043b\u0438\u0441\u0442\u044b \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043e\u043a:<br \/> <code>sudo apt update &amp;&amp; sudo apt install privoxy -y<\/code><\/p>\n<p><code>sudo wget -O \/etc\/privoxy\/easylist <\/code><a href=\"https:\/\/easylist.to\/easylist\/easylist.txt\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/easylist.to\/easylist\/easylist.txt<\/code><\/a><code> &amp;&amp; echo \"filterfile easylist\" | sudo tee -a \/etc\/privoxy\/config &amp;&amp; sudo systemctl restart privoxy &amp;&amp; sudo systemctl enable privoxy<\/code><\/p>\n<blockquote>\n<p>\u0414\u043b\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0432\u0441\u0435\u0439 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0440\u0435\u043a\u043b\u0430\u043c\u044b &#8212; \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 <strong>uBlock <\/strong>\u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430<\/p>\n<\/blockquote>\n<h3>\u042d\u0442\u0430\u043f 4: \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 (QoS)<\/h3>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<br \/><code>sudo iptables -P INPUT   ACCEPT<\/code><\/p>\n<p><code>sudo iptables -P OUTPUT  ACCEPT<\/code><\/p>\n<p><code>sudo iptables -P FORWARD DROP<\/code><\/p>\n<p> \u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0444\u043e\u0440\u0432\u0430\u0440\u0434 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 Wireguard:<br \/><code>sudo iptables -A FORWARD -i wg0 -o ens3 -j ACCEPT<\/code><\/p>\n<p><code>sudo iptables -A FORWARD -i ens3 -o wg0 \\ -m state --state RELATED,ESTABLISHED -j ACCEPT<\/code><\/p>\n<p> \u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c NAT \u0434\u043b\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0432 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442:<br \/><code>sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE<\/code><\/p>\n<p>\u0421\u043c\u0430\u0440\u0442-\u0444\u0438\u043b\u044c\u0442\u0440 CAKE \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u043d\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0443\u044e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u0441\u0435\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 (\u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430):<br \/><code>sudo tc qdisc replace dev ens3 root cake bandwidth 100mbit nat<\/code><\/p>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<br \/><code>sudo iptables -t mangle -A PREROUTING -i wg0 -p udp -m multiport --dports 27000:27100,3478:3479,4379:4380,3724,4000,5060:5062,6112:6119,6250,12000:64000 -j DSCP --set-dscp-class EF<\/code><\/p>\n<p><code>sudo iptables -t mangle -A PREROUTING -i wg0 -p tcp -m multiport --dports 27015:27050,1119:1120,3074,3724,4000,6112:6120 -j DSCP --set-dscp-class EF<\/code><\/p>\n<p>\u0413\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u0438 \u0432\u0438\u0434\u0435\u043e\u0437\u0432\u043e\u043d\u043a\u0438:<br \/><code>sudo iptables -t mangle -A PREROUTING -i wg0 -p udp --dport 3478:3481 -j DSCP --set-dscp-class EF<\/code><\/p>\n<p>\u0412\u0438\u0434\u0435\u043e-\u0441\u0442\u0440\u0438\u043c\u0438\u043d\u0433:<br \/><code>sudo iptables -t mangle -A PREROUTING -i wg0 -p tcp --dport 443 -m string --string \"youtube\" --algo bm -j DSCP --set-dscp-class AF21<\/code><\/p>\n<p>\u0412\u0435\u0431-\u0442\u0440\u0430\u0444\u0438\u043a:<br \/><code>sudo iptables -t mangle -A PREROUTING -i wg0 -p tcp --dport 80,443 -j DSCP --set-dscp-class BE<\/code><\/p>\n<p>\u041d\u0438\u0437\u043a\u0438\u0439 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u0434\u043b\u044f \u0432\u0441\u0435\u0433\u043e \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u043e\u0440\u0440\u0435\u043d\u0442\u044b):<br \/><code>sudo iptables -t mangle -A PREROUTING -i wg0 -j DSCP --set-dscp-class CS1<\/code><\/p>\n<p><em>\u043a\u043e\u043c\u0430\u043d\u0434\u044b iptables \u0438 tc \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e; \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u043b\u0430\u0441\u044c \u043f\u0440\u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b:<\/em><br \/> <code>sudo apt-get install iptables-persistent -y<\/code><\/p>\n<p><code>sudo iptables-save &gt; \/etc\/iptables\/rules.v4<\/code><\/p>\n<p><code>vim \/usr\/local\/bin\/apply_<\/code><a href=\"http:\/\/qos.sh\" rel=\"noopener noreferrer nofollow\"><code>qos.sh<\/code><\/a><\/p>\n<p><code>sudo chmod +x \/usr\/local\/bin\/apply_<\/code><a href=\"http:\/\/qos.sh\" rel=\"noopener noreferrer nofollow\"><code>qos.sh<\/code><\/a><\/p>\n<p><code>vim \/etc\/systemd\/system\/qos.service<\/code><\/p>\n<blockquote>\n<p>[Unit]<br \/> Description=Apply QoS rules<br \/> After=<a href=\"http:\/\/network-online.target\" rel=\"noopener noreferrer nofollow\">network-online.target<\/a><br \/> Wants=<a href=\"http:\/\/network-online.target\" rel=\"noopener noreferrer nofollow\">network-online.target<\/a><\/p>\n<p>[Service]<br \/> Type=oneshot<br \/> ExecStart=\/usr\/local\/bin\/apply_<a href=\"http:\/\/qos.sh\" rel=\"noopener noreferrer nofollow\">qos.sh<\/a><br \/> RemainAfterExit=yes<\/p>\n<p>[Install]<br \/> WantedBy=<a href=\"http:\/\/multi-user.target\" rel=\"noopener noreferrer nofollow\">multi-user.target<\/a><\/p>\n<\/blockquote>\n<p><code>sudo systemctl enable qos.service<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 &#8212; \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043d\u0430\u043f\u0448\u043e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430 \u043a \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043c:<br \/><code>sudo btrfs subvolume snapshot \/ \/snapshots\/root_$(date +%Y-%m-%d_%H-%M) &amp;&amp; sudo reboot<\/code><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/921736\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0412\u0430\u0448\u0435 \u043c\u043d\u0435\u043d\u0438\u0435 \u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u0441\u0435\u0442\u044f\u0445<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">88.89% <\/span><span class=\"tm-article-poll__answer-label\">\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u2014 \u043e\u043d \u043a\u0430\u043a \u043a\u0430\u0440\u043d\u0430\u0432\u0430\u043b: \u0432\u044b\u0445\u043e\u0434\u0438\u0442\u044c \u0432 \u0421\u0435\u0442\u044c \u0431\u0435\u0437 \u043a\u0440\u0430\u0441\u0438\u0432\u043e\u0439 \u043c\u0430\u0441\u043a\u0438 \u2014 \u043d\u0435\u043a\u0443\u043b\u044c\u0442\u0443\u0440\u043d\u043e \u0438 \u043d\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e<\/span><span class=\"tm-article-poll__answer-votes\">8<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 88.89%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">11.11% <\/span><span class=\"tm-article-poll__answer-label\">\u0412\u041f\u041d \u2014 \u043a\u0430\u043a \u0431\u0430\u043b\u0430\u043a\u043b\u0430\u0432\u0430: \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0440\u0440\u043e\u0440\u0438\u0441\u0442 \u0441\u0442\u0430\u043d\u0435\u0442 \u043f\u0440\u044f\u0442\u0430\u0442\u044c \u0441\u0432\u043e\u0451 \u043b\u0438\u0446\u043e<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 11.11%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 9 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043d\u0435\u0442. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \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\/921736\/\"> https:\/\/habr.com\/ru\/articles\/921736\/<\/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<p>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f, \u043a\u0430\u043a \u0430\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 &#8212; \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043e\u0442 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0442\u0440\u0435\u0442\u044c\u0438\u043c\u0438 \u043b\u0438\u0446\u0430\u043c\u0438 (\u043f\u0440\u043e\u0441\u043b\u0443\u0448\u043a\u0438) \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0435\u0439. \u041a\u043e\u0440\u043e\u0442\u043a\u043e, \u043e \u0447\u0451\u043c \u0433\u0430\u0439\u0434:<\/p>\n<p>&#8212; \u0421\u0435\u0440\u0432\u0435\u0440 Linux Debian 11<br \/>&#8212; \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u043d\u0430\u044f \u0441\u0435\u0442\u044c Wireguard<br \/>&#8212; \u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 Grafana<br \/>&#8212; \u0421\u043f\u0430\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u0440\u0443\u0433: backups &amp; snapshots<br \/>&#8212; \u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 \u0432\u0437\u043b\u043e\u043c\u0430 \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u043e\u043c fali2ban<br \/>&#8212; \u0424\u0438\u043b\u044c\u0442\u0440 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430, \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0437\u0430\u0446\u0438\u044f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 QoS <\/p>\n<p> <strong>\u0428\u0430\u0433 1: \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0445\u043e\u0441\u0442\u0438\u043d\u0433<\/strong><\/p>\n<p>\u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c &#171;\u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0430\u043c\u044b\u0445 \u0434\u0435\u0448\u0451\u0432\u044b\u0445 VPS \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u043e\u0432&#187; \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0446\u0435\u043d\u044b \u0431\u044b\u0432\u0430\u044e\u0442 \u0440\u0430\u0437\u043d\u044b\u0435, \u0441\u0430\u043c\u044b\u0435 \u0434\u0435\u0448\u0451\u0432\u044b\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u043e\u0442 \u0434\u0432\u0443\u0445 \u0435\u0432\u0440\u043e \u0432 \u043c\u0435\u0441\u044f\u0446. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 &#8212; <a href=\"http:\/\/hip.hosting\" rel=\"noopener noreferrer nofollow\">hip.hosting<\/a><\/p>\n<p><strong>\u0428\u0430\u0433 2: \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043b\u043e\u043a\u0430\u0446\u0438\u044e, \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u043e\u043f\u043b\u0430\u0442\u0438\u0442\u044c \u0430\u0440\u0435\u043d\u0434\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<\/strong><\/p>\n<p>\u041b\u043e\u043a\u0430\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0438\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u0439. \u041e\u0431\u044b\u0447\u043d\u043e &#8212; \u0447\u0435\u043c \u0431\u043b\u0438\u0436\u0435 \u043b\u043e\u043a\u0430\u0446\u0438\u044f, \u0442\u0435\u043c \u043d\u0438\u0436\u0435 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u044f \u0441\u043e\u0432\u0435\u0442\u0443\u044e Debian.<\/p>\n<p><strong>\u0428\u0430\u0433 3: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/strong><\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 Putty \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 IP \u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u0430\u0440\u043e\u043b\u044c, \u043d\u0443\u0436\u043d\u043e \u0432\u043e\u0439\u0442\u0438 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f:<\/p>\n<p><code>sudo apt update &amp;&amp; apt upgrade -y<\/p>\n<p>sudo apt-get install iptables net-tools vim rsync parted -y<\/code><\/p>\n<p>\u0412 \u0444\u0430\u0439\u043b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u0437\u043d\u0430\u043a \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f &#171;#&#187; \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 &#171;<strong>net.ipv4.ip_forward=1<\/strong>&#171;, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0430\u0448\u0435\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0440\u043e\u043b\u044c \u043f\u0440\u043e\u043a\u0441\u0438:<\/p>\n<p><code>vim \/etc\/sysctl.conf<\/code><\/p>\n<blockquote>\n<p><em>vim, vi &#8212; \u0441\u0430\u043c\u044b\u0439 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 linux. \u0420\u0435\u0436\u0438\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u043e\u0439 i, \u0432\u044b\u0445\u043e\u0434 \u0438\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043d\u043e\u043f\u043a\u0430 esc. \u0427\u0442\u043e\u0431\u044b \u0432\u044b\u0439\u0442\u0438 \u0431\u0435\u0437 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0434\u043e \u0432\u0432\u0435\u0441\u0442\u0438 &#171;:q!&#187; (\u0431\u0435\u0437 \u043a\u0430\u0432\u044b\u0447\u0435\u043a), \u0432\u044b\u0445\u043e\u0434 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c &#8212; &#171;:wq!&#187; <\/em><\/p>\n<\/blockquote>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c Wireguard:<br \/><code>sudo apt install wireguard -y<\/code><\/p>\n<p>\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u043f\u0430\u043f\u043a\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:<br \/><code>cd \/etc\/wireguard\/<br \/><\/code><br \/>\u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043a\u043b\u044e\u0447\u0438:<br \/><code>wg genkey | tee privatekey | wg pubkey | tee publickey<br \/><\/code><br \/>\u041f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0434\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u043e\u043d\u0444\u0438\u0433 Wireguard; \u0437\u0434\u0435\u0441\u044c Address = \u044d\u0442\u043e \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u0430 ListenPort = \u043f\u043e\u0440\u0442, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u044b (\u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u043e\u0440\u0442 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e):<\/p>\n<p><code>echo \"[Interface]<br \/>PrivateKey = $(cat privatekey)<br \/>Address = 10.0.0.1\/24<br \/>ListenPort = 51820\" &gt; wg0.conf<\/code><\/p>\n<blockquote>\n<p>\u0432 Putty \u0442\u0435\u043a\u0441\u0442 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438. \u0412 vim \u0447\u0435\u0440\u0435\u0437 Putty &#8212; \u043a\u043b\u0430\u0432\u0438\u0448\u0430 shift+\u043f\u0440\u0430\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u043c\u044b\u0448\u0438. \u0410 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043e\u0431\u044a\u0451\u043c\u043e\u0432 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 <strong>\u0432\u0435\u0431-\u043a\u043e\u043d\u0441\u043e\u043b\u044c<\/strong>, \u0443 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c \u043f\u0430\u0440\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 &#8212; <a href=\"https:\/\/habr.com\/ru\/articles\/824452\/\" rel=\"noopener noreferrer nofollow\"><strong>typewriter <\/strong><\/a>\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/869462\/\" rel=\"noopener noreferrer nofollow\"><strong>infill<\/strong><\/a>.<\/p>\n<\/blockquote>\n<p>\u0414\u0430\u043b\u0435\u0435 &#8212; \u043d\u0430\u0434\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0441\u0435\u0442\u0435\u0432\u043e\u043c \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0435:<br \/><code>INTERFACE=$(ip route | grep default | awk '{print $5}' | head -n1); sudo tee -a wg0.conf &lt;&lt;EOF<br \/>PostUp = iptables -A FORWARD -i wg0 -j ACCEPT<br \/>PostUp = iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE<br \/>PostDown = iptables -D FORWARD -i wg0 -j ACCEPT<br \/>PostDown = iptables -t nat -D POSTROUTING -o $INTERFACE -j MASQUERADE<br \/>EOF<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e, \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u044b:<br \/><code>[Peer]<br \/>PublicKey = uJWPI0zpKSB7C4G9LLdy4VMX2bPXs33g7nfdo2CVanw=<br \/>AllowedIPs = 10.10.10.30\/32<br \/><\/code><br \/><strong>PublicKey<\/strong>\u00a0&#8212; \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 <strong>AllowedIPs, <\/strong><em>\u0430 \u043c\u0430\u0441\u043a\u0430 \/32\u00a0\u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0445\u043e\u0441\u0442\u0430.<\/em><\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <strong>wg0.conf<\/strong>\u00a0\u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u0432\u0438\u0434 \u0442\u0438\u043f\u0430 \u0442\u0430\u043a\u043e\u0433\u043e:<\/p>\n<blockquote>\n<p>[Interface]<br \/>Address = 10.10.10.1\/24<\/p>\n<p>ListenPort = 21212<\/p>\n<p>PrivateKey = qPSUFPcGiHUQkOo2RHPGWeb3XmSjfiSWqSMuPd3SnCs=<\/p>\n<p>PostUp = iptables -A FORWARD -i wg0 -j ACCEPT<br \/>PostUp = iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE<br \/>PostDown = iptables -D FORWARD -i wg0 -j ACCEPT<br \/>PostDown = iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE<\/p>\n<p>[Peer]<br \/>PublicKey = uJWPI0zpKSB7C4G9LLdy4VMX2bPXs33g7nfdo2CVanw=<br \/>AllowedIPs = 10.10.10.30\/32<\/p>\n<p>[Peer]<br \/>PublicKey = YXnyogyq5930eFdueaFivCqpJCRMEmawJrpP1lcGEDc=<br \/>AllowedIPs = 10.10.10.20\/32<\/p>\n<\/blockquote>\n<p>\u0433\u0434\u0435 <br \/> <strong>PrivateKey<\/strong>\u00a0&#8212; \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>Address<\/strong>\u00a0&#8212; \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>ListenPort<\/strong>\u00a0&#8212; \u043f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<br \/> <strong>PublicKey<\/strong>\u00a0&#8212; \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 <strong>AllowedIPs<\/strong>\u00a0\u0438\u0437 \u0435\u0433\u043e \u0441\u0435\u043a\u0446\u0438\u0438 <strong>[Peer]<\/strong><\/p>\n<p><u>\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Wireguard \u0434\u043b\u044f Windows), \u0433\u0434\u0435 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043d\u043e\u0432\u043e\u0433\u043e &#171;\u043f\u0443\u0441\u0442\u043e\u0433\u043e&#187; \u0442\u0443\u043d\u043d\u0435\u043b\u044f.<\/u><\/p>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0442\u0443\u043d\u043d\u0435\u043b\u044c \u0432 \u0430\u0432\u0442\u043e\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u0441\u044f:<br \/><code>sudo systemctl enable wg-quick@wg0<br \/><\/code><br \/><code>sudo reboot<\/code><\/p>\n<p><em>\u0413\u043e\u0442\u043e\u0432\u043e! \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430<\/em>,<\/p>\n<p>\u0442\u0435\u043f\u0435\u0440\u044c \u0432\u0432\u0435\u0434\u044f \u0432 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 IP-\u0430\u0434\u0440\u0435\u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 IP=\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u043f\u043e\u0440\u0442\u043e\u043c &#8212; \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0435\u0442\u044c\u044e. \u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 Grafana \u0434\u043b\u044f \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c:<\/p>\n<p><code>sudo tee \/etc\/apt\/sources.list.d\/grafana.list &lt;&lt;'EOF' deb [signed-by=\/etc\/apt\/keyrings\/grafana.gpg] <\/code><a href=\"https:\/\/apt.grafana.com\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/apt.grafana.com<\/code><\/a><code> stable main EOF<\/p>\n<p>sudo mkdir -p \/etc\/apt\/keyrings\/<\/p>\n<p>apt-get install gpg<\/p>\n<p>wget -q -O - <\/code><a href=\"https:\/\/apt.grafana.com\/gpg.key\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/apt.grafana.com\/gpg.key<\/code><\/a><code> | gpg --dearmor | sudo tee \/etc\/apt\/keyrings\/grafana.gpg &gt; \/dev\/null<\/p>\n<p>sudo apt install -y prometheus grafana<\/p>\n<p>sudo iptables -A INPUT -i wg0 -j ACCEPT<\/p>\n<p>sudo iptables -A OUTPUT -o wg0 -j ACCEPT<\/p>\n<p>curl <\/code><a href=\"https:\/\/sh.rustup.rs\" rel=\"noopener noreferrer nofollow\"><code>https:\/\/sh.rustup.rs<\/code><\/a><code> -sSf | sh<\/code><\/p>\n<p><code>source $HOME\/.cargo\/env<\/code><\/p>\n<p><code>sudo apt install cargo build-essential -y<\/code><\/p>\n<p><code>cargo install clap --version 4.0.26<\/p>\n<p>exec bash<\/p>\n<p>cargo install prometheus_wireguard_exporter<\/p>\n<p>vim \/etc\/prometheus\/prometheus.yml<br \/><\/code><br \/>\u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\u043c, <strong><u>\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u0432 \u043d\u0430\u0447\u0430\u043b\u0430\u0445 \u0441\u0442\u0440\u043e\u043a<\/u><\/strong>!<br \/><code>scrape_configs:<br \/>  - job_name: 'wireguard'<br \/>    scrape_interval: 10s<br \/>    static_configs:<br \/>      - targets: ['localhost:9586']<\/code><\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b\u0441\u044f \u0441\u043e \u0441\u0442\u0430\u0440\u0442\u043e\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c systemd-\u0441\u0435\u0440\u0432\u0438\u0441:<br \/><code>vim  \/etc\/systemd\/system\/wireguard-exporter.service<\/code>  <\/p>\n<blockquote>\n<p>[Unit]<br \/>Description=Prometheus WireGuard Exporter<br \/>After=<a href=\"http:\/\/network-online.target\" rel=\"noopener noreferrer nofollow\">network-online.target<\/a> <\/p>\n<p>[Service]<br \/>ExecStart=\/usr\/bin\/prometheus_wireguard_exporter &#8212;interfaces wg0<br \/>Restart=on-failure <\/p>\n<p>[Install]<br \/>WantedBy=<a href=\"http:\/\/multi-user.target\" rel=\"noopener noreferrer nofollow\">multi-user.target<\/a><\/p>\n<\/blockquote>\n<p><code>sudo systemctl daemon-reload<\/code><\/p>\n<p><code>sudo systemctl enable --now grafana-server<\/code><\/p>\n<p><code>sudo systemctl enable --now wireguard-exporter.service<\/code> <\/p>\n<p><code>prometheus_wireguard_exporter --interfaces wg0 &amp;&gt;&gt; \/var\/log\/wireguard-exporter.log &amp;<\/code><\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<br \/><code>jobs -l<\/code><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0439\u0442\u0438 \u043d\u0430 \u0432\u0435\u0431-\u043f\u0430\u043d\u0435\u043b\u044c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0430\u0434\u0440\u0435\u0441 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u043e\u0440\u0442 3000: <a href=\"http:\/\/your-server-ip:3000\" rel=\"noopener noreferrer nofollow\">http:\/\/your-server-ip:3000<\/a><\/p>\n<p>\u0414\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0445\u043e\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c <strong>admin<\/strong><\/p>\n<p>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 &#171;Dashboards&#187;. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 &#171;edit&#187; &#8212; \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u0435\u0440\u0445\u0443 \u0441\u043f\u0440\u0430\u0432\u0430 &#8212; \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c <strong>Add &#8212; visualisation<\/strong>. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c prometheus, \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u044b\u0439 (<a href=\"http:\/\/localhost:9090\" rel=\"noopener noreferrer nofollow\">http:\/\/localhost:9090<\/a>) \u0438 save. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0434\u0430\u0448\u0431\u043e\u0440\u0434 \u043f\u043e\u0434 \u043a\u0430\u043a\u0438\u043c-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0438 \u0437\u0430\u0445\u043e\u0434\u0438\u043c \u0432 \u043d\u0435\u0433\u043e \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u043d\u044e Dashboards. \u0423\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0441\u0435 query \u0438 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043d\u043e\u0432\u0443\u044e, \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435<strong> + Add query<\/strong>. \u0412 \u043f\u043e\u043b\u0435 Data source \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d <strong>prometheus. <\/strong>\u0421\u043f\u0440\u0430\u0432\u0430 &#8212; \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c <strong>Code<\/strong>, \u0435\u0441\u043b\u0438 \u0432\u0434\u0440\u0443\u0433 \u0432\u044b\u0431\u0440\u0430\u043d Builder. \u0414\u0430\u043b\u0435\u0435 &#8212; \u0432 \u043f\u043e\u043b\u0435 &#171;Enter a PromQL query&#8230;&#187; \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441:<br \/><code>rate(wireguard_received_bytes_total[1m])<\/code><\/p>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Run queries \u0438 \u0441\u0432\u0435\u0440\u0445\u0443 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u0433\u0440\u0430\u0444\u0438\u043a. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0434\u0430\u0448\u0431\u043e\u0440\u0434 \u0441\u043f\u0440\u0430\u0432\u0430 \u0441\u0432\u0435\u0440\u0445\u0443. \u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u0430. \u0427\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u0444\u0438\u043a\u0438 &#8212; \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c Panel options \u0432\u043d\u0438\u0437 \u0434\u043e \u043a\u043d\u043e\u043f\u043a\u0438 + Add field override, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043d\u0435\u0451 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u0433\u0440\u0430\u0444\u0438\u043a \u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e.<\/p>\n<p><u>\u0414\u043b\u044f \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043e\u0442 \u0432\u0437\u043b\u043e\u043c\u0430 &#8212; \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 <\/u><strong><u>fail2ban<\/u><\/strong><u>:<\/u><br \/><code>sudo apt install fail2ban -y<\/code><\/p>\n<p><code>vim \/etc\/fail2ban\/jail.local<\/code><\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 <code>\/etc\/fail2ban\/jail.local<\/code>:<\/p>\n<blockquote>\n<p>[sshd]<br \/>enabled = true<br \/>port = ssh<br \/>filter = sshd<br \/>logpath = \/var\/log\/auth.log<br \/>maxretry = 7<br \/>bantime = 1h<\/p>\n<\/blockquote>\n<p><code>sudo systemctl start fail2ban<\/code><\/p>\n<p><code>sudo systemctl enable fail2ban<\/code><\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 &#8212; \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f: \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0434\u0440\u0443\u0433\u0443\u044e \u0444\u0430\u0439\u043b\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u043d\u0438\u043c\u043a\u0438, \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438, \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430.<\/p>\n<h3>\u042d\u0442\u0430\u043f 1: \u0421\u043c\u0435\u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u0441\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u0430\u0437\u0443\u0441\u044b, \u043f\u043e\u0441\u043b\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043e\u0441\u0442\u0440\u043e\u0435 \u0436\u0435\u043b\u0430\u043d\u0438\u0435 \u043e\u0442\u043a\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434. \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 &#8212; \u0442\u0430\u043a\u043e\u0439 \u043e\u0442\u043a\u0430\u0442 \u043d\u0430 \u043e\u0434\u043d\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0435\u0439 \u043a\u043b\u0430\u0432\u0438\u0448 <strong>CTRL+Z<\/strong>, \u043e\u0434\u043d\u0430\u043a\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0438 \u043d\u0435 \u0432\u0435\u0437\u0434\u0435. \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 &#8212; \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u043f\u043e\u043b\u043d\u0443\u044e \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u041b\u0443\u0447\u0448\u0435, \u043a\u043e\u0433\u0434\u0430 \u043e\u043d\u0430 \u0435\u0441\u0442\u044c \u0438 \u043d\u0435 \u043d\u0443\u0436\u043d\u0430, \u0447\u0435\u043c \u043a\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u0430 \u0438 \u0435\u0451 \u043d\u0435\u0442.<\/p>\n<p>\u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 Linux, <strong>EXT4 <\/strong>&#8212; \u043d\u0435 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u0441\u043d\u0438\u043c\u043a\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b &#8212; \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043c\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u0443\u044e <strong>BTRFS<\/strong><\/p>\n<ol>\n<li>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u0442\u044c \u043c\u0435\u0441\u0442\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>df -h<\/strong>. \u0412 \u043c\u043e\u0451\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 10\u0413\u0411 \u0434\u0438\u0441\u043a\u043e\u043c.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0434\u0435\u043b\u0438\u043c \u0447\u0443\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435 \u0447\u0435\u043c \u043f\u043e\u043f\u043e\u043b\u0430\u043c \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e parted \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043c \u043f\u043e\u0434 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e<\/p>\n<\/li>\n<\/ol>\n<p><code>sudo apt install parted btrfs-progs -y<\/code><\/p>\n<p><code>sudo parted \/dev\/sda<\/code><\/p>\n<blockquote>\n<p>resizepart 1 \u2192 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440: 4.8GB.<\/p>\n<p>mkpart primary btrfs 4.8GB 100% \u2192 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \/dev\/sda2 \u0438\u0437 \u043e\u0441\u0442\u0430\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u043c\u0435\u0441\u0442\u0430.<\/p>\n<p>print \u2192 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c.<\/p>\n<p>q<\/p>\n<\/blockquote>\n<p><code>sudo mkdir \/mnt\/btrfs_backup<\/code><\/p>\n<p><code>sudo mount \/dev\/sda2 \/mnt\/btrfs_backup<\/code><\/p>\n<p>\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0433\u043e, \u0431\u0435\u0437 \u043b\u0438\u0448\u043d\u0438\u0445 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 (\u0438 \u0443\u0434\u0430\u043b\u044f\u044f \u0432\u0441\u0451 \u043b\u0438\u0448\u043d\u0435\u0435 \u0432 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438): <br \/><code>sudo rsync -aAXv --delete --exclude={\"\/dev\/<em>\",\"\/proc\/<\/em>\",\"\/sys\/<em>\",\"\/tmp\/<\/em>\",\"\/run\/<em>\",\"\/mnt\/<\/em>\",\"\/media\/*\",\"\/lost+found\"} \/ \/mnt\/btrfs_backup\/<\/code><\/p>\n<p><code>sudo mkdir \/mnt\/btrfs_backup\/{dev,proc,sys,tmp,run,mnt,media}<\/code><\/p>\n<p>\u041f\u043e\u0434\u043c\u0435\u043d\u044f\u0435\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u044b \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 \u0431\u044d\u043a\u0430\u043f\u0430 &#8212; \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c <strong>fstab<\/strong>:<br \/><code>sudo sed -i \"| \/ |c UUID=$(sudo blkid -s UUID -o value \/dev\/sda2) \/ btrfs defaults,compress=zstd,noatime 0 1\" \/mnt\/btrfs_backup\/etc\/fstab<\/code><\/p>\n<p>\u0418 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a <strong>grub<\/strong>:<br \/> <code>sudo mount --bind \/dev \/mnt\/btrfs_backup\/dev<\/code><\/p>\n<p><code>sudo mount --bind \/proc \/mnt\/btrfs_backup\/proc<\/code><\/p>\n<p><code>sudo mount --bind \/sys \/mnt\/btrfs_backup\/sys<\/code><\/p>\n<p><code>sudo chroot \/mnt\/btrfs_backup<\/code><\/p>\n<p><code>update-grub<\/code><\/p>\n<p><code>grub-install \/dev\/sda<\/code><\/p>\n<p><code>exit<\/code><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0441 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 BTRFS.<\/p>\n<p><code>sudo reboot<\/code><\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0443\u0431\u0435\u0434\u0438\u043c\u0441\u044f, \u0447\u0442\u043e \u043a\u043e\u0440\u0435\u043d\u044c (<strong>\/<\/strong>) \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430 <strong>\/dev\/sda2<\/strong> \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>df -h<\/strong>, \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c <strong>\/dev\/sda1<\/strong> \u0432 BTRFS: <\/p>\n<p><code>sudo mkfs.btrfs -f \/dev\/sda1<\/code><\/p>\n<p><code>sudo mkdir \/mnt\/sda1<\/code><\/p>\n<p><code>sudo mount \/dev\/sda1 \/mnt\/sda1<\/code><\/p>\n<p>mkfs \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0444\u0430\u0439\u043b\u043e\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u0435 \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u0443\u044f \u0434\u0430\u043d\u043d\u044b\u0435, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0438\u0445 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0438\u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438:<br \/><code>sudo rsync -aAXv --delete --exclude={\"\/dev\/<em>\",\"\/proc\/<\/em>\",\"\/sys\/<em>\",\"\/tmp\/<\/em>\",\"\/run\/<em>\",\"\/mnt\/<\/em>\",\"\/media\/*\",\"\/lost+found\"} \/ \/mnt\/sda1\/<\/code><\/p>\n<p>\u0421\u043d\u043e\u0432\u0430 \u043f\u0440\u0430\u0432\u0438\u043c GRUB, \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 sda1:<br \/> <code>sudo mount --bind \/dev \/mnt\/sda1\/dev<\/code><\/p>\n<p><code>sudo mount --bind \/proc \/mnt\/sda1\/proc<\/code><\/p>\n<p><code>sudo mount --bind \/sys \/mnt\/sda1\/sys<\/code><\/p>\n<p><code>sudo chroot \/mnt\/sda1<\/code><\/p>\n<p><code>update-grub<\/code><\/p>\n<p><code>grub-install \/dev\/sda<\/code><\/p>\n<p><code>exit<\/code><\/p>\n<p>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u0441\u044f \u0438 \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c fstab<br \/><code>sudo reboot<\/code><\/p>\n<p><code>sudo sed -i \"s\/^UUID=[^ ]* \/ btrfs\/UUID=(blkid -s UUID -o value(findmnt -n -o SOURCE \/)\") \/ btrfs\/\"<\/code><\/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-464579","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/464579","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=464579"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/464579\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=464579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=464579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=464579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}