آشنایی با مبانی و نکات مهم در امنیت کامپیوتر و ابزارهای دیجیتالی هدف نگهبان است. در اینجا به زبان ساده خواهید آموخت که چگونه در مقابل ویروس ها، هکرها و... خلاصه تهدیدهای دنیای دیجیتال عمل کنید. نگهبان تلاش می کند مطالب را برای انواع کاربران ارایه کند. بنابراین اگر یک کاربر معمولی کامپیوتر و اینترنت هستید. اگر وبلاگ می نویسید و یا اگر مدیر وب سایت هستید، اینجا برای شما است...


چگونه XAMPP را امن تر کنیم

سطح بندی مطلب: 
متوسط

اشاره: XAMPP یک پکیج رایگان و باز منبع برای سرور های وب, با پشتیبانی از سیسم عامل های مختلف است که از برنامه های Apache HTTP Server، پایگاه داده MySQL، و مترجم هایی برای زبانهای برنامه نویسی PHP و Perl تشکیل یافته است.


این مجموعه مقالات مروری کلی بر بحث های مرتبط با امن تر کردن XAMPP خواهد داشت. از آنجا که وقت ما محدود است ، ممکن است بین انتشار هر مقاله ای با مقاله بعدی فاصله کمی بیافتد ، بنابراین کمی حوصله کرده و با ما در ارتباط باشید.


هدف از ارائه این راهنما کمک به شما برای بالا بردن امنیت XAMPP است. خود XAMPP در حال حاضر برخی از راه های افزایش امنیت را برای کاربران فراهم می کند، اما حتی پس از انجام آنچه طراحان آن توصیه کرده اند، باز هم برخی راه های موثر برای بالا بردن امنیت هستند که به آنها خواهیم پرداخت.


توجه داشته باشید که در این مقالات فقط قرار است که امنیت زمپ را افزایش دهیم، اما ادعا نمی کنیم که با این راهنمایی ها آن را به طور کامل امن خواهید ساخت. اگر سعی کنید با این اقدامات امنیتی XAMPP را در اینترنت مورد استفاده قرار دهید، ریسک بروز حملات امنیتی به عهده خودتان است. ما هم به هیچ وجه ضمانت نمی کنیم که با انجام این ترفندها تمام حفره های امنیتی برنامه پوشانده می شوند. ضمنا دستورالعملی که در اینجا می آید برای یک کاربر مبتدی XAMPP نوشته شده است.


این راهنما در اصل برای کامپیوترهای تحت ویندوز آماده شده، اما بسیاری از اصول آن می تواند در دیگر سیستم عامل ها مانند لینوکس یا مک OS X کاربرد داشته باشد

 

خلاصه ای از مباحث امنیتی
همانطوری که طراحان XAMPP در سایت رسمی برنامه اعلام کرده اند، وقتی که شما این نرم افزار را برای اولین بار نصب نمودید، تنظیمات پیش فرض خیلی از امنیت بالایی برخوردار نیست. با این حال، راه هایی برای تغییر این تنظیمات پیش فرض به منظور افزایش امنیت وجود دارد.


مباحث امنیتی که در این راهنما پوشش داده می شوند عبارت اند از :
• استفاده از صفحه (Security page) و اسکریپت امنیتی XAMPP برای محافظت از xampp و کاربر روت phpMyAdmin با رمز عبور
• حذف پوشه های بلا استفاده و مدخل آنها در فایل های پیکربندی (config)
• حذف اسکریپت های پیش فرض از پوشه cgi-bin.
• ایجاد رمزعبور "pma" که توسط اسکریپت امنیتی تحت پوشش قرار نمی گیرد و حفاظت از پوشه های دیگر با رمزعبور.
• حذف نام کاربری/ رمزعبور پیش فرض XAMPP برای سرورهای FTP ، سرور WebDAV و پوشه هایی که از طریق وب در دسترس اند.
• رمزگذاری انتقالات رمزهای عبور


