ستاره | سرویس تکنولوژی – همه چیز درباره کانفیگ سرور و انواع کانفیگ سرور را در این مطلب بخوانید.
کانفیگ سرور
کانفیگ سرور های لینوکس یونیکس: سرور به سیستمی متشکل از سخت افزار (کامپیوتر) و نرم افزار نصب شده بر روی آن (معمولا سیستم عامل سرور) اطلاق میشود که وظیفه آن پاسخ به درخواستهای ارسال شده توسط کاربران از طریق شبکه است. با توجه به زمینه کاری ما منظور از شبکه در اینجا بیشتر شبکه جهانی وب یا اینترنت است.
در صورتی که کانفیگ سرور به صورت حرفهای و اصولی انجام شود، علاوه بر افزایش چشم گیر سرعت لود صفحات وب، با کاهش لود سرور مواجه خواهید شد که این به معنای صرفه جویی در هزینه و در نتیجه سود بیشتر در کسب و کار آنلاین شما خواهد شود. علاوه بر این، آپتایم بالا و کسب اطمینان مشتریان و همچنین موتور جستجوی گوگل از دیگر مزایای کانفیگ سرور به صورت حرفهای است.
کانفیگ سرور های اختصاصی و مجازی لینوکس، یونیکس و ویندوز
امروزه با پیشرفت چشم گیر اینترنت و همه گیر شدن استفاده از آن، سرورها نقشی اساسی و مهم در زندگی انسانها بر عهده دارند. در دنیای هاستینگ و میزبانی وب سایت، سرور تعیین کنندهترین وسیله برای بر قراری ارتباطی پویا و سریع بین کاربر و وب سایتهای اینترنتی به شمار میآید.
اهمیت اینترنت در زندگی روز مره خود گویای اهمیت نیاز به کانفیگ سرور و پیکرندی صحیح و حرفهای آن است. کانفیگ قویتر و حرفهایتر بازدهی سرورهای شما را با کمترین هزینه دو چندان میسازد. قویترین سرورها نیز در صورت کانفیگ غلط بازدهی بالایی نخواهند داشت. کانفیگ سرور به صورت حرفهای به شما این امکان را میدهد تا بدون نیاز به ارتقاء سخت افزاری سرورها تعداد سایتهای بیشتری را میزبانی کنید.
فارغ از نوع فعالیتی که به صورت آنلاین ارائه میکنید و هزینهای که برای خرید و اجاره سرور های مجازی یا اختصاصی، ابری یا حتی سرورهای هایبریدی گران قیمت میپردازید، باز هم کانفیگ سرور سبب افزایش بازدهی و موفقیت در بیزنس آنلاین شما خواهد بود. کانفیگ حرفهایتر به معنای سرعت بیشتر و سرویس دهی بهتر به کاربران سایت شماست.
کانفیگ سرور های هاستینگ و میزبانی وب اشتراکی
ارائه و فروش هاست اشتراکی به مشتریان از حساسیت بسیار بالایی برخوردار است و کوچکترین اشتباهی منجر به از بین رفتن اعتبار و در نتیجه از دست دادن مشتریان شما خواهد شد. داون تایم و قطعیهای هر چند کوتاه، سرعت پایین لود شدن صفحات وب، هک شدنهای پیاپی و امنیت پایین سرور و مواردی از این قبیل برای هیچ کدام از مشتریان شما قابل تحمل نبوده و نخواهد بود. اگر تصور میکنید که با نصب یک سی پنل یا دایرکت ادمین همه چیز تمام است و سرور شما توان میزانی سایتهای پرترافیک و سنگین را دارد اشتباه بزرگی مرتکب شدهاید.
کانفیگ سرور های مجازی یا اختصاصی شخصی
حتی معروفترین و قویترین کنترل پنل های هاستینگ نیز کلیه سرویسها و برنامه های مورد نیاز وب هاستینگ را با تنظیمات پیش فرض بر روی سرور شما نصب خواهند کرد و این در حالیست که علاوه بر کرنل و لینوکس، تک تک سرویسها مانند PHP ، وب سرور، پایگاه داده، DNS، برنامههای Mail Server و … به صورت جداگانه و تخصصی نیاز به کانفیگ و پیکربندی خواهند داشت.
هیچ کنترل پنل هاستینگی در دنیا وجود ندارد که امنیت و Performance را به صورت همزمان و پیش فرض و تنها با یک فایل اینستالر BASH روی سرور شما نصب کند. از طرفی هیچ کانفیگ ثابتی نیز وجود ندارد و هر سرور با توجه به نوع اسکریپت ها، ساختار دیتابیسها و حجم ترافیک نیاز به کانفیگی مخصوص به خود خواهد داشت.
پیکر بندی و کانفیگ سرور های مبتنی بر لینوکس ، سرور های مبتنی بر Uninx و BSD ها و همچنین کانفیگ سرور های مبتنی بر ویندوز مایکرو سافت یک کار تخصصی است. به علت گستردگی مقوله کانفیگ سرور، انواع توزیعهای مختلف سیستم عامل های یونیکس و لینوکس و وجود برنامه ها و سرویس های بسیار زیادی که هر کدام نیازمند کانفیگ تخصصی و حرفه ای مخصوص به خود هستند باید کانفیگ سرور به درستی صورت گیرد.
نصب و کانفیگ سرور Cpanel و DirectAdmin
قطعا برای ارائه خدمات میزبانی وب و هاستینگ تنها نصب یک سیستم عامل و کنترل پنل بر روی server کافی نیست زیرا به تنظیمات پیش فرض نمیتوان اکتفا کرد و رعایت نکردن این مورد قطعا به سرور و تجارت شما آسیب وارد میکند و درکنار این مسئله سرور بازدهی کافی را نخواهد داشت.
بنابراین کلیهی خدمات مورد نیاز برای راه اندازی سرور وب وارائه خدمات هاستینگ و یا میزبانی وب سایت به همراه کنترل پنل دلخواه شما باید نصب و کانفیگ شود. همچنین تنظیمات و پیکربندیهای مورد نیاز در جهت بالا بردن ضریب امنیت و بازده سرور در کرنل لینوکس و سرویسهای نصب شده به خصوص وب سرور باید اعمال گردند که سرور را جهت میزبانی و استفاده امن آماده کنند.برخی از مواردی که در کانفیگ سرور اعمال می گردد در زیر آورده شده است :
۱- آپدیت کلیه سرویس های مورد نیاز و کرنل اصلی سیستم
۲- نصب و کانفیگ دیوار آتشین
۳- نصب و کانفیگ آنتی ویروس و انتی شلر (sheller)
۴- نصب و کانفیگ mode Security
۵- نصب و کانفیگ آنتی دی داس
۶- نصب و کانفیگ آنتی روت کیت
۷- بهینه سازی و ایمن سازی سرویس دهنده وب apache, litespeed, nginx
۸- ایمن سازی پوشه tmp/ که یکی از مهمترین قسمتهای نفوذ به سرور است
۹- ایمن سازی سرویس دهنده ssh
۱۰- ایمن سازی سرویس دهنده php
۱۱- ایمن سازی سرویس دهنده dns
۱۲- ایمن سازی سرویس دهنده ftp
۱۳- ایمن سازی سرویس دهنده mail برای جلوگیری از دریافت اخطار spam
۱۴- حذف سرویسها غیر استفاده سرور
۱۵- ایمن سازی سرویس دهنده sql
۱۶- نصب و کانفیگ نرم افزار مانیتورینگ mysql و پروسه های در حال اجرا
۱۷- بهینه سازی Mysql برای راندمان بیشتر
۱۸- ایمن سازی پوشه های /tmp /var/tmp /dev/shm
۱۹- اعمال تنظیمات مورد نیاز برای بکاپ گیری
۲۰- جلوگیری از بایپس وب سرور و php
۲۱- کنترل اسکریپتهای perl ،cgi ،pyhton
کانفیگ وب سرور لینوکس
وب سرور، سخت افزار یا نرم افزاری است که محتوای وب سایت را از طریق اینترنت در دسترس کاربران قرار میدهد. ارتباط بین وب سرور و Client ها به کمک پروتکل Hypertext Transfer Protocol یا همان HTTP معروف میسر میگردد.
متداولترین پروتکلی که برای انتقال اطلاعات از آن استفاده می شود، پروتکل HTTP است. در واقع شما با وارد نمودن آدرس سایت درخواست خود را به وسیله این مرورگرها برای سرور ارسال نمودهاید. مرورگرها این درخواست شما را برای مشاهده سایت به سرور انتقال میدهند و با مشاهده سایت، سرور به درخواست شما پاسخ داده است.
کانفیگ وب سرور لینوکس
پروتکل HTTP به عنوان پروتکلی سریع، قوی و با بار کم بر روی CPU و حافظه سرور طراحی شده است و البته برای جلوگیری از کاهش پیدا کردن کارایی وب بر اثر استفاده بسیار زیاد از این پروتکل، باید کاراییاش را بهینه سازی کرد. بنابراین وب سرور در کنار سرویس DNS یکی از اصلیترین ارکان هر سرور به شمار میرود و بدون وجود آن امکان باز کردن صفحات وب در اینترنت غیر ممکن است.
کاربردهای مختلف سرورها
سرورها با كاربری مختلف و دارای اطلاعات متفاوت میباشند. در زیر تعدادی از سرورها و كاربری آنها ذكر شده است:
- فایل سرور FTP Server
- میل سرور Mail Server
- دایركتوری سرورDNS) Direcrory Name Server)
- وب سرور Web Server
اکنون میخواهیم موارد کلی مورد نیاز برای کانفیگ یک وب سرور لینوکس را مورد بررسی قرار دهیم:
اساساً کار یک وب سرور مثل آپاچی بر اساس یک زبان برنامه نویسی PHP و یا Perl، پایگاه داده MySQL است. یک سری موارد برای برطرف کردن نیاز کاربران روی وب سرور میبایست نصب شود زبانهایی مانند: جاوا، PHP، سی پلاس پلاس، دات نت، و بسیاری موارد دیگر. و نکته مهم این است که شما باید بدانید برای نوشتن برنامههای کاربردی چه زبانی را انتخاب کنید، که این برنامه کاربری باید بر روی مرورگر هم اجرا شود.
تنظیمات پیش فرض در وب سرورها معمولا برای تعداد کانکشن های بالا و ترافیک سنگین وب سایت های شلوغ جوابگو نیست و وب سرور می بایست بر اساس نیازهای هر سایت یا سرور، کانفیگ و پیکر بندی شود. در صورت عدم کانفیگ صحیح و حرفه ای وب سرور، سرعت لود شدن وب سایت ها کاهش چشم گیری خواهد داشت و وب سرور زیر بار و ترافیک سنگین تا حد قطع شدن سرور و حتی باعث ایجاد اختلال در عملکرد پایگاه داده MySQL خواهد شد.
توجه داشته باشید که وب سرور در هر لحظه در حال تعامل با پایگاه داده و PHP در سرور های لینوکس می باشد. یکی از نکات بسیار مهم در مقوله کانفیگ سرور های لینوکسی، انتخاب هندلر PHP مناسب و تنظیمات وابسته به آن بر اساس نیاز های سرور و همچنین نوع وب سرور مورد نظر است.
برای کانفیگ سرور لینوکس به موارد اساسی زیر نیاز خواهیم داشت:
- نصب سیستم عامل لینوکس
- نصب Apache و پیکربندی آن
- نصب PHP و پیکربندی آن
- نصب MySQL و پیکربندی آن
- نصب و پیکربندی PHPMyadmin
- نصب وب سرور LightHttp و پیکربندی آن
- نصب کنترل پنل
- نصب LiteSpeed و انجام تنظیمات
- نصب فایروال
نحوه نصب آپاچی
برای نصب وب سرور آپاچی، شما نیاز به اتصال اینترنت دارید. پس از اتصال لینوکس سرور خود به اینترنت، توسط دستور زیر میتوانید نصب آپاچی را آغاز کنید:
sudo apt-get install apache2
پس از اتمام مراحل نصب، سرویس به صورت خودکار و با تنظیمات پیش فرض راه اندازی میشود.
مسیر قرار گرفتن فایلهای مربوط به تنظیمات Apache با توجه به نسخه آن میتواند بسیار متفاوت باشد. اما به صورت معمول آنها فایلهای مربوط به تنظیمات را در ServerRoot و تمام اسناد HTML را در DocumentRoot نگهداری میکنند. فایلهای مربوط به تنظیمات وب سرور Apache نیز به صورت پیش فرض در دایرکتوری /usr/local/apache/conf قرار گرفتهاند، که البته این مورد نیز بر اساس نسخه لینوکس متفاوت میباشد.
درون دایرکتوری تنظیمات فایلهای اصلی زیر قابل مشاهده است :
- فایل httpd.conf که حاوی تنظیمات عمومی سرور میباشد.
- فایل access.conf که تنظیمات مربوط به میزان دسترسی به هر دایرکتوری در آن نگهداری میشود.
- فایل mime.type که حاوی تعریف انواع مختلف فایل بر اساس پسوندهای متفاوت آنها است.
- فایل magic که حاوی تعریف انواع مختلف فایل بر اساس محتویات فایلها میباشد.