ตัวอย่าง: ใบรับรอง SSL - สร้างคีย์และ CSR

สำคัญ: ตัวอย่างนี้มีจุดมุ่งหมายเพื่อให้คำแนะนำทั่วไปแก่ผู้เชี่ยวชาญด้าน IT ที่มีประสบการณ์เกี่ยวกับข้อกำหนดและการกำหนดค่า SSL ขั้นตอนที่อธิบายไว้ในบทความนี้เป็นเพียงหนึ่งในวิธีการที่มีอยู่มากมายที่คุณสามารถใช้เพื่อสร้างไฟล์ที่จำเป็นได้ กระบวนการที่อธิบายไว้ในที่นี้ควรถือเป็นตัวอย่าง ไม่ใช่เป็นคำแนะนำ


เมื่อคุณกำหนดค่า Tableau Server ให้ใช้การเข้ารหัส Secure Sockets Layer (SSL) จะช่วยให้มั่นใจได้ว่าการเข้าถึงเซิร์ฟเวอร์นั้นปลอดภัย และข้อมูลที่ส่งระหว่าง Tableau Server และ Tableau Desktop ได้รับการปกป้อง

Tableau Server ใช้ Apache ซึ่งจะมี OpenSSL(ลิงก์จะเปิดในหน้าต่างใหม่) ด้วย คุณสามารถใช้ชุดเครื่องมือ OpenSSL เพื่อสร้างไฟล์คีย์และคำขอลงนามใบรับรอง (CSR) ได้ จากนั้นจึงนำไปใช้เพื่อรับใบรับรอง SSL ที่ลงนามแล้ว

หมายเหตุ: ตั้งแต่ Tableau Server เวอร์ชัน 2021.3.26, 2021.4.21, 2022.1.17, 2022.3.9, 2023.1.5 และขึ้นไป Tableau Server จะเรียกใช้ OpenSSL 3.1

ขั้นตอนในการสร้างคีย์และ CSR

หากต้องการกำหนดค่า Tableau Server ให้ใช้ SSL คุณต้องมีใบรับรอง SSL หากต้องการรับใบรับรอง SSL ให้ทำตามขั้นตอนดังนี้

  1. ตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า OpenSSL (ไม่บังคับ)
  2. สร้างไฟล์คีย์
  3. สร้างคำขอลงนามใบรับรอง (CSR)
  4. ส่ง CSR ไปยังผู้ออกใบรับรอง (CA) เพื่อรับใบรับรอง SSL
  5. ใช้คีย์และใบรับรองเพื่อกำหนดค่า Tableau Server ให้ใช้ SSL

คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับ หน้าคำถามที่พบบ่อยเกี่ยวกับ SSL(ลิงก์จะเปิดในหน้าต่างใหม่) บนเว็บไซต์ Apache Software Foundation ได้

กำหนดค่าใบรับรองสำหรับชื่อโดเมนหลายชื่อ

Tableau Server อนุญาต SSL สำหรับหลายโดเมน ในการตั้งค่าสภาพแวดล้อมนี้ คุณต้องแก้ไขไฟล์การกำหนดค่า OpenSSL, openssl.conf และกำหนดค่าใบรับรอง Subject Alternative Name (SAN) บน Tableau Server โปรดดู สำหรับใบรับรอง SAN: แก้ไขไฟล์การกำหนดค่า OpenSSL ด้านล่าง

ตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า OpenSSL (ไม่บังคับ)

หากต้องการเลี่ยงการใช้อาร์กิวเมนต์ -config กับทุกๆ การใช้ openssl.exe คุณสามารถใช้ตัวแปรสภาพแวดล้อม OPENSSL_CONF เพื่อให้แน่ใจว่ามีการใช้ไฟล์การกำหนดค่าที่ถูกต้องได้ และการเปลี่ยนแปลงการกำหนดค่าทั้งหมดที่ทำในขั้นตอนต่อมาในบทความนี้จะให้ผลลัพธ์ตามที่คาดหวัง (เช่น คุณต้องตั้งค่าตัวแปรสภาพแวดล้อมเพื่อเพิ่ม SAN ให้กับใบรับรองของคุณ)

เปิดข้อความแจ้งคำสั่งในฐานะผู้ดูแลระบบ และเรียกใช้คำสั่งต่อไปนี้:

set OPENSSL_CONF=c:\Program Files\Tableau\Tableau Server\packages\apache.<version_code>\conf\openssl.cnf

