{"id":296058,"date":"2019-12-19T09:00:26","date_gmt":"2019-12-19T09:00:26","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=296058"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=296058","title":{"rendered":"\u041f\u0440\u044f\u043c\u043e\u0439 VPN \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u0437\u0430 NAT \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u043e\u0432 \u0431\u0435\u0437 VPS"},"content":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/481034\/\">\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 <a href=\"https:\/\/habr.com\/ru\/post\/478452\/\">\u0441\u0442\u0430\u0442\u044c\u0438<\/a> \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e\u0439 VPN-\u0442\u0443\u043d\u043d\u0435\u043b\u044c \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u043c\u0438\u0441\u044f \u0437\u0430 NAT&#8217;\u0430\u043c\u0438 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u043e\u0432. \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0435\u0442\u044c\u0435\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u2014 \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a\u0430 (\u0430\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0439 VPS \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0439 \u0440\u043e\u043b\u044c, \u0447\u0442\u043e-\u0442\u043e \u0442\u0438\u043f\u0430 STUN-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432 \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f). \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043a\u0430\u043a \u043e\u0431\u043e\u0448\u0435\u043b\u0441\u044f \u0431\u0435\u0437 VPS, \u043d\u043e \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0438 \u0438\u043c \u0431\u044b\u043b \u042f\u043d\u0434\u0435\u043a\u0441.\u0414\u0438\u0441\u043a\u2026<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h3>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u043f\u043e\u0441\u0442\u0430 \u044f \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u0433\u043b\u0430\u0432\u043d\u044b\u043c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a\u0430 \u2014 \u0442\u0440\u0435\u0442\u044c\u0435\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b (VPS) \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0443\u0437\u043b\u0430, \u043a\u0443\u0434\u0430 \u0438 \u043a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f. \u0423\u0447\u0438\u0442\u044b\u0432\u0430\u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 STUN (<a href=\"https:\/\/ru.wikipedia.org\/wiki\/STUN\" rel=\"nofollow\">\u043a\u043e\u0438\u0445 \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e<\/a>) \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. \u041f\u0435\u0440\u0432\u044b\u043c \u0434\u0435\u043b\u043e\u043c \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 TCPDump \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 STUN-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u043d\u0435\u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435. \u041f\u043e\u0433\u0443\u0433\u043b\u0438\u0432 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f \u043d\u0430 <a href=\"https:\/\/tools.ietf.org\/html\/rfc3489#section-11.1\" rel=\"nofollow\">\u0441\u0442\u0430\u0442\u044c\u044e \u0441 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430<\/a>. \u042f \u043f\u043e\u043d\u044f\u043b \u0447\u0442\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441 \u043a STUN-\u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u044f \u043d\u0435 \u043c\u043e\u0433\u0443 \u0438 \u0443\u0431\u0440\u0430\u043b \u0437\u0430\u0434\u0443\u043c\u043a\u0443 \u0432 \u00ab\u0434\u0430\u043b\u0435\u043a\u0438\u0439 \u044f\u0449\u0438\u043a\u00bb.  <\/p>\n<h3>\u0422\u0435\u043e\u0440\u0438\u044f<\/h3>\n<p>  \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u043d\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c STUN-\u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430 Debian \u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u0430 <\/p>\n<pre><code class=\"bash\"># apt install stun-server<\/code><\/pre>\n<p> \u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u0445 \u044f \u0443\u0432\u0438\u0434\u0435\u043b \u043f\u0430\u043a\u0435\u0442 stun-client, \u043d\u043e \u043a\u0430\u043a-\u0442\u043e \u043d\u0435 \u043f\u0440\u0438\u0434\u0430\u043b \u044d\u0442\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041d\u043e \u043f\u043e\u0437\u0436\u0435 \u044f \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043b \u043f\u0440\u043e \u043f\u0430\u043a\u0435\u0442 stun-client \u0438 \u0440\u0435\u0448\u0438\u043b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u043e\u0433\u0443\u0433\u043b\u0438\u0432 \u0438 \u043f\u043e\u044f\u043d\u0434\u0435\u043a\u0441\u0438\u0432 \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b:  <\/p>\n<pre><code class=\"bash\"># apt install stun-client # stun stun.ekiga.net -p 21234 -v <\/code><\/pre>\n<p>  \u0412 \u043e\u0442\u0432\u0435\u0442 \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b:  <\/p>\n<blockquote><p>STUN client version 0.97<br \/>  Opened port 21234 with fd 3<br \/>  Opened port 21235 with fd 4<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 0<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Received stun message: 92 bytes<br \/>  MappedAddress = &lt;\u041c\u043e\u0439 IP&gt;:2885<br \/>  SourceAddress = 216.93.246.18:3478<br \/>  ChangedAddress = 216.93.246.17:3479<br \/>  Unknown attribute: 32800<br \/>  ServerName = Vovida.org 0.98-CPC<br \/>  Received message of type 257 id=1<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 0<\/p>\n<p>  About to send msg of len 28 to 216.93.246.17:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 0<\/p>\n<p>  About to send msg of len 28 to &lt;\u041c\u043e\u0439 IP&gt;:2885<br \/>  Received stun message: 28 bytes<br \/>  ChangeRequest = 0<br \/>  Received message of type 1 id=11<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 0<\/p>\n<p>  About to send msg of len 28 to 216.93.246.17:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Received stun message: 92 bytes<br \/>  MappedAddress = &lt;\u041c\u043e\u0439 IP&gt;:2885<br \/>  SourceAddress = 216.93.246.17:3479<br \/>  ChangedAddress = 216.93.246.18:3478<br \/>  Unknown attribute: 32800<br \/>  ServerName = Vovida.org 0.98-CPC<br \/>  Received message of type 257 id=10<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 4<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  Encoding stun message: <br \/>  Encoding ChangeRequest: 2<\/p>\n<p>  About to send msg of len 28 to 216.93.246.18:3478<br \/>  test I = 1<br \/>  test II = 0<br \/>  test III = 0<br \/>  test I(2) = 1<br \/>  is nat = 1<br \/>  mapped IP same = 1<br \/>  hairpin = 1<br \/>  preserver port = 0<br \/>  Primary: Independent Mapping, Port Dependent Filter, random port, will hairpin <br \/>  Return value is 0x000006<\/p><\/blockquote>\n<p>  \u0421\u0442\u0440\u043e\u043a\u0430 \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c <\/p>\n<blockquote><p>MappedAddress = &lt;\u041c\u043e\u0439 IP&gt;:2885<\/p><\/blockquote>\n<p>  \u043a\u0430\u043a \u0440\u0430\u0437 \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0434\u043e! \u041e\u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u043b\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c UDP \u043f\u043e\u0440\u0442\u0443 21234. \u041d\u043e \u044d\u0442\u043e \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u043b \u0434\u0435\u043b\u0430, \u0432\u0441\u0442\u0430\u043b \u0432\u043e\u043f\u0440\u043e\u0441 \u043a\u0430\u043a \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u043c\u0443 \u0443\u0437\u043b\u0443 \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c VPN-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430, \u0430 \u043c\u043e\u0436\u0435\u0442 Telegram?! \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043c\u043d\u043e\u0433\u043e \u0438 \u0440\u0435\u0448\u0438\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u0430\u0441\u044c \u043c\u043d\u0435 <a href=\"https:\/\/fritool.ru\/curl-for-webdav\/\" rel=\"nofollow\">\u0441\u0442\u0430\u0442\u044c\u044f \u043e \u0440\u0430\u0431\u043e\u0442\u0435 Curl \u0447\u0435\u0440\u0435\u0437 WebDav \u0441 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u043e\u043c<\/a>. \u041f\u043e\u0434\u0443\u043c\u0430\u0432 \u043d\u0430\u0434 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u044f \u043f\u0440\u0438\u0448\u0435\u043b \u043a \u0442\u0430\u043a\u043e\u0439 \u0441\u0445\u0435\u043c\u0435:  <\/p>\n<ol>\n<li>\u0421\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0443\u0437\u043b\u043e\u0432 \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0441 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043c\u0435\u0442\u043a\u043e\u0439 \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0435;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0443\u0437\u043b\u044b \u0433\u043e\u0442\u043e\u0432\u044b, \u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043e\u0442 STUN-\u0441\u0435\u0440\u0432\u0435\u0440\u0430;<\/li>\n<li>\u0412\u044b\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a;<\/li>\n<li>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0438 \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0435;<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0443\u0437\u043b\u043e\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e OpenVPN.<\/li>\n<\/ol>\n<p>  <\/p>\n<h3>\u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0430<\/h3>\n<p>  \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0443\u043c\u0430\u0432 \u0438 \u043f\u0435\u0440\u0435\u043d\u044f\u0432 \u043e\u043f\u044b\u0442 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u0440\u0430\u0437\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043d\u0430 \u0441\u043a\u043e\u0440\u0443\u044e \u0440\u0443\u043a\u0443 \u0441\u043a\u0440\u0438\u043f\u0442.<br \/>  \u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u0430\u043c \u0441\u043a\u0440\u0438\u043f\u0442:  <\/p>\n<pre><code class=\"bash\"># cat vpn8.sh<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\">#!\/bin\/bash ######################## \u0417\u0430\u0434\u0430\u0435\u043c \u0446\u0432\u0435\u0442\u043d\u043e\u0439 \u0442\u0435\u043a\u0441\u0442 ### WARN='\\033[37;1;41m'\t\t\t\t# END='\\033[0m'\t\t\t\t\t# RED='\\033[0;31m'         #  ${RED}\t\t# GREEN='\\033[0;32m'      #  ${GREEN}\t\t# ################################################# ####################### \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u044b\u043c\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 ######################################################### al=\"echo readlink dirname grep awk md5sum shuf nc curl sleep openvpn cat stun\" ch=0 for i in $al; do which $i &gt; \/dev\/null || echo -e \"${WARN}\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c $i ${END}\"; which $i &gt; \/dev\/null || ch=1; done if (( $ch &gt; 0 )); then echo -e \"${WARN}\u041e\u0439, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f${END}\"; exit; fi #######################################################################################################################  if [[ $1 == '' ]]; then echo -e \"${WARN}\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f (\u043b\u044e\u0431\u043e\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043b\u043e\u0432\u043e, \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u0441 \u0434\u0432\u0443\u0445 \u0441\u0442\u043e\u0440\u043e\u043d!) ${END} \\t ${GREEN}\u0414\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \/etc\/rc.local \u0441\u0442\u0440\u043e\u043a\u0443 nohup \/&lt;\u043f\u0443\u0442\u044c \u043a \u0444\u0430\u0439\u043b\u0443&gt;\/vpn8.sh  &gt; \/var\/log\/vpn8.log 2&gt;\/dev\/hull &amp; ${END}\"; exit; fi ABSOLUTE_FILENAME=`readlink -f \"$0\"`                                                    # \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u0434\u043e \u0441\u043a\u0440\u0438\u043f\u0442\u0430 DIR=`dirname \"$ABSOLUTE_FILENAME\"`                                                      # \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043b\u0435\u0436\u0438\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 ############################### \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 ################################## key=\"$DIR\/secret.key\" if [ ! -f \"$key\" ]; then \t\t\t\techo -e \"${WARN}\u0421\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 VPN-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d, \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435: \\ openvpn --genkey --secret secret.key \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u043a\u043b\u044e\u0447 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0434\u043e\u043b\u0436\u0435\u043d \\ \u0431\u044b\u0442\u044c \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c \u0441 \u0434\u0432\u0443\u0445 \u0441\u0442\u043e\u0440\u043e\u043d!!!${END}  # ls -l secret.key  -rw------- 1 root root 637 \u043d\u043e\u044f 27 11:12 secret.key  # chmod 600 secret.key\"; \t\t\t\texit; \t\t\t\tfi ########################################################################################################################  ABSOLUTE_FILENAME=`readlink -f \"$0\"`                                                    # \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u0434\u043e \u0441\u043a\u0440\u0438\u043f\u0442\u0430 DIR=`dirname \"$ABSOLUTE_FILENAME\"`                                                      # \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043b\u0435\u0436\u0438\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 name=$(uname -n | md5sum | awk '{print $1}') vpn=$(echo $1 | md5sum | awk '{print $1}') stun=\"stun.ekiga.net\" \t# STUN \u0441\u0435\u0440\u0432\u0435\u0440 username=\"Yandex\"\t# \u041b\u043e\u0433\u0438\u043d \u043e\u0442 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0430\t password=\"Password\"\t# \u041f\u0430\u0440\u043e\u043b\u044c \u043e\u0442 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0430 localport=`shuf -i 20000-65000 -n 1`\t# \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430  echo \"$(date) \u0421\u043e\u0437\u0434\u0430\u044e \u043f\u0430\u043f\u043a\u0443 \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0435\" curl -X MKCOL --user \"${username}:${password}\" https:\/\/webdav.yandex.ru\/vpn-$vpn echo \"$(date) \u041e\u0447\u0438\u0449\u0430\u044e \u043f\u0430\u043f\u043a\u0443 \u043e\u0442 \u0432\u0441\u044f\u043a\u043e\u0433\u043e \u043c\u0443\u0441\u043e\u0440\u0430\" for i in `curl --silent --user \"$username:$password\" -X PROPFIND -H \"Depth: 1\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/ | sed 's\/&gt;&lt;\/\\n\/g' | grep \"d:displayname\" | sed 's\/d:displayname\/\/g' | sed 's\/&gt;\/\/g' | sed 's\/&lt;\/\/' | sed 's\/\\\/\/\/g' | grep -v $(date +%Y-%m-%d-%H-%M)`; do \techo \"$(date) Delete: $i\" \tcurl -X DELETE --user \"${username}:${password}\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/$i \tdone  until [ $c ];do  \tuntil [[ $b ]]; do \t\techo \"$(date) \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u044e \u043f\u0430\u043f\u043a\u0443\" \t\tdate=`date +%Y-%m-%d-%H-%M` \t\tmydata=`curl --silent --user \"${username}:${password}\" -X PROPFIND -H \"Depth: 1\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/ | sed 's\/&gt;&lt;\/&gt;\\n&lt;\/g' | grep $name | grep $date | grep \"d:displayname\"` \t\tif [[ -z $mydata ]]; \tthen \t\t\t\t\t\techo \"$(date) \u0424\u0430\u0439\u043b \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\" \t\t\t\t\t        echo \"$date\" &gt; \"\/tmp\/$date-$name-ready.txt\" \t\t\t\t\t        curl -T \"\/tmp\/$date-$name-ready.txt\" --user \"$username:$password\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/$date-$name-ready.txt \t\t\t\t\telse \t\t\t\t\t\techo \"$(date) \u0424\u0430\u0439\u043b \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 - $date\" \t\t\t\t\tfi \t\tremote=`curl --silent --user \"${username}:${password}\" -X PROPFIND -H \"Depth: 1\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/ | sed 's\/&gt;&lt;\/&gt;\\n&lt;\/g' | grep -v $name | grep $date | grep \"d:displayname\"` \t\tif [[ -z $remote ]];\tthen \t\t\t\t\t\techo -e \"$(date) ${RED} \u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0443\u0437\u0435\u043b \u043d\u0435 \u0433\u043e\u0442\u043e\u0432 ${END}\" \t\t\t\t\t\techo \"$(date) \u0416\u0434\u0443\" \t\t\t\t\t\tsleep 20 \t\t\t\t\telse \t\t\t\t\t\techo -e \"$(date) ${GREEN} \u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0443\u0437\u0435\u043b \u0433\u043e\u0442\u043e\u0432 ${END}\" \t\t\t\t\t\tb=1 \t\t\t\t\t\ta='' \t\t\t\t\tfi \tdone  \tuntil [ $a ]; do \t\techo \"$(date) \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 STUN \u0441\u0435\u0440\u0432\u0435\u0440\u0430: $stun\"                 stun $stun -p $localport -v 2&gt;&amp;1 | grep MappedAddress | sort |uniq &gt; \"$DIR\/mydata\"                 echo \"$(date) \u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 STUN \u0441\u0435\u0440\u0432\u0435\u0440\u0430\"                 sleep 4                 echo \"$(date) \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\"                 curl -T \"$DIR\/mydata\" --user \"$username:$password\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/$name.txt \t\techo \"$(date) \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430\" \t\tfilename=$(curl --silent --user \"${username}:${password}\" -X PROPFIND -H \"Depth: 1\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/ | sed 's\/&gt;&lt;\/\\n\/g' | grep \"d:displayname&gt;\" | grep \"txt\" | grep -v \"$name\" | grep -v \"ready\" | sed 's|.*d:displayname&gt;||' | sed 's\/&lt;\/ \/g' | awk '{print $1}') \t\techo \"$(date) \u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430: $filename\" \t\taddress=$(curl --silent --user \"$username:$password\" https:\/\/webdav.yandex.ru\/vpn-$vpn\/$filename | sort | uniq | head -n1 | sed 's\/:\/ \/g') \t\techo \"$(date) \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0438 \u043f\u043e\u0440\u0442\u0430\" \t\tip=$(echo \"$address\" | awk '{print $3}') \t\tport=$(echo \"$address\" | awk '{print $4}') \t\tif [[ -n \"$ip\" &amp;&amp; -n \"$port\" ]]; then \t\t\techo -e \"$(date) ${GREEN} \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 $ip $port ${END}\"        \t\t \topenvpn --remote $ip --rport $port --lport $localport \\ \t       \t \t    --proto udp --dev tap --float --auth-nocache --verb 3 --mute 20 \\ \t       \t \t    --ifconfig 10.45.54.2 255.255.255.252 \\ \t       \t\t    --secret \"$DIR\/secret.key\" \\ \t       \t\t    --auth SHA256 --cipher AES-256-CBC \\ \t        \t    --ncp-disable --ping 10  --ping-exit 30 \\ \t        \t    --comp-lzo yes \t\t\techo -e \"$(date) ${WARN} \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043e\u0440\u0432\u0430\u043d\u043e${END}\" \t\t\ta=1 \t\t\tb='' \t\t\telse \t\t\ta=1 \t\t\tb='' \t\t\tfi \tdone done<\/code><\/pre>\n<p>  \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u043d\u0443\u0436\u043d\u043e:  <\/p>\n<ol>\n<li>\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0431\u0443\u0444\u0435\u0440 \u0438 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<br \/> \n<pre><code class=\"bash\"># nano vpn8.sh <\/code><\/pre>\n<\/li>\n<li>\u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u043e\u0442 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a\u0430.<\/li>\n<li>\u0432 \u043f\u043e\u043b\u0435 &#171;&#8212;ifconfig 10.45.54.(1 \u0438\u043b\u0438 2) 255.255.255.252&#187; \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 IP-\u0430\u0434\u0440\u0435\u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430<\/li>\n<li>c\u043e\u0437\u0434\u0430\u0442\u044c <b>secret.key<\/b> \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439:<br \/> \n<pre><code class=\"bash\"># openvpn --genkey --secret secret.key <\/code><\/pre>\n<\/li>\n<li>\u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c:<br \/> \n<pre><code class=\"bash\"># chmod +x vpn8.sh<\/code><\/pre>\n<\/li>\n<li>\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442:<br \/> \n<pre><code class=\"bash\"># .\/vpn8.sh nZbVGBuX5dtturD<\/code><\/pre>\n<p>   \u0433\u0434\u0435 nZbVGBuX5dtturD \u2014 ID-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 <a href=\"https:\/\/strongpasswordgenerator.com\/\" rel=\"nofollow\">\u0442\u0443\u0442<\/a><\/li>\n<\/ol>\n<p>  \u041d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u043c \u0443\u0437\u043b\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0432\u0441\u0451 \u0442\u043e\u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 secret.key \u0438 ID-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u043e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u043c\u0438.<br \/>  \u0414\u043b\u044f \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u00abnohup \/&lt;\u043f\u0443\u0442\u044c \u0434\u043e \u0441\u043a\u0440\u0438\u043f\u0442\u0430&gt;\/vpn8.sh nZbVGBuX5dtturD &gt; \/var\/log\/vpn8.log 2&gt;\/dev\/null &amp;\u00bb \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u044e\u0441\u044f \u0432 \u0444\u0430\u0439\u043b\u0435 \/etc\/rc.local<\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d \u043d\u0430 Ubuntu 18.04 \u0438 Debian 9. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0435\u0440\u0432\u0438\u0441, \u043d\u043e \u0434\u043b\u044f \u043e\u043f\u044b\u0442\u0430 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a.<br \/>  \u041f\u043b\u0430\u043d\u0438\u0440\u0443\u044e \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u043f\u043b\u0430\u043d\u0435:  <\/p>\n<ul>\n<li> \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 secret.key \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435, \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0443\u0437\u0435\u043b<\/li>\n<li> \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432<\/li>\n<li> \u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u043d\u0430 \u042f\u043d\u0434\u0435\u043a\u0441.\u0434\u0438\u0441\u043a<\/li>\n<li> \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430<\/li>\n<\/ul>\n<p>  \u0414\u0430 \u0431\u0443\u0434\u0435\u0442 IPv6 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0434\u043e\u043c\u0435!<\/div>\n<p>               <script class=\"js-mediator-script\">!function(e){function t(t,n){if(!(n in e)){for(var r,a=e.document,i=a.scripts,o=i.length;o--;)if(-1!==i[o].src.indexOf(t)){r=i[o];break}if(!r){r=a.createElement(\"script\"),r.type=\"text\/javascript\",r.async=!0,r.defer=!0,r.src=t,r.charset=\"UTF-8\";var d=function(){var e=a.getElementsByTagName(\"script\")[0];e.parentNode.insertBefore(r,e)};\"[object Opera]\"==e.opera?a.addEventListener?a.addEventListener(\"DOMContentLoaded\",d,!1):e.attachEvent(\"onload\",d):d() } } }t(\"\/\/mediator.mail.ru\/script\/2820404\/\",\"_mediator\")}(window);<\/script>      <br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/481034\/\"> https:\/\/habr.com\/ru\/post\/481034\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/481034\/\">\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 <a href=\"https:\/\/habr.com\/ru\/post\/478452\/\">\u0441\u0442\u0430\u0442\u044c\u0438<\/a> \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e\u0439 VPN-\u0442\u0443\u043d\u043d\u0435\u043b\u044c \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u043c\u0438\u0441\u044f \u0437\u0430 NAT&#8217;\u0430\u043c\u0438 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u043e\u0432. \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0435\u0442\u044c\u0435\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u2014 \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a\u0430 (\u0430\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0439 VPS \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0439 \u0440\u043e\u043b\u044c, \u0447\u0442\u043e-\u0442\u043e \u0442\u0438\u043f\u0430 STUN-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0437\u043b\u043e\u0432 \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f). \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043a\u0430\u043a \u043e\u0431\u043e\u0448\u0435\u043b\u0441\u044f \u0431\u0435\u0437 VPS, \u043d\u043e \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0438 \u0438\u043c \u0431\u044b\u043b \u042f\u043d\u0434\u0435\u043a\u0441.\u0414\u0438\u0441\u043a\u2026  <\/p>\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-296058","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/296058","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=296058"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/296058\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=296058"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=296058"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=296058"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}