เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | เนื้อหา | ถัดไป>

10.2.3. สถานะเกลือและคุณสมบัติอื่นๆ‌


แม้ว่าการดำเนินการจากระยะไกลจะเป็นหน่วยการสร้างที่สำคัญ แต่ก็เป็นเพียงเศษเสี้ยวของสิ่งที่ SaltStack สามารถทำได้

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

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

https://docs.saltstack.com/en/latest/topics/development/conventions/formulas. html

มีคุณสมบัติอื่น ๆ อีกมากมายที่สามารถรวมกันได้:

• การดำเนินการตามกำหนดเวลาของการดำเนินการ

• กำหนดการกระทำเพื่อตอบสนองต่อเหตุการณ์ที่เกิดจากมินเนี่ยน

• รวบรวมข้อมูลจากมินเนี่ยน

• การจัดลำดับการทำงานของมินเนี่ยนหลายตัว

• การใช้สถานะบน SSH โดยไม่ต้องติดตั้งบริการ Salt-minion

• การจัดเตรียมระบบบนโครงสร้างพื้นฐานคลาวด์และนำอยู่ภายใต้การจัดการ

• และอื่น ๆ

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

https://docs.saltstack.com/en/latest/

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

เพื่อให้คุณได้ลิ้มรสว่าการทำงานกับไฟล์สถานะเป็นอย่างไร เราจะครอบคลุมตัวอย่างง่ายๆ: วิธีเปิดใช้งานที่เก็บ APT และติดตั้งแพ็คเกจที่คุณสร้างในหัวข้อ 10.3.3 “การสร้างที่เก็บแพ็คเกจสำหรับ APT” [หน้า 269] และส่วนที่ 10.3.2 “การสร้างแพ็คเกจการกำหนดค่า” [หน้า 263] คุณจะต้องลงทะเบียนคีย์ SSH ในบัญชีของรูทเพื่อให้คุณสามารถเข้าสู่ระบบจากระยะไกลได้ในกรณีที่เกิดปัญหา

โดยค่าเริ่มต้น ไฟล์สถานะจะถูกเก็บไว้ใน /srv/เกลือ บนเจ้านาย; เป็นไฟล์ที่มีโครงสร้าง YAML ที่มี a .sls ส่วนขยาย. เช่นเดียวกับการรันคำสั่ง การใช้สถานะขึ้นอยู่กับโมดูลสถานะจำนวนมาก:

https://docs.saltstack.com/en/latest/topics/tutorials/starting_states.html

https://docs.saltstack.com/en/latest/ref/states/all/

ของคุณ /srv/salt/offsec.sls file จะเรียกสามโมดูลเหล่านั้น:


offsec_repository: pkgrepo. จัดการ:

- ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main

- ไฟล์: /etc/apt/sources.list.d/offsec.list

- key_url: เกลือ://offsec-apt-key.asc

- need_in:

- pkg: ค่าเริ่มต้น offsec


ค่าเริ่มต้นของ offsec: pkg.installed


ssh_key_for_root: ssh_auth.ปัจจุบัน:

- ผู้ใช้: root

- ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali

offsec_repository: pkgrepo. จัดการ:

- ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main

- ไฟล์: /etc/apt/sources.list.d/offsec.list

- key_url: เกลือ://offsec-apt-key.asc

- need_in:

- pkg: ค่าเริ่มต้น offsec


ค่าเริ่มต้นของ offsec: pkg.installed


ssh_key_for_root: ssh_auth.ปัจจุบัน:

- ผู้ใช้: root

- ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali


พื้นที่ offsec_repository รัฐพึ่งพา พีเคเกรโป โมดูลสถานะ ตัวอย่างใช้ การจัดการ

ทำงานในโมดูลสถานะนั้นเพื่อลงทะเบียนที่เก็บแพ็คเกจ กับ คีย์_url คุณลักษณะ คุณ

ให้เกลือรู้ว่าคีย์ GPG (หุ้มเกราะ ASCII) ที่จำเป็นในการตรวจสอบลายเซ็นของที่เก็บสามารถดึงมาจาก /srv/salt/offsec-apt-key.asc บนต้นแบบเกลือ NS ต้องการ_in คุณลักษณะช่วยให้มั่นใจได้ว่าสถานะนี้ได้รับการประมวลผลก่อน offsec-ค่าเริ่มต้นเนื่องจากตัวหลังต้องการที่เก็บที่กำหนดค่าไว้อย่างถูกต้องจึงจะสามารถติดตั้งแพ็คเกจได้