استفاده از صفحه (Security page) و اسکریپت امنیتی XAMPP برای محافظت از xampp و کاربر روت phpMyAdmin با رمزعبور
اولین گام در افزایش امنیت XAMPP استفاده از ابزارهای پیش فرض برنامه است که در صفحه امنیتی (security page) قرار دارند. برای شروع، Apache و MySQL را باز کنید و به این آدرس در مرورگر خود بروید (در همان رایانه سرور خود):

http://localhost

اگر این اولین بار است که local site را می بینید، باید هم اکنون صفحه ای با آرم XAMPP و گزینه انتخاب زبان را مشاهده کنید. بر روی زبان مورد نظر خود کلیک کنید.


این کار شما را به صفحه کنترل XAMPP هدایت می کند که لینک های کاری آن در ستون سمت چپ قرار دارند. در ستون سمت چپ بر روی گزینه “Security” کلیک کنید. ممکن است باز کردن صفحه چند لحظه ای زمان ببرد، زیرا در حال بررسی وضعیت امنیتی شما است. پس از بارگذاری صفحه، شما وضعیت امنیتی خود و اینکه سرور شما در حال حاضر تا چه میزان از ضغف های امنیتی رنج می برد را مشاهده می کنید.


برای حل ۳ مسئله ابتدایی فهرست شده در این صفحه (در دسترس بودن عمومی صفحات XAMPP ، عدم وجود رمزعبور برای mySQL و دسترسی به phpMyAdmin به شکل آزادانه) ، به پایین حرکت کنید تا این لینک را ببینید:

‏http://localhost/security/xamppsecurity.php

 

روی آن کلیک کنید. اگر این لینک را پیدا نکردید، اینجا کلیک کنید تا مرورگر شما را به آن صفحه بر روی سرورتان ببرد.
سپس صفحه ای با عنوان “Security console MySQL & XAMPP directory protection” را می بینید. کارهای زیر را انجام دهید :

1- یک رمزعبور برای MySQL SuperUser (root) وارد کنید (2 بار)
2- برای “PhpMyAdmin authentification” گزینه “cookie” را انتخاب کنید.(به طور پیش فرض هم ممکن است این گزینه انتخاب شده باشد ، استفاده از آن، بر مجوزهای http ترجیح دارد.)
3- اطمینان حاصل کنید که این گزینه تیک نخورده باشد: “Safe plain password in text file?"
4- رمزعبور را که وارد کرده اید، در محل امنی نگهداری کنید، تا به دلیل فراموشی دچار دردسر نشوید.
5- بر روی دکمه “Password changing کلیک کنید.

اگر اعمال بالا را به درستی انجام داده باشید، این پیام به شما نشان داده می شود:

“The root password was successfully changed. Please restart MYSQL for loading these changes!”

 

یعنی رمزعبور اصلی (root) با موفقیت تغییر یافت. لطفا MYSQL را برای اعمال این تغییرات مجددا راه اندازی کنید! برای این کار از طریق کنترل پنل XAMPP برنامه MySQL را ریستارت کنید(آن را متوقف کرده و سپس آن را دوباره شروع کنید)


حال، پس از بازگشت به صفحه XAMPP Security ، دوباره به پایین صفحه رفته و این لینک را پیدا کنید:

“XAMPP DIRECTORY PROTECTION (.htaccess)”

 

این کارها را انجام دهید:
1- یک نام کاربری وارد کنید.
2- یک رمزعبور وارد کنید.
3- اطمینان حاصل کنید که این گزینه تیک نخورده باشد: “Safe plain password in text file?"
4- این رمزعبور را در محل امنی نگهداری کنید تا به دلیل فراموشی دچار دردسر نشوید.
5- بر روی دکمه “Make safe the XAMPP directory کلیک کنید.
بررسی کنید که آیا اعمال بالا را درست انجام داده اید. پس از طی این مراحل، در بالای عبارت “XAMPP DIRECTORY PROTECTION - htaccess” باید نوشته شده باشد:

“SUCCESS: The XAMPP directory is protected now! All personal data was safed in the following file: C:\xampp\security\xampp.users C:\xampp\htdocs\xampp\.htaccess”

 

