วิธีป้องกัน GRUB ด้วยรหัสผ่าน (Linux)

ปกติเราใช้เวลาส่วนหนึ่งไปกับการทำอะไรดีๆ ป้องกันการเข้าถึงโดยไม่ได้รับอนุญาต ให้กับทีมของเรา: เรากำหนดค่าไฟร์วอลล์สิทธิ์ของผู้ใช้ ACL สร้างรหัสผ่านที่คาดเดายาก ฯลฯ ; แต่เราจำไม่ค่อยได้ ป้องกันการเริ่มต้นอุปกรณ์ของเรา.

หากบุคคลสามารถเข้าถึงคอมพิวเตอร์ได้พวกเขาสามารถรีสตาร์ทและ เปลี่ยนพารามิเตอร์ GRUB เพื่อให้ผู้ดูแลระบบสามารถเข้าถึงคอมพิวเตอร์ได้ เพียงเพิ่ม "1" หรือ "s" ต่อท้ายบรรทัด GRUB "kernel" เพื่อรับการเข้าถึงประเภทนั้น


เพื่อหลีกเลี่ยงปัญหานี้ GRUB สามารถป้องกันได้โดยใช้รหัสผ่านดังนั้นหากไม่ทราบจะไม่สามารถแก้ไขพารามิเตอร์ได้

หากคุณติดตั้งตัวโหลดบูต GRUB (ซึ่งเป็นเรื่องปกติมากที่สุดหากคุณใช้ลีนุกซ์รุ่นยอดนิยม) คุณสามารถป้องกันแต่ละรายการในเมนู GRUB ด้วยรหัสผ่าน ด้วยวิธีนี้ทุกครั้งที่คุณเลือกระบบปฏิบัติการที่จะบูตระบบจะขอรหัสผ่านที่คุณระบุไว้เพื่อบูตระบบ และเป็นโบนัสหากคอมพิวเตอร์ของคุณถูกขโมยผู้บุกรุกจะไม่สามารถเข้าถึงไฟล์ของคุณได้ ฟังดูดีใช่มั้ย?

GRUB 2

สำหรับรายการ Grub แต่ละรายการคุณสามารถกำหนดผู้ใช้ที่มีสิทธิ์ในการแก้ไขพารามิเตอร์ของรายการที่ปรากฏใน GRUB เมื่อเริ่มต้นระบบนอกเหนือจาก superuser (ผู้ที่มีสิทธิ์เข้าถึงเพื่อแก้ไข Grub โดยการกดปุ่ม "e") เราจะทำสิ่งนี้ในไฟล์ /etc/grub.d/00_header เราเปิดไฟล์ด้วยโปรแกรมแก้ไขที่เราชื่นชอบ:

sudo นาโน /etc/grub.d/00_header

ในตอนท้ายให้วางสิ่งต่อไปนี้:

แมว << อีโอเอฟ
ตั้งค่า superusers=”user1″
รหัสผ่านผู้ใช้ 1 รหัสผ่าน 1
EOF

โดยที่ user1 คือ superuser ตัวอย่าง:

แมว << อีโอเอฟ
ตั้ง superusers =” superuser”
รหัสผ่าน superuser 123456
EOF

หากต้องการสร้างผู้ใช้เพิ่มเติมให้เพิ่มผู้ใช้ด้านล่าง:

รหัสผ่าน superuser 123456

มันจะดูมากหรือน้อยดังนี้:

แมว << อีโอเอฟ
ตั้งค่า superusers = "superuser"
รหัสผ่าน superuser 123456
รหัสผ่าน user2 7890
EOF

เมื่อเราสร้างผู้ใช้ที่ต้องการได้แล้วเราจะบันทึกการเปลี่ยนแปลง

ปกป้อง Windows 

ในการป้องกัน Windows คุณต้องแก้ไขไฟล์ /etc/grub.d/30_os-prober

sudo นาโน /etc/grub.d/30_os-prober

มองหาโค้ดที่ระบุว่า:

