X
تبلیغات
رایتل
Got Root? by JraNil
  
 
 
آرشیو
 
چهارشنبه 15 مرداد‌ماه سال 1382
Linux FTP Server HOWTO - قسمت دوم

شبیه سازی محیط برای Chroot

 

کاری که شما به اجبار باید انجام دهید ایجاد ساختمان فایل سیستم  root به همراه اجزا کافی و فایل های باینری و فایل های پسورد می باشد. این کار برای این است که به یونیکس این امکان را بدهید که یک کاربر با chroot وارد سیستم شود.

 


 

برای اینکه Wu-ftpd بتواند در این محیط شبیه سازی شده (زندان) کار کند مراحل زیر را باید انجام دهید:

 

 

        [root@deep ] /# mkdir /home/ftp/dev

        [root@deep ] /# mkdir /home/ftp/etc

        [root@deep ] /# mkdir /home/ftp/bin   

        [root@deep ] /# mkdir /home/ftp/lib   

 

 

سپس باید سطح دسترسی این دایرکتوری هایی را که ساخته اید تغییر دهید :

 

 

    [root@deep ] /# chmod 0511 /home/ftp/dev/

    [root@deep ] /# chmod 0511 /home/ftp/etc/

    [root@deep ] /# chmod 0511 /home/ftp/bin   

    [root@deep ] /# chmod 0511 /home/ftp/lib   

 

 

 

برای اینکه کاربران قادر به تغییری در فایل های باینری نباشند باید سطح دسترسی پوشه /bin را به 0111 تغییر دهید:

 

 

    [root@deep ] /# cp /bin/ls /home/ftp/bin           

    [root@deep ] /# chmod 0111 /bin/ls /home/ftp/bin/ls     

 

 

 

 

مثلا برای فعال کردن و شبیه سازی کامل دستور ls  در این محیط باید کارهای زیر را انجام دهیم:

 

ابتدا باید فایل های باینری مرتبط با این دستور را پیدا کنیم :

 

 

[root@deep ] /# ldd /bin/ls

 

 

 

[root@deep ] /# cp /lib/libc.so.6 /home/ftp/lib/

[root@deep ] /# cp /lib/ld-linux.so.2 /home/ftp/lib/

 

 

 

برای ادامه کار باید دایرکتوری null را شبیه سازی کنیم :

 

 

              [root@deep ] /# mknod /home/ftp/dev/null c 1 3

              [root@deep ] /# chmod 666 /home/ftp/dev/null

 

 

حالا باید گروه ها و پسورد ها را شبیه سازی کنیم.برای تامین امنیت لازم تمام کاربران به جز کاربر ftp و super-user را باید از این فایل ُها  (passwd  و group ) را از بین ببریم.

 

 

                [root@deep ] /# cp /etc/passwd /home/ftp/etc/

                [root@deep ] /# cp /etc/group /home/ftp/etc/

 

 

بعد از کپی کردن با استفاده از vi باید فایل ها را تغییر دهیم.

بعد از تغییر فایل passwd محتویات آن حتما باید مانند الگوی زیر باشد.

 

vi /home/ftp/etc/passwd         

 

 

                root:x:0:0:root:/:/dev/null

                ftpadmin:x:502:502::/ftpadmin/:/dev/null

 

 

حتما متوجه این نکته شده اید که شل ورود ( login shell) برای کاربر root باید /dev/null تنظیم شده باشد.علت آن است که اگر کاربر ftp به هر شکلی توانست به این سطح دسترسی ،دسترسی پیدا کند،نتواند کاری انجام دهد.

 

 

و بعد از ویرایش group باید به شکل زیر باشد:

 

vi /home/ftp/etc/group           

 

 

                root:x:0:root

                ftpadmin:x:502:

 

 

 

و برای امنیت بیشتر باید passwd  و group  را تغییر ناپذیر (immutable  ) کنیم :

 

 

                [root@deep ] /# cd /home/ftp/etc/

                [root@deep ] /# chattr +i passwd

 

 

                [root@deep ] /# cd /home/ftp/etc/

                [root@deep ] /# chattr +i group

 

 


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

این بحث ادامه دارد.
موفق باشید. 


برای عضویت در خبرنامه این وبلاگ نام کاربری خود در سیستم بلاگ اسکای را وارد کنید
نام کاربری
 
تعداد بازدیدکنندگان : 179048


Powered by BlogSky.com

عناوین آخرین یادداشت ها