توجه: در آینده، شما می توانید دوباره از این صفحه برای تغییر رمزعبور ورود به MySql استفاده کنید. اما توصیه نمی شود که از آن برای تغییر رمزعبور XAMPP خود استفاده کنید. زیرا با این کار همه حساب های کاربری که ممکن است برای دسترسی به XAMPP اضافه کرده باشید، پاک خواهند شد. ولی اگر شما تنها کاربر دارای دسترسی به صفحات XAMPP هستید، استفاده از این فرم برای تغییر رمزعبور و وارد کردن رمزعبور جدید اشکالی ندارد.


شما می توانید صفحه امنیتی را برای دیدن نظر ابزار امنیتی XAMPP در مورد میزان بهبود امنیت پس از اقدامات، بالا دوباره اجرا کنید . برای این کار، بر روی Security در ستون سمت چپ کلیک کنید. 3 مورد ابتدایی لیست باید در حال حاضر نوشته Secure را نشان دهند. اگر این چنین نیست، کارهای شما اشکالی داشته که باید آن را با تکرار صحیح مراحل بالا برطرف کنید.

 

اثرات اقدام امنیتی جدید شما و تست آن
گام های امنیتی که مطابق مراحل بالا انجام دادید، بدین معنا است که در هنگام دسترسی به /xampp و /phpmyadmin از طریق مرورگر، باید نام کاربری و رمزعبور وارد کنید. بیایید درستی این مورد را تست کنیم :

برای آزمایش اینکه آیا /xampp نیاز به وارد کردن رمزعبور دارد :
1- مرورگر خود را بسته و دوباره آن را باز کنید (تا حافظه را از رمزهای عبور پاک کرده باشید.)
2- به این آدرس بروید: http://localhost/xampp ، در اینجا است که باید پنجره ای ظاهر شود و از شما درخواست وارد کردن رمزعبور کند.
3- نام کاربری و رمزعبوری را که برای دسترسی به /xampp ایجاد کرده اید، وارد نمایید.
4- اگر با این کار شما به صفحه کنترل XAMPP هدایت شدید، پس اعمال قبلی موفقیت آمیز بوده است.

برای آزمایش اینکه آیا /phpmyadmin نیاز به وارد کردن رمزعبور دارد :
1- از آنجایی که این حفاظت توسط رمزعبور بر اساس کوکی است، (در صورتی که شما گزینه http authentification را انتخاب نکرده باشید) لازم نیست مرورگر را بسته و باز کنید.
2- به این آدرس بروید: http://localhost/phpmyadmin ، در اینجا است که پنجره ای ظاهر می شود و از شما درخواست رمزعبور می کند.
3- root را به عنوان نام کاربری وارد کنید و رمزعبوری را که در صفحه امنیتی XAMPP ثبت کرده بودید، وارد کنید .
4- اگر با این کار شما به صفحه phpMyAdmin هدایت شدید، پس آزمایش و اعمال قبلی موفقیت آمیز بوده است.
5- همچنین می توانید سعی کنید از phpMyAdmin خارج شوید (sign out)و دوباره وارد شوید (sign in) برای (sign out) بر روی دکمه ی که شبیه این است و در بالای ستون سمت چپ قرار دارد، کلیک کنید.

توجه کنید مقاله ای در فروم دوستداران آپاچی است که توصیه می کند نام کاربری کاربر ریشه را به چیزی غیر از root تغییر دهید، تا امنیت خود را افزایش دهید. می توانید این مقاله را برای دانستن در مورد دستورالعمل و نحوه انجام این کار مشاهده کنید.

 

تنظیمات امنیتی گفته شده چگونه اعمال می شوند؟
اسکریپت امنیتی زمپ فایلی به آدرس c:\xampp\htdocs\xampp\.htaccess ایجاد کرده و محتوای زیر را در آن قرار می دهد :

AuthName “xampp user”
AuthType Basic
AuthUserFile “C:\xampp\security\xampp.users”
require valid-user

 

