SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдЯреЛрдореЗрд╢рдирдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ

рдмрд░реНтАНрдпрд╛рдЪрджрд╛ рдЖрдореНрд╣рд╛рд▓рд╛ SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╕рд╣ рдХрд╛рдо рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрддреЗ. рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓рдХреНрд╖рд╛рдд рдареЗрд╡реВрдпрд╛ (рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдг рдмрд╛рдмрддреАрдд рдмрд╣реБрддреЗрдХрд╛рдВрд╕рд╛рдареА).

  • рдПрдХ рдкреНрд░рджрд╛рддрд╛ рд╢реЛрдзрд╛ (рдПрдХ рд╕рд╛рдЗрдЯ рдЬрд┐рдереЗ рдЖрдореНрд╣реА SSL рдЦрд░реЗрджреА рдХрд░реВ рд╢рдХрддреЛ).
  • CSR рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рд╛.
  • рддреЗ рддреБрдордЪреНрдпрд╛ рдкреНрд░рджрд╛рддреНрдпрд╛рд▓рд╛ рдкрд╛рдард╡рд╛.
  • рдбреЛрдореЗрди рдорд╛рд▓рдХреА рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рд╛.
  • рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдорд┐рд│рд╡рд╛.
  • рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдлреЙрд░реНрдордордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рд╛ (рдкрд░реНрдпрд╛рдпреА). рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, pem рдкрд╛рд╕реВрди PKCS #12 рдкрд░реНрдпрдВрдд.
  • рд╡реЗрдм рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛.

рддреБрд▓рдиреЗрдиреЗ рд╡реЗрдЧрд╡рд╛рди, рдХреНрд▓рд┐рд╖реНрдЯ рдЖрдгрд┐ рд╕рдордЬрдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдирд╛рд╣реА. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рджрд╣рд╛ рдкреНрд░рдХрд▓реНрдк рдЕрд╕рд▓реНрдпрд╛рд╕ рд╣рд╛ рдкрд░реНрдпрд╛рдп рдпреЛрдЧреНрдп рдЖрд╣реЗ. рдЬрд░ рддреНрдпрд╛рдкреИрдХреА рдЕрдзрд┐рдХ рдЕрд╕рддреАрд▓ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рдХрд┐рдорд╛рди рддреАрди рд╡рд╛рддрд╛рд╡рд░рдг рдЕрд╕рддреАрд▓ рддрд░? рдХреНрд▓рд╛рд╕рд┐рдХ рджреЗрд╡ - рд╕реНрдЯреЗрдЬрд┐рдВрдЧ - рдЙрддреНрдкрд╛рджрди. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рдмрджреНрджрд▓ рд╡рд┐рдЪрд╛рд░ рдХрд░рдгреЗ рдпреЛрдЧреНрдп рдЖрд╣реЗ. рдореА рд╕рдорд╕реНрдпреЗрдордзреНрдпреЗ рдереЛрдбреЗ рдЦреЛрд▓рд╡рд░ рдЬрд╛рдгреНрдпрд╛рдЪрд╛ рдЖрдгрд┐ рдПрдХ рдЙрдкрд╛рдп рд╢реЛрдзрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреЗрддреЛ рдЬреНрдпрд╛рдореБрд│реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЗ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдд рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд▓рд╛рдЧрдгрд╛рд░рд╛ рд╡реЗрд│ рдХрдореА рд╣реЛрдИрд▓. рд▓реЗрдЦрд╛рдд рд╕рдорд╕реНрдпреЗрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЖрдгрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрддреАрд╕рд╛рдареА рдПрдХ рд▓рд╣рд╛рди рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ рдЕрд╕реЗрд▓.

рдорд▓рд╛ рдЖрдЧрд╛рдК рдЖрд░рдХреНрд╖рдг рдХрд░реВ рджреНрдпрд╛: рдЖрдордЪреНрдпрд╛ рдХрдВрдкрдиреАрдЪреЗ рдореБрдЦреНрдп рд╕реНрдкреЗрд╢рд▓рд╛рдпрдЭреЗрд╢рди рдореНрд╣рдгрдЬреЗ .net, рдЖрдгрд┐ рддреНрдпрд╛рдиреБрд╕рд╛рд░, IIS рдЖрдгрд┐ рдЗрддрд░ рд╡рд┐рдВрдбреЛрдЬ рд╕рдВрдмрдВрдзрд┐рдд рдЙрддреНрдкрд╛рджрдиреЗ. рдореНрд╣рдгреВрди, ACME рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐ рддреНрдпрд╛рд╕рд╛рдареАрдЪреНрдпрд╛ рд╕рд░реНрд╡ рдХреНрд░рд┐рдпрд╛рдВрдЪреЗ рд╡рд░реНрдгрди Windows рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди рджреЗрдЦреАрд▓ рдХреЗрд▓реЗ рдЬрд╛рдИрд▓.

