Squid proxy یک سرور پراکسی منبع باز مبتنی بر یونیکس است که محتوای اینترنت را نزدیکتر به درخواستکننده از نقطه اصلی آن ذخیره میکند. به عنوان محبوبترین سرور ذخیره پراکسی، زمان پاسخ شما را افزایش میدهد و ازدحام پهنای باند را کاهش میدهد. زیرا صفحات وب، فایلهای رسانهای و سایر محتواهای درخواست شده . را به طور مکرر ذخیره میکند. نصب سرور ذخیره اسکوید باید توسط تکنسینهای آموزش دیده مدیریت شود. بنابراین، برای تبدیل شدن به یک متخصص در این زمینه، به این مقاله بپیوندید تا یاد بگیرید. چگونه اسکوید پراکسی را در اوبونتو نصب و راهاندازی کنید تا اتصال امن شود.
پیشنیازهای نصب سرور پراکسی اسکوید در اوبونتو
برای اجرای صحیح این آموزش، موارد زیر را در نظر بگیرید:
- یک سیستم با اوبونتو در حال اجرا
- دسترسی به یک پنجره ترمینال/خط فرمان (Ctrl-Alt-T)
- یک کاربر غیر ریشه با امتیازات سودو
- یک ویرایشگر متن
آموزش نصب و پیکربندی اسکوید پراکسی در اوبونتو
اسکوید یک ابزار امنیتی مفید است که میتواند فایلهای HTTP و FTP را در میان انواع دیگر محتوای وب ذخیره کند و درخواست کاربر را به سرور ارسال میکند و یک کپی از آبجکتهای درخواستی را ذخیره میکند. قبلاً در مورد پراکسی آموختهاید. اسکوید پراکسی برای هدایت ترافیک خروجی کاربر استفاده میشود. همچنین به عنوان یک سرور DNS برای تفسیر نامهای میزبان با کلاینت DNS داخلی خود عمل میکند. استفاده از اسکوید به شما کمک میکند تا از ورود بازدیدکنندگان ناخواسته به شبکه خود جلوگیری کنید و از آسیب وبسایتهای خطرناک به کاربران جلوگیری کنید. بر اساس گزینههای احراز هویت اسکوید، میتوانید کاربرانی را که مجاز به استفاده از منابع پراکسی هستند انتخاب کنید. از آنجایی که اسکوید میتواند به عنوان یک سرور پراکسی عمل کند، به کاربران دسترسی به اینترنت را اعطا یا رد میکند.
بیایید از این مقاله بگذریم و مراحل لازم برای نصب و راهاندازی اسکوید پراکسی در اوبونتو را مرور کنیم. ابتدا با نصب اسکوید شروع میکنیم.
نصب اسکوید پراکسی در اوبونتو
به طور پیشفرض، بسته اسکوید در اوبونتو گنجانده شده است. برای بهروزرسانی لیست بستهها و نصب اسکوید پراکسی، دستور زیر را به عنوان کاربر سودو اجرا کنید:
sudo apt update
sudo apt install squid
سرویس اسکوید به طور خودکار پس از اتمام فرآیند نصب شروع میشود. از دستور زیر برای بررسی اینکه آیا سرویس به درستی در حال اجرا است یا خیر، استفاده کنید:
sudo systemctl status squid
خروجی شبیه به این خواهد بود:
squid.service – squid web proxy server
Loaded: loaded (/lib/systemd/system/squid.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-12-22 10:10:10 UTC; 10min 10s ago
پیکربندی اسکوید پراکسی در اوبونتو
اکنون آماده پیکربندی اسکوید هستید. برای انجام این کار، میتوانید فایل /etc/squid/squid.conf را ویرایش کنید. اما توصیه میشود ابتدا از فایل پیکربندی اصلی پشتیبان تهیه کنید و سپس تغییرات را اعمال کنید. بنابراین دستور زیر را اجرا کنید:
sudo cp /etc/squid/squid.conf{,.orginal}
سپس با ویرایشگر متن مورد علاقه خود، نمونه اسکوید را پیکربندی کنید. در اینجا از نانو استفاده میکنیم.
sudo nano /etc/squid/squid.conf
به طور پیشفرض، اسکوید برای گوش دادن بر روی پورت ۳۱۲۸ در تمام رابطهای شبکه در سرور تنظیم شده است. اما میتوانید پورت را تغییر دهید و رابط گوشدهنده دیگری را تنظیم کنید. برای انجام این کار، خط شروع شده با http_port را تغییر دهید و آدرس IP رابط و پورت جدید را مشخص کنید. اگر هیچ رابطی مشخص نشود، اسکوید به تمام رابطها گوش میدهد.
/etc/squid/squid.conf
# Squid normally listens to port 3128
http_port IP_ADDR:PORT
اگر یک لیست کنترل دسترسی (ACL) شامل IPهای مجاز ایجاد کنید، میتوانید دسترسی به سرور پراکسی را محدود کنید، زمانی که تمام کلاینتها یک IP استاتیک دارند. یا اسکوید باید برای استفاده از احراز هویت تنظیم شود. اگر نیاز به اطلاعات بیشتری در مورد IP و انواع آن دارید، میتوانید اطلاعات خود را ارتقا دهید.
برای نگهداری IPهای مجاز، یک فایل اختصاصی جدید ایجاد کنید (به جای اضافه کردن آدرس IPها)
امن سازی و احراز هویت اسکوید پراکسی در اوبونتو
اسکوید از Samba، LDAP و احراز هویت پایه HTTP پشتیبانی میکند. برای استفاده از یک بکاند برای احراز هویت کاربران، اسکوید را پیکربندی کنید. این همچنین زمانی مفید است که محدود کردن دسترسی بر اساس IP کار نمیکند. در ادامه میتوانید ببینید که چگونه از یک روش احراز هویت ساده ساخته شده در پروتکل HTTP و یک احراز هویت پایه استفاده کنید.
در اینجا، از ابزار openssl برای ایجاد یک گذرواژه رمزگذاری شده استفاده میکنیم. برای اضافه کردن جفت USERNAME:PASSWORD به فایل /etc/squid/htpasswd:
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
برای ایجاد یک کاربر با نام ‘opera’ و گذرواژه “P@sv0rD” دستور زیر را اجرا کنید:
printf "opera:$(openssl passwd -crypt 'P@sv0rD')\n" | sudo tee -a /etc/squid/htpasswd
برای فعال کردن احراز هویت پایه HHTP و گنجاندن فایل حاوی اعتبارنامههای کاربر در فایل پیکربندی اسکوید، فایل پیکربندی اصلی را باز کنید و خط زیر را اضافه کنید:
sudo nano /etc/squid/squid.conf
/etc/squid/squid.conf
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
#http_access allow localnet
http_access allow localhost
http_access allow authenticated
# And finally deny all other access to this proxy
http_access deny all
به این ترتیب، یک ACL جدید با نام authenticated ایجاد میشود و دسترسی کاربران احراز هویت شده مجاز خواهد بود. سپس میتوانید سرویس Squid را راهاندازی مجدد کنید.
sudo systemctl restart squid
پیکربندی فایروال
در این بخش، شما پروفایل UFW Squid را برای باز کردن پورتهای Squid فعال میکنید:
sudo ufw allow 'Squid'
اگر Squid در یک پورت غیرپیشفرض در حال اجرا است، میتوانید ترافیک را در آن پورت مجاز کنید. اگر فرض کنیم پورت ۸۸۸۸:
sudo ufw allow 8888/tcp
چگونگی پیکربندی مرورگرهای وب برای استفاده از اسکوید پراکسی
تا اینجا آموختید چگونه اسکوید پراکسی را در اوبونتو نصب و راهاندازی کنید. اکنون ببینیم چگونه مرورگر مورد علاقه خود را پیکربندی کنیم. در اینجا، فایرفاکس و گوگل کروم را بررسی خواهیم کرد.
فایرفاکس
برای پیکربندی فایرفاکس و استفاده از آن، فقط نیاز دارید مراحل زیر را که برای ویندوز، macOS و لینوکس یکسان است، دنبال کنید.
۱. در گوشه بالا سمت راست، روی آیکون همبرگر ☰ کلیک کنید تا منوی فایرفاکس را باز کنید.
۲. روی لینک ⚙ تنظیمات کلیک کنید.
۳. به بخش تنظیمات شبکه بروید و روی دکمه تنظیمات… کلیک کنید.
۴. وقتی یک پنجره جدید باز شد، مراحل زیر را دنبال کنید:
– گزینه پیکربندی پروکسی دستی را انتخاب کنید.
– آدرس IP سرور اسکوید را در فیلد میزبان HTTP و ۳۱۲۸ را در فیلد پورت وارد کنید.
– گزینه استفاده از این سرور پروکسی برای تمام پروتکلها را انتخاب کنید.
– روی دکمه تأیید کلیک کنید تا تنظیمات ذخیره شود.
پس از گذراندن تمام مراحل بالا، فایرفاکس باید پیکربندی شده باشد. بنابراین میتوانید از طریق پروکسی اسکوید در اینترنت مرور کنید. برای بررسی اینکه آیا به درستی کار میکند یا خیر، google.com را باز کنید و “what is my ip” را تایپ کنید تا آدرس IP سرور اسکوید را ببینید.
هر زمان که ترجیح دادید به تنظیمات پیشفرض برگردید، به تنظیمات شبکه بروید، گزینه استفاده از تنظیمات پروکسی سیستم را انتخاب کنید و تنظیمات را ذخیره کنید.
گوگل کروم
از آنجایی که گوگل کروم از تنظیمات پروکسی پیشفرض سیستم استفاده میکند، میتوانید از یک افزونه مانند SwitchyOmega استفاده کنید یا به جای تغییر تنظیمات پروکسی سیستم عامل، مرورگر وب کروم را از خط فرمان اجرا کنید.
دستور زیر را برای اجرای کروم با یک پروفایل جدید و اتصال به سرور اسکوید وارد کنید.
لینوکس:
/usr/bin/google-chrome \
--user-data-dir="$HOME/proxy-profile" \
--proxy-server="http://SQUID_IP:3128"
ویندوز:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^
--user-data-dir="%USERPROFILE%\proxy-profile" ^
--proxy-server="http://SQUID_IP:3128"
macOS:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--user-data-dir="$HOME/proxy-profile" \
--proxy-server="http://SQUID_IP:3128"
دوباره، همانطور که برای فایرفاکس انجام دادید، google.com را باز کنید، “what is my ip” را تایپ کنید تا آدرس IP سرور اسکوید را ببینید و بررسی کنید که سرور پروکسی به درستی کار میکند یا خیر.
چگونه یک وبسایت را در اسکوید پراکسی مسدود کنیم؟
استفاده از اسکوید پراکسی به شما امکان میدهد وبسایت مورد نظر را مسدود کنید. با اضافه کردن برخی قوانین، میتوانید وبسایتها را بر اساس URL، کلیدواژه، نام دامنه و پسوندها مسدود کنید.
ابتدا یک فایل متنی جدید /etc/squid/blocked.acl را ایجاد و ویرایش کنید:
sudo nano /etc/squid/blocked.acl
شما باید وبسایتهای مورد نظر برای مسدود شدن را با شروع از یک نقطه (.facebook یا .twitter) اضافه کنید تا تمام زیردامنههای سایت اصلی را مسدود کند.
سپس، فایل /etc/squid/squid.conf را دوباره باز کنید:
sudo nano /etc/squid/squid.conf
اکنون، خطوط زیر را بالای لیست ACL خود اضافه کنید:
acl blocked_websites dstdomain "/etc/squid/blocked.acl"
http_access deny blocked_websites
نتیجهگیری
در این مقاله آموختید که چگونه اسکوید پراکسی را در اوبونتو نصب و راهاندازی کنید. اسکوید پراکسی گزارشهایی از وبسایتهای بازدید شده را در اختیار شما قرار میدهد که به شما امکان میدهد رفتار مرور کاربران را ارزیابی کرده و از آنها برای مقیاسبندی، امنیت و برنامهریزی منابع استفاده کنید. اگر مراحل لازم این راهنما را به درستی دنبال کنید، میتوانید بدون هیچ خطایی اسکوید پراکسی را در اوبونتو نصب و راهاندازی کنید. با این حال، اگر با هر مشکلی مواجه شدید، تیم پشتیبانی فنی ما تلاش خود را برای حل مشکلات شما انجام خواهد داد.