กำหนดค่า TLS ในเกตเวย์อิสระ

Tableau Server เวอร์ชัน 2022.1.2 ขึ้นไปจะรองรับ TLS สำหรับเกตเวย์อิสระ

ทั้ง Tableau Server และเกตเวย์อิสระของ Tableau Server ใช้โมดูล SSL (mod_ssl) ที่สร้างขึ้นด้วย OpenSSL เพื่อใช้งานฟีเจอร์ Transport Layer Security (TLS)

เนื่องจากความซับซ้อนและลักษณะที่ไม่ความปลอดภัยมากนัก เราจึงแนะนำให้ผู้เชี่ยวชาญด้าน IT ที่คุ้นเคยกับ TLS บน Apache httpd เป็นผู้วางแผนในการกำหนดค่า TLS และการนำไปใช้งาน

ในหลายๆ กรณี เราใช้ "SSL" ในชื่อของสิ่งต่างๆ เพื่อให้เข้ากันได้กับคุณสมบัติหรือแนวคิดในการกำหนดค่า TSM หรือ Apache httpd ที่มีอยู่แล้ว "SSL" ที่จริงแล้วหมายถึงเวอร์ชันโปรโตคอลที่ในขณะนี้ถือว่าไม่ปลอดภัยและล้าสมัยไปแล้ว อย่างไรก็ตาม ชื่อเดิมก็ยังคงใช้อยู่และมักใช้แทนกันได้กับ TLS Tableau Server และเกตเวย์อิสระของ Tableau Server ไม่รองรับโปรโตคอลในยุค SSL

ตัวอย่างการกำหนดค่า TLS

หากต้องการตัวอย่างการกำหนดค่า TLS แบบครบวงจร โปรดดูที่กำหนดค่า SSL/TLS จากตัวกระจายโหลดไปยัง Tableau Server(ลิงก์จะเปิดในหน้าต่างใหม่) ในคู่มือการปรับใช้ทั่วทั้งองค์กร หัวข้อนี้จะแสดงตัวอย่างของการกำหนดค่า TLS บน Tableau Server บน Linux ในการปรับใช้ AWS ทีละขั้นตอน ถึงแม้ว่าตัวอย่างจะอธิบายถึงกระบวนการสำหรับ Linux เอาไว้เท่านั้น แต่ตัวอย่างการกำหนดค่ายังมีประโยชน์สำหรับ Tableau Server บน Windows อีกด้วย

ภาพรวมในการกำหนดค่า TLS

คุณกำหนดค่า TLS สำหรับ HTTPS ในส่วนใดก็ได้ต่อไปนี้ในพาธ Internet-to-Tableau Server

  • จากเครือข่ายภายนอก (อินเทอร์เน็ตหรือการจัดสรรปริมาณงานส่วนหน้า) ไปยังเกตเวย์อิสระ
  • จากเกตเวย์อิสระไปยัง Tableau Server
  • สำหรับกระบวนการดูแลความเรียบร้อย (HK) จาก Tableau Server ไปยังเกตเวย์อิสระ

หัวข้อนี้จะอธิบายถึงขั้นตอนการกำหนดค่าในแต่ละจุดเหล่านี้

คุณจะต้องทำการเปลี่ยนแปลงการกำหนดค่าในคอมพิวเตอร์เกตเวย์อิสระและคลัสเตอร์ Tableau Server ด้วย

ข้อกำหนดและข้อควรพิจารณาของใบรับรอง

ข้อกำหนดของใบรับรองสำหรับเกตเวย์อิสระจะเหมือนกับที่ระบุไว้สำหรับ "SSL ภายนอก” ของ Tableau Server โปรดดู ข้อกำหนดของใบรับรอง SSL 

ข้อควรพิจารณาอื่นๆ:

  • หากต้องการทำให้การปรับใช้และการจัดการใบรับรองง่ายขึ้น พร้อมทั้งเป็นแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย เราขอแนะนำให้ใช้ใบรับรองที่สร้างโดยผู้ออกใบรับรอง (CA) บุคคลที่สามรายใหญ่ที่เชื่อถือได้ หรือคุณอาจสร้างใบรับรองที่ลงนามด้วยตนเองหรือใช้ใบรับรองจาก PKI สำหรับ TLS ก็ได้เช่นกัน ในกรณีนี้ ให้ใส่ใจกับตัวเลือกการกำหนดค่าที่จะกำหนดให้เชื่อถือใบรับรอง CA และการตรวจสอบความถูกต้องของใบรับรอง
  • หากการใช้งานของคุณจำเป็นต้องใช้ไฟล์เชนใบรับรอง โปรดดูบทความในฐานความรู้กำหนดค่า TLS บนเกตเวย์อิสระเมื่อใช้ใบรับรองที่มีเชนใบรับรอง(ลิงก์จะเปิดในหน้าต่างใหม่)
  • หากคุณใช้งานเกตเวย์อิสระในหลายอินสแตนซ์ คุณต้องแจกจ่ายใบรับรองไปยังคอมพิวเตอร์แต่ละเครื่องในตำแหน่งเดียวกัน (เส้นทางไฟล์)
  • หากคุณใช้งาน Tableau Server ที่มีมากกว่าหนึ่งโหนด ใบรับรองที่คุณอัปโหลดด้วยคำสั่ง TSM จะถูกแจกจ่ายไปยังโหนดต่างๆ โดยอัตโนมัติ ใช้งานคำสั่ง TSM ทั้งหมดบนโหนดเริ่มต้น

