วิธีการสร้างโปรไฟล์ AppArmor เพื่อล็อคโปรแกรมบน Ubuntu
AppArmor ล็อคโปรแกรมในระบบ Ubuntu ของคุณอนุญาตเฉพาะสิทธิ์ที่จำเป็นต้องใช้ในการใช้งานปกติ - มีประโยชน์อย่างยิ่งสำหรับซอฟต์แวร์เซิร์ฟเวอร์ที่อาจถูกบุกรุก AppArmor มีเครื่องมือง่ายๆที่คุณสามารถใช้เพื่อล็อคแอปพลิเคชันอื่น ๆ.
AppArmor รวมอยู่ในค่าเริ่มต้นใน Ubuntu และ Linux อื่น ๆ Ubuntu จัดส่ง AppArmor ด้วยโปรไฟล์หลายโปรไฟล์ แต่คุณสามารถสร้างโปรไฟล์ AppArmor ของคุณเองได้ ยูทิลิตี้ของ AppArmor สามารถตรวจสอบการทำงานของโปรแกรมและช่วยคุณสร้างโปรไฟล์.
ก่อนที่จะสร้างโปรไฟล์ของคุณเองสำหรับแอปพลิเคชันคุณอาจต้องการตรวจสอบแพ็คเกจ apparmor-profiles ในที่เก็บของ Ubuntu เพื่อดูว่ามีโปรไฟล์สำหรับแอปพลิเคชันที่คุณต้องการ จำกัด อยู่หรือไม่.
สร้างและเรียกใช้แผนการทดสอบ
คุณจะต้องเรียกใช้โปรแกรมในขณะที่ AppArmor กำลังดูอยู่และเดินผ่านฟังก์ชั่นปกติทั้งหมด โดยทั่วไปคุณควรใช้โปรแกรมตามที่จะใช้ในการใช้งานปกติ: เริ่มโปรแกรมหยุดมันโหลดซ้ำและใช้คุณสมบัติทั้งหมดของมัน คุณควรออกแบบแผนการทดสอบที่ผ่านฟังก์ชั่นที่โปรแกรมจำเป็นต้องดำเนินการ.
ก่อนดำเนินการตามแผนทดสอบของคุณให้เรียกใช้เทอร์มินัลแล้วเรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้งและเรียกใช้ aa-genprof:
sudo apt-get install apparmor-utils
sudo aa-genprof / path / to / binary
ปล่อยให้ aa-genprof ที่รันอยู่ในเทอร์มินัลเริ่มโปรแกรมและทำงานผ่านแผนการทดสอบที่คุณออกแบบไว้ด้านบน ยิ่งแผนการทดสอบของคุณครอบคลุมมากขึ้นปัญหาที่คุณจะพบเจอก็จะน้อยลง.
หลังจากดำเนินการตามแผนทดสอบเสร็จแล้วให้กลับไปที่เทอร์มินัลแล้วกดปุ่ม S กุญแจสำคัญในการสแกนบันทึกของระบบสำหรับเหตุการณ์ AppArmor.
สำหรับแต่ละเหตุการณ์คุณจะได้รับแจ้งให้เลือกการกระทำ ตัวอย่างเช่นด้านล่างเราจะเห็นว่า / usr / bin / man ซึ่งเราทำโปรไฟล์ดำเนินการ / usr / bin / tbl เราสามารถเลือกได้ว่า / usr / bin / tbl ควรสืบทอดการตั้งค่าความปลอดภัยของ / usr / bin / man หรือไม่ว่าควรรันด้วยโปรไฟล์ AppArmor ของตนเองหรือไม่หรือควรรันในโหมดที่ไม่ได้กำหนดไว้.
สำหรับการทำงานอื่น ๆ คุณจะเห็นข้อความแจ้งต่าง ๆ - ที่นี่เราอนุญาตให้เข้าถึง / dev / tty ซึ่งเป็นอุปกรณ์ที่แสดงถึงเทอร์มินัล
เมื่อสิ้นสุดกระบวนการคุณจะได้รับแจ้งให้บันทึกโปรไฟล์ AppArmor ใหม่ของคุณ.
การเปิดใช้งานโหมดการร้องเรียนและปรับแต่งโปรไฟล์
หลังจากสร้างโปรไฟล์ให้ใส่ไว้ใน“ โหมดบ่น” โดยที่ AppArmor จะไม่ จำกัด การกระทำที่ทำได้ แต่จะบันทึกข้อ จำกัด ใด ๆ ที่อาจเกิดขึ้นแทน:
sudo aa-บ่น / path / to / binary
ใช้โปรแกรมตามปกติชั่วขณะหนึ่ง หลังจากใช้งานได้ตามปกติในโหมดบ่นให้รันคำสั่งต่อไปนี้เพื่อสแกนบันทึกระบบของคุณเพื่อหาข้อผิดพลาดและอัพเดตโปรไฟล์:
sudo aa-logprof
การใช้โหมดบังคับใช้เพื่อล็อคแอปพลิเคชัน
หลังจากปรับแต่งโปรไฟล์ AppArmor ของคุณเสร็จแล้วให้เปิดใช้งาน“ โหมดบังคับใช้” เพื่อล็อคแอปพลิเคชัน:
sudo aa-enforce / path / to / binary
คุณอาจต้องการเรียกใช้ sudo aa-logprof สั่งในอนาคตเพื่อปรับแต่งโปรไฟล์ของคุณ.
โปรไฟล์ AppArmor เป็นไฟล์ข้อความธรรมดาดังนั้นคุณสามารถเปิดได้ในโปรแกรมแก้ไขข้อความและปรับแต่งด้วยมือ อย่างไรก็ตามสาธารณูปโภคดังกล่าวข้างต้นจะแนะนำคุณตลอดกระบวนการ.