ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : امن سازی grub boot loader در لینوکس



omidda
September 17th, 2013, 11:07
ایمن سازی grub boot loader در سیستم عامل لینوکس بسیار مهم است. در صورتی رمز عبور برای grub سیستم شما وجود نداشته باشد، شخصی نسبتاً حرفه ای با دسترسی فیزیکی به سرور یا کامپیوتر شخصی شما، توانایی دسترسی به تمامی قسمت های سیستم عامل شما را خواهد داشت و حتی می تواند کلمه عبور کاربر root سیستم شما را عوض نماید.
اقدامات امنیت جلوگیری از این مخاطره امنیتی را در ادامه مطلب بخوانید.

رمز گذاری بروی Grub boot loader
با دستور grub-md5-crypt یک کلمه عبور به انتخاب خود وارد کنید. سپس مجددا کلمه عبور را وارد کنید. نتیجه رشته رمز نگاری شده با الگوریتم MD5 است. رشته را کپی کنید.



#grub-md5-crypt
Password:
Retype password:
$1$A7ypL1$2jmgnGOnrgjqO4bPlmTyA/

با دستور vi فایل پیکربندی grub را ویرایش کنید.
#vi /boot/grub/menu.lst
سپس خط قرمز را به فایل پیکربندی بیافزایید.(کلید i برای ویرایش در محیط vi. دستور :wq برای ذخیره و خروج از مجیط vi)


# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/vg_webserver-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
password --md5 $1$A7ypL1$2jmgnGOnrgjqO4bPlmTyA/
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-358.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=/dev/mapper/vg_webserver-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_webserver/lv_swap rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_webserver/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-358.el6.x86_64.img


ایجاد الزام به وارد کردن رمز کاربر root حتی در Single user mode
سیستم عامل لینوکس دارای run level های مختلفی است (مانند ویندوز که Safe mode را دارد). run level 1 مربوط به Single User Mode است سیستم عامل در حالتی بوت می شود که تمامی سرویس ها پایین است. بصورت پیش فرض اگر کاربر با Single User Mode سیستم عامل را بوت کند. با دسترسی root وارد می شود و کلمه عبوری از او خواسته نمی شود.

در ویرایش Redhat 5


vi /etc/sysconfig/inittab

خط قرمز مشخص شده را به فایل inittab بیفزایید.



xx:S:wait:/sbin/sulogin
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:




در نسخه Cent Os 6.0 یا Redhat 6.0

vi /etc/sysconfig/init

## CHANGE LINE
SINGLE=/sbin/sushell
to
SINGLE=/sbin/sulogin
توجه: سیستم عامل شما پس از انجام موارد فوق از طریق CD bootable و Live قابل دسترسی خواهد بود. جهت جلوگیری از این تهدید نیاز به محدود کردن دسترسی فیزیکی به سیستم، خارج کردن DVD Rom و CD Rom در صورت عدم استفاده و یا Encrypt کردن هارد دیسک است.
منبع: کارشناس فنی www.techexpert.ir (http://www.techexpert.ir)