พื้นที่ offsec-ค่าเริ่มต้น state ติดตั้งแพ็คเกจที่มีชื่อเดียวกัน นี่แสดงว่าชื่อของคีย์มักจะเป็นค่าที่สำคัญสำหรับรัฐ แม้ว่าจะสามารถแทนที่ด้วย a . ได้เสมอ ชื่อ แอตทริบิวต์ (ตามที่ได้ทำสำหรับรัฐเดิม) สำหรับกรณีง่าย ๆ เช่นนี้ สิ่งนี้สามารถอ่านได้และกระชับ

สถานะสุดท้าย (ssh_key_for_root) เพิ่มคีย์ SSH ที่ระบุใน ชื่อ คุณลักษณะของ /root/.ssh/ Author_keys (ผู้ใช้เป้าหมายถูกตั้งค่าใน ผู้ใช้งาน คุณลักษณะ). โปรดทราบว่าเราได้ย่อคีย์เพื่อให้อ่านง่ายที่นี่ แต่คุณควรใส่คีย์แบบเต็มในแอตทริบิวต์ชื่อ

ไฟล์สถานะนี้สามารถนำไปใช้กับมินเนี่ยนที่กำหนดต่อไปได้:


เซิร์ฟเวอร์# เกลือ kali-scratch state.apply offsec

กาลี-รอยขีดข่วน:

----------

ID: offsec_repository ฟังก์ชัน: pkgrepo.managed

ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main ผลลัพธ์: True

ความคิดเห็น: แพ็คเกจ repo ที่กำหนดค่า 'deb http://pkgrepo.offsec.com offsec-internal

หลัก'

เริ่มเวลา: 06:00:15.767794

Duration: 4707.35 ms การเปลี่ยนแปลง:

----------

ซื้อคืน:

deb http://pkgrepo.offsec.com offsec-internal หลัก

----------

ID: offsec-defaults ฟังก์ชัน: pkg.installed

ผลลัพธ์: จริง

ความคิดเห็น: แพ็คเกจต่อไปนี้ได้รับการติดตั้ง/อัปเดต: offsec-defaults เริ่มการทำงาน: 06:00:21.325184

Duration: 19246.041 ms การเปลี่ยนแปลง:

----------

offsec-ค่าเริ่มต้น:

----------

ใหม่:

1.0

เก่า:

----------

ID: ssh_key_for_root ฟังก์ชัน: ssh_auth.present

เซิร์ฟเวอร์# เกลือ kali-scratch state.apply offsec

กาลี-รอยขีดข่วน:

----------

ID: offsec_repository ฟังก์ชัน: pkgrepo.managed

ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main ผลลัพธ์: True

ความคิดเห็น: แพ็คเกจ repo ที่กำหนดค่า 'deb http://pkgrepo.offsec.com offsec-internal

หลัก'

เริ่มเวลา: 06:00:15.767794

Duration: 4707.35 ms การเปลี่ยนแปลง:

----------

ซื้อคืน:

deb http://pkgrepo.offsec.com offsec-internal หลัก

----------

ID: offsec-defaults ฟังก์ชัน: pkg.installed

ผลลัพธ์: จริง

ความคิดเห็น: แพ็คเกจต่อไปนี้ได้รับการติดตั้ง/อัปเดต: offsec-defaults เริ่มการทำงาน: 06:00:21.325184

Duration: 19246.041 ms การเปลี่ยนแปลง:

----------

offsec-ค่าเริ่มต้น:

----------

ใหม่:

1.0

เก่า:

----------

ID: ssh_key_for_root ฟังก์ชัน: ssh_auth.present


ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali ผลลัพธ์: จริง

ความคิดเห็น: เพิ่มโฮสต์คีย์ที่ได้รับอนุญาต AAAAB3NzaC1yc2...89C4N สำหรับรูทผู้ใช้แล้ว เริ่มต้น: 06:00:40.582539

Duration: 62.103 ms การเปลี่ยนแปลง:

---------- AAAAB3NzaC1yc2...89C4N:

ใหม่


สรุปกาลีเกา

------------

สำเร็จ: 3 (เปลี่ยนแปลง=3)

ล้มเหลว: 0

------------

สถานะทั้งหมดทำงาน: 3

เวลาทำงานทั้งหมด: 24.015 s

ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali ผลลัพธ์: จริง

