امنیت سایبریراهنمای کاربردی

امنیت MariaDB؛ شنود خصوصی و دسترسی حداقلی برنامه

دسترسی شبکه و مجوز حساب MariaDB را بررسی کنید، کاربر برنامه را از مهاجرت دیتابیس جدا کنید و پیش از محدودسازی، اتصال‌های معتبر را بیازمایید.

خلاصهٔ کاربردی

آنچه باید بدانید

  • کلاینت سوکت، TCP محلی و شبکهٔ دور را فهرست کنید.
  • مجوز را با حساب واقعی برنامه ببینید.
  • جایگزین محدود را پیش از حذف دسترسی قبلی بیازمایید.

تمام مصرف‌کنندگان معتبر را شناسایی کنید

این راهنما برای MariaDB تحت مدیریت شماست. پیش از تغییر، برنامهٔ وب، worker، پشتیبان، پایش و گزارش‌گیری بیرونی را فهرست کنید. مشخص کنید هرکدام از سوکت یونیکس، loopback یا شبکهٔ خصوصی استفاده می‌کند. اتصال مدیر و پشتیبان هماهنگ آماده باشد. حتی وقتی سایت و دیتابیس روی یک دستگاه‌اند، تغییر آدرس شنود می‌تواند اتصال برنامه را خراب کند.

شنود و هویت واقعی حساب را ببینید

در نشست مجاز MariaDB این مقادیر را بررسی کنید. راهنمای شبکه، bind-address و skip-networking را توضیح می‌دهد.

SHOW VARIABLES LIKE 'bind_address';
SHOW VARIABLES LIKE 'port';
SELECT USER(), CURRENT_USER();

خروجی را با sudo ss -lntp روی میزبان مقایسه کنید. شنود loopback ممکن است برای کلاینت TCP همان میزبان مناسب باشد، ولی برنامهٔ کانتینر یا سرور جدا به مسیر دیگری نیاز دارد. برای کلاینت دور، رابط خصوصی، محدودیت آدرس مبدأ و تنظیم TLS تأییدشده مطابق نسخهٔ سرور و کلاینت را طراحی کنید.

مجوز واقعی کاربر برنامه را بررسی کنید

فرمان زیر را با حساب برنامه، نه حساب مدیر، اجرا کنید تا مجوز خودش دیده شود. مرجع SHOW GRANTS خروجی را توضیح می‌دهد.

SHOW GRANTS;

خروجی را عمومی نکنید؛ جزئیات حساب یا دادهٔ احراز هویت ممکن است حساس باشد. مجوز اجرای روزمره را از حساب اجرای migration جدا کنید. حساب root دیتابیس را برای ورود وب‌سایت استفاده نکنید.

جایگزین محدود را ابتدا آزمایشی بسازید

برای حساب نمونه‌ای که قبلاً ایجاد شده، ساختار GRANT امکان سیاست محدود می‌دهد:

GRANT SELECT, INSERT, UPDATE, DELETE
ON appdb.* TO 'webapp'@'localhost';

نام دیتابیس، کاربر و میزبان را با طراحی خود عوض کنید. این فقط مثال سادهٔ خواندن و تغییر داده است؛ برخی برنامه‌ها مجوز بیشترِ بررسی‌شده می‌خواهند. رمز را با روش مدیریتی محافظت‌شده بسازید. پیش از بازنشستگی حساب قبلی، درخواست وب، worker و پشتیبان را بیازمایید.

مرز دسترسی را با آزمون ثابت کنید

تغییر شنود را با تنظیم برگشت آماده زمان‌بندی کنید. مطمئن شوید کلاینت‌های مجاز وصل می‌شوند و کلاینت بیرونی غیرمجاز نمی‌تواند. هر دو خانوادهٔ آدرس و فایروال زیرساخت را دوباره ببینید. آزمون migration را از اجرای روزمره جدا کنید تا صرفاً برای موفقیت انتشار، مجوز بی‌دلیل زیاد نشود. راهنمای شبکهٔ Docker و مدیریت کلیدها کنترل‌های مجاور را توضیح می‌دهند.

منابع و مطالعهٔ بیشتر

گزارش این مطلب بر پایهٔ منابع اصلی زیر است. توصیه‌های اجرایی، راهنمای عمومی کیاوا هستند و باید با شرایط پروژه تطبیق داده شوند.

  1. MariaDB: network binding and remote access
  2. MariaDB: GRANT reference
  3. MariaDB: SHOW GRANTS
  4. MariaDB: TLS connections
از مطالعه تا اجرا

برای پروژهٔ خودت تصمیم بگیر.

نیاز وب‌سایت، سرور یا تیم فناوری‌تان را با کیاوا مطرح کنید.

گفتگو با کیاوا