กำหนดค่าไฟร์วอลล์ในเครื่อง

หัวข้อนี้อธิบายวิธีกำหนดค่าไฟร์วอลล์บนคอมพิวเตอร์ที่ใช้ Tableau Server

ควรเปิดใช้งานไฟร์วอลในเครื่องบนระบบปฏิบัติการเพื่อป้องกัน Tableau Server ในการปรับใช้แบบเดี่ยวและแบบหลายโหนด ในการติดตั้ง Tableau Server แบบกระจาย (หลายโหนด) การสื่อสารระหว่างโหนดจะไม่ใช้การสื่อสารที่ปลอดภัย ดังนั้น คุณควรเปิดใช้งานไฟร์วอลบนคอมพิวเตอร์ที่โฮสต์ Tableau Server

เราขอแนะนำให้คุณกำหนดค่าไฟร์วอลล์เพื่อให้ปริมาณการใช้ภายนอกสามารถเข้าถึงได้เพียงสองพอร์ตเท่านั้น ได้แก่ พอร์ต gateway และพอร์ต tabadmincontroller ตามค่าเริ่มต้นแล้ว พอร์ตเหล่านี้คือพอร์ต 80 และ 8850 ตามลำดับ นอกจากนี้ หากคุณเรียกใช้การปรับใช้แบบกระจาย คุณจะต้องเปิดช่วงพอร์ต 27000-27009 เพื่อให้สิทธิ์การอนุญาตสามารถสื่อสารข้ามโหนดได้

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

ตัวอย่างด้านล่างอธิบายวิธีกำหนดค่าไฟร์วอลล์ในการปรับใช้โหนดเดียวและหลายโหนดของ Tableau Server ที่เรียกใช้กับการกระจาย RHEL/CentOS ตัวอย่างใช้ Firewalld ซึ่งเป็นไฟร์วอลล์เริ่มต้นบน CentOS

การกำหนดค่าโหนดเดียว

  1. เปิด Bash Shell และเรียกใช้คำสั่ง TSM ต่อไปนี้เพื่อดึงหมายเลขพอร์ตสำหรับพอร์ต tabadmincontroller:

    tsm topology list-ports

    ทำการบันทึกพอร์ต tabadmincontroller ตามค่าเริ่มต้น พอร์ตนี้คือ 8850

  2. เริ่มใช้ไฟร์วอล:

    sudo systemctl start firewalld

  3. ตรวจสอบว่าโซนเริ่มต้นเป็นโซนความปลอดภัยสูง เช่น public หากไม่เป็นเช่นนั้น เราแนะนำให้เปลี่ยนเป็นโซนที่มีความปลอดภัยสูง

    sudo firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  4. เพิ่มพอร์ตสำหรับพอร์ต gateway และพอร์ต tabadmincontroller ในตัวอย่างด้านล่าง เราใช้พอร์ตเริ่มต้น (80 และ 8850)

    sudo firewall-cmd --permanent --add-port=80/tcp

    sudo firewall-cmd --permanent --add-port=8850/tcp

  5. โหลดไฟร์วอลล์ใหม่และตรวจสอบการตั้งค่า

    sudo firewall-cmd --reload

    sudo firewall-cmd --list-all

การกำหนดค่าคลัสเตอร์หลายโหนด

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

ก่อนที่คุณจะเริ่มต้น

คุณจะต้องมีที่อยู่ IP สำหรับแต่ละโหนดในคลัสเตอร์ ตัวอย่างที่นี่ใช้ <node1IP> เป็นตัวยึดตำแหน่งสำหรับที่อยู่ IP ของโหนดเริ่มต้นและ <node2IP> และ <node3IP> เป็นตัวยึดตำแหน่งสำหรับที่อยู่ IP ของโหนดเพิ่มเติม 2 โหนด

