คำปรารภ
"มิตรภาพ" ของเราเริ่มต้นขึ้นเมื่อสองปีที่แล้ว ฉันมาถึงที่ทำงานใหม่ซึ่งผู้ดูแลระบบคนก่อนทิ้งซอฟต์แวร์นี้ไว้เป็นมรดกให้ฉันอย่างอิสระ บนอินเทอร์เน็ต ไม่พบสิ่งใดนอกเหนือจากเอกสารอย่างเป็นทางการ แม้กระทั่งตอนนี้ หากคุณใช้กูเกิล "หางเสือ" ใน 99% ของกรณี มันจะให้: หางเสือเรือและควอดคอปเตอร์ ฉันก็หาวิธีจนได้ เนื่องจากชุมชนของซอฟต์แวร์นี้มีความสำคัญน้อย ฉันจึงตัดสินใจแบ่งปันประสบการณ์และคราด ฉันคิดว่ามันจะมีประโยชน์สำหรับใครบางคน
ดังนั้นหางเสือ
Rudder เป็นยูทิลิตี้การจัดการการตรวจสอบและการกำหนดค่าแบบโอเพ่นซอร์สที่ช่วยให้การกำหนดค่าระบบเป็นไปโดยอัตโนมัติ ทำงานบนหลักการของการติดตั้งตัวแทนสำหรับผู้ใช้แต่ละราย เราสามารถสังเกตได้ว่าโครงสร้างพื้นฐานของเราสอดคล้องกับนโยบายที่ระบุทั้งหมดผ่านอินเทอร์เฟซที่ใช้งานง่ายอย่างไร
ใช้
ด้านล่างฉันจะแสดงรายการสิ่งที่ฉันใช้ Rudder
-
การควบคุมไฟล์และการกำหนดค่า: ./ssh/authorized_keys ; /etc/hosts ; iptables ; (แล้วจินตนาการจะพาไปไหน)
-
การควบคุมแพ็คเกจที่ติดตั้ง: zabbix.agent หรือซอฟต์แวร์อื่น ๆ
การติดตั้งเซิร์ฟเวอร์
วันก่อนฉันอัปเกรดจากเวอร์ชัน 5 เป็น 6.1 ทุกอย่างเป็นไปด้วยดี ด้านล่างนี้จะเป็นคำสั่งสำหรับ Deban/Ubuntu แต่ยังรองรับ:
ฉันจะซ่อนการติดตั้งในสปอยเลอร์เพื่อไม่ให้กวนใจคุณ
ผู้ทำให้เสื่อมเสีย
การพึ่งพา
rudder-server ต้องการ Java RE เวอร์ชัน 8 เป็นอย่างน้อย สามารถติดตั้งได้จากที่เก็บมาตรฐาน:
ตรวจสอบว่ามีการติดตั้ง
java -version
ถ้าเอาท์พุท
-bash: java: command not found
จากนั้นเราก็ตั้งค่า
apt install default-jre
เซิร์ฟเวอร์
การนำเข้าคีย์
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
นี่คือตราประทับ
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
เนื่องจากเราไม่มีการสมัครสมาชิกแบบชำระเงิน เราจึงเพิ่มพื้นที่เก็บข้อมูลต่อไปนี้
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
อัพเดตรายการที่เก็บและติดตั้งเซิร์ฟเวอร์
apt update
apt install rudder-server-root
สร้างผู้ดูแลระบบ
rudder server create-user -u admin -p "Ваш Пароль"
ในอนาคต เราสามารถจัดการผู้ใช้ผ่านการกำหนดค่า
ทุกอย่างเซิร์ฟเวอร์พร้อมแล้ว
การปรับแต่งเซิร์ฟเวอร์
ตอนนี้คุณต้องเพิ่มที่อยู่ IP ของตัวแทนหรือซับเน็ตทั้งหมดให้กับตัวแทนหางเสือ โดยเน้นที่นโยบายความปลอดภัย
การตั้งค่า -> ทั่วไป
ในช่อง "เพิ่มเครือข่าย" ป้อนที่อยู่และมาสก์ในรูปแบบ xxxx/xx . เพื่ออนุญาตการเข้าถึงจากที่อยู่ทั้งหมดของเครือข่ายภายใน (แน่นอนว่านี่เป็นเครือข่ายทดสอบและคุณใช้ NAT) ให้ป้อน: 0.0.0.0/0
สำคัญ - หลังจากเพิ่มที่อยู่ IP อย่าลืมคลิก บันทึกการเปลี่ยนแปลง มิฉะนั้นจะไม่มีอะไรถูกบันทึก
พอร์ต
เปิดพอร์ตต่อไปนี้บนเซิร์ฟเวอร์
-
443-tcp
-
5309-tcp
-
514-udp
เราพบการตั้งค่าเซิร์ฟเวอร์เริ่มต้น
การติดตั้งตัวแทน
ผู้ทำให้เสื่อมเสีย
การเพิ่มคีย์
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
ลายนิ้วมือที่สำคัญ
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
การเพิ่มพื้นที่เก็บข้อมูล
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
การติดตั้งตัวแทน
apt update
apt install rudder-agent
การตั้งค่าตัวแทน
ระบุที่อยู่ IP ของเซิร์ฟเวอร์นโยบายให้กับเอเจนต์
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
โดยการเรียกใช้คำสั่งต่อไปนี้ เราจะส่งคำขอเพื่อเพิ่มตัวแทนใหม่ไปยังเซิร์ฟเวอร์ ในอีกไม่กี่นาทีก็จะปรากฏในรายการตัวแทนใหม่ ฉันจะอธิบายวิธีเพิ่มในส่วนถัดไป
rudder agent inventory
เรายังสามารถบังคับให้ตัวแทนเริ่มต้นและจะส่งคำขอทันที
rudder agent run
ตัวแทนของเราพร้อมแล้ว เดินหน้าต่อไป
การเพิ่มตัวแทน
เข้าสู่ระบบ
https://127.0.0.1/rudder/index.html
ตัวแทนของคุณจะปรากฏในส่วน "ยอมรับโหนดใหม่" ทำเครื่องหมายในช่องและคลิกยอมรับ
ควรใช้เวลาสักครู่เพื่อให้ระบบตรวจสอบความสอดคล้องของเซิร์ฟเวอร์
สร้างกลุ่มเซิร์ฟเวอร์
มาสร้างกลุ่มกันเถอะ (นั่นยังคงเป็นความบันเทิง) โดยไม่รู้ว่าเหตุใดผู้พัฒนาจึงสร้างกลุ่มริดสีดวงทวารเช่นนี้ แต่อย่างที่ฉันเข้าใจไม่มีวิธีอื่น ไปที่ส่วนการจัดการโหนด -> กลุ่ม แล้วคลิกสร้าง เลือกกลุ่มแบบสแตติกและชื่อ
เรากรองเซิร์ฟเวอร์ที่เราต้องการตามสัญญาณพิเศษ เช่น ตามที่อยู่ IP และบันทึก
มีการจัดตั้งกลุ่ม
การตั้งกฎ
ไปที่นโยบายการกำหนดค่า → กฎ และสร้างกฎใหม่
เพิ่มกลุ่มที่เตรียมไว้ก่อนหน้านี้ (สามารถทำได้ในภายหลัง)
และเราสร้างแนวทางใหม่
มาสร้างคำสั่งสำหรับเพิ่มพับลิกคีย์ให้กับ .ssh/authorized_keys กัน ฉันใช้สิ่งนี้เมื่อพนักงานใหม่ลาออกหรือเพื่อประกันต่อ เช่น ถ้ามีคนตัดกุญแจของฉันออกโดยไม่ตั้งใจ
ไปที่นโยบายการกำหนดค่า→คำสั่งทางด้านซ้ายเราเห็น "ไลบรารีคำสั่ง" ค้นหา "การเข้าถึงระยะไกล→คีย์ที่อนุญาต SSH" ที่คลิกขวาสร้างคำสั่ง
เราป้อนข้อมูลเกี่ยวกับผู้ใช้และเพิ่มรหัสของเขา จากนั้น เลือกนโยบายการสมัคร
-
ทั่วโลก - นโยบายเริ่มต้น
-
บังคับใช้ - ดำเนินการบนเซิร์ฟเวอร์ที่เลือก
-
การตรวจสอบ - ดำเนินการตรวจสอบและแจ้งว่าลูกค้ารายใดมีรหัส
อย่าลืมระบุกฎของเรา
จากนั้นบันทึกและทำเสร็จแล้ว
ตรวจสอบ
เพิ่มรหัสเรียบร้อยแล้ว
ขนมปัง
ตัวแทนให้ข้อมูลที่สมบูรณ์เกี่ยวกับเซิร์ฟเวอร์ รายการแพ็คเกจที่ติดตั้ง อินเทอร์เฟซ พอร์ตเปิด และอื่นๆ อีกมากมาย ซึ่งคุณสามารถดูได้จากภาพหน้าจอด้านล่าง
คุณยังสามารถติดตั้งและควบคุมซอฟต์แวร์ได้ไม่เฉพาะบน linux แต่รวมถึงบน windows ด้วย ฉันไม่ได้ตรวจสอบอันหลัง ไม่จำเป็น ..
จากผู้เขียน
คุณต้องถามว่าเหตุใดจึงสร้างวงล้อขึ้นใหม่หากหุ่นยนต์และหุ่นกระบอกถูกประดิษฐ์ขึ้นมานานแล้ว?
ฉันตอบ: Ansible มีข้อเสีย เช่น เราไม่เห็นว่าการกำหนดค่านี้อยู่ในสถานะใด หรือทุกคนรู้สถานการณ์เมื่อคุณเริ่มบทบาทหรือ playbook แล้วเกิดข้อผิดพลาดขัดข้อง และคุณเริ่มปีนขึ้นไปบนเซิร์ฟเวอร์และดู แพ็คเกจใดได้รับการอัปเดตที่ไหน และฉันไม่ได้ทำงานกับหุ่นเชิด ..
Rudder มีข้อเสียอะไรบ้างไหม? เยอะมาก.. เริ่มจากที่เอเจนต์หลุดและต้องติดตั้งใหม่หรือใช้คำสั่งรีเซ็ตหางเสือ (แต่ยังไงก็ตาม ฉันยังไม่เคยเห็นสิ่งนี้ในเวอร์ชัน 6 เลย) ลงท้ายด้วยการตั้งค่าที่ซับซ้อนมากและอินเทอร์เฟซที่ไร้เหตุผล
มีข้อดีอะไรบ้าง? และยังมีข้อดีอีกมากมาย: แตกต่างจาก ansible ที่รู้จักกันดี เรามีเว็บอินเตอร์เฟสที่เราสามารถเห็นการปฏิบัติตามข้อกำหนดที่เราใช้ ตัวอย่างเช่น พอร์ตยื่นออกไปทั่วโลก สถานะไฟร์วอลล์อยู่ในสถานะใด มีการติดตั้งเจ้าหน้าที่รักษาความปลอดภัยหรือผู้หลงทางอื่นๆ หรือไม่
ซอฟต์แวร์นี้เหมาะสำหรับแผนกรักษาความปลอดภัยของข้อมูล เนื่องจากสถานะของโครงสร้างพื้นฐานมักจะปรากฏต่อหน้าต่อตาคุณเสมอ และหากกฎใดๆ สว่างขึ้นเป็นสีแดง นี่เป็นเหตุผลที่ควรเยี่ยมชมเซิร์ฟเวอร์ อย่างที่ผมบอก ผมใช้ Rudder มา 2 ปีแล้ว และถ้าคุณสูบมันสักหน่อย ชีวิตก็จะดีขึ้น สิ่งที่ยากที่สุดในโครงสร้างพื้นฐานขนาดใหญ่คือคุณจำไม่ได้ว่าเซิร์ฟเวอร์อยู่ในสถานะใด ไม่ว่าเดือนมิถุนายนจะพลาดการติดตั้งเอเจนต์ความปลอดภัยหรือกำหนดค่า iptables อย่างถูกต้อง หางเสือจะช่วยให้คุณทันทุกเหตุการณ์ Aware หมายถึงติดอาวุธ! )
ป.ล. มันมากกว่าที่ฉันวางแผนไว้มาก ฉันจะไม่อธิบายวิธีการติดตั้งแพ็คเกจ หากมีคำขอใด ๆ ฉันจะเขียนส่วนที่สอง
ป.ล. บทความนี้มีวัตถุประสงค์เพื่อให้ข้อมูล ฉันตัดสินใจที่จะแบ่งปันเพราะมีข้อมูลน้อยมากบนอินเทอร์เน็ต บางทีมันอาจจะเป็นที่สนใจของใครบางคน มีวันที่ดีเพื่อนรัก
เป็นโฆษณา
เซิร์ฟเวอร์มหากาพย์ - เป็น
ที่มา: will.com