рдХреЛрдгрд╛рд╕рд╛рдареА рд╣реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ рдЖрдгрд┐ рдХрд╛рд╣реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛

рдХрдВрдкрдиреА рдХреЗ рд▓реЗрдЦрдХрд╛рдиреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗрд▓реЗ. URL (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде): company.tld

рдкреНрд░реЛрдЬреЗрдХреНрдЯ X рд╣рд╛ рдЖрдордЪреНрдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдкреИрдХреА рдПрдХ рдЖрд╣реЗ, рдЬреНрдпрд╛рд╡рд░ рдХрд╛рдо рдХрд░рдд рдЕрд╕рддрд╛рдирд╛ рдореА рдпрд╛ рдирд┐рд╖реНрдХрд░реНрд╖рд╛рд╡рд░ рдкреЛрд╣реЛрдЪрд▓реЛ рдХреА рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╕рд╣ рдХрд╛рдо рдХрд░рддрд╛рдирд╛ рдЖрдореНрд╣рд╛рд▓рд╛ рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рд╡реЗрд│ рдмрдЪрдд рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ рд╡рд╛рдЯрдЪрд╛рд▓ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдд рдЪрд╛рд░ рд╡рд╛рддрд╛рд╡рд░рдг рдЖрд╣реЗрдд: рджреЗрд╡, рдЪрд╛рдЪрдгреА, рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдЖрдгрд┐ рдЙрддреНрдкрд╛рджрди. рджреЗрд╡ рдЖрдгрд┐ рдЪрд╛рдЪрдгреА рдЖрдордЪреНрдпрд╛ рдмрд╛рдЬреВрдиреЗ рдЖрд╣реЗрдд, рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдЖрдгрд┐ рдЙрддреНрдкрд╛рджрди рдХреНрд▓рд╛рдпрдВрдЯрдЪреНрдпрд╛ рдмрд╛рдЬреВрдиреЗ рдЖрд╣реЗрдд.

рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдореНрд╣рдгрдЬреЗ рддреНрдпрд╛рдд рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рдореЙрдбреНрдпреВрд▓реНрд╕ рдЖрд╣реЗрдд рдЬреЗ рд╕рдмрдбреЛрдореЗрди рдореНрд╣рдгреВрди рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗрдд.

рдореНрд╣рдгрдЬреЗрдЪ, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЦрд╛рд▓реАрд▓ рдЪрд┐рддреНрд░ рдЖрд╣реЗ:

рджреЗрд╡
рдЪрд╛рдЪрдгреА
рд╕реНрдЯреЗрдЬрд┐рдВрдЧ
рдЙрддреНрдкрд╛рджрди

projectX.dev.company.tld
projectX.test.company.tld
staging.projectX.tld
projectX.tld

module1.projectX.dev.company.tld
module1.projectX.test.company.tld
module1.staging.projectX.tld
module1.projectX.tld

module2.projectX.dev.company.tld
module2.projectX.test.company.tld
module2.staging.projectX.tld
module2.projectX.tld

...
...
...
...

moduleN.projectX.dev.company.tld
moduleN.projectX.test.company.tld
moduleN.staging.projectX.tld
moduleN.projectX.tld

рдЙрддреНрдкрд╛рджрдирд╛рд╕рд╛рдареА, рдЦрд░реЗрджреА рдХреЗрд▓реЗрд▓реЗ рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ, рдпреЗрдереЗ рдХреЛрдгрддреЗрд╣реА рдкреНрд░рд╢реНрди рдЙрджреНрднрд╡рдд рдирд╛рд╣реАрдд. рдкрд░рдВрддреБ рд╣реЗ рдХреЗрд╡рд│ рд╕рдмрдбреЛрдореЗрдирдЪреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рд╕реНрддрд░рд╛рд╡рд░рдЪ рдХрд╡реНрд╣рд░ рдХрд░рддреЗ. рддреНрдпрд╛рдиреБрд╕рд╛рд░, *.projectX.tld рд╕рд╛рдареА рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЕрд╕рд▓реНрдпрд╛рд╕, рддреЗ staging.projectX.tld рд╕рд╛рдареА рдХрд╛рд░реНрдп рдХрд░реЗрд▓, рдкрд░рдВрддреБ module1.staging.projectX.tld рд╕рд╛рдареА рдирд╛рд╣реА. рдкрдг рддрд░реАрд╣реА рдорд▓рд╛ рд╡реЗрдЧрд│реЗ рд╡рд┐рдХрдд рдШреНрдпрд╛рдпрдЪреЗ рдирд╛рд╣реА.

рдЖрдгрд┐ рд╣реЗ рдХреЗрд╡рд│ рдПрдХрд╛ рдХрдВрдкрдиреАрдЪреНрдпрд╛ рдПрдХрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╣реЗ. рдЖрдгрд┐, рдЕрд░реНрдерд╛рддрдЪ, рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдкреНрд░рдХрд▓реНрдк рдЖрд╣реЗрдд.

рдкреНрд░рддреНрдпреЗрдХрд╛рдиреЗ рдпрд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рдЪреА рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░рдгреЗ рдпрд╛рд╕рд╛рд░рдЦреА рджрд┐рд╕рддрд╛рдд:

  • рдЕрд▓реАрдХрдбреЗ Google рдиреЗ SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрдЪрд╛ рдХрдорд╛рд▓ рд╡реИрдзрддрд╛ рдХрд╛рд▓рд╛рд╡рдзреА рдХрдореА рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рд▓рд╛ рдЖрд╣реЗ. рд╕рд░реНрд╡ рдкрд░рд┐рдгрд╛рдорд╛рдВрд╕рд╣.
  • рдкреНрд░рдХрд▓реНрдк рдЖрдгрд┐ рд╕рдВрдкреВрд░реНрдг рдХрдВрдкрдиреАрдЪреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд рдЧрд░рдЬрд╛рдВрд╕рд╛рдареА SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рджреЗрдЦрд░реЗрдЦ рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд▓рдн рдХрд░рд╛.
  • рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд░реЗрдХреЙрд░реНрдбрдЪреЗ рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдЪрдпрди, рдЬреЗ DNS рдЖрдгрд┐ рддреНрдпрд╛рдирдВрддрд░рдЪреНрдпрд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдиреВрддрдиреАрдХрд░рдгрд╛рдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдбреЛрдореЗрди рдкрдбрддрд╛рд│рдгреАрдЪреНрдпрд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдЕрдВрд╢рддрдГ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рддреЗ рдЖрдгрд┐ рдХреНрд▓рд╛рдпрдВрдЯрдЪреНрдпрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рдЪреА рд╕рдорд╕реНрдпрд╛ рджреЗрдЦреАрд▓ рд╕реЛрдбрд╡рддреЗ. рддрд░реАрд╣реА, рднрд╛рдЧреАрджрд╛рд░/рдкрд░рдлреЙрд░реНрдорд░ рдХрдВрдкрдиреАрдЪреНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реАрд▓ CNAME рддреГрддреАрдп-рдкрдХреНрд╖ рд╕рдВрд╕рд╛рдзрдирд╛рдкреЗрдХреНрд╖рд╛ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣ рдЖрд╣реЗ.
  • рдмрд░рдВ, рд╢реЗрд╡рдЯреА, рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд "рдирд╕рдгреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рдЕрд╕рдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ" рд╣реЗ рд╡рд╛рдХреНрдп рдЙрддреНрддрдо рдкреНрд░рдХрд╛рд░реЗ рдмрд╕рддреЗ.

SSL рдкреНрд░рджрд╛рддрд╛ рдирд┐рд╡рдбрдгреЗ рдЖрдгрд┐ рддрдпрд╛рд░реАрдЪреЗ рдЪрд░рдг