การกำหนดค่า TLS ส่วนกลาง

การกำหนดค่าต่อไปนี้เป็นการกำหนดค่าจากส่วนกลาง ตัวเลือกการกำหนดค่าด้านล่างนี้จะหมายถึงคีย์การกำหนดค่าที่คุณจะต้องตั้งค่าด้วยคำสั่ง tsm configuration set คำสั่งจะต้องประกอบไปด้วยตัวเลือก --force-keys

คุณไม่น่าจะต้องเปลี่ยนค่าเหล่านี้

โปรดทราบว่าคีย์แต่ละคู่จะใช้รูปแบบการตั้งชื่อเหมือนกัน โดยที่สตริง tsig จะตั้งค่าสำหรับเกตเวย์อิสระ คีย์ที่ไม่มีสตริง tsig จะตั้งค่าสำหรับกระบวนการเกตเวย์บนคลัสเตอร์ Tableau Server

หากคุณไม่ได้ตั้งค่าสำหรับคีย์ tsig ระบบก็จะใช้ค่าเกตเวย์ Tableau Server ตามค่าเริ่มต้น

gateway.tsig.httpd.socache หรือ gateway.httpd.socache

ค่าเริ่มต้น: shmcb

ค่าทางเลือก: dbm

ประเภทพื้นที่เก็บข้อมูลของแคชเซสชัน SSL ระหว่างกระบวนการ หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับประเภทพื้นที่เก็บข้อมูลแบบ shmcb และ dbm ที่ SSLSessionCache Directive(ลิงก์จะเปิดในหน้าต่างใหม่) บนเว็บไซต์ Apache

gateway.tsig.httpd.shmcb.size หรือ gateway.httpd.shmcb.size

ค่าเริ่มต้น: 2048000

จำนวนของหน่วยความจำเป็นไบต์ที่จะใช้สำหรับบัฟเฟอร์แบบวงกลมเมื่อใช้ประเภทพื้นที่ข้อมูลแบบ shmcb

หมายเหตุ: คีย์ส่วนกลางอีกคีย์หนึ่งคือ gateway.tsig.ssl.key.passphrase.dialog การกำหนดค่าสำหรับ gateway.tsig.ssl.key.passphrase.dialog จะมีแบบเดียว (หากเกี่ยวข้อง) ตามหลักการออกแบบ คีย์นี้จะรวบรวมวลีที่เป็นรหัสผ่านสำหรับไฟล์คีย์ส่วนตัวที่เข้ารหัสทั้งหมดไว้ในการกำหนดค่า ส่วนที่เกี่ยวข้องในหัวข้อนี้จะอธิบายการใช้คีย์นี้ในภายหลัง

TLS ภายนอกไปยังเกตเวย์อิสระ

ขั้นตอนการกำหนดค่าการเชื่อมต่อภายนอกเพื่อเลิกใช้ TLS บนเซิร์ฟเวอร์เกตเวย์อิสระมีแนวคิดคล้ายกับวิธีกำหนดค่า "SSL ภายนอก" สำหรับคลัสเตอร์ Tableau Server แต่มีกลไกแตกต่างกัน TSM ไม่แจกจ่ายใบรับรองและข้อมูลสำคัญไปยังโหนดเกตเวย์อิสระโดยอัตโนมัติ นอกจากนี้ เกตเวย์อิสระไม่ได้มีวิธีการป้อนวลีที่เป็นรหัสผ่านของคีย์ TLS ที่ไม่บังคับโดยอัตโนมัติเมื่อเริ่มต้นระบบ

ขั้นตอนต่อไปนี้จะอธิบายวิธีกำหนดค่า TLS จากแหล่งภายนอกไปยังคอมพิวเตอร์เกตเวย์อิสระ

ขั้นตอนที่ 1: แจกจ่ายไฟล์ไปยังคอมพิวเตอร์เกตเวย์อิสระ

  1. นำใบรับรองและไฟล์ที่เกี่ยวข้องไว้ในที่ตำแหน่งพร้อมสิทธิ์ที่อนุญาตให้บริการเกตเวย์อิสระ (tsig-httpd) ทำการอ่านรายการเหล่านั้น เราขอแนะนำให้จำกัดการเข้าถึงไฟล์คีย์ให้มีเพียงบริการเกตเวย์อิสระเท่านั้นที่อ่านได้
  2. นำไฟล์ ใบรับรอง และคีย์ทั้งหมดเก็บไว้ในตำแหน่งเดียวกันบนคอมพิวเตอร์เกตเวย์อิสระทุกเครื่อง วางไฟล์ไว้นอกพาธ TSIG_INSTALL และ TSIG_DATA เพื่อไม่ให้ไฟล์ถูกลบออกหากคุณอัปเกรดหรือติดตั้งเกตเวย์อิสระอีกครั้ง

