Certbot: рддреНрд░реБрдЯрд┐: рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕реБрди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП [::]: 443

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдлрд╝рд░ре░ 2018  ┬╖  30рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: certbot/certbot

рдореЗрд░рд╛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╣реИ (рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ):

рдЙрдмрдВрдЯреВ 16.04

рдореИрдВрдиреЗ (рд╕рд░реНрдмреЛрдЯ-рдСрдЯреЛ, рдУрдПрд╕ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░, рдкрд╛рдЗрдк, рдЖрджрд┐ рдХреЗ рд╕рд╛рде)

sudo apt-get install python-certbot-nginx

рдореИрдВрдиреЗ рдЗрд╕ рдХрдорд╛рдВрдб рдХреЛ рдЪрд▓рд╛рдпрд╛ рдФрд░ рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд┐рдпрд╛:

nginx: [emerg] duplicate listen options for [::]:443 in /etc/nginx/sites-enabled/example.online:29

рд╕рд░реНрдмреЛрдЯ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рднрд┐рдиреНрди рдерд╛:

рдЗрд╕рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП

рдореИрдВ рдЬрд┐рд╕ рдбреЛрдореЗрди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдирдЧрдиреЗрдХреНрд╕ рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рдпрд╛ рдЕрдкрд╛рдЪреЗ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬрд╝ рд╣реИ:

server {
  listen 80;
  listen [::]:80;

  server_name example.online;

  root /home/example/deploy;
  index index.html;

  location / {
    try_files $uri $uri/ =404;
  }
}

server {
  listen 80;
  listen [::]:80;
  server_name www.example.online;
  return 301 $scheme://example.online$request_uri;
}

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдореИрдВрдиреЗ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛: certbot --redirect --nginx -d readacted.com -d www.redacted.com

рдореЗрд░реА рдореВрд▓ рдЧреЛрдкрдиреАрдп рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }
    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 $scheme://redacted.com$request_uri;
    }

/var/log/letsencrypt/letsencrypt.log рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/redacted.com-0001/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/redacted.com-0001/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 $scheme://redacted.com$request_uri;

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/www.redacted.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/www.redacted.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

nginx рдХреА рд╢рд┐рдХрд╛рдпрдд рд╣реИ рдХрд┐ рд▓рд╛рдЗрди рдкрд░ listen [::]:443 ssl ipv6only=on; # managed by Certbot

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢:

nginx: [emerg] duplicate listen options for [::]:443 in /etc/nginx/sites-enabled/redacted.com:23

рдПрдХ рддреНрд╡рд░рд┐рдд Google рдиреЗ 2010 рд╕реЗ рдЗрд╕ рдкреГрд╖реНрда рдХреЛ рд▓рд╛рдпрд╛:

http://www.serverphorums.com/read.php?5 , 203912

рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рдХреЗ рдХрд╛рд░рдг рдирдЧрдиреЗрдХреНрд╕ рднреНрд░рдорд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВ рдПрдХ nginx рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдБ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/redacted.com-0001/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/redacted.com-0001/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 http://redacted.com$request_uri;

        listen [::]:443; # manually changed
        ssl on;  #manually changed
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/www.redacted.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/www.redacted.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

рдореИрдВ рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдЖрджрд░реНрд╢ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБ ...

рд╕рднреА 30 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@iamdubx рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛? рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ рд╣реВрдБред

рдПрдХ рд╣реА рдореБрджреНрджрд╛ ... рдпрд╣ рдореЗрд░реА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╕реНрдЯрдо рдЙрдк рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ

рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ рд╣реВрдБред

рдореЗрд░реЗ рдкрд╛рд╕ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрдИ рдбреЛрдореЗрди рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╣реИред

server {
  listen 80;
  listen [::]:80;

  root /home/primarydomain/public;
  index index.html index.htm;

  server_name domain1.com *.domain1.com domain2.com *.domain2.com domain3.com *.domain3.com domain4.com *.domain4.com;

  return 302 $scheme://primarydomain.com$request_uri;

  access_log /var/log/nginx/others.access.log;
  error_log /var/log/nginx/others.error.log;

  location / {
    try_files $uri $uri/ /index.html =404;
  }
}

рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП nginx: [emerg] duplicate listen options for [::]:443 in /etc/nginx/sites-enabled/others:19 рдорд┐рд▓рддрд╛ рд╣реИред

