-
September 4th, 2015, 18:07
#1
عضو انجمن
open_basedir ایجاد امنیت با استفاده از فایل .user.ini
با سلام
من یک اسکریپت برای سی پنل نوشتم که با ایجاد اکانت جدید یک فایل .user.ini داخل پوشه public_html با نام user.ini می سازه و مقدار زیر رو در اون ست می کنه :
کد:
open_basedir = /home/username/:/tmp:/usr/local/lib/
همه چه عالی هست . اما یک مشکل هست مجبورم پریمش رو 644 ست کنم تا اجرا بشه . با این وجود که صاحب فایل root هست ولی کاربر می تونه اونو با فایل منجر سی پنل باز و ویرایش کنه . در هر حال بالاتر از /home نمی تونه ست بشه ولی خب بازم از لحاض امنیتی مشکلزاست .
راهکار چیست ؟
-
-
September 4th, 2015 18:07
# ADS
-
September 5th, 2015, 02:08
#2
عضو انجمن
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
دلیل اینکه شما میخواهید برای هر کاربر یک open_basedir جدا تعریف کنید چیست ؟
گمراهان دو دسته اند:
آنان که خواندند و اندیشه نکردند
آنان که نخواندند و یقین آوردند.
-
-
September 5th, 2015, 13:10
#3
عضو انجمن
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
![نقل قول](images/misc/quote_icon.png)
نوشته اصلی توسط
OnlineServer
دلیل اینکه شما میخواهید برای هر کاربر یک open_basedir جدا تعریف کنید چیست ؟
خب ایطوری کدهای php فقط به داخل پوشه همون یوزر دسترسی داره .
مثلا این فایل رو نگاه کنید : http://sys.science/new/index.php
-
-
September 5th, 2015, 15:05
#4
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
سلام.
شما می توانید open_basedir مقدار زیر را در php.ini اصلی سرور تعریف کنید :
/home/:/usr/lib/php:/usr/local/lib/php:/tmp
-
-
September 5th, 2015, 15:24
#5
عضو انجمن
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
![نقل قول](images/misc/quote_icon.png)
نوشته اصلی توسط
Yas-Host
سلام.
شما می توانید open_basedir مقدار زیر را در php.ini اصلی سرور تعریف کنید :
/home/:/usr/lib/php:/usr/local/lib/php:/tmp
ممنون همینکارو کردم قبلا. حالا با این روش بازم دسترسی رو محدود می شه کرد به داخل خود اکانت . با فعال بودن suphp
مثلا برای اکانت ali
open_basedir = /home/ali/:/tmp:/usr/local/lib/
من جواب گرفتم و فعالیت کدهای به داخل پوشه /home/ali محدود شده ( البته با تعیین پریمشن هم می شه اینکارو کرد) . الان می خوام با پریمشن کاری کنم که یوزر نتونه فایل user.ini داخل public_html خودش رو به هیچ صورتی ویرایش کنه .
الان روی 644 (با owner root ) ست کردم . اگر سطحشو پایینتر بیارم این گزینه اعمال نمی شه . خودتون یک تستی کنید ببینید کاراییشو ..
-
-
September 5th, 2015, 15:28
#6
عضو دائم
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
![نقل قول](images/misc/quote_icon.png)
نوشته اصلی توسط
alimosavi
ممنون همینکارو کردم قبلا. حالا با این روش بازم دسترسی رو محدود می شه کرد به داخل خود اکانت . با فعال بودن suphp
مثلا برای اکانت ali
open_basedir = /home/ali/:/tmp:/usr/local/lib/
من جواب گرفتم و فعالیت کدهای به داخل پوشه /home/ali محدود شده ( البته با تعیین پریمشن هم می شه اینکارو کرد) . الان می خوام با پریمشن کاری کنم که یوزر نتونه فایل user.ini داخل public_html خودش رو به هیچ صورتی ویرایش کنه .
الان روی 644 (با owner root ) ست کردم . اگر سطحشو پایینتر بیارم این گزینه اعمال نمی شه . خودتون یک تستی کنید ببینید کاراییشو ..
درود
دوست عزیز جدا از ownership میتوانید Read only کنید فایل فوق را که یوزر نتواند تغییر دهد و همینطور میتوان از chattr freez استفاده کرد و فایل فوق را فریز نمود.
:: کارشناس فنی هاستینگ و مدیریت سرور
:: کانفیگ حرفه ای سرور مجازی و اختصاصی و رفع اشکال سرور از سال 1388
:: وب سایت :
www.nginxweb.ir | تلفن شرکت:
02191300834
-
تعداد تشکر ها از nginxweb به دلیل پست مفید
-
September 5th, 2015, 15:51
#7
عضو انجمن
پاسخ : open_basedir ایجاد امنیت با استفاده از فایل .user.ini
![نقل قول](images/misc/quote_icon.png)
نوشته اصلی توسط
nginxweb
درود
دوست عزیز جدا از ownership میتوانید Read only کنید فایل فوق را که یوزر نتواند تغییر دهد و همینطور میتوان از chattr freez استفاده کرد و فایل فوق را فریز نمود.
ممنون از شما. حالا در کل شیوه خوبی هست اینکار ؟ یعنی همین تعیین open_basedir داخل این فایل ؟
-