วิธีปิดบังบริการโดยใช้คำสั่ง systemctl

Withi Pidbang Brikar Doy Chi Kha Sang Systemctl



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

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

ในคู่มือนี้ ฉันจะอธิบายวิธีการพรางบริการบน Linux โดยใช้ systemctl และวิธีการเปิดโปงบริการ นอกจากนี้ ฉันจะกล่าวถึงความแตกต่างที่สำคัญระหว่างบริการที่ปิดบังและบริการที่ถูกปิดใช้งาน







คำเตือน: บน Linux บริการต่างๆ จะพึ่งพาซึ่งกันและกัน เนื่องจากการมาสก์บริการจะปิดการใช้งานและห้ามการเปิดใช้งานใด ๆ ดังนั้นจึงควรใช้อย่างระมัดระวัง



ก่อนที่จะไปไกลกว่านี้ เรามาทำความเข้าใจกลไกเบื้องหลังบริการที่ปิดบังกันก่อน



บริการสวมหน้ากากคืออะไร

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





วิธีแสดงรายการบริการที่สวมหน้ากาก

หากต้องการแสดงรายการบริการที่ปกปิดบน Linux ให้ใช้ รายการหน่วย ตัวเลือกที่มีสถานะดังกล่าวถูกสวมหน้ากาก

หน่วยรายการ systemctl --สถานะ = สวมหน้ากาก



วิธีการปกปิดการบริการ

คำสั่ง systemctl สามารถใช้เพื่อปกปิดบริการใดๆ ด้วย หน้ากาก ตัวเลือก. ไวยากรณ์ทั่วไปของคำสั่งมีการกล่าวถึงด้านล่าง

ซูโดะ หน้ากาก systemctl [ บริการ-ชื่อ ]

ตัวเลือกมาสก์ในรูปแบบข้างต้นจะสร้างลิงก์สัญลักษณ์ไปยังบริการใน /etc/systemd/system .

นอกจากนี้ยังสามารถกล่าวถึงบริการตั้งแต่หนึ่งรายการขึ้นไป โดยคั่นด้วยช่องว่าง

มาปิดบังบริการ SSH โดยใช้ไวยากรณ์ด้านบน

ซูโดะ systemctl หน้ากาก ssh.service

หากต้องการตรวจสอบสถานะของบริการที่ปิดบัง ให้ใช้ –รัฐ= ตัวเลือกด้วย หน่วยรายการ systemctl .

หากคุณพยายามเริ่มบริการ คุณจะได้รับเอาต์พุตแจ้งว่าหน่วยถูกปิดบัง

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

วิธีปิดบังบริการชั่วคราว

สามารถปิดบังบริการได้จนกว่าจะบูตครั้งถัดไปโดยใช้ –รันไทม์ ตัวเลือก.

ซูโดะ หน้ากาก systemctl [ บริการ-ชื่อ ] --รันไทม์

มันสร้างลิงค์สัญลักษณ์ของบริการใน /รัน/systemd/system ไดเรกทอรี หากลิงก์สัญลักษณ์ของบริการมีอยู่แล้วในไดเร็กทอรี แสดงว่าบริการนั้นได้รับการออกแบบมาให้ปิดบังชั่วคราว

วิธีเปิดโปงบริการ

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

ซูโดะ systemctl เปิดโปง [ บริการ-ชื่อ ]

คุณอาจต้องรีบูทระบบหลังจากเปิดโปงบริการ

ความแตกต่างระหว่างบริการ Masked และบริการที่ปิดใช้งาน

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

เมื่อบริการถูกปิดใช้งาน ลิงก์สัญลักษณ์ที่ถูกสร้างขึ้นใน /etc/systemd/system ไดเร็กทอรีถูกลบออก และบริการไม่เปิดใช้งานขณะบู๊ต แต่สามารถเปิดใช้งานได้โดยบริการที่ต้องพึ่งพา

ในทางกลับกัน บริการที่ปกปิดจะเชื่อมโยงกับ /dev/null ซึ่งทำให้ไม่สามารถใช้งานได้อย่างถาวร

โปรดทราบว่า /dev ไดเร็กทอรีประกอบด้วยไฟล์ของอุปกรณ์บล็อก ที่ /dev/null เป็นอุปกรณ์เสมือนที่จะลบสิ่งที่เขียนลงไป โดยทั่วไปจะใช้เพื่อละทิ้งเอาต์พุตจาก stdout และ stderr

บทสรุป

หากคุณต้องการปิดการใช้งานบริการอย่างถาวร ให้ใช้คำสั่ง systemctl mask ไม่สามารถเปิดใช้งานบริการที่ปิดบังได้แม้กระทั่งโดยระบบ ในคู่มือนี้ ฉันได้กล่าวถึงวิธีการปกปิดบริการอย่างถาวรและชั่วคราว นอกจากนี้เรายังกล่าวถึงวิธีการเปิดโปงบริการและความแตกต่างที่สำคัญระหว่างบริการที่ปิดบังและบริการที่ปิดใช้งาน