ขั้นตอนที่ 1: กำหนดค่าโหนดเริ่มต้น

  1. เปิด Bash Shell และเรียกใช้คำสั่ง TSM ต่อไปนี้เพื่อดึงหมายเลขพอร์ตสำหรับพอร์ต tabadmincontroller:

    tsm topology list-ports

    ทำการบันทึกพอร์ต tabadmincontroller ตามค่าเริ่มต้น พอร์ตนี้คือ 8850

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

    tsm configuration get -k ports.range.min

    tsm configuration get -k ports.range.max

    ช่วงปกติคือ 8000 ถึง 9000

  3. เริ่มใช้ไฟร์วอล:

    sudo systemctl start firewalld

  4. ตรวจสอบว่าโซนเริ่มต้นเป็นโซนความปลอดภัยสูง เช่น public หากไม่เป็นเช่นนั้น เราแนะนำให้เปลี่ยนเป็นโซนที่มีความปลอดภัยสูง

    firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  5. เพิ่มพอร์ตสำหรับพอร์ต gateway และพอร์ต tabadmincontroller ในตัวอย่างด้านล่าง เราใช้พอร์ตเริ่มต้น (80 และ 8850) คุณต้องเพิ่มช่วงพอร์ต (27000-27010) เพื่อเปิดใช้งานการสื่อสารการให้สิทธิ์อนุญาตระหว่างโหนดด้วย

    sudo firewall-cmd --permanent --add-port=80/tcp

    sudo firewall-cmd --permanent --add-port=8850/tcp

    sudo firewall-cmd --permanent --add-port=27000-27010/tcp

  6. กำหนดค่าไฟร์วอลล์เพื่ออนุญาตการรับส่งข้อมูลทั้งหมดจากโหนดอื่นในคลัสเตอร์ สำหรับตัวเลือกพอร์ต ให้ระบุช่วงที่คุณจดไว้ในขั้นตอนที่ 2 เรียกใช้คำสั่งสำหรับโหนดเพิ่มเติมแต่ละโหนดในคลัสเตอร์ของคุณ ตัวอย่าง:

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node2IP>/32 port port=8000-9000 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=8000-9000 protocol=tcp accept'

  7. โหลดไฟร์วอลล์ใหม่และตรวจสอบการตั้งค่า

    sudo firewall-cmd --reload

    firewall-cmd --list-all

ขั้นตอนที่ 2: กำหนดค่าโหนดเพิ่มเติม

แต่ละโหนดในคลัสเตอร์ต้องสามารถสื่อสารกับโหนดเริ่มต้นและกับโหนดอื่นได้

เรียกใช้ขั้นตอนนี้ในโหนดเพิ่มเติมแต่ละโหนดในคลัสเตอร์ ในตัวอย่างนี้ โหนดที่ที่อยู่ IP <node2IP> จะสื่อสารกับโหนดเริ่มต้นที่ <node1IP> และโหนดที่สามที่t <node3IP>

  1. เริ่มใช้ไฟร์วอล:

    sudo systemctl start firewalld

  2. ตรวจสอบว่าโซนเริ่มต้นเป็นโซนความปลอดภัยสูง เช่น public หากไม่เป็นเช่นนั้น เราแนะนำให้เปลี่ยนเป็นโซนที่มีความปลอดภัยสูง

    firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  3. กำหนดค่าไฟร์วอลล์เพื่ออนุญาตการเข้าถึง gateway และ tabadmincontroller จากโหนดอื่นในคลัสเตอร์ ตัวอย่าง:

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node1IP>/32 port port=80 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node1IP>/32 port port=8000-9000 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=80 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=8000-9000 protocol=tcp accept'

    ในตัวอย่างนี้ เนื่องจากพอร์ต tabadmincontroller (8850) รวมอยู่ในช่วงพอร์ต จึงไม่ได้ระบุไว้อย่างชัดเจนในคำสั่ง

  4. โหลดไฟร์วอลล์ใหม่และตรวจสอบการตั้งค่า

    sudo firewall-cmd --reload

    firewall-cmd --list-all

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