ขั้นตอนที่ 2: อัปเดตตัวแปรสภาพแวดล้อมในคอมพิวเตอร์เกตเวย์อิสระ

ในคอมพิวเตอร์เกตเวย์อิสระแต่ละเครื่อง ให้ตั้งค่าตัวแปรสภาพแวดล้อม TSIG_PORT และ TSIG_PROTOCOL เป็น 443 (ตามแบบแผน แต่ระบบจะรองรับหมายเลขพอร์ต TCP ที่ไม่ได้ใช้) และ https ตามลำดับ

เปลี่ยนค่าเหล่านี้โดยการอัปเดตตัวแปรสภาพแวดล้อม TSIG_PORT และ TSIG_PROTOCOL ใน environment.bash

ตามค่าเริ่มต้น environment.bash จะอยู่ที่ /etc/opt/tableau/tableau_tsig

หลังจากที่คุณอัปเดตไฟล์แล้ว คุณจะต้องรีสตาร์ท tsig-httpd:

sudo su - tableau-tsig
systemctl --user restart tsig-httpd
exit

ขั้นตอนที่ 3: ตั้งค่าพร็อพเพอร์ตี้การกำหนดค่า TLS ใน Tableau Server

คีย์การกำหนดค่าส่วนใหญ่ของ TSM ในตารางต่อไปนี้มีการแปลงมาจากคำสั่งของ Apache httpd ด้วยเหตุนี้ ค่าการกำหนดค่าจากคีย์การกำหนดค่า TSM เหล่านี้จึงแมปโดยตรงกับค่าที่ถูกต้องสำหรับคำสั่ง Apache ที่สอดคล้องกัน ลิงก์สำหรับคำสั่งที่สอดคล้องกันจะรวมอยู่ในตารางต่อไปนี้

ในบางกรณี การกำหนดค่าจะใช้การกำหนดค่าแบบฟอลล์แบ็กหากไม่มีการตั้งค่าคีย์ที่เฉพาะเจาะจงไว้ โดยจะมีการระบุไว้ในตารางด้านล่าง

ตัวเลือกการกำหนดค่าในตารางต่อไปนี้หมายถึงคีย์การกำหนดค่าที่คุณจะต้องตั้งค่ากับคำสั่ง tsm configuration set ทุกคำสั่งจะต้องประกอบไปด้วยตัวเลือก --force-keys ตัวอย่าง:

tsm configuration set -k gateway.tsig.ssl.enabled -v true --force-keys

หลังจากที่คุณตั้งค่าคีย์การกำหนดค่าแล้ว คุณจะต้องเรียกใช้ tsm pending-changes apply

พร็อพเพอร์ตี้การกำหนดค่าคำอธิบายคำสั่ง Apache ที่สอดคล้องกัน
gateway.tsig.ssl.enabled

จำเป็น

เปิดใช้งาน TLS ต้องกำหนดให้เป็น true

ไม่ระบุ
gateway.tsig.ssl.cert.file_name

จำเป็น

เส้นทาง + ชื่อไฟล์ของไฟล์ใบรับรองสำหรับเกตเวย์อิสระ ตัวอย่างเช่น /etc/ssl/certs/tsig-ssl.crt

SSLCertificateFile(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.key.file_name

จำเป็น

เส้นทาง + ชื่อไฟล์ของไฟล์คีย์ใบรับรองสำหรับเกตเวย์อิสระ ตัวอย่างเช่น /etc/ssl/keys/tsig-ssl.key

SSLCertificateKeyFile(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.key.passphrase.dialogหากคีย์ของคุณต้องใช้วลีที่เป็นรหัสผ่าน คุณก็ต้องกำหนดค่าคีย์นี้ด้วยสตริงที่ถูกต้องที่คำสั่ง Apache httpd SSLPassPhraseDialog คาดคะเนไว้ อย่าป้อนวลีที่เป็นรหัสผ่านตามตัวอักษรสำหรับคีย์นี้ โปรดดู ข้อมูลเกี่ยวกับวิธีการกำหนดค่าคีย์นี้ในเอกสารประกอบของ Apache
การกำหนดค่านี้เป็นการกำหนดค่าจากส่วนกลางสำหรับเกตเวย์อิสระ
SSLPassPhraseDialog(ลิงก์จะเปิดในหน้าต่างใหม่)

gateway.tsig.ssl.protocols

Fallback: ssl.protocols

ระบุเวอร์ชันของ SSL/TLS ที่รองรับ โปรดดู รายการตรวจสอบเพื่อปิดช่องโหว่ด้านความปลอดภัยเพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าที่เป็นค่าเริ่มต้นSSLProtocols(ลิงก์จะเปิดในหน้าต่างใหม่)

gateway.tsig.ssl.ciphersuite

Fallback: ssl.ciphersuite

ระบุการเข้ารหัสที่ไคลเอ็นต์อนุญาตให้สื่อสารกับการเชื่อมต่อ SSLSSLCipherSuite(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.client_certificate_login.required

ตั้งค่านี้ให้เป็น true เพื่อเปิดใช้งาน TLS ร่วมกันในการเชื่อมต่อนี้

คุณต้องตั้งพร็อพเพอร์ตี้ gateway.tsig.ssl.cacert.file ตามที่ระบุไว้ด้านล่างนี้ด้วย

ไม่ระบุ
gateway.tsig.ssl.cacert.fileระบุไฟล์ที่มีใบรับรอง CA ที่เชื่อมโยงค่าสำหรับกระบวนการรับรองสิทธิ์ไคลเอ็นต์SSLCACertificateFile(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.revocation.fileระบุไฟล์ที่มีรายการการเพิกถอน CA ที่เชื่อมโยงค่าสำหรับไคลเอ็นต์ที่เชื่อมโยงกับเกตเวย์SSLCARevocationFile(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.redirect

เมื่อกำหนดค่าเกตเวย์อิสระสำหรับ TLS แล้ว ตัวเลือกนี้จะบังคับใช้คำขอของไคลเอ็นต์จากพอร์ต 80 (ค่าเริ่มต้น) เพื่อเปลี่ยนเส้นทางไปยัง TLS

ค่าเริ่มต้น: true

ไม่ระบุ
gateway.tsig.ssl.redirect_from_port

เมื่อตั้งค่า gateway.tsig.ssl.redirect เป็น true ตัวเลือกนี้ช่วยให้คุณระบุพอร์ตที่จะเปลี่ยนเส้นทางการรับส่งข้อมูล

ค่าเริ่มต้น: 80

ไม่ระบุ

เกตเวย์อิสระไปยัง Tableau Server

ส่วนนี้จะอธิบายวิธีการเข้ารหัสการเชื่อมต่อระหว่างเกตเวย์อิสระและ Tableau Server

ขั้นตอนที่ 1: กำหนดค่าและเปิดใช้งาน TLS ใน Tableau Server

โปรดดู กำหนดค่า SSL สำหรับทราฟฟิก HTTP ภายนอกไปยังและจาก Tableau Server

โปรดทราบว่า "SSL" คือการนำ TLS ไปใช้ และ "ภายนอก" หมายถึงการเชื่อมต่อภายนอกไปยัง Tableau Server ในสถานการณ์นี้ เกตเวย์อิสระคือการเชื่อมต่อ "ภายนอก"

เราขอแนะนำให้เปิดใช้งานและตรวจสอบว่าไคลเอ็นต์สามารถเชื่อมต่อกับ TLS ไปยัง Tableau Server ได้โดยตรงก่อนกำหนดค่าเกตเวย์อิสระ

ขั้นตอนที่ 2: แจกจ่ายไฟล์ใบรับรองไปยังคอมพิวเตอร์เกตเวย์อิสระ

คุณจะต้องแจกจ่ายไฟล์ใบรับรองไปยังคอมพิวเตอร์เกตเวย์อิสระหากข้อใดข้อหนึ่งต่อไปนี้เป็นจริง

  • คุณกำลังใช้ใบรับรองแบบลงนามด้วยตนเองหรือใบรับรอง PKI สำหรับใบรับรอง TLS ในการปรับใช้ Tableau Server
  • คุณกำลังเปิดใช้งาน TLS ร่วมกันในการเชื่อมต่อจากเกตเวย์อิสระไปยัง Tableau Server

คุณต้องวางไฟล์ในพาธเดียวกันในคอมพิวเตอร์แต่ละเครื่อง เช่นเดียวกับไฟล์ทั้งหมดที่เกี่ยวข้องกับ TLS ในคอมพิวเตอร์เกตเวย์อิสระ ชื่อไฟล์ทั้งหมดของไฟล์ TLS ที่ใช้ร่วมกันจะต้องเหมือนกัน

ขั้นตอนที่ 3: ตั้งค่าพร็อพเพอร์ตี้การกำหนดค่า TLS ใน Tableau Server

คีย์การกำหนดค่าส่วนใหญ่ของ TSM ในตารางต่อไปนี้มีการแปลงมาจากคำสั่งของ Apache httpd ด้วยเหตุนี้ ค่าการกำหนดค่าจากคีย์การกำหนดค่า TSM เหล่านี้จึงแมปโดยตรงกับค่าที่ถูกต้องสำหรับคำสั่ง Apache ที่สอดคล้องกัน ลิงก์สำหรับคำสั่งที่สอดคล้องกันจะรวมอยู่ในตารางต่อไปนี้

ในบางกรณี การกำหนดค่าจะใช้การกำหนดค่าแบบฟอลล์แบ็กหากไม่มีการตั้งค่าคีย์ที่เฉพาะเจาะจงไว้ โดยจะมีการระบุไว้ในตารางด้านล่าง

ตัวเลือกการกำหนดค่าในตารางต่อไปนี้หมายถึงคีย์การกำหนดค่าที่คุณจะต้องตั้งค่ากับคำสั่ง tsm configuration set ทุกคำสั่งจะต้องประกอบไปด้วยตัวเลือก --force-keys ตัวอย่าง:

tsm configuration set -k gateway.tsig.ssl.enabled -v true --force-keys

หลังจากที่คุณตั้งค่าคีย์การกำหนดค่าแล้ว คุณจะต้องเรียกใช้ tsm pending-changes apply

พร็อพเพอร์ตี้การกำหนดค่าคำอธิบายคำสั่ง Apache ที่สอดคล้องกัน

gateway.tsig.ssl.proxy.cacertificatefile

หากองค์กรของคุณใช้ใบรับรอง TLS ที่ลงนามด้วยตนเองหรือที่สร้างโดย PKI สำหรับ Tableau Server คุณต้องระบุพาธไปยังไฟล์ใบรับรอง CA ระดับรูท ไฟล์ใบรับรอง CA ระดับรูทนี้ต้องเก็บไว้ในคอมพิวเตอร์เกตเวย์อิสระSSLProxyCACertificateFile (ลิงก์จะเปิดในหน้าต่างใหม่)

gateway.tsig.ssl.proxy.protocols

Fallback: ssl.protocols

ระบุเวอร์ชันของ SSL/TLS ที่รองรับ โปรดดู รายการตรวจสอบเพื่อปิดช่องโหว่ด้านความปลอดภัยเพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าที่เป็นค่าเริ่มต้นSSLProtocols(ลิงก์จะเปิดในหน้าต่างใหม่)

gateway.tsig.ssl.proxy.ciphersuite

Fallback: ssl.ciphersuite

ระบุการเข้ารหัสที่ไคลเอ็นต์อนุญาตให้สื่อสารกับการเชื่อมต่อ SSLSSLCipherSuite(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.proxy.machinecertificatefileสำหรับ TLS ร่วมกัน ระบุไฟล์ที่มีคู่ใบรับรอง-คีย์ที่ต่อกันสำหรับใช้ตรวจสอบสิทธิ์ของเกตเวย์อิสระที่เชื่อมต่อไปยัง Tableau ServerSSLProxyMachineCertificateFile(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.proxy.verify

ระบุว่าเกตเวย์อิสระควรตรวจสอบความถูกต้องของใบรับรองที่แสดงโดย Tableau Server หรือไม่

ค่าเริ่มต้นคือ require

SSLProxyVerify(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.proxy.checkpeername

ระบุว่าเกตเวย์อิสระจะตรวจสอบใบรับรองของ Tableau Server เพื่อตรวจสอบว่าชื่อเรื่องตรงกับชื่อเซิร์ฟเวอร์หรือไม่

ค่าเริ่มต้นคือ off

SSLProxyCheckPeerName(ลิงก์จะเปิดในหน้าต่างใหม่)
gateway.tsig.ssl.proxy.checkpeerexpire

ระบุว่าเกตเวย์อิสระจะตรวจสอบใบรับรองของ Tableau Server เพื่อตรวจสอบการหมดอายุหรือไม่

ค่าเริ่มต้นคือ off

SSLProxyCheckPeerExpire(ลิงก์จะเปิดในหน้าต่างใหม่)

ขั้นตอนที่ 4: อัปโหลดใบรับรอง CA ระดับรูทไปยัง Tableau Server

หากใบรับรอง TLS ที่คุณกำลังใช้ในคอมพิวเตอร์เกตเวย์อิสระมีการลงนามด้วยตนเองหรือเป็นใบรับรองที่ PKI สร้างขึ้น คุณจะต้องดำเนินขั้นตอนเพิ่มเติมนี้ หากใบรับรอง TLS ที่คุณกำลังใช้ในคอมพิวเตอร์เกตเวย์อิสระเป็นใบรับรองจากหน่วยงานออกใบรับรองบุคคลที่สามที่เชื่อถือได้ คุณก็สามารถข้ามขั้นตอนนี้ได้

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

tsm security custom-cert add -c <root-certificate-file-name>.pem
tsm pending-changes apply

การเชื่อมต่อเพื่อการดูแลความเรียบร้อยระหว่าง Tableau Server และเกตเวย์อิสระ

กระบวนการดูแลความเรียบร้อย (HK) จะรักษาสถานะการกำหนดค่าระหว่างการปรับใช้ Tableau Server ในแบ็กเอนด์และเกตเวย์อิสระ

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

หากคุณกำลังใช้งานเกตเวย์อิสระในหลายอินสแตนซ์ เซิร์ฟเวอร์ทั้งหมดจะต้องยอมรับคำขอการดูแลความเรียบร้อยที่มี TLS หรือคำขอทั้งหมดที่ไม่มี TLS ส่วนนี้จะอธิบายวิธีการกำหนดค่าการเชื่อมต่อ HK สำหรับ TLS กระบวนการนี้ต้องรีสตาร์ท Tableau Server และจะส่งผลให้มีการหยุดทำงาน

เช่นเดียวกับสถานการณ์ TLS ที่อธิบายไว้ข้างต้น การเปลี่ยนแปลงการกำหนดค่าส่วนใหญ่สำหรับการเชื่อมต่อ HK ได้รับการตั้งค่าในพร็อพเพอร์ตี้การกำหนดค่าที่จัดการโดยคลัสเตอร์ Tableau Server อย่างไรก็ตาม การกำหนดค่า HK TLS ต้องมีการดำเนินขั้นตอนเพิ่มเติมบนเกตเวย์อิสระ

ขั้นตอนที่ 1: แจกจ่ายไฟล์ไปยังคอมพิวเตอร์เกตเวย์อิสระ

หากคุณเปิดใช้งาน TLS กับเครือข่ายภายนอกและเกตเวย์อิสระ คุณสามารถใช้ใบรับรองและไฟล์คีย์เดียวกันสำหรับการเชื่อมต่อ HK ได้

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

  1. นำใบรับรองและไฟล์ที่เกี่ยวข้องไว้ในที่ตำแหน่งพร้อมสิทธิ์ที่อนุญาตให้บริการเกตเวย์อิสระ (tsig-httpd) ทำการอ่านรายการเหล่านั้น เราขอแนะนำให้จำกัดการเข้าถึงไฟล์คีย์ให้มีเพียงบริการเกตเวย์อิสระเท่านั้นที่อ่านได้
  2. นำไฟล์ ใบรับรอง และคีย์ทั้งหมดเก็บไว้ในตำแหน่งเดียวกันบนคอมพิวเตอร์เกตเวย์อิสระทุกเครื่อง

ขั้นตอนที่ 2: นำเข้าใบรับรอง CA ระดับรูทของเกตเวย์อิสระไปยังที่จัดเก็บที่เชื่อถือได้ของ Tableau Server

หากใบรับรอง TLS ที่คุณกำลังใช้ในคอมพิวเตอร์เกตเวย์อิสระมีการลงนามด้วยตนเองหรือเป็นใบรับรองที่ PKI สร้างขึ้น คุณจะต้องดำเนินขั้นตอนเพิ่มเติมนี้ หากใบรับรอง TLS ที่คุณกำลังใช้ในคอมพิวเตอร์เกตเวย์อิสระเป็นใบรับรองจากหน่วยงานออกใบรับรองบุคคลที่สามที่เชื่อถือได้ คุณก็สามารถข้ามขั้นตอนนี้ได้

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

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

tsm security custom-cert add -c <root-certificate-file-name>.pem
tsm pending-changes apply

ขั้นตอนที่ 3: อัปเดตตัวแปรสภาพแวดล้อมในคอมพิวเตอร์เกตเวย์อิสระ

ในคอมพิวเตอร์เกตเวย์อิสระแต่ละเครื่อง ให้ตั้งค่าตัวแปรสภาวะแวดล้อม TSIG_HK_PROTOCOL เป็น https คุณอาจระบุพอร์ตสำรองสำหรับ HK (ค่าเริ่มต้นคือ 21319) โดยการตั้งค่าตัวแปรสภาพแวดล้อม TSIG_HK_PORT ด้วยเช่นกัน

เปลี่ยนค่าเหล่านี้โดยการอัปเดตตัวแปรสภาพแวดล้อม TSIG_HK_PORT และ TSIG_HK_PROTOCOL ใน environment.bash

ตามค่าเริ่มต้น environment.bash จะอยู่ที่ /etc/opt/tableau/tableau_tsig

หลังจากที่คุณอัปเดตไฟล์แล้ว คุณจะต้องรีสตาร์ท tsig-httpd:

sudo su - tableau-tsig
systemctl --user restart tsig-httpd
exit

ขั้นตอนที่ 4: อัปเดต httpd.conf.stub ในคอมพิวเตอร์เกตเวย์อิสระ

คุณต้องอัปเดตไฟล์ httpd.conf.stub ในเซิร์ฟเวอร์เกตเวย์อิสระแต่ละเซิร์ฟเวอร์ด้วย ไฟล์ httpd.conf.stub จะใช้เพื่อกำหนดค่า httpd ส่วนกลาง

ไฟล์ดังกล่าวอยู่ที่ TSIG_DATA/config/httpd.conf.stub

ในการติดตั้งที่เป็นค่าเริ่มต้น: /var/opt/tableau/tableau_tsig/config/httpd.conf.stub

  1. เปิดไฟล์ httpd.conf.stub ในเครื่องมือแก้ไขข้อความ คุณต้องอัปเดตบล็อก <VirtualHost *:${TSIG_HK_PORT}> ด้วยรายละเอียดการกำหนดค่า HK ตัวอย่างต่อไปนี้จะแสดงถึงการเปลี่ยนแปลงที่จำเป็น

    <VirtualHost *:${TSIG_HK_PORT}>
     SSLEngine on
     #TLS# SSLHonorCipherOrder on
     #TLS# SSLCompression off
     SSLCertificateFile /etc/ssl/certs/tsig-ssl.crt
     SSLCertificateKeyFile /etc/ssl/private/tsig-ssl.key
     SSLCACertificateFile /etc/ssl/certs/rootTS-CACert.pem 
    #TLS# SSLCARevocationFile /path/to/file
    </VirtualHost>				

    หมายเหตุ:

    • โดยค่าเริ่มต้น แต่ละบรรทัดในบล็อก <VirtualHost *:${TSIG_HK_PORT}> จะมีความคิดเห็นจากสตริง #TLS# หากต้องการ "เปิดใช้งาน" บรรทัดใดบรรทัดหนึ่งในบล็อก ให้ลบสตริง #TLS# ที่ขึ้นต้นบรรทัดนั้นออก
    • ไฟล์อ้างอิงแต่ละไฟล์ต้องมีพาธที่แน่นอนไปยังไฟล์ เช่นเดียวกับการกำหนดค่า httpd ทั้งหมด
    • SSLCACertificateFile ระบุถึงใบรับรอง CA ระดับรูทสำหรับ CA ที่สร้างใบรับรองที่แสดงโดย Tableau Server คุณต้องตั้งค่านี้ก็ต่อเมื่อใบรับรอง TLS ที่ใช้โดย Tableau Server เป็นแบบลงนามด้วยตัวเองหรือที่สร้างโดย PKI
  2. หยุดบริการ tsig-httpd

    sudo su - tableau-tsig
    systemctl --user stop tsig-httpd
    exit

    ในจุดนี้คุณจะเริ่มได้รับการตรวจสอบสถานะที่ล้มเหลว ซึ่งบ่งชี้ใน TSM ว่าส่วนประกอบของเกตเวย์อิสระของคุณถูกลดระดับลง

  3. คัดลอก httpd.conf.stub ไปยัง httpd.conf

    ไฟล์ httpd.conf จะอยู่ในไดเรกทอรีเดียวกัน เขียนทับไฟล์ httpd.conf ด้วยไฟล์ httpd.conf.stub

    cp httpd.conf.stub httpd.conf
  4. เริ่มบริการ tsig-httpd

    sudo su - tableau-tsig
    systemctl --user start tsig-httpd
    exit

    ในจุดนี้คุณจะยังคงได้รับการตรวจสอบสถานะที่ล้มเหลว ซึ่งบ่งชี้ใน TSM ว่าส่วนประกอบของเกตเวย์อิสระของคุณถูกลดระดับลง การตรวจสอบสถานะเหล่านี้จะล้มเหลวจนกว่าคุณจะกำหนดค่าให้เสร็จเรียบร้อยตามที่อธิบายไว้ในขั้นตอนต่อไปนี้

ขั้นตอนที่ 5: ตั้งค่าพร็อพเพอร์ตี้การกำหนดค่า TLS ใน Tableau Server

การนำการเปลี่ยนแปลงการกำหนดค่าไปใช้จะต้องรีสตาร์ทเซิร์ฟเวอร์ก่อน เพื่อหลีกเลี่ยงไม่ให้หยุดทำงานเป็นเวลานาน เราขอแนะนำให้หยุดเซิร์ฟเวอร์ไว้ก่อนที่จะนำการเปลี่ยนแปลงที่คุณตั้งค่าไว้ที่นี่ไปใช้ ในขั้นตอนที่ 6 คุณจะเรียกใช้คำสั่งอัปเดต แล้วจึงรีสตาร์ท TSM การหยุด TSM ในขั้นตอนการกำหนดค่านี้จะส่งผลให้เวลาหยุดทำงานสั้นลง

  1. หยุด TSM เรียกใช้คำสั่งต่อไปนี้:

    tsm stop
  2. คีย์การกำหนดค่าส่วนใหญ่ของ TSM ในตารางต่อไปนี้มีการแปลงมาจากคำสั่งของ Apache httpd ด้วยเหตุนี้ ค่าการกำหนดค่าจากคีย์การกำหนดค่า TSM เหล่านี้จึงแมปโดยตรงกับค่าที่ถูกต้องสำหรับคำสั่ง Apache ที่สอดคล้องกัน ลิงก์สำหรับคำสั่งที่สอดคล้องกันจะรวมอยู่ในตารางต่อไปนี้

    มีชื่อพร็อพเพอร์ตี้การกำหนดค่า TSM ที่มีโหนด hk ในคำนำหน้า: gateway.tsig.hk.xyz.abc หากตั้งค่าไว้ ระบบจะใช้ค่าเหล่านี้สำหรับการกำหนดค่า HK TLS หากไม่ได้ตั้งค่าไว้ พร็อพเพอร์ตี้การกำหนดค่าจะใช้การฟอลล์แบ็กไปยัง gateway.tsig.xyz.abc ซึ่งอาจจะหรืออาจจะไม่ฟอลล์แบ็กไปยัง gateway.xyz.abc ก็ได้ พร็อพเพอร์ตี้การกำหนดค่าฟอลล์แบ็กจะแสดงขึ้นมาเมื่อมีความเกี่ยวข้อง

    ตัวเลือกการกำหนดค่าในตารางต่อไปนี้หมายถึงคีย์การกำหนดค่าที่คุณจะต้องตั้งค่ากับคำสั่ง tsm configuration set ทุกคำสั่งจะต้องประกอบไปด้วยตัวเลือก --force-keys ตัวอย่าง:

    tsm configuration set -k gateway.tsig.hk.ssl.enabled -v true --force-keys
    พร็อพเพอร์ตี้การกำหนดค่าคำอธิบายคำสั่ง Apache ที่สอดคล้องกัน

    gateway.tsig.hk.ssl.enabled

    (ไม่มีฟอลล์แบ็ก)

    จำเป็น

    เปิดใช้งาน TLS ต้องกำหนดให้เป็น true

    ไม่ระบุ

    gateway.tsig.hk.ssl.cert.file_name

    ฟอลล์แบ็ก:

    gateway.tsig.ssl.cert.file_name

    เส้นทาง + ชื่อไฟล์ของไฟล์ใบรับรองสำหรับเกตเวย์อิสระ ตัวอย่างเช่น /etc/ssl/certs/tsig-ssl.crt

    SSLCertificateFile(ลิงก์จะเปิดในหน้าต่างใหม่)

    gateway.tsig.hk.ssl.key.file_name

    ฟอลล์แบ็ก:

    gateway.tsig.ssl.key.file_name

    เส้นทาง + ชื่อไฟล์ของไฟล์คีย์ใบรับรองสำหรับเกตเวย์อิสระ ตัวอย่างเช่น /etc/ssl/keys/tsig-ssl.key

    SSLCertificateKeyFile(ลิงก์จะเปิดในหน้าต่างใหม่)

    gateway.tsig.ssl.key.passphrase.dialog

    (พร็อพเพอร์ตี้ส่วนกลาง)

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

    gateway.tsig.hk.ssl.protocols

    ฟอลล์แบ็ก:

    gateway.tsig.ssl.protocols

    ssl.protocols

    ระบุเวอร์ชันของ SSL/TLS ที่รองรับ โปรดดู รายการตรวจสอบเพื่อปิดช่องโหว่ด้านความปลอดภัยเพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าที่เป็นค่าเริ่มต้นSSLProtocols(ลิงก์จะเปิดในหน้าต่างใหม่)

    gateway.tsig.hk.ssl.ciphersuite

    ฟอลล์แบ็ก:

    gateway.tsig.ssl.ciphersuite

    ssl.ciphersuite

    ระบุการเข้ารหัสที่ไคลเอ็นต์อนุญาตให้สื่อสารกับการเชื่อมต่อ SSLSSLCipherSuite(ลิงก์จะเปิดในหน้าต่างใหม่)

    gateway.tsig.hk.ssl.client_certificate_login.required

    (ไม่มีฟอลล์แบ็ก)

    ตั้งค่านี้ให้เป็น true เพื่อเปิดใช้งาน TLS ร่วมกันในการเชื่อมต่อนี้

    คุณต้องตั้งพร็อพเพอร์ตี้ gateway.tsig.hk.ssl.cacert.file ตามที่ระบุไว้ด้านล่างนี้ด้วย

    ไม่ระบุ

    gateway.tsig.hk.ssl.cacert.file

    ฟอลล์แบ็ก:

    gateway.tsig.ssl.cacert.file

    ระบุไฟล์ที่มีใบรับรอง CA ที่เชื่อมโยงค่าสำหรับกระบวนการรับรองสิทธิ์ไคลเอ็นต์SSLCACertificateFile(ลิงก์จะเปิดในหน้าต่างใหม่)

    gateway.tsig.hk.ssl.revocation.file

    ฟอลล์แบ็ก:

    gateway.tsig.hk.ssl.revocation.file

    ระบุไฟล์ที่มีรายการการเพิกถอน CA ที่เชื่อมโยงค่าสำหรับไคลเอ็นต์ที่เชื่อมโยงกับเกตเวย์SSLCARevocationFile(ลิงก์จะเปิดในหน้าต่างใหม่)
  3. ใช้การเปลี่ยนแปลง เรียกใช้คำสั่งต่อไปนี้:

    tsm pending-changes apply

ขั้นตอนที่ 6 อัปเดตไฟล์การกำหนดค่า JSON ของเกตเวย์อิสระ

ขั้นตอนสุดท้ายคือการอัปเดตการกำหนดค่าเกตเวย์อิสระด้วยไฟล์ JSON ที่แสดงถึงการสลับไปใช้ https และหมายเลขพอร์ตอื่นๆ (หากเกี่ยวข้อง)

โปรดดู ข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขไฟล์นี้ได้ที่หัวข้อการติดตั้ง โปรดดู ขั้นตอนที่ 3: เปิดใช้งานเกตเวย์อิสระใน Tableau Server

หลังจากที่อัปเดตไฟล์ JSON แล้ว ให้เรียกใช้คำสั่งต่อไปนี้

tsm topology external-services gateway update -c tsig.json
tsm start

การแก้ปัญหา

หากต้องการคำแนะนำในการแก้ไขปัญหา โปรดดูที่การแก้ไขปัญหาเกตเวย์อิสระของ Tableau Server(ลิงก์จะเปิดในหน้าต่างใหม่) ในคู่มือการปรับใช้ทั่วทั้งองค์กร (EDG) EDG จะมอบตัวอย่างการปรับใช้ Tableau Server บน Linux ขั้นตอนการแก้ไขปัญหามีประโยชน์สำหรับ Tableau Server เวอร์ชัน Windows หรือ Linux

ขอบคุณสำหรับข้อเสนอแนะของคุณส่งข้อเสนอแนะของคุณเรียบร้อยแล้ว ขอขอบคุณ