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

تفاوت Web Server و Application Server در چیست؟ به زبان ساده

تفاوت وب سرور و اپلیکیشن سرور در چیست؟ همیشه زمانیکه قرار بود Role های موجود در ویندوز سرور 2008 را معرفی کنم دو مورد برای دانشجویان عزیز ابهام بر انگیز بود ، ما در سرور 2008 و به بعد از آن Web Server و Application Server را بصورت جداگانه می بینیم ، امروز می خواهیم در انجمن تخصصی فناوری اطلاعات ایران در خصوص تفاوت اصلی بین Web Server و Application Server توضیح دهیم. زمانیکه صحبت از World Wide Web می شود مهمترین واژه هایی که به چشم می آید Application server و Web Server است که با توجه به تشابه هایی که در این بین وجود دارد ممکن است با هم اشتباه گرفته شوند. بیشتر ما تاکنون با واژه Web Server یا سرویس دهنده وب آشنا شده ایم یا حداقل با شنیدن این واژه کمی با ماهیت کاری آن بصورت ناخودآگاه آشنا می شویم.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
تفاوت وب سرور و  application سرور

وب سرور یا Web Server چیست ؟

یک وب سرور یا Web Server در واقع یک نرم افزار یا یک سخت افزار است که برای سرویس دهی محتوا یا Content هایی از قبیل صفحات HTML ، فیلم و ... برای استفاده کاربران عادی توسط مرورگرهای اینترنتی پیاده سازی و مورد استفاده قرار می گیرد. در واقع Web Server همان چیزی است که مرورگر اینترنتی شما به آن وصل می شود و اطلاعات مورد نیاز شما را از آن دریافت می کند ، برای مثال همین الان که شما در حال مشاهده این مطلب در وب سایت انجمن تخصصی فناوری اطلاعات ایران هستید ، محتوای موجود در این صفحه بر روی یک وب سرور قرار گرفته است و مرورگر شما به این وب سرور متصل شده و اطلاعات را دریافت و به شما نمایش می دهد.نرم افزارهایی مانند IIS شرکت مایکروسافت و Apache لینوکس از انواع وب سرورهای معمول مورد استفاده در اینترنت هستند.

Application Server چیست ؟

از طرفی دیگر Application Server که ترجمه آن سرویس دهنده نرم افزار کاربردی است به یک نرم افزار یا سخت افزار گفته می شود که یک Application یا نرم افزار کاربردی که معمولا تحت وب سایت را سرویس دهی می کند. در واقع این نرم افزارهای کاربردی هیچگونه رابط گرافیکی ندارند و فقط برای ارائه داده ها و اطلاعات به کلاینت ها مورد استفاده قرار می گیرند. Application Server ها و Web Server ها استفاده ها و تشابه هایی در عملکرد دارند که اصلا بعید نیست یک وب سایت هم Application باشد و هم Web و طبیعتا روی سرور این وب سایت شما هم Application Server را خواهید داشت و هم Web Server ، وظیفه وب سرور گرفتن اطلاعات از محتویات ارائه شده توسط Application Server است و در کنار آن Web Server هم اطلاعات گرفته شده را در اختیار کاربران قرار می دهد .

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

Application Server ها با توجه به ماهیت کاریشان به نسبت Web Server ها دارای انعطاف پذیری بیشتری برای پیاده سازی هستند ، Application ها برای اجرا به مراتب از تنوع منابع و آزادی عمل بیشتری برخوردار هستند. همین امر هم ممکن است باعث بروز نقاط ضعف امنیتی در Application Server ها شود که مهاجمین بتوانند از آن سوء استفاده کنند. با توجه به اینکه به نسبت Web Server ها دارای ساختار کاری ساده تری هستند طبیعتا حملاتی که به وب سرورها انجام می شود کمتر از Application Server ها است.

تفاوت Web Server و Application Server در چیست؟  به زبان ساده

اما به این موضوع هم توجه کنید که امروزه تقریبا همه Application ها را به گونه ای می نویسند که با ترکیب شدن با وب سرورها کار کنند و به نوعی Web Application Server ها امروزه در دنیای فناوری اطلاعات حرف می زنند ، این موضوع هم خوب است و هم بد ، از این جهت خوب است که یکپارچگی ایجاد شده در این محصولات باعث سهولت دسترسی به Application مورد نظر می شود و کاربر می تواند براحتی با استفاده از یک مرورگر اینترنتی ساده به Application سرور خود متصل شود و از جهتی مشکل امنیتی بیشتری پیش می آید ؛ نقاط ضعف امنیتی Application Server ها و Web Server ها در این حالت تجمیع می شود و مهاجمین اینگونه نرم افزارها را بیشتر مورد حملات خود قرار می دهند .

در سطوح امنیتی بالای سازمانی پیشنهاد می شود که Application Server ها از Web Server ها جدا باشند و Web Server که صرفا به عنوان یک واسط کاربری محسوب می شود در منطقه حفاظت شده ای به نام DMZ قرار بگیرد و Application Server در داخل شبکه داخلی محافظت شده قرار بگیرد تا از بروز حملات بر روی آن جلوگیری شود ، به هر حال شما می توانید هر دوی این سرویس ها را روی یک ماشین هم داشته باشید و این کاملا به دیدگاه طراح شبکه شما بر می گردد ، در انتها پیشنهاد می کنم به مقاله بنده با عنوان انواع حملات به نرم افزارهای کاربردی تحت وب در انجمن امنیت اطلاعات و ارتباطات ITPRO مراجعه کنید و اطلاعات بیشتری در این خصوص بدست بیاورید ، امیدورام مورد توجه شما قرار گرفته باشد ، منتظر انتقادهای سازنده شما در ادامه هستیم .توسینسو باشید


محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

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

نظرات