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

امنیت سرور شبکه
امنیت سرور شبکه

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

1. حذف خدمات غیرضروری

تاسیسات و پیکربندی‌های پیش‌فرض سیستم‌­های عامل، ایمن نیستند. در یک نصب پیش‌فرض، بسیاری از سرویس‌های شبکه که در پیکربندی سرور شبکه استفاده نمی‌­شود نصب می‌شوند، مانند سرویس‌های ثبت از راه دور، سرویس چاپ و سرویس دسترسی از راه دور(RAS). هرچه سرویس‌­های بیشتری روی یک سیستم عامل فعال باشند، درگاه‌های بیشتری باز گذاشته خواهند شد، در نتیجه درهای باز بیشتری برای سوء استفاده کاربران بدخواه باقی می‌ماند. تمام سرویس‌های غیرضروری را خاموش کنید و آن‌ها را غیرفعال کنید تا دفعه بعد که سرور مجدداً راه‌اندازی می‌شود، به­ طور خودکار شروع به کار نکنند. خاموش‌کردن سرویس‌های غیرضروری با آزاد کردن برخی منابع سخت‌افزاری به عملکرد سرور شما کمک خواهد کرد.

۲. دسترسی از راه دور

مدیران باید در صورت امکان، به صورت محلی به سرورهای شبکه وارد شوند. اگر دسترسی از راه دور مورد نیاز است، باید با استفاده از پروتکل‌های تونل‌­سازی و رمزگذاری، اطمینان حاصل شود که دسترسی از راه دور به خوبی ایمن­‌سازی شده‌است. استفاده از نشانه‌های امنیتی و دیگر علائم بر روی تجهیزات و نرم‌افزار، یک روش امنیتی بسیار خوب است. همچنین دسترسی از راه دور باید به تعداد مشخصی IP و تنها به حساب‌های خاص داده­‌شود. بسیار مهم است که از کامپیوترها یا شبکه‌های عمومی مانند کافی‌نت­‌ها یا شبکه‌های وایرلس عمومی برای دسترسی از راه دور به سرورهای شرکت استفاده نشود تا امنیت سرور در خطر قرار نگیرد.

دسترسی از راه دور
دسترسی از راه دور

3. محیط‌­ های جداگانه توسعه، آزمایش و تولید

از آنجا که توسعه یک نسخه جدیدتر از یک نرم‌­افزار تحت شبکه بر روی یک سرور تولیدی برای یک توسعه‌­دهنده آسان‌تر و سریع‌تر است، کاملاٌ رایج است که توسعه و تست نرم­‌افزارهای تحت شبکه به طور مستقیم بر روی خود سرورهای تولیدی انجام شود. پیدا کردن نسخه‌های جدیدتر از یک وب­سایت خاص، یا برخی محتواها که نباید در دسترس عموم قرار داشته باشند، در دایرکتوری‌هایی مانند /test/، /new/ یا دیگر زیرشاخه‌های مشابه، یک اتفاق رایج در اینترنت است. از آنجا که چنین نرم­‌افزارهای تحت شبکه در مراحل اولیه توسعه خود قرار دارند، محتمل است که تعدادی نقطه آسیب‌پذیر داشته باشند، اعتبارسنجی ورودی مناسبی نداشته باشند و استثناها را به درستی مدیریت نکنند. چنین برنامه‌هایی به سادگی با استفاده از ابزارهای رایگان موجود در اینترنت توسط یک کاربر بدخواه کشف و مورد سوء استفاده قرار می­‌گیرند.

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

ورود کاربر غیر مجاز
ورود کاربر غیر مجاز

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

4. محتوای نرم‌­افزار تحت شبکه و اسکریپت­‌های روی سرور

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

۵. سطوح دسترسی و امتیازها

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

۶. تمام وصله­‌های امنیتی را به موقع نصب کنید

با اینکه داشتن نرم‌افزار کاملاً اصلاح شده توسط وصله­‌های امنیتی، لزوماً به این معنی نیست که امنیت سرور شما تضمین شده است، با این حال به‌­روز رسانی برای دریافت آخرین وصله­‌های امنیتی برای سیستم‌عامل و هر نرم‌افزار دیگری که روی آن اجرا می­‌شود، بسیار مهم است. هک رخ می‌دهد زیرا هکرها از عدم امنیت سرور و نرم‌افزارهایی که اصلاح نشده‌­اند سوء استفاده می­‌کنند.

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

9. نظارت و رسیدگی به سرور

تمام لاگ­‌های موجود در یک سرور شبکه، باید در یک منطقه تفکیک‌شده ذخیره شوند. تمام لاگ­‌های خدمات شبکه، لاگ­‌های دسترسی به وب­سایت، لاگ‌­های پایگاه داده (‏به عنوان مثال Microsoft SQL Server، MySQL و Oracle)‏ و لاگ‌­های سیستم‌عامل باید کنترل شود و به طور مرتب مورد بررسی قرار بگیرد. همیشه باید مراقب لاگ­‌های عجیب بود. فایل‌های لاگ معمولاً تمام اطلاعات درباره تلاش برای حمله و حتی یک حمله موفق را دارند، اما در اغلب مواقع این موارد نادیده گرفته می‌شوند. اگر متوجه فعالیت عجیبی از لاگ‌­ها شدید، این امر باید فوراً در اولویت قرار بگیرد تا بررسی شود که چه اتفاقی در حال رخ دادن است.

۸. حساب­‌های کاربری

حساب‌های کاربری پیش‌فرض استفاده ‌نشده ایجاد شده در طول نصب سیستم‌عامل باید از کار انداخته شوند. همچنین فهرست بلندی از نرم‌افزارها وجود دارد که در هنگام نصب، حساب‌های کاربری بر روی سیستم‌عامل ایجاد می‌کند. چنین حساب‌هایی باید به درستی بررسی شوند و اجازه‌ها باید تغییر داده شوند. حساب مدیر باید تغییر نام داده شود و نباید استفاده شود (همچنین برای کاربر ریشه در نصب linux یا unix). هر مدیری که به سرور شبکه دسترسی دارد باید حساب کاربری خودش را با امتیازات مورد نیاز داشته باشد. این کار یک روش امنیتی خوب است که حساب‌های کاربری را به اشتراک نگذاریم.

۹. حذف همه ماژول‌های استفاده نشده و پسوند­های نرم­‌افزارها

نصب پیش‌فرض Apache دارای تعدادی ماژول‌های از پیش تعریف‌شده فعال است، که در حالت عادی در سرور شبکه استفاده نمی‌شود، مگر اینکه به طور خاص مورد نیاز باشد. این ماژول‌ها را خاموش کنید تا از حملات هدفمند علیه چنین ماژول‌هایی جلوگیری کنید.

همین امر در مورد سرور شبکه مایکروسافت نیز صادق است؛ خدمات اطلاعات اینترنتی (IIS). به طور پیش‌فرض، IIS طوری پیکربندی شده‌است که تعداد زیادی از انواع نرم­‌افزارها مانند ASP و ASP.NET را ارائه دهد. فهرست پسوندهای نرم‌­افزار تنها باید شامل فهرستی از پسوندهای مورد استفاده در وب­سایت یا نرم­افزار تحت وب باشد. هر توسعه نرم‌­افزاری نیز در صورت امکان باید تنها به استفاده از پروتکل HTTP، محدود شود.

10. استفاده از ابزارهای امنیتی ارائه‌شده توسط نرم‌افزارهای تحت شبکه سرور

مایکروسافت تعدادی ابزار برای کمک به مدیران برای امنیت سرور شبکه IIS، مانند اسکن URL منتشر کرده‌­است. همچنین یک ماژول به نام mod_security برای Apache وجود دارد. اگر چه پیکربندی چنین ابزارهایی یک فرآیند خسته‌کننده است و می‌تواند زمان­‌بر باشد، به خصوص با نرم­‌افزارهای تحت شبکه سفارشی، استفاده از آن‌ها امنیت سرور و آرامش ذهن برای شما ایجاد می‌کند.

امنیت شبکه
امنیت شبکه

11. اطلاعات خود را به­ روز نگه ­دارید

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

12. از اسکن­ کننده­‌ها استفاده کنید

اسکن­ کننده­‌ها برنامه­‌هایی کاربردی هستند که در خودکارسازی و راحتی بیشتر انجام فرایند­های امنیت سرور شبکه و نرم‌افزارهای تحت شبکه، به شما کمک می­‌کنند.  Acunetix Web Vulnerability Scanner به همراه خود یک اسکن‌­کننده درگاه دارد که زمانی که فعال می‌­شود، درگاه­‌های سرور شبکه­‌ای که نرم­‌افزار مورد اسکن را میزبانی می‌­کند، اسکن می­‌نماید. به مانند یک اسکن­‌کننده امنیت شبکه، Acunetix WVS تعدادی بررسی امنیتی پیشرفته بر روی درگاه­‌های باز و سرویس­‌های شبکه فعال روی سرور شبکه شما را انجام می‌­دهد.

Acunetix Web Vulnerability Scanner ، امنیت سرور شبکه و وب­سایت را با چک کردن برای SQL Injection، اسکریپت‌­گذاری کراس سایت، مشکلات پیکربندی سرور شبکه و دیگر نقاط آسیب‌پذیر تضمین می‌کند. این برنامه قدرت گذرواژه­‌ها را در صفحات احراز هویت بررسی می‌­کند و به­‌طور خودکار کارت‌های خرید، فرم‌ها، محتوای وب 2.0 پویا و دیگر برنامه‌های شبکه را بررسی می‌کند. هنگامی که اسکن کامل می‌شود، نرم‌افزار گزارش‌های دقیقی ارائه می‌دهد که نقاط آسیب­‌پذیر را نشان می­‌دهد و به این طریق به ایجاد امنیت سرور کمک می‌­کند.

 

منبع: Web Server Security and Database Server Security