рд╡рд┐рдирд╛рдореВрд▓реНрдп SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз рдкрд░реНрдпрд╛рдпрд╛рдВрдкреИрдХреА, рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдЕрд░ рдЖрдгрд┐ рд▓реЗрдЯрд╕реЗрдирдХреНрд░рд┐рдкреНрдЯрдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛. рдпрд╛рд╕рд╛рдареА (рдЖрдгрд┐ рдХрд╛рд╣реА рдЗрддрд░ рдкреНрд░рдХрд▓реНрдк) DNS рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдЕрд░рджреНрд╡рд╛рд░реЗ рд╣реЛрд╕реНрдЯ рдХреЗрд▓реЗ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдореА рддреНрдпрд╛рдВрдЪреА рдкреНрд░рдорд╛рдгрдкрддреНрд░реЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЪрд╛рд╣рддрд╛ рдирд╛рд╣реА. рддреНрдпрд╛рдореБрд│реЗ letsencrypt рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрдгреНрдпрд╛рдд рдЖрд▓рд╛.
рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рдбреЛрдореЗрди рдорд╛рд▓рдХреАрдЪреА рдкреБрд╖реНрдЯреА рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрдордзреНрдпреЗ рдХрд╛рд╣реА DNS рд░реЗрдХреЙрд░реНрдб (TXT рдХрд┐рдВрд╡рд╛ CNAME) рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рдирдВрддрд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд░рддрд╛рдирд╛ рддреНрдпрд╛рдЪреА рдкрдбрддрд╛рд│рдгреА рдХрд░рдгреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рд▓рд┐рдирдХреНрд╕рдордзреНрдпреЗ рдПрдХ рдЙрдкрдпреБрдХреНрддрддрд╛ рдЖрд╣реЗ - рд╕рд░реНрдЯрдмреЙрдЯ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдВрд╢рддрдГ (рдХрд┐рдВрд╡рд╛ рдкреВрд░реНрдгрдкрдгреЗ рдХрд╛рд╣реА DNS рдкреНрд░рджрд╛рддреНрдпрд╛рдВрд╕рд╛рдареА) рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ. рдкрд╛рд╕реВрди Windows рд╕рд╛рдареА рдЖрдврд│рд▓реЗ рдЖрдгрд┐ рд╕рддреНрдпрд╛рдкрд┐рдд рдХреЗрд▓реЗ ACME рдХреНрд▓рд╛рдпрдВрдЯ рдкрд░реНрдпрд╛рдп рдЬреНрдпрд╛рд╡рд░ рдореА рд╕реЗрдЯрд▓ рдЭрд╛рд▓реЛ WinACME.

рдЖрдгрд┐ рдбреЛрдореЗрдирд╕рд╛рдареА рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЪрд▓рд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрдвреЗ рдЬрд╛рдКрдпрд╛:

SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдЯреЛрдореЗрд╢рдирдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ

рдЖрдореНрд╣рд╛рд▓рд╛ рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдирд┐рд╖реНрдХрд░реНрд╖рд╛рдордзреНрдпреЗ рд╕реНрд╡рд╛рд░рд╕реНрдп рдЖрд╣реЗ, рдореНрд╣рдгрдЬреЗ, рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбреЛрдореЗрди рдорд╛рд▓рдХреАрдЪреА рдкреБрд╖реНрдЯреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз рдкрд░реНрдпрд╛рдп:

  1. DNS рд░реЗрдХреЙрд░реНрдб рд╕реНрд╡рд╣рд╕реНрддреЗ рддрдпрд╛рд░ рдХрд░рд╛ (рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЕрджреНрдпрддрди рд╕рдорд░реНрдерд┐рдд рдирд╛рд╣реА)
  2. acme-dns рд╕рд░реНрд╡реНрд╣рд░ рд╡рд╛рдкрд░реВрди DNS рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рдгреЗ (рдЖрдкрдг рдпрд╛рдмрджреНрджрд▓ рдЕрдзрд┐рдХ рд╡рд╛рдЪреВ рд╢рдХрддрд╛ рдпреЗрдереЗ.
  3. рддреБрдордЪреА рд╕реНрд╡рддрдГрдЪреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░реВрди DNS рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рдгреЗ (рд╕рд░реНрдЯрдмреЙрдЯрд╕рд╛рдареА рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдЕрд░ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдорд╛рдгреЗ).

рдкрд╣рд┐рд▓реНрдпрд╛ рджреГрд╖реНрдЯреАрдХреНрд╖реЗрдкрд╛рдд, рддрд┐рд╕рд░рд╛ рдореБрджреНрджрд╛ рдЕрдЧрджреА рдпреЛрдЧреНрдп рдЖрд╣реЗ, рдкрд░рдВрддреБ DNS рдкреНрд░рджрд╛рддрд╛ рдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд╕ рд╕рдорд░реНрдерди рджреЗрдд рдирд╕рд▓реНрдпрд╛рд╕ рдХрд╛рдп? рдкрд░рдВрддреБ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдорд╛рдиреНрдп рдХреЗрд╕рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдЖрдгрд┐ рд╕рд╛рдорд╛рдиреНрдп рдХреЗрд╕ CNAME рд░реЗрдХреЙрд░реНрдб рдЖрд╣реЗ, рдХрд╛рд░рдг рдкреНрд░рддреНрдпреЗрдХрдЬрдг рддреНрдпрд╛рдВрдирд╛ рд╕рдорд░реНрдерди рджреЗрддреЛ. рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА рдкреЙрдЗрдВрдЯ 2 рд╡рд░ рдерд╛рдВрдмрддреЛ рдЖрдгрд┐ рдЖрдордЪрд╛ ACME-DNS рд╕рд░реНрд╡реНрд╣рд░ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЬрд╛рддреЛ.

ACME-DNS рд╕рд░реНрд╡реНрд╣рд░ рдЖрдгрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗрдЯ рдХрд░рдгреЗ

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдореА 2nd.pp.ua рд╣реЗ рдбреЛрдореЗрди рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рднрд╡рд┐рд╖реНрдпрд╛рдд рддреЗ рд╡рд╛рдкрд░реЗрди.

рдЕрдирд┐рд╡рд╛рд░реНрдп рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕рд░реНрд╡реНрд╣рд░рдиреЗ рдпреЛрдЧреНрдпрд░рд┐рддреНрдпрд╛ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреНрдпрд╛рдЪреНрдпрд╛ рдбреЛрдореЗрдирд╕рд╛рдареА NS рдЖрдгрд┐ A рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЖрдгрд┐ рдорд▓рд╛ рдЖрд▓реЗрд▓рд╛ рдкрд╣рд┐рд▓рд╛ рдЕрдкреНрд░рд┐рдп рдХреНрд╖рдг рдореНрд╣рдгрдЬреЗ рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдЕрд░ (рдХрд┐рдорд╛рди рд╡рд┐рдирд╛рдореВрд▓реНрдп рд╡рд╛рдкрд░ рдореЛрдбрдордзреНрдпреЗ) рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛рдЪ рд╣реЛрд╕реНрдЯрд╕рд╛рдареА NS рдЖрдгрд┐ A рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдд тАЛтАЛтАЛтАЛрдирд╛рд╣реА. рд╣реА рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ рдЕрд╕реЗ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдмрдВрдзрдирд╛рдд рддреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рд╕рдорд░реНрдердирд╛рдиреЗ рдЙрддреНрддрд░ рджрд┐рд▓реЗ рдХреА рддреНрдпрд╛рдВрдЪреЗ рдкреЕрдиреЗрд▓ рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕ рдкрд░рд╡рд╛рдирдЧреА рджреЗрдд тАЛтАЛтАЛтАЛрдирд╛рд╣реА. рдХрд╛рд╣реА рд╣рд░рдХрдд рдирд╛рд╣реА, рдЪрд▓рд╛ рджреЛрди рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░реВрдпрд╛:

acmens.2nd.pp.ua. IN A 35.237.128.147
acme.2nd.pp.ua. IN NS acmens.2nd.pp.ua.

рдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░, рдЖрдкрд▓реНрдпрд╛ рдпрдЬрдорд╛рдирд╛рдиреЗ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ acmens.2nd.pp.ua.

$ ping acmens.2nd.pp.ua
PING acmens.2nd.pp.ua (35.237.128.147) 56(84) bytes of data

рдкрдг acme.2nd.pp.ua рддреНрдпрд╛рдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА, рдХрд╛рд░рдг рддреЗ рд╕реЗрд╡рд╛ рджреЗрдгрд╛рд░рд╛ DNS рд╕рд░реНрд╡реНрд╣рд░ рдЕрджреНрдпрд╛рдк рдЪрд╛рд▓реВ рдирд╛рд╣реА.

рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд, рдЖрдореНрд╣реА ACME-DNS рд╕рд░реНрд╡реНрд╣рд░ рд╕реЗрдЯ рдЕрдк рдЖрдгрд┐ рд▓реЙрдиреНрдЪ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрдвреЗ рдЬрд╛рдК. рддреЗ рдорд╛рдЭреНрдпрд╛ рдЙрдмрдВрдЯреВ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд▓рд╛рдЗрд╡реНрд╣ рд╣реЛрдИрд▓ рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░, рдкрд░рдВрддреБ рдЧреЛрд▓рдВрдЧ рдЙрдкрд▓рдмреНрдз рдЕрд╕реЗрд▓ рддреЗрдереЗ рддреБрдореНрд╣реА рддреЗ рдХреБрдареЗрд╣реА рдЪрд╛рд▓рд╡реВ рд╢рдХрддрд╛. рд╡рд┐рдВрдбреЛрдЬ рджреЗрдЦреАрд▓ рдпреЛрдЧреНрдп рдЖрд╣реЗ, рдкрд░рдВрддреБ рддрд░реАрд╣реА рдореА рд▓рд┐рдирдХреНрд╕ рд╕рд░реНрд╡реНрд╣рд░рд▓рд╛ рдкреНрд░рд╛рдзрд╛рдиреНрдп рджреЗрддреЛ.

рдЖрд╡рд╢реНрдпрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЖрдгрд┐ рдлрд╛рдЗрд▓реНрд╕ рддрдпрд╛рд░ рдХрд░рд╛:

$ mkdir config
$ mkdir data
$ touch config/config.cfg

рдЪрд▓рд╛ рддреБрдордЪреНрдпрд╛ рдЖрд╡рдбрддреНрдпрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░рд╕рд╣ vim рд╡рд╛рдкрд░реВ рдЖрдгрд┐ рдирдореБрдирд╛ config.cfg рдордзреНрдпреЗ рдкреЗрд╕реНрдЯ рдХрд░реВ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди.

рдпрд╢рд╕реНрд╡реА рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА, рд╕рд╛рдорд╛рдиреНрдп рдЖрдгрд┐ рдПрдкреАрдЖрдп рд╡рд┐рднрд╛рдЧ рджреБрд░реБрд╕реНрдд рдХрд░рдгреЗ рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ:

[general]
listen = "0.0.0.0:53"
protocol = "both"
domain = "acme.2nd.pp.ua"
nsname = "acmens.2nd.pp.ua" 
nsadmin = "admin.2nd.pp.ua" 
records = 
    "acme.2nd.pp.ua. A 35.237.128.147",
    "acme.2nd.pp.ua. NS acmens.2nd.pp.ua.",                                                                                                                                                                                                  ]
...
[api]
...
tls = "letsencrypt"
тАж

рддрд╕реЗрдЪ, рдЗрдЪреНрдЫрд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдореНрд╣реА рдореБрдЦреНрдп рд╕реЗрд╡рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд рдбреЙрдХрд░-рдХрдВрдкреЛрдЬ рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░реВ:

version: '3.7'
services:
  acmedns:
    image: joohoi/acme-dns:latest
    ports:
      - "443:443"
      - "53:53"
      - "53:53/udp"
      - "80:80"
    volumes:
      - ./config:/etc/acme-dns:ro
      - ./data:/var/lib/acme-dns

рддрдпрд╛рд░. рддреБрдореНрд╣реА рддреЗ рдЪрд╛рд▓рд╡реВ рд╢рдХрддрд╛.

$ docker-compose up -d

рдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░ рдпрдЬрдорд╛рдирд╛рдиреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреЗ рд╕реБрд░реВ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ acme.2nd.pp.ua, рдЖрдгрд┐ 404 рд╡рд░ рджрд┐рд╕рддреЗ https://acme.2nd.pp.ua

$ ping acme.2nd.pp.ua
PING acme.2nd.pp.ua (35.237.128.147) 56(84) bytes of data.

$ curl https://acme.2nd.pp.ua
404 page not found

рд╣реЗ рджрд┐рд╕рдд рдирд╕рд▓реНрдпрд╛рд╕ - docker logs -f <container_name> рдорджрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рд╕реБрджреИрд╡рд╛рдиреЗ, рдиреЛрдВрджреА рд╡рд╛рдЪрдиреАрдп рдЖрд╣реЗрдд.

рдЖрдореНрд╣реА рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреЗ рд╕реБрд░реВ рдХрд░реВ рд╢рдХрддреЛ. рдкреНрд░рд╢рд╛рд╕рдХ рдореНрд╣рдгреВрди рдкреЙрд╡рд░рд╢реЗрд▓ рдЙрдШрдбрд╛ рдЖрдгрд┐ winacme рдЪрд╛рд▓рд╡рд╛. рдЖрдореНрд╣рд╛рд▓рд╛ рдирд┐рд╡рдбрдгреБрдХреАрдд рд╕реНрд╡рд╛рд░рд╕реНрдп рдЖрд╣реЗ:

  • M: рдирд╡реАрди рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рд╛ (рд╕рдВрдкреВрд░реНрдг рдкрд░реНрдпрд╛рдп)
  • 2:рдореЕрдиреНрдпреБрдЕрд▓ рдЗрдирдкреБрдЯ
  • 2: [dns-01] acme-dns рд╕рд╣ рдкрдбрддрд╛рд│рдгреА рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рд╛ (https://github.com/joohoi/acme-dns)
  • ACME-DNS рд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рд▓рд┐рдВрдХрдмрджреНрджрд▓ рд╡рд┐рдЪрд╛рд░рд▓реЗ рдЕрд╕рддрд╛, рдЙрддреНрддрд░рд╛рдордзреНрдпреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рдЪреА URL (https) рдПрдВрдЯрд░ рдХрд░рд╛. acme-dns рд╕рд░реНрд╡реНрд╣рд░рдЪреА URL: https://acme.2nd.pp.ua

рдУрдкрдирд┐рдВрдЧрдордзреНрдпреЗ, рдХреНрд▓рд╛рдпрдВрдЯ рдПрдХ рд░реЗрдХреЙрд░реНрдб рдЬрд╛рд░реА рдХрд░рддреЛ рдЬреЛ рд╡рд┐рджреНрдпрдорд╛рди DNS рд╕рд░реНрд╡реНрд╣рд░рдордзреНрдпреЗ рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ (рдПрдХ-рд╡реЗрд│ рдкреНрд░рдХреНрд░рд┐рдпрд╛):

[INFO] Creating new acme-dns registration for domain 1nd.pp.ua

Domain:              1nd.pp.ua
Record:               _acme-challenge.1nd.pp.ua
Type:                   CNAME
Content:              c82a88a5-499f-464f-96e4-be7f606a3b47.acme.2nd.pp.ua.
Note:                   Some DNS control panels add the final dot automatically.
                           Only one is required.

SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдЯреЛрдореЗрд╢рдирдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ

рдЖрдореНрд╣реА рдЖрд╡рд╢реНрдпрдХ рд░реЗрдХреЙрд░реНрдб рддрдпрд╛рд░ рдХрд░рддреЛ рдЖрдгрд┐ рддреЗ рдпреЛрдЧреНрдпрд░рд┐рддреНрдпрд╛ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЛ:

SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдЯреЛрдореЗрд╢рдирдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ

$ dig CNAME _acme-challenge.1nd.pp.ua +short
c82a88a5-499f-464f-96e4-be7f606a3b47.acme.2nd.pp.ua.

рдЖрдореНрд╣реА рдкреБрд╖реНрдЯреА рдХрд░рддреЛ рдХреА рдЖрдореНрд╣реА winacme рдордзреНрдпреЗ рдЖрд╡рд╢реНрдпрдХ рдПрдВрдЯреНрд░реА рддрдпрд╛рд░ рдХреЗрд▓реА рдЖрд╣реЗ рдЖрдгрд┐ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реВ рдареЗрд╡рддреЛ:

SSL рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдСрдЯреЛрдореЗрд╢рдирдЪреНрдпрд╛ рджрд┐рд╢реЗрдиреЗ

рдХреНрд▓рд╛рдпрдВрдЯ рдореНрд╣рдгреВрди certbot рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рд╡реЗ рдпрд╛рдЪреЗ рд╡рд░реНрдгрди рдХреЗрд▓реЗ рдЖрд╣реЗ рдпреЗрдереЗ.

рд╣реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реНрдг рдХрд░рддреЗ; рддреБрдореНрд╣реА рддреЗ рд╡реЗрдм рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВрди рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рдЬрд░, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛, рддреБрдореНрд╣реА рд╢реЗрдбреНрдпреБрд▓рд░рдордзреНрдпреЗ рдПрдЦрд╛рджреЗ рдХрд╛рд░реНрдп рджреЗрдЦреАрд▓ рддрдпрд╛рд░ рдХреЗрд▓реЗ, рддрд░ рднрд╡рд┐рд╖реНрдпрд╛рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдиреВрддрдиреАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рд╣реЛрдИрд▓.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