หมายเหตุ: เมื่อตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า Open SSL อย่าใส่พาธไฟล์โดยใช้เครื่องหมายคำพูด

สร้างคีย์

สร้างไฟล์คีย์ที่คุณจะใช้สร้างคำขอลงนามใบรับรอง

  1. เปิดข้อความแจ้งคำสั่งในฐานะผู้ดูแลระบบ แล้วไปที่ไดเรกทอรี Apache สำหรับ Tableau Server ตัวอย่างเช่น ให้เรียกใช้คำสั่งดังต่อไปนี้:

    cd C:\Program Files\Tableau\Tableau Server\packages\apache.<version_code>\bin

  2. เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างไฟล์คีย์:

    openssl.exe genrsa -out <yourcertname>.key 4096

    หมายเหตุ:
    • คำสั่งนี้ใช้ความยาว 4096 บิตสำหรับคีย์ คุณควรเลือกความยาวบิตที่อย่างน้อย 2048 บิต เนื่องจากการสื่อสารที่เข้ารหัสด้วยความยาวบิตที่สั้นกว่านั้นมีความปลอดภัยน้อยกว่า หากไม่ระบุค่า จะมีการใช้ 512 บิต
    • หากต้องการสร้างคีย์ PKCS#1 RSA ด้วย Tableau Server เวอร์ชัน 2021.3.26, 2021.4.21, 2022.1.17, 2022.3.9, 2023.1.5 ขึ้นไป คุณต้องใช้ตัวเลือกเพิ่มเติม -traditional เมื่อเรียกใช้คำสั่ง openssl genrsa โดยอิงตาม OpenSSL 3.1 หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกสี โปรดดู https://www.openssl.org/docs/man3.1/man1/openssl-rsa.html(ลิงก์จะเปิดในหน้าต่างใหม่)

สร้างคำขอลงนามใบรับรองเพื่อส่งไปยังผู้ออกใบรับรอง

ใช้ไฟล์คีย์ที่คุณสร้างในขั้นตอนข้างต้นเพื่อสร้างคำขอลงนามใบรับรอง (CSR) คุณส่ง CSR ไปยังผู้ออกใบรับรอง (CA) เพื่อขอรับใบรับรองที่ลงนาม

สำคัญ: หากคุณต้องการกำหนดค่าใบรับรอง SAN เพื่อใช้ SSL สำหรับหลายโดเมน ขั้นแรกให้ทำตามขั้นตอนใน สำหรับใบรับรอง SAN: แก้ไขไฟล์การกำหนดค่า OpenSSL ด้านล่าง แล้วกลับมาที่นี่เพื่อสร้าง CSR

  1. เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างไฟล์คำขอลงนามใบรับรอง (CSR):

    openssl.exe req -new -key yourcertname.key -out yourcertname.csr

    หากคุณไม่ได้ตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า OpenSSL OPENSSL_CONF คุณอาจเห็นข้อความใดข้อความหนึ่งต่อไปนี้:

    • ข้อความแสดงข้อผิดพลาดเกี่ยวกับข้อมูลการกำหนดค่าที่ไม่สามารถโหลดได้ ในกรณีนี้ ให้พิมพ์คำสั่งด้านบนอีกครั้งด้วยพารามิเตอร์ต่อไปนี้: -config ..\conf\openssl.cnf

    • คำเตือนว่าไม่พบไดเรกทอรี /usr/local/ssl ไดเรกทอรีนี้ไม่มีอยู่ใน Windows และคุณสามารถเพิกเฉยต่อข้อความนี้ได้ ไฟล์ถูกสร้างขึ้นเรียบร้อยแล้ว

    ในการตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า OpenSSL โปรดดูส่วน ตั้งค่าตัวแปรสภาพแวดล้อมการกำหนดค่า OpenSSL (ไม่บังคับ) ในบทความนี้

  2. เมื่อได้รับแจ้ง ให้ป้อนข้อมูลที่จำเป็น

    หมายเหตุ: สำหรับชื่อตัวไป ให้ป้อนชื่อ Tableau Server ชื่อ Tableau Server คือ URL ที่จะใช้เพื่อเข้าถึง Tableau Server ตัวอย่างเช่น หากคุณเข้าถึง Tableau Server โดยพิมพ์ tableau.example.com ในแถบที่อยู่ของเบราว์เซอร์ของคุณ จากนั้น tableau.example.com จะเป็นชื่อทั่วไป หากชื่อทั่วไปไม่สามารถแก้ไขชื่อเซิร์ฟเวอร์ได้ ข้อผิดพลาดจะเกิดขึ้นเมื่อเบราว์เซอร์หรือ Tableau Desktop พยายามเชื่อมต่อกับ Tableau Server

ส่ง CSR ไปยังผู้ออกใบรับรองเพื่อรับใบรับรอง SSL

ส่ง CSR ไปยังผู้ออกใบรับรองเชิงพาณิชย์ (CA) เพื่อขอใบรับรองดิจิทัล หากต้องการข้อมูลเพิ่มเติม โปรดดูบทความ Wikipedia ผู้ออกใบรับรอง(ลิงก์จะเปิดในหน้าต่างใหม่) และบทความที่เกี่ยวข้องใดๆ ที่ช่วยให้คุณตัดสินใจได้ว่าจะใช้ CA ใด

ใช้คีย์และใบรับรองเพื่อกำหนดค่า Tableau Server

เมื่อคุณมีทั้งคีย์และใบรับรองจาก CA คุณสามารถกำหนดค่า Tableau Server ให้ใช้ SSL ได้ หากต้องทราบขั้นตอน โปรดดู กำหนดค่า SSL ภายนอก

สำหรับใบรับรอง SAN: แก้ไขไฟล์การกำหนดค่า OpenSSL

ในการติดตั้งมาตรฐานของ OpenSSL ฟีเจอร์บางอย่างจะไม่ถูกเปิดใช้งานโดยค่าเริ่มต้น หากต้องการใช้ SSL กับชื่อโดเมนหลายชื่อ ก่อนที่คุณจะสร้าง CSR ให้ทำตามขั้นตอนเหล่านี้เพื่อแก้ไขไฟล์ openssl.cnf

  1. เปิด Windows Explorer และเรียกดูโฟลเดอร์ Apache conf สำหรับ Tableau Server

    ตัวอย่าง: C:\Program Files\Tableau\Tableau Server\packages\apache.<version_code>\conf

  2. เปิด openssl.cnf ในตัวแก้ไขข้อความและค้นหาบรรทัดต่อไปนี้: req_extensions = v3_req

    อาจมีการใส่ความคิดเห็นด้วยการใส่เครื่องหมายแฮช (#) ที่จุดเริ่มต้นของบรรทัด

    หากบรรทัดนั้นถูกใส่ความคิดเห็น ให้ยกเลิกการใส่ความคิดเห็นโดยลบอักขระ # และเว้นวรรค ออกจากจุดเริ่มต้นของบรรทัด

  3. ย้ายไปที่ส่วน [ v3_req ] ของไฟล์ สองสามบรรทัดแรกมีข้อความต่อไปนี้:

    # Extensions to add to a certificate request
    basicConstraints = CA:FALSE
    keyUsage = nonRepudiation, digitalSignature, keyEncipherment

    หลังจากบรรทัด keyUsage ให้แทรกบรรทัดต่อไปนี้:

    subjectAltName = @alt_names

    หากคุณกำลังสร้างใบรับรอง SAN ที่ลงนามด้วยตนเอง ให้ดำเนินการดังต่อไปนี้เพื่อให้สิทธิ์ใบรับรองในการลงนามในใบรับรอง:

    1. เพิ่ม cRLSign และ keyCertSign ไปยังบรรทัด keyUsage เพื่อให้มีลักษณะเหมือนดังต่อไปนี้: keyUsage = nonRepudiation, digitalSignature, keyEncipherment, cRLSign, keyCertSign

    2. หลังจากบรรทัด keyUsage ให้เพิ่มบรรทัดต่อไปนี้: subjectAltName = @alt_names

  4. ในส่วน [alt_names] ให้ระบุชื่อโดเมนที่คุณต้องการใช้กับ SSL

    DNS.1 = [domain1]
    DNS.2 = [domain2]
    DNS.3 = [etc]

    รูปภาพต่อไปนี้แสดงผลลัพธ์ที่ไฮไลต์ พร้อมข้อความตัวยึดตำแหน่งที่คุณจะแทนที่ด้วยชื่อโดเมนของคุณ

  5. บันทึกและปิดไฟล์

  6. ทำขั้นตอนนี้ในส่วน สร้างคำขอลงนามใบรับรองเพื่อส่งไปยังผู้ออกใบรับรอง ด้านบน

ข้อมูลเพิ่มเติม

หากคุณต้องการใช้ OpenSSL เวอร์ชันอื่น คุณสามารถดาวน์โหลดได้จาก Open SSL สำหรับ Windows(ลิงก์จะเปิดในหน้าต่างใหม่)