این کار مجوز پایه ای برای پوشه xampp ایجاد می کند و مشخص می کند که نام کاربری و رمزعبور در فایلی با این آدرس ذخیره شده:

c:\xampp\security\xampp.users

 

اسکریپت امنیتی همچنین اطلاعات نام کاربری و رمزعبوری که شما وارد کرده اید را درون این فایل قرار می دهد. اگر این فایل را در یک ویرایشگر متنی باز کنید، خواهید دید که رمزعبور، رمزگذاری و کد نویسی شده است. برای اهداف امنیتی، مهم است که هرگز فولدر c:\xampp\security را از طریق وب سرور در دسترس قرار ندهیم. در غیر این صورت شخص مهاجم می تواند به این فایل حاوی رمزعبور دسترسی داشته باشد.

 

برای تأمین امنیت phpMyAdmin هم، اسکریپت امنیت این کارها را انجام می دهد:
1- فانکشن پی اچ پی (mysqlrootupdate) را از این فایل فراخوانی می کند: c:\xampp\security\htdocs\securefunctions.php. این فانکشن با پایگاه داده MySQL برای تغییر رمزعبور روت، ارتباط برقرار می کند.
2- اصلاح فایل config.inc.php برای تغییر این خط دستور:

$cfg['Servers'][$i]['auth_type']     = 'config';    // Authentication method (config, http or cookie based)

 

به این دستور :

$cfg['Servers'][$i]['auth_type']     = 'cookie';      // Authentication method (config, http or cookie based)

 

این کار به منظور فعال کردن تایید هویت مبتنی بر کوکی برای صفحه /phpmyadmin انجام می شود.

 

امنیت بیشتر
در حال حاضر ، ما موفق شدیم اولین سطح از امنیت XAMPP را اعمال کنیم و امنیت آن را یک پله بالا تر ببریم. هنوز هم برخی از مشکلات وجود دارد. پوشه های اضافی و کاربران نیاز به محافظت با رمزعبور دارند. همچنین ، رمزعبوری که شما هم اکنون ایجاد کرده اید، ممکن است به صورت متن ساده (plain text) ارسال شود و هر کسی با اندک دانشی از شبکه می تواند آنها را ببیند. پس باید رمزنگاری را برای انتقال این رمزهای عبور فعال کنید.

در این مورد و موارد دیگر لیست ابتدای متن را در مقاله بعدی بیشتر خواهید خواهند. پس منتظر قسمت بعدی در نگهبان باشید.
 

عضویت در خبرنامه - همین الان به رایگان مشترک مطالب سایت نگهبان شوید

پست الکترونیک

1-از ایمیل شما استفاده تبلیغاتی نخواهد شد.

2- هر زمان که مایل باشید می توانید اشتراک ایمیلی خود را قطع کنید.

خیلی خوب بود. ممنون.

خیلی خوب بود.
ممنون.

سلام مرسي جالب بود حالا كسي

سلام
مرسي جالب بود
حالا كسي پسورد رو گم كرد بايد چيكار كنه ؟

ممنون ترجمه خوبی بود استفاده

ممنون ترجمه خوبی بود استفاده کردم. اگر منبع رو هم ذکر میکردین مناسبتر بود.

http://robsnotebook.com/xampp-security-hardening

ارسال نظر جدید

پست الکترونیک شما محرمانه باقی مانده و به صورت عمومی نمایش داده نمی شود.
  • صفحات وب و آدرس های ایمیل به صورت خودکار تبدیل به لینک می شوند.
  • کدهای HTML مجاز: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <span> <class> <p> <pre> <hr>
  • پاراگراف ها اتوماتیک جدا می شوند.




عضویت در خبرنامه - همین الان به رایگان مشترک مطالب سایت شوید

پست الکترونیک

1-از ایمیل شما استفاده تبلیغاتی نخواهد شد.

2- هر زمان که مایل باشید می توانید اشتراک ایمیلی خود را قطع کنید.

اشتراک مطالب از طریق فید