OS: рдЙрдмрдВрдЯреВ 16.04ред рдХреЛрдИ рдорджрдж?

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдореИрдВрдиреЗ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛: certbot --redirect --nginx -d readacted.com -d www.redacted.com

рдореЗрд░реА рдореВрд▓ рдЧреЛрдкрдиреАрдп рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }
    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 $scheme://redacted.com$request_uri;
    }

/var/log/letsencrypt/letsencrypt.log рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/redacted.com-0001/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/redacted.com-0001/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 $scheme://redacted.com$request_uri;

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/www.redacted.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/www.redacted.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

nginx рдХреА рд╢рд┐рдХрд╛рдпрдд рд╣реИ рдХрд┐ рд▓рд╛рдЗрди рдкрд░ listen [::]:443 ssl ipv6only=on; # managed by Certbot

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢:

nginx: [emerg] duplicate listen options for [::]:443 in /etc/nginx/sites-enabled/redacted.com:23

рдПрдХ рддреНрд╡рд░рд┐рдд Google рдиреЗ 2010 рд╕реЗ рдЗрд╕ рдкреГрд╖реНрда рдХреЛ рд▓рд╛рдпрд╛:

http://www.serverphorums.com/read.php?5 , 203912

рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рдХреЗ рдХрд╛рд░рдг рдирдЧрдиреЗрдХреНрд╕ рднреНрд░рдорд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВ рдПрдХ nginx рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдБ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ:

    server {
        server_name redacted.com;
        location / {
        root   /home/redacted/www;
        index  index.html;
      }

        listen [::]:443 ssl ipv6only=on; # managed by Certbot
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/redacted.com-0001/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/redacted.com-0001/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

    server {
        listen 80;
        listen [::]:80;
        server_name www.redacted.com;
        return 301 http://redacted.com$request_uri;

        listen [::]:443; # manually changed
        ssl on;  #manually changed
        listen 443 ssl; # managed by Certbot
        ssl_certificate /etc/letsencrypt/live/www.redacted.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/www.redacted.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    }

рдореИрдВ рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдЖрджрд░реНрд╢ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБ ...

@oororange , рдХреНрдпрд╛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдореМрдЬреВрджрд╛ рд╕рдорд╕реНрдпрд╛ рд╣реИ? рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдкрд░рд┐рдЪрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдРрд╕рд╛ рдХреБрдЫ рд╣реИ рдпрд╛ рдирд╣реАрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рджреЗрдЦрд╛ рд╣реИред

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЗрд╕реЗ рдХрднреА рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк IPv6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддрдм рд╡реЗ рдореВрд▓ рдмрдЧ рдХреЛ рдареАрдХ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЬрдм рд╕реЗ рд╣рдордиреЗ рдЕрднреА IPv6 рд╕рдкреЛрд░реНрдЯ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕реАрд▓рд┐рдП рд▓реЛрдЧ рдЗрд╕реЗ рдорд╛рд░ рд░рд╣реЗ рд╣реИрдВред рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╛рдзрд╛рди рдХрд╛рдо рдХрд░реЗрдЧрд╛; рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдЬреЛ рдЕрднреА рддрдХ IPv6 рдХреЗ рд▓рд┐рдП Nginx рдореЗрдВ рддрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХреЛ ssl on рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рдпрд╛ рддреЛ ipv6only=on рдХреЛ рдирд┐рдХрд╛рд▓рдирд╛ рдпрд╛ рджреЛрдиреЛрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

@joohoi , рд╣рдо рд╢рд╛рдпрдж ipv6only=on рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рдХрд░ рдпрд╛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдЕрджреНрд╡рд┐рддреАрдп рдкрддрд╛ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЕрдВрджрд╛рдЬрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдпрд╣рд╛рдБ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ рд╣реИред рдореЗрд░реЗ рдкрд╣рд▓реЗ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдареАрдХ рдерд╛ред рджреВрд╕рд░реЗ рдбреЛрдореЗрди рдореЗрдВ рдпреЗ рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реЛрдиреЗ рд▓рдЧреАрдВред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрдмреЛрдЯ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЖрдИрдкреАрд╡реА 6 рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИред рдЗрд╕реЗ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧреАред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреБрд░рд╛рдиреЗ Nginx рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ ipv6only рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдФрд░ рдЪреВрдХ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрджрд▓ рдЧрдП рд╣реИрдВред

рдЧрдВрджреЗ рдкреИрдЪ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдпрд╛рдЪрдирд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рддрдп рдХрд┐рдпрд╛, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЬрд▓реНрдж рд╣реА рдПрдХ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛!

--- /usr/lib/python3/dist-packages/certbot_nginx/configurator.py.orig   2018-02-14 18:38:30.380863045 +0000
+++ /usr/lib/python3/dist-packages/certbot_nginx/configurator.py    2018-02-14 18:38:01.501018553 +0000
@@ -507,10 +507,10 @@ class NginxConfigurator(common.Installer
                           '[::]:{0}'.format(self.config.tls_sni_01_port),
                           ' ',
                           'ssl']
-            if not ipv6info[1]:
-                # ipv6only=on is absent in global config
-                ipv6_block.append(' ')
-                ipv6_block.append('ipv6only=on')
+            #if not ipv6info[1]:
+            #    # ipv6only=on is absent in global config
+            #    ipv6_block.append(' ')
+            #    ipv6_block.append('ipv6only=on')

         if vhost.ipv4_enabled():
             ipv4_block = ['\n    ',
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial
$ nginx -V
nginx version: nginx/1.10.3 (Ubuntu)
built with OpenSSL 1.0.2g  1 Mar 2016
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads
$ apt show python-certbot-nginx
Package: python-certbot-nginx
Version: 0.21.1-1+ubuntu16.04.1+certbot+1
Priority: optional
Section: oldlibs
Maintainer: Debian Let's Encrypt <[email protected]>
Installed-Size: 9,216 B
Depends: python3-certbot-nginx
Download-Size: 2,470 B
APT-Manual-Installed: yes
APT-Sources: http://ppa.launchpad.net/certbot/certbot/ubuntu xenial/main amd64 Packages
Description: transitional dummy package
 This is a transitional dummy package for the migration of certbot
 from python2 to python3.  It can be safely removed.

рд╡рд╣реА рдореБрджреНрджрд╛ред рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдкрд╛рда рдХреА рджреАрд╡рд╛рд░ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╣рдо рдЬрд╛рддреЗ рд╣реИрдВред

рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреБрдЫ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП:
ipv6only рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реЙрдХреЗрдЯ рдкреНрд░рддрд┐ рдПрдХрд╛рдзрд┐рдХ рд╕реБрдирдиреЗ рдХреЗ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдХреЗрд╡рд▓ рд╕реЙрдХреЗрдЯ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдПрдХ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рддреЛ Nginx рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╢реБрд░реВ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣реЗрдЧрд╛:

server {
    ...
    server_name first.example.org;
    listen [::]:80 ipv6only=on;
    listen 80;
}┬а
server {
    ...
    server_name second.example.org;
    listen [::]:80 ipv6only=on;
    listen 80;
}

Nginx рдХреЗ рд╣рд╛рд▓ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ рдЕрдЧрд░ ipv6only рд╕реЗрдЯрд┐рдВрдЧ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреА рдЬрд╛рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЪрд░ рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди ipv6only=on ред рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдиреНрдп рд╣реИ рдФрд░ Nginx рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди> = 1.3.4:

server {
    ...
    server_name first.example.org;
    listen [::]:80;
    listen 80;
} 
server {
    ...
    server_name second.example.org;
    listen [::]:80;
    listen 80;
}

рд╣рд╛рд▓рд╛рдВрдХрд┐ 1.3.4 рд╕реЗ рдкрд╣рд▓реЗ Nginx рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ ipv6only рдЪрд░ рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореВрд▓реНрдп ipv6only=off , рдЗрд╕рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдореНрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛрдВрдЧреЗ:

server {
    ...
    server_name first.example.org;
    listen [::]:80;
    listen 80;
} 

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рддрд┐ рдпрд╣ рд╣реИ рдХрд┐ Nginx рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рд╡рд╛рд▓реЗ рдЬрд╣рд╛рдЬреЛрдВ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рддрд░рдг Debian Wheezy (рдбреЗрдмрд┐рдпрди 7) рд╣реЛрдЧрд╛, рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ Nginx рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг 1.2.1 рд╣реИред

рдЕрдЧрд░ рд╣рдо рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рд╕реЗ ipv6only рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛ рджреЗрдВрдЧреЗ, рддреЛ рдпрд╣ рдбреЗрдмрд┐рдпрди рд╡реНрд╣реАрдЬрд╝реА рдХреЗ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ рд╡реНрд╣реАрдЬреА рдХреЗ рд▓рд┐рдП рдИрдУрдПрд▓ рдХреА рддрд╛рд░реАрдЦ рдордИ 2018 рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд░реНрдмреЛрдЯ рдХреЛрдб рд╕реЗ рдЗрд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд░реАрдм рд╣реИрдВред

рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдХреА рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреВрд░реНрдг рдиреНрдпрдЧреНрдиреЗрдХреНрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░ рд░рд╣реА рд╣реИ, ipv6only=on рд╕реЗрдЯрд┐рдВрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА server{} рдмреНрд▓реЙрдХ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ред рдпрджрд┐ рдлрд┐рд░ рднреА рдорд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛, рддреЛ рд╕рд░реНрдЯрд┐рдлреЛрдЯрдм рдЗрд╕реЗ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рдмреЛрдЯ рдХреЗ рд▓рд┐рдП рдЙрдмрд▓рддреА рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡рд░реНрддрдорд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдХреБрдЫ рдмреНрд▓реЙрдХ рд╕реЗ рдЗрд╕ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдЪрд░ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ server{} рдмреНрд▓реЙрдХ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдЧ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬрд╣рд╛рдВ рд╕рд░реНрдЯрд┐рдлрд╝реЛрдЯ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдЧрд░ рд╣рдо рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ рддреЛ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж ipv6only=on рдЪрд░ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдпред

рдкреИрдЪ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж; рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред FWIW, рдореИрдВ рдЙрдмрдВрдЯреВ 17 рдкрд░ рд╣реВрдВред

рдореБрдЭреЗ рд╕рднреА рдХреЛ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛

listen [::]:80;
listen 80;

рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

https://github.com/chilion - рдзрдиреНрдпрд╡рд╛рдж! рдХреЛ рд╣рдЯрд╛рдиреЗ:

listen [::]:80;
listen 80;

рдореЗрд░реЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд┐рдпрд╛ред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ Ubuntu рд╕рд░реНрд╡рд░ рдкрд░ рджреЛ рдбреЛрдореЗрди рд╣реИрдВред рдкрд╣рд▓реЗ рд╡рд╛рд▓реЗ рдиреЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдХреАред рдлрд┐рд░ рдореБрдЭреЗ рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реАред рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред рдореИрдВ рдмрд╕ рдПрдХ рддрд╛рдЬрд╛ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рддрд╛рдЬрд╛ рд╕рдм рдХреБрдЫ рдХреЗ рд╕рд╛рде nginx рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рдзрдиреНрдпрд╡рд╛рджред

listen [::]:80 рдирд┐рдХрд╛рд▓рдирд╛ рд▓реЗрдХрд┐рди listen 80; рдЫреЛрдбрд╝рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдЧреИрд░-рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбреЛрдореЗрди рдкрд░ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛

рдореИрдВ рдЯрд┐рдкреНрдкрдгреА рдХрд░рддрд╛ рд╣реВрдВ [::]: 443 рд╕рдмрдбреЛрдореЗрди рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ, рддрдм рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ

рдореИрдВ рдмрд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЯрдХрд░рд╛ рдЧрдпрд╛ред рдХреЛрдИ рднреА рд╢рд░реАрд░ рдЕрд▓рдЧ listen рдирд┐рд░реНрджреЗрд╢ рдФрд░ ipv6only рднрд╛рд╡рдирд╛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдХреА рдЕрддреНрдпрдзрд┐рдХ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдЬрдм рддрдХ рдореБрдЭреЗ рдпрд╣ рд▓реЗрдЦ рдирд╣реАрдВ рдорд┐рд▓рд╛, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рдерд╛ рдХрд┐ рд╡реЗрдм рдкрд░ рдореБрдЭреЗ рдорд┐рд▓ рд░рд╣реА рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд▓рд╛рд╣ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

https://stefanchrist.eu/blog/2015_01_21/Using%20ipv6only%20in%20Nginx.xhtml

рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдХрд╛ рдпрд╣ рдЙрджреНрдзрд░рдг рдореЗрд░реЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд╢-рдмрд▓реНрдм рдХрд╛ рдХреНрд╖рдг рдерд╛ред

рдкреИрд░рд╛рдореАрдЯрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ssl рдзреНрд╡рдЬ рд╕реЗ рдЕрд▓рдЧ рд╣реИред рдзреНрд╡рдЬ ssl рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдИ рд╕рд░реНрд╡рд░ рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рд╕реНрд╡рд┐рдЪ рдСрди рдФрд░ рдСрдл рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдзреНрд╡рдЬ ipv6only рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдкреНрд░рддрд┐ рдкреЛрд░реНрдЯ (рдФрд░ рдкрддреЗ) рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдПрдХ рд╣реА рд╕реБрдирдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдореЗрд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ рдФрд░ рдпрд╣ рдЗрд╕ рдкреЛрд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕рд░реНрд╡рд░ рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рджреЛ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирдЧрдиреЗрдХреНрд╕ рдбреЗрдорди рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рдЕрдкрдиреА рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдореЗрдВ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд▓рд┐рдЦреЗрдЧрд╛

рдЕрднреА рднреА рдореМрдЬреВрдж рд╣реИ, рд╢реБрджреНрдз рдЕрдЬрдЧрд░ рдХреЗ рдмрд╛рдж, рдлреЗрдВрдХреА рдЧрдИ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдореЗрдВ рдХрд╣реАрдВ рддреНрд░реБрдЯрд┐

рдЗрд╕ рд▓рд╛рдЗрди рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдирд╛ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдХреЛ рдмрдирд╛рддрд╛ рд╣реИ

server {
        listen  443 ssl http2;
#        listen [::]:443 ssl http2 ipv6only=on;


рдХрдИ рдбреЛрдореЗрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ

рдХреЗ рдмрдЬрд╛рдп
рд╕реБрдиреЛ [::]: 443 рдПрд╕рдПрд╕рдПрд▓ http2 ipv6only = on;

рдЙрдкрдпреЛрдЧ
рдЙрджрд╛рд╣рд░рдг рд╕реБрдиреЛред com: 443 рдПрд╕рдПрд╕рдПрд▓ http2 ipv6only = on;

рдЕрдкрдиреЗ рд╕рднреА рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рдореЗрдВ listen рдирд┐рд░реНрджреЗрд╢ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред

рдпрд╣ рддреНрд░реБрдЯрд┐ рддрдм рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ рдЬрдм рдПрдХ рд╣реА рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдбреЛрдореЗрди рдкрд░ рджреЛ рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рд╕реБрдирдиреЗ рд╣реЛрддреЗ рд╣реИрдВред
рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╢реНрд░реЛрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдЯ-рдЙрдкрд▓рдмреНрдз рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЕрдкрдиреА рд╕рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдиреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ 443 рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реНрд░реЛрддрд╛ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдмрдирд╛рдпрд╛ред

рдпрджрд┐ рдЖрдк рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдХреА рдЕрдк-рдЯреВ-рдбреЗрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЗрдВ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рдЙрдиреНрд╣реЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред

рд╕рд╛рд╣рд╕реА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрдХ рдЕрдХреЗрд▓рд╛ рдЦреЛрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЛ рд╣рд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЙрдирдХреЗ рдкрд╛рд╕ ipv6only=on рдХрд╣реАрдВ рдФрд░ рди рд╣реЛред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ reuseport рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд┐рдЧ рдореЗрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╡рд╣реА рддреНрд░реБрдЯрд┐ / рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реЗрдЧреАред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдБ, рдореИрдВ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдБред рдиреЗрдЧрдиреЗрдХреНрд╕ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, listen рд▓рд┐рдП рдХрдИ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ ipv6only рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ "рдпрд╣ рдХреЗрд╡рд▓ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред" рдХреНрдпрд╛ рдпрд╣ рд░реЗрдЦрд╛ рдХреЗрд╡рд▓ рд╢реЗрд╖ рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рдЧрд╛рдпрдм рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдКрдкрд░ рдХреА рдУрд░ рдареАрдХ рдХрд░рдирд╛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХреЛрд░реНрд╕ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ; рдпрд╣ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ, рд╡реИрд╕реЗ рднреАред

рдореИрдВ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд▓рд┐рдирдХреНрд╕ рд╕реЙрдХреЗрдЯреНрд╕ рдХрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рдЙрдЪрд┐рдд рд░рд╛рдп рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпреЛрдВ рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдПрдХ рдХрд╛рд░рдг рд╣реИред

рд╢рд╛рдпрдж рдпрд╣ рдкреЛрд╕реНрдЯ рдорджрдж рдХрд░рддреА рд╣реИ: https://www.nginx.com/blog/socket-sharding-nginx-release-1/9/9

рдореБрдЭреЗ рдХреНрдпрд╛ рдкрддрд╛ рд╣реИ рдХрд┐, ipv6only , reuseport рдХреА рддрд░рд╣ рднреА рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рд╢реНрд░реЛрддрд╛ рдХреЗ рдкрд╛рд╕ рд╣реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдХреНрдпреЛрдВ рдпрд╣ рд╕рдВрдпреЛрдЧрд╡рд╢ (рдмреЗрд╣рддрд░ рд╢рдмреНрдж рдХреА рдХрдореА рдХреЗ рд▓рд┐рдП) ipv6only рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реИ, рдореБрдЭреЗ рдХреЛрдИ рд╕реБрд░рд╛рдЧ рдирд╣реАрдВ рд╣реИред

рдлрд┐рд░ рднреА, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рддреЛ ipv6only=on рдЬреЛрдбрд╝рдирд╛ рдереЛрдбрд╝рд╛ рд╡реНрдпрд░реНрде рд╣реИред

рдпрд╣ рдЕрдм nginx 1.3.4 рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдЬреЛ 2012 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ EOL рд╣реИред

рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо, рд╢рд╛рдпрдж рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ nginx < 1.3.4 рд╣реЛрдиреЗ рдкрд░ рд╣реА рдЬреЛрдбрд╝реЗрдВред

рд╣рдо рдЗрд╕реЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдореЗрдВ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рд╣рдо рдПрдХ рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдореМрдЬреВрджрд╛ рдбрд┐рдлреЙрд▓реНрдЯ рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ, рдпрд╛ рдЕрдиреНрдп рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рд╕реЗ рдХреБрдЫ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢ рднреА рд╕реБрдиреЗрдВред рдпрд╣ рд╕рд░реНрдмреЛрдЯ рдХреЛ рддрдм рднреА рдХрд╛рдо рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ, рдЬрдм Nginx рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдпрд╛ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреЛрд░реНрдЯ рдЕрдЧреНрд░реЗрд╖рдг рдХреЗ рдкреАрдЫреЗ рд╣реЛред рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд┐рдП рдЧрдП рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рд╕реЗ ipv6only=on рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рд▓реЗрдЦрди рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рд╣рдо рд╕рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рд╣реА рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╣рдореЗрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╕рднреА рд╕рд░реНрд╡рд░ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреМрди рд╕реЗ рд╡рд┐рдХрд▓реНрдк рджреЛрд╣рд░рд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЬрд┐рд╕реЗ рд╣рдо рдХреЗрд╡рд▓ рдЗрд╕ рддрд░рд╣ рдХреЗ рдореБрджреНрджреЛрдВ рдкрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬрддреЗ рд╣реИрдВред

рд╕рд╛рднрд╛рд░ @joohoi
рдЖрдкрдХреЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдФрд░ рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП Ubuntu 20 рдкрд░ nginx рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛: 1.18.0

рдореЗрд░реЗ рдкрд╛рд╕ 2 рд╡реАрдкреАрдПрд╕ рд╣реИрдВ: 1 рдЙрдмрдВрдЯреВ рд░рди рд╣реИ рдирд┐рдЧрдиреЗрдХреНрд╕ 1.10 рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░рд╛ рд╕реЗрдВрдЯреЛрд╕ рд░рди рдирдЧреАрдиреЗрдХреНрд╕ 1.16 рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдпрд╣ рддреНрд░реБрдЯрд┐ рд╣реИред рдЕрдЬреАрдм

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

GEEK-WALKER picture GEEK-WALKER  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bmw picture bmw  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

eonwhite picture eonwhite  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Mattia98 picture Mattia98  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

marceliwac picture marceliwac  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