ความคิดเห็น: เพิ่มโฮสต์คีย์ที่ได้รับอนุญาต AAAAB3NzaC1yc2...89C4N สำหรับรูทผู้ใช้แล้ว เริ่มต้น: 06:00:40.582539

Duration: 62.103 ms การเปลี่ยนแปลง:

---------- AAAAB3NzaC1yc2...89C4N:

ใหม่


สรุปกาลีเกา

------------

สำเร็จ: 3 (เปลี่ยนแปลง=3)

ล้มเหลว: 0

------------

สถานะทั้งหมดทำงาน: 3

เวลาทำงานทั้งหมด: 24.015 s


นอกจากนี้ยังสามารถเชื่อมโยงกับมินเนี่ยนอย่างถาวรโดยบันทึกลงใน /srv/salt/top.sls

ไฟล์ซึ่งใช้โดย รัฐ.ไฮสเตท คำสั่งเพื่อใช้สถานะที่เกี่ยวข้องทั้งหมดในครั้งเดียว:


เซิร์ฟเวอร์# แมว /srv/salt/top.sls

ฐาน:

กาลี-รอยขีดข่วน:

- ออฟเซ

เซิร์ฟเวอร์# เกลือกาลีเกา state.highstate

กาลี-รอยขีดข่วน:

----------

ID: offsec_repository ฟังก์ชัน: pkgrepo.managed

ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main ผลลัพธ์: True

ความคิดเห็น: แพ็คเกจ repo 'deb http://pkgrepo.offsec.com offsec-internal main' แล้ว

กำหนดค่าเริ่มต้น: 06:06:20.650053

Duration: 62.805 ms การเปลี่ยนแปลง:

----------

ID: offsec-defaults ฟังก์ชัน: pkg.installed

ผลลัพธ์: จริง

ความคิดเห็น: ติดตั้งแพ็คเกจ offsec-defaults แล้ว เริ่ม: 06:06:21.436193

Duration: 385.092 ms การเปลี่ยนแปลง:

----------

รหัส: ssh_key_for_root

เซิร์ฟเวอร์# แมว /srv/salt/top.sls

ฐาน:

กาลี-รอยขีดข่วน:

- ออฟเซ

เซิร์ฟเวอร์# เกลือกาลีเกา state.highstate

กาลี-รอยขีดข่วน:

----------

ID: offsec_repository ฟังก์ชัน: pkgrepo.managed

ชื่อ: deb http://pkgrepo.offsec.com offsec-internal main ผลลัพธ์: True

ความคิดเห็น: แพ็คเกจ repo 'deb http://pkgrepo.offsec.com offsec-internal main' แล้ว

กำหนดค่าเริ่มต้น: 06:06:20.650053

Duration: 62.805 ms การเปลี่ยนแปลง:

----------

ID: offsec-defaults ฟังก์ชัน: pkg.installed

ผลลัพธ์: จริง

ความคิดเห็น: ติดตั้งแพ็คเกจ offsec-defaults แล้ว เริ่ม: 06:06:21.436193

Duration: 385.092 ms การเปลี่ยนแปลง:

----------

รหัส: ssh_key_for_root


ฟังก์ชัน: ssh_auth.present

ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali ผลลัพธ์: จริง

ความคิดเห็น: รหัสโฮสต์ที่ได้รับอนุญาต AAAAB3NzaC1yc2...89C4N มีอยู่แล้วสำหรับ

ผู้ใช้ราก

เริ่มเวลา: 06:06:21.821811

Duration: 1.936 ms การเปลี่ยนแปลง:


สรุปกาลีเกา

------------

ประสบความสำเร็จ: 3

ล้มเหลว: 0

------------

สถานะทั้งหมดทำงาน: 3

เวลาทำงานทั้งหมด: 449.833 ms

ฟังก์ชัน: ssh_auth.present

ชื่อ: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali ผลลัพธ์: จริง

ความคิดเห็น: รหัสโฮสต์ที่ได้รับอนุญาต AAAAB3NzaC1yc2...89C4N มีอยู่แล้วสำหรับ

ผู้ใช้ราก

เริ่มเวลา: 06:06:21.821811

Duration: 1.936 ms การเปลี่ยนแปลง:


สรุปกาลีเกา

------------

ประสบความสำเร็จ: 3

ล้มเหลว: 0

------------

สถานะทั้งหมดทำงาน: 3

เวลาทำงานทั้งหมด: 449.833 ms


ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: