# จัดการ SSL Certificates สำหรับ HTTPS

เริ่มต้นโดเมนทดสอบ (ลงท้ายด้วย *.cdn.byteark.com) จะมีและเปิดใช้งาน HTTPS อยู่แล้ว แต่หากผู้ใช้มีการระบุโดเมนที่จะใช้งาน จะต้องทำการระบุ HTTPS Certificate ด้วย ซึ่งสามารถเลือกได้ 2 วิธีดังนี้

  • ใช้ SSL Certificates จาก Fleet Cert Manager (ออกโดย Let's Encrypt, ZeroSSL, Google Public CA)
  • ใช้ SSL Certificatres ที่สร้างขึ้นเอง

TIP

การอัพเดท ​SSL Certificates จะมีผลหลังจากปรับเปลี่ยนแล้วประมาณ​ 1-2 นาที

# ใช้ SSL Certificates จาก Byteark Cert Manager

Web CDN ของระบบ ByteArk Fleet (CDN) สามารถสร้างใบรับรอง SSL ด้วย Let's Encrypt, ZeroSSL หรือ Google Public CA ผ่าน ACME Protocol ได้ โดยมีขั้นตอนดังนี้

  1. เข้าสู่ระบบ ByteArk Fleet (https://fleet.byteark.com (opens new window)) แล้วเลือก Web CDN Service ที่ต้องการสร้างใบรับรอง SSL
  2. เลือกเมนู SSL/TLS ภายใต้ Service นั้นๆ โดยในส่วนของ SERVICE'S CERTIFICATES ให้กดปุ่ม Create from BCM(ACME)
    • กรอกชื่อ domain หรือ sub domain และอีเมล หากต้องการหลายชื่อให้คั่นระหว่างชื่อโดเมนด้วย ,
    • เลือก certificate authority ที่ต้องการ
      • หากเลือกใช้งาน Google Public CA ท่านจะต้องกรอก EAB Secret ในครั้งแรกของการใช้อีเมลดังกล่าวในการขอ SSL Certificate, รายละเอียดการขอ EAB Secret จาก Google Cloud ดูได้ที่ Google tutorial (https://cloud.google.com/certificate-manager/docs/public-ca-tutorial (opens new window)), และนำมากรอก HMAC(b64MacKey) และ Key ID(keyId)
    • กดปุ่ม Get Certificate แล้วทำการรอการสร้างใบรับรอง SSL โดยเมื่อสร้างสำเร็จแล้วจะปรากฏใบรับรองแสดงอยู่ในรายการ SERVICE'S CERTIFICATES
  3. ในรายการ SERVICE'S CERTIFICATES กดปุ่ม Attach บนรายการใบรับรองล่าสุดที่เพิ่งสร้างมา

# ใช้ SSL Certificates ที่สร้างขึ้นเอง

คุณสามารถเพิ่มใบรับรอง SSL ที่มีอยู่แล้วเข้าสู่ระบบ Web CDN ของ ByteArk Fleet (CDN) โดยมีขั้นตอนดังนี้

  1. เข้าสู่ระบบ ByteArk Fleet (https://fleet.byteark.com (opens new window)) แล้วเลือก Web CDN Service ที่ต้องการเพิ่มใบรับรอง SSL ที่มีอยู่แล้ว
  2. เลือกเมนู SSL/TLS ภายใต้ Service นั้นๆ โดยในส่วนของ SSL CERTIFICATES ให้กดปุ่ม Import
  3. กรอกข้อมูล Key และ Certificate ของใบรับรอง SSL ที่คุณมี
  4. กดปุ่ม Submit เพื่อเพิ่มใบรับรอง SSL
  5. ในรายการ SERVICE'S CERTIFICATES กดปุ่ม Attach บนรายการใบรับรองล่าสุดที่เพิ่งเพิ่มมา

TIP

สามารถสร้างหรือนำเข้าใบรับรองได้มากกว่า 1 ใบรับรอง ต่อหนึ่ง Service และเลือกใช้งานได้ ใบรับรองที่ถูกใช้งานอยู่จะแสดงอยู่ในรายการ CURRENT SSL/TLS CERTIFICATE

# การขอ SSL Certificates จาก Byteark Cert Manager โดยใช้ชาเลนจ์ DNS-01

โดยปกติแล้ว Byteark Cert Manager จะทำการขอ certificates โดยผ่านชาเลนจ์รูปแบบ HTTP-01 ในบางกรณีอาจมีความจำเป็นจะต้องขอโดยใช้ชาเลนจ์ DNS-01 (เช่น ต้องการออก wildcard certificate) ปัจจุบันระบบรองรับการใช้งานร่วมกับ DNS Provider Cloudflare และ AWS Route 53 เท่านั้น โดยมีขั้นตอนดังนี้

  1. เข้าสู่ระบบ ByteArk Fleet (https://fleet.byteark.com (opens new window)) แล้วเลือก Web CDN Service ที่ต้องการสร้างใบรับรอง SSL
  2. เลือกเมนู SSL/TLS ภายใต้ Service นั้นๆ โดยในส่วนของ SERVICE'S CERTIFICATES ให้กดปุ่ม Create from BCM(ACME)
  3. ใส่ข้อมูลเบื้องต้นสำหรับการออก SSL Certificate, ตามหัวข้อ ใช้ SSL Certificates จาก Byteark Cert Manager
  4. กดแสดงการตั้งค่าเพิ่มเติม Validation Method (ACME Challenge) Setting
  • สำหรับโดเมนที่จัดการโดย Cloudflare
    • เลือก Cloudflare จากตัวเลือกของช่อง DNS-01
    • สร้าง API token จาก Cloudflare โดยอาจทำได้หลายรูปแบบโดยจะแนะนำวิธีดังต่อไปนี้
      1. สร้าง token ที่มีสิทธ์ Zone/Zone/Read และ Zone/DNS/Edit บน Zone ที่มี domain ที่ต้องการอยู่
      2. นำมากรอกในช่อง DNS API Token ช่องเดียวเท่านั้น
  • สำหรับโดเมนที่จัดการโดย AWS Route 53 (Hosted Zone)
    • เลือก AWS Route 53 จากตัวเลือกของช่อง DNS-01
    • นำ Access Key, Secret, Hosted Zone ID, Region มากรอกให้ครบทุกช่อง โดยที่ Access Key แนะนำให้สร้างจาก IAM User ที่มี IAM Policy ตาม JSON ด้านล่างนี้เพื่อความปลอดภัยสูงสุด (สามารถนำไปใช้ได้โดยแก้ <hostedzoneID> และ <example-domain.com>)
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "route53:GetChange",
          "Resource": "arn:aws:route53:::change/*"
        },
        {
          "Effect": "Allow",
          "Action": "route53:ListHostedZonesByName",
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "route53:ListResourceRecordSets"
          ],
          "Resource": [
            "arn:aws:route53:::hostedzone/<hostedzonedID>"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "route53:ChangeResourceRecordSets"
          ],
          "Resource": [
            "arn:aws:route53:::hostedzone/<hostedzonedID>"
          ],
          "Condition": {
            "ForAllValues:StringEquals": {
              "route53:ChangeResourceRecordSetsNormalizedRecordNames": [
                "_acme-challenge.<example-domain.com>"
              ],
              "route53:ChangeResourceRecordSetsRecordTypes": [
                "TXT"
              ]
            }
          }
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
  1. กดปุ่ม Get Certificate แล้วทำการรอการสร้างใบรับรอง SSL โดยเมื่อสร้างสำเร็จแล้วจะปรากฏใบรับรองแสดงอยู่ในรายการ SERVICE'S CERTIFICATES