menuentry "$ {LONGNAME} (บน $ {DEVICE})" {

ควรมีลักษณะดังนี้ (superuser เป็นชื่อของ superuser):

menuentry "$ {LONGNAME} (บน $ {DEVICE})" –users superuser {

 
บันทึกการเปลี่ยนแปลงและเรียกใช้:

sudo update-grub

ฉันเปิดไฟล์ /boot/grub/grub.cfg:

sudo นาโน /boot/grub/grub.cfg

และรายการ Windows อยู่ที่ไหน (ประมาณนี้):

menuentry "Windows XP Professional" {

เปลี่ยนเป็นสิ่งนี้ (ผู้ใช้ 2 เป็นชื่อของผู้ใช้ที่มีสิทธิ์การเข้าถึง):

menuentry "Windows XP Professional" - ผู้ใช้ user2 {

รีบูตและไป ตอนนี้เมื่อคุณพยายามเข้าสู่ Windows ระบบจะถามรหัสผ่านจากคุณ หากคุณกดปุ่ม "e" ระบบจะถามรหัสผ่านด้วย

ปกป้อง Linux

ในการป้องกันรายการเคอร์เนลของ Linux ให้แก้ไขไฟล์ /etc/grub.d/10_linux และมองหาบรรทัดที่ระบุว่า:

menuentry "$ 1" {

หากคุณต้องการให้ superuser สามารถเข้าถึงได้เท่านั้นควรมีลักษณะดังนี้:

menuentry "$ 1" - ผู้ใช้ user1 {

หากคุณต้องการให้ผู้ใช้คนที่สองสามารถเข้าถึงได้:

menuentry "$ 1" - ผู้ใช้ user2 {

คุณยังสามารถป้องกันรายการจากการตรวจสอบหน่วยความจำได้โดยแก้ไขไฟล์ /etc/grub.d/20_memtest:

menuentry "การทดสอบหน่วยความจำ (memtest86 +)" - ผู้ใช้ superuser {

ปกป้องรายการทั้งหมด

เพื่อป้องกันรายการทั้งหมดให้ทำงาน:

sudo sed -i -e '/ ^ menuentry / s / {/ –users superuser {/' /etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os-prober / etc / ด้วง d / 40_custom

ในการเลิกทำขั้นตอนนี้ให้เรียกใช้:

sudo sed -i -e '/ ^ menuentry / s / –users superuser [/ B] {/ {/' /etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os- prober /etc/grub.d/40_custom

ด้วง

เริ่มต้นด้วยการเปิดสภาพแวดล้อม GRUB ฉันเปิดเทอร์มินัลและเขียนว่า:

ด้วง

จากนั้นฉันป้อนคำสั่งต่อไปนี้:

md5crypt

ระบบจะถามรหัสผ่านที่คุณต้องการใช้ พิมพ์และพิมพ์ perison Enter คุณจะได้รับรหัสผ่านที่เข้ารหัสซึ่งคุณต้องเก็บอย่างระมัดระวัง ตอนนี้ด้วยสิทธิ์ของผู้ดูแลระบบฉันจึงเปิดไฟล์ /boot/grub/menu.lst ด้วยโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ:

sudo gedit /boot/grub/menu.lst

ในการตั้งรหัสผ่านให้กับรายการเมนู GRUB ที่คุณต้องการคุณต้องเพิ่มสิ่งต่อไปนี้ในแต่ละรายการที่คุณต้องการป้องกัน:

รหัสผ่าน --md5 my_password

โดยที่ my_password จะเป็นรหัสผ่าน (เข้ารหัส) ที่ส่งคืนโดย md5crypt: Before:

ชื่อ Ubuntu เคอร์เนล 2.6.8.1-2-386 (โหมดการกู้คืน)
รูท (hd1,2)
เคอร์เนล /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro single
initrd /boot/initrd.img-2.6.8.1-2-386

แล้ว:

ชื่อ Ubuntu เคอร์เนล 2.6.8.1-2-386 (โหมดการกู้คืน)
รูท (hd1,2)
เคอร์เนล /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro single
initrd /boot/initrd.img-2.6.8.1-2-386
password –md5 $1$w7Epf0$vX6rxpozznLAVxZGkcFcs

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

ชื่อ Ubuntu เคอร์เนล 2.6.8.1-2-386 (โหมดการกู้คืน)
ล็อค
รูท (hd1,2)
เคอร์เนล /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro single
initrd /boot/initrd.img-2.6.8.1-2-386
password –md5 $1$w7Epf0$vX6rxpozznLAVxZGkcFcs

ในครั้งต่อไปที่มีผู้ต้องการเริ่มระบบดังกล่าวพวกเขาจะต้องป้อนรหัสผ่าน

Fuente: เดลาโนเวอร์ & MakeUseOf & ฟอรัม Ubuntu & ผู้พัฒนา Elavdeveloper


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   Marcelo miranda dijo

    สวัสดีฉันต้องการความช่วยเหลือโปรดฉันต้องการปกป้องเคอร์เนลของระบบ Android ของฉันด้วยรหัสผ่านเพราะหากอุปกรณ์ถูกขโมยพวกเขาเปลี่ยน ROM และฉันจะไม่สามารถกู้คืนได้! หากคุณสามารถช่วยฉันได้ ... ฉันมีสิทธิ์เข้าถึง superuser แต่ฉันต้องการให้ฉันขอพาสเมื่อคุณทำให้อุปกรณ์อยู่ในโหมดดาวน์โหลด ขอบคุณล่วงหน้า.

  2.   Jose damian dijo

    ผลงานที่ยอดเยี่ยม สมัครรับข้อมูลแล้ว