پراکسی سرور

الگویی از نحوه عملکرد پراکسی که در آن رایانه کارساز پراکسی بین دو رایانه دیگر نقش کارساز پراکسی را ایفا می‌کند.
پیشکار ، پراکسی یا پراکسی سرور برنامه واسطه‌ای بین کاربر داخلی شبکه و اینترنت است که قابلیت‌های فراوانی در راستای حفظ امنیت، نظارت مدیریتی، کنترل کاربران و سرویس‌های ذخیره‌سازی دارد. پراکسی سرور امکان ایجاد فیلترهایی خاص را برای امنیت بیشتر در شبکه فراهم می‌کند، قابلیت ذخیره‌سازی، سرعت دستیابی به اطلاعات را بالا می‌برد و با سیستم‌های تصدیق هویت و تغییر هویت، ضامن امنیت در شبکه داخلی سازمان است و نیز امکان ثبت گزارش کامل کارکردش را دارد. همچنین قابلیت مسدود کردن محتویات آسیب‌رسان و بررسی تبعیت از قوانین برقرار شده در شبکه را دارا می‌باشد. پراکسی سرور امکان استفاده از اکثر پروتکل‌های محلی را فراهم می‌آورد و امکان رمز کردن داده‌ها را نیز دارد. پراکسی‌ها انواع مختلفی دارند که هر یک کار خاصی را انجام می‌دهد، که از آن جمله می‌توان FTP، HTTP، SMTP و DNS را نام برد.
مقدمه
شاید تاکنون بارها در هنگام استفاده از اینترنت با کلمه پراکسی برخورد داشته‌اید اما مفهوم کاملی از آن در ذهن نداشته باشید. برخی از کاربران عادی پراکسی سرور را فقط به معنای سیستم فیلترینگ می‌شناسند در صورتی‌که چنین دیدگاهی اشتباه است و پراکسی سرور قابلیت‌های فراوانی دارد که در ادامه به آن اشاره خواهد شد. فلسفه ایجاد پراکسی سرور قرار دادن یک خط اینترنت در اختیار تعداد بیش از یک نفر استفاده‌کننده در یک شبکه بوده‌است اما بعدها قابلیت‌هایی به پراکسی سرور اضافه شد به‌طوری‌که هم اکنون استفاده از این قابلیت‌ها در شبکه سازمان‌های مختلف اجتناب ناپذیر است.
پراکسی سرور چیست؟
پراکسی سرور واسطه‌ای بین کاربر داخلی و اینترنت است. در حقیقت پراکسی درخواست کارخواه یا کلاینت را به پراکسی سرور فرستاده، پراکسی سرور محتویات بسته را بررسی می‌کند و در صورت لزوم پردازش‌های مورد نظر را روی بسته دیتا انجام می‌دهد و بسته را می‌سنجد، در صورت عدم مغایرت با سیاست‌های امنیتی تنظیم شده برای شبکه به آن‌ها اجازه عبور از دیوار آتش را می‌دهد و این درخواست روی شبکه ارسال می‌شود و جواب آن توسط پراکسی سرور از اینترنت دریافت و برای کلاینت ارسال می‌شود.
مزایای استفاده از پراکسی
همان‌طور که اشاره شد پراکسی سرور دارای قابلیت‌های فراوانی است که از آن جمله می‌توان به موارد زیر اشاره کرد:
oذخیره‌سازی
با توجه به گران بودن هزینه استفاده از اینترنت (بسته به اندازه پهنای باند مصرفی) و محدودیت پهنای باند معمولا اطلاعات مورد نظر در زمان کم و با سرعت مطلوب به دست نمی‌آید. برای کمک به رفع این مشکل، پراکسی سرور منابعی مانند فایل‌ها و صفحات وبی که مورد دسترسی قرار می‌گیرند در یک حافظه جداگانه ذخیره می‌کند و تقاضای مجدد این منابع با محتویات کش پاسخ داده می‌شود، در نتیجه از یک سو زمان دستیابی کاهش می‌یابد و از سوی دیگر چون اطلاعات از اینترنت دریافت نمی‌شود باعث کاهش ترافیک شبکه می‌شود و پهنای باند محدود با اطلاعات تکراری اشغال نمی‌شود.
دیوار آتش (fire wall)
پراکسی سرور می‌تواند تقاضای کاربران را به فایروال بدهد که به آن‌ها اجازه ورود به شبکه‌ی داخلی یا خروج از آن داده شود.
فیلتر کردن
پراکسی سرور می‌تواند تمام محتویات ترافیک وارد شونده یا خارج شونده از شبکه داخلی سازمان را بازبینی کند و طبق تنظیمات انجام شده هر چیزی که به معیارهای تعیین شده برای امنیت یا سیاست‌های آن سازمان، مغایرت دارد مسدود کند (مانند سیستم فیلترینگ مخابرات ایران).
تصدیق هویت
بیشتر منابع الکترونیکی سازمان‌ها برای حفظ امنیت محدود می‌شوند. این محدودیت می‌تواند با ایجاد کلمه رمز یا محدود کردن دامنه آی پی اعمال شود در اینصورت اگر کاربری از یک سرویس‌دهنده اینترنت دیگر، در جایی غیر از سازمان استفاده کند آی پی کامپیوتر کاربر غیر معتبر تشخیص داده می‌شود و نیز برای کاربرانی که در داخل سازمان باشند ولی به صورت فیزیکی به شبکه داخلی متصل نشده باشند پراکسی می‌تواند به کاربران دور اجازه عبور موقت دهد یا به آن‌ها به‌طور موقت یک آی پی سازمان تخصیص داده می‌شود (مانند استفاده از لپ‌تاپ شخصی در شبکه داخلی سازمانی مثل دانشگاه) تا بتوانند از منابع محدود شده استفاده کنند.
تغییر هویت
برای جلوگیری از برخی حمله‌های نفوذ گران و محافظت از شبکه داخلی سازمان سرور پراکسی قادر به تغییر هویت کلاینت‌های داخلی می‌باشد. بدین صورت که اگر منبع تقاضا شده در کش موجود نباشد، سرور پراکسی برای آن کاربر به عنوان کلاینت عمل می‌کند و از یکی از آدرس‌های آی پی خودش، برای ارسال تقاضا به سرور موجود در اینترنت استفاده می‌کند و سپس پاسخ به وسیله پراکسی سرور برای کاربر ارسال می‌شود. این پروسه تغییر آی پی باعث می‌شود تقاضا دهنده اولیه قابل ردیابی نباشد و معماری شبکه سازمان از دید بیرونی مخفی بماند.
ثبت کردن
پراکسی سرور امکان ثبت گزارش کامل کارکردش را دارد تا در هر زمان امکان پیگیری اعمال کاربران داخل سازمان را فراهم آورد. اینکه کلاینت در چه ساعت و و دقیقه‌ای چه درخواستی ارسال کرده و حجم اطلاعات مبادله شده، نوع اطلاعات و … از این جمله‌اند.
مزایای پراکسی سرور
Application Getways که عموما پراکسی نامیده می‌شود پیشرفته‌ترین روش استفاده شده برای کنترل ترافیک عبوری از فایروال‌ها هستند. مزیتهای فراوانی دارند که به تعدادی از آن‌ها اشاره می‌کنیم:
پراکسی سرور علاوه بر هدرها محتویات داخل هر بسته را نیز کنترل می‌کند و هرچیزی که سیاست‌های امنیتی سازمان را نقض کند می‌تواند تغییر دهد یا دور بریزد.
کدهای آسیب‌رسان مثل فایل‌های اجرایی، اپلت‌های جاوا و اکتیوکس‌ها را مسدود می‌کند.
قابلیت ذخیره‌سازی توسط پراکسی سرور امکان استفاده بهتر از پهنای باند و بالا بردن سرعت دریافت اطلاعات را می‌دهد.
پراکسی همچنین امکان سنجیدن محتوای بسته برای بررسی مطابقت با استانداردهای پروتکل را داراست. به‌طور نمونه گاهی حملات نفوذ گران از طریق ارسال متاکارکترها برای فریب سیستم قربانی یا تحت تاثیر قرار دادن سیستم با دیتای بسیار زیاد است. پراکسی می‌تواند کاراکترهای غیرقانونی یا رشته‌های خیلی طولانی را مشخص و مسدود کند.
با توجه به امکاناتی نظیر تصدیق و تغییر هویت و … امنیت شبکه داخلی را تا حد زیادی تامین می‌کند.
با ستفاده از پراکسی سرور می‌توان از اکثر پروتکل‌های موجود در شبکه‌های محلی در محدوده نرم‌افزارهای کاربردی در شبکه‌های LAN مرتبط با اینترنت استفاده کرد. این ویژگی به این معناست که هنگام پیاده‌سازی برنامه با یک سرویس یا پروتکل خاص محدودیتی نبوده و کدی در برنامه برای ایجاد هماهنگی نوشته نمی‌شود.
با استفاده از پراکسی سرور همه کاربران شبکه نمی‌توانند از همه سایت‌ها استفاده کنند و چون مستقیما به اینترنت وصل نیستند می‌توان طبق تنظیمات از ورود به برخی سایت‌ها و دامنه‌ها جلوگیری به عمل آورد.
همچنین هر کسی از روی اینترنت نمی‌تواند به اطلاعات شبکه دسترسی داشته باشد.
برای امنیت بیشتر نیز می‌توان با استفاده از SSL امکان رمز کردن داده‌ها را فراهم آورد.
برخی از انواع پراکسی
تا کنون به پراکسی به صورت یک کلاس عمومی تکنولوژی پرداختیم. در واقع، انواع مختلف پراکسی وجود دارد که هرکدام با نوع متفاوتی از ترافیک اینترنت سروکار دارند. در بخش بعد به چند نوع آن اشاره می‌کنیم و شرح می‌دهیم که هرکدام در مقابل چه نوع حمله‌ای مقاومت می‌کند.
البته پراکسی‌ها تنظیمات و ویژگی‌های زیادی دارند. ترکیب پراکسی‌ها و سایر ابزار مدیریت فایروال‌ها به مدیران شبکه شما قدرت کنترل امنیت شبکه تا بیشترین جزئیات را می‌دهد. در ادامه به پراکسی‌های زیر اشاره خواهیم کرد:
SMTP Proxy
HTTP Proxy
FTP Proxy
DNS Proxy
SMTP Proxy
پراکسی SMTP محتویات ایمیل‌های واردشونده و خارج‌شونده را برای محافظت از شبکه شما در مقابل خطر بررسی می‌کند. بعضی از تواناییهای آن اینها هستند:
مشخص کردن بیشترین تعداد دریافت‌کنندگان پیام
این اولین سطح دفاع علیه اسپم (هرزنامه) است که اغلب به صدها یا حتی هزاران دریافت‌کننده ارسال می‌شود.
مشخص کردن بزرگترین اندازه پیام
این به سرور ایمیل کمک می‌کند تا از بار اضافی و حملات بمباران توسط ایمیل جلوگیری کند و با این ترتیب می‌توانید به درستی از پهنای باند و منابع سرور استفاده کنید.
اجازه دادن به کاراکترهای مشخص در آدرسهای ایمیل آنطور که در استانداردهای اینترنت پذیرفته شده‌است
چنانچه قبلا اشاره شد، بعضی حمله‌ها بستگی به ارسال کاراکترهای غیرقانونی در آدرسها دارد. پراکسی می‌تواند طوری تنظیم شود که بجز به کاراکترهای مناسب به بقیه اجازه عبور ندهد.
فیلترکردن محتوی برای جلوگیری از انواع محتویات اجرایی
معمول‌ترین روش ارسال ویروس، کرم و اسب تروا فرستادن آن‌ها در پیوست‌های به ظاهر بی‌ضرر ایمیل است. پراکسی SMTP می‌تواند این حمله‌ها را در یک ایمیل از طریق نام و نوع، مشخص و جلوگیری کند، تا آن‌ها هرگز به شبکه شما وارد نشوند.
فیلترکردن الگوهای آدرس برای ایمیل‌های مقبول\مردود
هر ایمیل شامل آدرسی است که نشان‌دهنده منبع آن است. اگر یک آدرس مشخص شبکه شما را با تعداد بیشماری از ایمیل مورد حمله قرار دهد، پراکسی می‌تواند هر چیزی از آن آدرس اینترنتی را محدود کند. در بسیاری موارد، پراکسی می‌تواند تشخیص دهد چه موقع یک هکر آدرس خود را جعل کرده‌است. از آنجا که پنهان کردن آدرس بازگشت تنها دلایل خصمانه دارد، پراکسی می‌تواند طوری تنظیم شود که بطور خودکار ایمیل جعلی را مسدود کند.
فیلترکردن هدرهای ایمیل
هدرها شامل دیتای انتقال مانند اینکه ایمیل از طرف کیست، برای کیست و غیره هستند. هکرها راه‌های زیادی برای دستکاری اطلاعات هدر برای حمله به سرورهای ایمیل یافته‌اند. پراکسی مطمئن می‌شود که هدرها با پروتکل‌های اینترنتی صحیح تناسب دارند و ایمیل‌های دربردارنده هدرهای تغییر شکل داده را مردود می‌کنند. پراکسی با اعمال سختگیرانه استانداردهای ایمیل نرمال، می‌تواند برخی حمله‌های آتی را نیز مسدود کند.
تغییردادن یا پنهان‌کردن نامهای دامنه و شناسه‌های پیام‌ها
ایمیل‌هایی که شما می‌فرستید نیز مانند آنهایی که دریافت می‌کنید، دربردارنده دیتای هدر هستند. این دیتا بیش از آنچه شما می‌خواهید دیگران درباره امور داخلی شبکه شما بدانند، اطلاعات دربردارند. پراکسی SMTP می‌تواند بعضی از این اطلاعات را پنهان کند یا تغییر دهد تا شبکه شما اطلاعات کمی در اختیار هکرهایی قرار دهد که برای وارد شدن به شبکه شما دنبال سرنخ می‌گردند.
HTTP Proxy
پراکسی HTTP بر ترافیک داخل شونده و خارج شونده از شبکه شما که توسط کاربرانتان برای دسترسی به اینترنت ایجاد شده، نظارت می‌کند. این پراکسی برای مراقبت از کلاینت‌های وب شما و سایر برنامه‌ها که به دسترسی به وب از طریق اینترنت متکی هستند و نیز حملات برپایه HTML، محتوا را فیلتر می‌کند. بعضی از قابلیتهای آن اینها هستند:
برداشتن اطلاعات اتصال کلاینت
این پراکسی می‌تواند آن قسمت از دیتای هدر را که نسخه سیستم‌عامل، نام و نسخه مرورگر، حتی آخرین صفحه وب دیده شده را فاش می‌کند، بردارد. در بعضی موارد، این اطلاعات حساس است، بنابراین چرا فاش شوند؟
تحمیل تابعیت کامل از استانداردهای مقررشده برای ترافیک وب
در بسیاری از حمله‌ها، هکرها بسته‌های تغییرشکل داده شده را ارسال می‌کنند که باعث دستکاری عناصر دیگر صفحه وب می‌شوند، یا بصورتی دیگر با استفاده از رویکردی که ایجادکنندگان مرورگر پیش‌بینی نمی‌کردند، وارد می‌شوند. پراکسی HTTP این اطلاعات بی‌معنی را نمی‌پذیرد. ترافیک وب باید از استانداردهای وب رسمی پیروی کند، وگرنه پراکسی ارتباط را قطع می‌کند.
فیلترکردن محتوای از نوع MIME
الگوهای MIME به مرورگر وب کمک می‌کنند تا بداند چگونه محتوا را تفسیر کند تا با یک تصویرگرافیکی به صورت یک گرافیک رفتار شود، یا .wav فایل به عنوان صوت پخش شود، متن نمایش داده شود و غیره. بسیاری حمله‌های وب بسته‌هایی هستند که در مورد الگوی MIME خود دروغ می‌گویند یا الگوی آن را مشخص نمی‌کنند. پراکسی HTTP این فعالیت مشکوک را تشخیص می‌دهد و چنین ترافیک دیتایی را متوقف می‌کند.
فیلترکردن کنترلهای جاوا و اکتیوایکس
برنامه نویسان از جاوا و اکتیوایکس برای ایجاد برنامه‌های کوچک بهره می‌گیرند تا در درون یک مرورگر وب اجراء شوند (مثلا اگر فردی یک صفحه وب مربوط به امور جنسی را مشاهده می‌کند، یک اسکریپت اکتیوایکس روی آن صفحه می‌تواند به صورت خودکار آن صفحه را صفحه خانگی مرورگر آن فرد نماید). پراکسی می‌تواند این برنامه‌ها را مسدود کند و به این ترتیب جلوی بسیاری از حمله‌ها را بگیرد.
برداشتن کوکی‌ها
پراکسی HTTP می‌تواند جلوی ورود تمام کوکی‌ها را بگیرد تا اطلاعات خصوصی شبکه شما را حفظ کند.
برداشتن هدرهای ناشناس
پراکسی HTTP، ازهدرهای HTTP که از استاندارد پیروی نمی‌کنند، ممانعت به عمل می‌آورد. یعنی که، به جای مجبور بودن به تشخیص حمله‌های برپایه علائمشان، پراکسی براحتی ترافیکی را که خارج از قاعده باشد، دور می‌ریزد. این رویکرد ساده از شما در مقابل تکنیک‌های حمله‌های ناشناس دفاع می‌کند.
فیلترکردن محتوا
دادگاه‌ها مقررکرده‌اند که تمام کارمندان حق برخورداری از یک محیط کاری غیر خصمانه را دارند. بعضی عملیات تجاری نشان می‌دهد که بعضی موارد روی وب جایگاهی در شبکه‌های شرکت‌ها ندارند.
پراکسی HTTP سیاست امنیتی شرکت شما را وادار می‌کند که توجه کند چه محتویاتی مورد پذیرش در محیط کاریتان است و چه هنگام استفاده نامناسب از اینترنت در یک محیط کاری باعث کاستن از بازده کاری می‌شود. بعلاوه، پراکسی HTTP می‌تواند سستی ناشی از فضای سایبر را کم کند. گروه‌های مشخصی از وب سایت‌ها که باعث کم کردن تمرکز کارمندان از کارشان می‌شود، می‌توانند غیرقابل دسترس شوند.
FTP Proxy
بسیاری از سازمان‌ها از اینترنت برای انتقال فایل‌های دیتای بزرگ از جایی به جایی دیگر استفاده می‌کنند. در حالیکه فایل‌های کوچک‌تر می‌توانند به عنوان پیوست‌های ایمیل منتقل شوند، فایل‌های بزرگ‌تر توسط FTP فرستاده می‌شوند. به دلیل اینکه سرورهای FTP فضایی را برای ذخیره فایل‌ها آماده می‌کنند، هکرها علاقه زیادی به دسترسی به این سرورها دارند. پراکسی FTP معمولا این امکانات را دارد:
محدود کردن ارتباطات از بیرون به «فقط خواندنی
این عمل به شما اجازه می‌دهد که فایل‌ها را در دسترس عموم قرار دهید، بدون اینکه توانایی نوشتن فایل روی سرورتان را بدهید.
یعنی یک ارتباط یک طرفه
محدود کردن ارتباطات به بیرون به «فقط خواندنی
این عمل از نوشتن فایل‌های محرمانه شرکت به سرورهای FTP خارج از شبکه داخلی توسط کاربران جلوگیری می‌کند.
مشخص کردن زمانی ثانیه‌های انقضای زمانی
این عمل به سرور شما اجازه می‌دهد که قبل از حالت تعلیق ارتباط را قطع کند.
ازکارانداختن فرمان FTP SITE
این از حمله‌هایی جلوگیری می‌کند که طی آن هکر فضایی از سرور شما را تسخیر می‌کند تا با استفاده از سیستم شما حمله بعدی خودش را پایه ریزی می‌کند.
DNS Proxy
DNS شاید به اندازه HTTP یا SMTP شناخته شده نیست، اما چیزی است که به شما این امکان را می‌دهد که نامی را مانند http://www.abc.com در مرورگر وب خود تایپ کنید و وارد این سایت شوید – بدون توجه به اینکه از کجای دنیا به اینترنت متصل شده‌اید. به منظور تعیین موقعیت و نمایش منابعی که شما از اینترنت درخواست می‌کنید، DNS نام‌های دامنه‌هایی را که می‌توانیم براحتی بخاطر بسپاریم به آدرس آی پی‌هایی که کامپیوترها قادر به درک آن هستند، تبدیل می‌کند. در اصل این یک پایگاه داده‌است که در تمام اینترنت توزیع شده‌است و توسط نام دامنه‌ها فهرست شده‌است.
بهرحال، این حقیقت که این سرورها در تمام دنیا با مشغولیت زیاد در حال پاسخ دادن به تقاضاها برای صفحات وب هستند، به هکرها امکان تعامل و ارسال دیتا به این سرورها را برای درگیرکردن آن‌ها می‌دهد. حمله‌های برپایه DNS هنوز خیلی شناخته شده نیستند، زیرا به سطحی از پیچیدگی فنی نیاز دارند که بیشتر هکرها نمی‌توانند به آن برسند. بهرحال، بعضی تکنیک‌های هک که می‌شناسیم باعث می‌شوند هکرها کنترل کامل را بدست گیرند. بعضی قابلیت‌های پراکسی DNS می‌تواند موارد زیر باشد:
تضمین انطباق پروتکلی
یک کلاس تکنیکی بالای اکسپلویت می‌تواند لایه حامل را که تقاضاها و پاسخ‌های DNS را انتقال می‌دهد به یک ابزار خطرناک تبدیل کند. این نوع از حمله‌ها بسته‌هایی تغییرشکل داده شده به منظور انتقال کد آسیب‌رسان ایجاد می‌کنند. پراکسی DNS، هدرهای بسته‌های DNS را بررسی می‌کند و بسته‌هایی را که به صورت ناصحیح ساخته شده‌اند دور می‌ریزد و به این ترتیب جلوی بسیاری از انواع سوء استفاده را می‌گیرد.
فیلترکردن محتوای هدرها به صورت گزینشی
DNS در سال ۱۹۸۴ ایجاد شده و از آن موقع بهبود یافته‌است. بعضی از حمله‌های DNS بر ویژگی‌هایی تکیه می‌کنند که هنوز تایید نشده‌اند. پراکسی DNS می‌تواند محتوای هدر تقاضاهای DNS را بررسی کند و تقاضاهایی را که کلاس، نوع یا طول هدر غیرعادی دارند، مسدود کند.
نتایج
طبق مطالب ارائه شده در این مقاله می‌توان نتیجه گرفت استفاده از پراکسی سرور دریک شبکه کارآمد اجتناب ناپذیر است. در حقیقت پراکسی نقش ویژه‌ای در حفظ امنیت، نظارت مدیریتی وسرویس ذخیره‌سازی در راستای افزایش سرعت دستیابی به اطلاعات دارد.
گرچه پراکسی تمام ابزار امنیت نیست، اما یک ابزار عالیست، مخصوصا هنگامی که با ابزارهایی مانند ضدویروس‌های استاندارد، نرم‌افزارهای امنیتی سرور و سیستم‌های امنیتی فیزیکی بکار برده شود.
نتیجه‌گیری و جمع‌بندی
همان‌طور که گفته شد پراکسی یک واسطه بین کلاینت و سرور اینترنت است که استفاده از آن به بهبود سرعت دستیابی به اطلاعات و استفاده بهتر از پهنای باند، نظارت بر عملکرد کاربران داخلی شبکه و حفظ امنیت کمک می‌نماید.
در واقع پراکسی مانند الکی می‌ماند که تمام بسته‌های فرستاده شده و دریافت شونده را غربال می‌کند و به محتویات آسیب‌رسان اجازه عبور نمی‌دهد.
پراکسی‌ها انواع مختلفی دارند که هر یک کار خاصی انجام می‌دهد و می‌توان آن را به دلخواه تنظیم کرد. به عنوان نمونه SMTP پراکسی محتویات ایمیل‌های وارد شونده و خارج‌شونده را برای محافظت از شبکه شما در مقابل خطر بررسی می‌کند. پراکسی HTTP بر ترافیک داخل شونده و خارج شونده از شبکه شما که توسط کاربرانتان برای دسترسی به اینترنت ایجاد شده، نظارت می‌کند. FTP پراکسی محتویات فایل‌های به اشتراک گذاشته شده در شبکه را بررسی می‌کند. در کل می‌توان نتیجه گرفت پراکسی ابزاری عالی برای کنترل شبکه می‌باشد.