bestboy7

چطور امنیت دیتابیس مهمی رو تضمین کنیم؟

15 پست در این موضوع

سلام به استاتید

یه دیتابیس فوق العاده مهم دارم که هم بسیار با ارزش و هم بسیار شخصی است. میخوام ببینم راهی هست که این دیتابیس مورد سواستفاده قرار نگیره؟ البته منظورم هک شدن و دزدیده شدن توسط هکرها نیست(چون اون موضوع بحثش جداست و راهکارهایی برای بالا بردن امنیت است البته نه امنیت 100%) منظور من خدای نکرده خدای نکرده وسوسه شدن هاست دهنده های است.

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

آیا راهی هست که حداقل امنیتش رو تضمین کنیم؟ مثلا پسورد گذاشتن روی اون یا هرکاره دیگه ای

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

اگه اسکریپت از پایه طراحی شده باشه میتونید اطلاعات ورودی و خروجی به دیتابیس رو با الگوریتم اختصاصی خودتون کد کنید

Share this post


Link to post
Share on other sites

سپاسگزارم از پاسختون جناب طالبی

و اگر اسکریپت از پایه طراحی نشه و افزونه هایی برای جوملا نوشته بشه تا از این دیتابیس استفاده کنه چی؟ در اون شرایط چه راهکاری سراغ دارید

سپاس از راهنماییهاتون

Share this post


Link to post
Share on other sites

فرقی نمیکنه اگر کامپوننت هم باشه شما کل اطلاعات ورودی رو با الگوریتم خودتون کد کنید و موقع خوندن دیکد کنید .. مثل کارت شارژ!

Share this post


Link to post
Share on other sites

بازم ممنون جناب طالبی

بحث کد کردن در حین برنامه ایده خوبیه اما مشکلم یه چیزه که اطلاعات الان وجود داره و کدشده هم نیست در این حالت راهی وجود نداره نه؟ و تنها راهش اینه که من کل دیتابیس رو با یه اسکریپت مجدد کد کنم و جداولی جدید ایجاد کنم و بعد از اون دیتابیس استفاده کنم. درسته؟

راهی دیگه که سراغ ندارید؟

Share this post


Link to post
Share on other sites

کاری نداره که کافیه یه تابع encode بنویسی کل اطلاعات هر جدول رو بدی بهش کد encode کنه و جدول رو دوباره آپدیت کنی

وقتی هم میخوای بخونیش که تابع decode رو صدا کنی

فقط الگوریتم encode و decode خوب پیدا کن استفاده کن .. سرچ کنی زیاده

همچنین فایلی که الگوریتم encode و decode داخلشه هم بهتره با ioncube کد کنی دسترسی کسی نداشته باشه به سورس

Share this post


Link to post
Share on other sites

آره درسته فک کنم بهترین راه همینه.

توابع encode رو خودم مینویسم اینجوری مطمئن تره حداقل خیالم راحته الگوریتم خودمه. توابعی که با سرچ پیدا کنم با سرچ هم بقیه میتونن پیداش کنن.چندتا تابع encode قبلا نوشتم خوب هم بوده.

مرسی جناب طالبی از راهنماییتون

Share this post


Link to post
Share on other sites

توابع encode که میگم کلید دارن .. شما میتونی کلید رو تغییر بدید که نوع کد شدن اطلاعاتت با هر کلید متفاوته .. موقع decode هم همون کلید رو استفاده میکنی

Share this post


Link to post
Share on other sites

جدی؟ جالبه پس این توابع منعطف نوشته شده من تصور کردم یک کد واحده. پس لازم شد جستجو کنم یکیشو پیدا کنم.

فقط تاکید کردید توابع خوب پیدا کنم آیا خودتون تابعی رو سراغ دارید که خودتون تاییدش کنید که خوبه. معرفی کنید؟

بازم ممنون از راهنماییهای نابتون

سپاس

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

درود

البته بهتر اینه برای امنیت بالاتر از سرور مجازی اختصاصی استفاده کنی ....

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

اما راهی که مهندس گفت ظاهرا بهترین گزینه موجود هست و اگه اطلاعاتت رو روی سرور مجازی اختصاصیم بزاری بازم ضریب امنیتی بیشتری رو میتونی داشته باشی

برای د کردن اطلاعات داخل دیتابیس میتونی از الگوریتم AES استفاده کنی

مثال

INSERT `user` SET `name`='pouyan`, `reshteh`=AES_ENCRYPT('behdasht', 'joomlaforum2015'));

مثلا ببین توی مثال بالا من اومدم اسم رشته تحصیلی کاربرای سایتم رو کد کردم به روش AES

الان توی این مثل کاربر pouyan مه رشتش behdasht هست رو با رمز joomlaforum2015 کد گذاری کردم و وقتی بخوام اطلاعات رشته تحصیلی کاربرامو فراخوانی کنم توی دیتابیس

باید کلید رمز رو داشته باشم وگرنه اطلاعات قابل دسترسی نیست الان با دستور زیر اطلاعات فراخوانی میشه

SELECT `name`, AES_DECRYPT(`reshteh`, 'joomlaforum2015') AS `reshteh` FROM `user`;

البته کد گذاری اطلاعات توی دیتابیس یکسری معایب داره:حجم دیتابیس زیاد تر میشه،توی داده مز شده نمیتونی جستجو کنی(اینو مطمئن نیستم)، و اینکه سرعت کم پاسخگویی سرور به دیتابیس

بخاطر حجم زیاد دیتابیس (برای همین باید سرور مجازی اختصاصی داشته باشی یا سروری که هارد SSD داره)

ویرایش شده در توسط Pooyan Afzali

Share this post


Link to post
Share on other sites

پویان جان از پاسخت خیلی ممنون راهنمایی های خوبی کردی مثل همیشه

آقا ما دلمون خیلی براتون تنگ شده بخداgift

Share this post


Link to post
Share on other sites
پویان جان از پاسخت خیلی ممنون راهنمایی های خوبی کردی مثل همیشه

آقا ما دلمون خیلی براتون تنگ شده بخداgift

ممنون

منم دلم واستون تنگ شده عزیز

در آینده نزدیک شیراز یه سمینار یک روزه برگزار میکنم ....

Share this post


Link to post
Share on other sites

گفته های دوستان مناسب هستند ، می تونید از هر کدوم استفاده کنید

اگه خواستید خودتون الگوریتم بسازید ، بهتره از الگوریتم وارثت استفاده کنید (برای شروع عالیه ... )

معمولا کلید الگوریتم های رمز نگار رو کد می کنند ، به اصطلاح سه قفله می کنند ..!

Share this post


Link to post
Share on other sites
ممنون

منم دلم واستون تنگ شده عزیز

در آینده نزدیک شیراز یه سمینار یک روزه برگزار میکنم ....

جدی میگی پویان جان. بسیار هم عالی

حتما اطلاع بده من که خیلی دوس دارم هم دیداری تازه بشه هم حتی اگه یک روز هم باشه از اطلاعات بی نظیرت استفاده کنم

پویان جان هومن بی خبر نیای بریااااااا

Share this post


Link to post
Share on other sites
جدی میگی پویان جان. بسیار هم عالی

حتما اطلاع بده من که خیلی دوس دارم هم دیداری تازه بشه هم حتی اگه یک روز هم باشه از اطلاعات بی نظیرت استفاده کنم

پویان جان هومن بی خبر نیای بریااااااا

ممنون

حتما عزیزgift

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری