Squid Proxy یک پروکسی با ویژگی های کامل است که از پروتکل های شبکه محبوب مانند HTTP ، HTTPS ، FTP و موارد دیگر پشتیبانی می کند. قرار دادن Squid در مقابل یک وب سرور می تواند با ذخیره درخواست های مکرر ، فیلتر کردن ترافیک وب و دسترسی به محتوای محدود جغرافیایی ، عملکرد سرور را تا حد زیادی بهبود بخشد. در این مقاله، نحوه تنظیم Squid Proxy در CentOS 7 و پیکربندی مرورگرهای وب Firefox و Google Chrome برای استفاده از پروکسی ارائه شده است. با ما در شتابان هاست همراه باشيد.
بسته Squid در مخازن پیش فرض CentOS 7 گنجانده شده است. برای نصب آن ، دستور زیر را به عنوان كاربر sudo اجرا کنید:
sudo yum install squid
پس از اتمام نصب ، سرویس Squid را شروع و فعال کنید
sudo systemctl start squid
sudo systemctl enable squid
برای تأیید نصب ، دستور زیر را تایپ کنید که وضعیت سرویس را چاپ کند:
sudo systemctl status squid
● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2019-07-13 16:47:56 UTC; 12s ago ...
Squid را می توان با ویرایش فايل /etc/squid/squid.conf پیکربندی کرد.
قبل از ایجاد هرگونه تغییر ، از فایل پیکربندی اصلی با دستور cp نسخه بكاپ تهیه کنید:
sudo cp /etc/squid/squid.conf{,.orginal}
برای ویرایش فايل ، آن را در ویرایشگر متن خود باز کنید:
sudo nano /etc/squid/squid.conf
به طور پیش فرض ، Squid پیکربندی شده است تا در پورت ۳۱۲۸ و تمام رابط های شبکه روی سرور عمل كنند.
اگر می خواهید پورت را تغییر داده و تنظیم کنید ، خط را از http_port شروع کرده و آدرس IP رابط و پورت جدید را مشخص کنید. اگر هیچ رابط مشخص نشده باشد ، Squid در تمام رابط ها عمل مي كند.
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
اجرای Squid در تمام رابط ها و در پورت پیش فرض باید برای اکثر کاربران خوب باشد.
با استفاده از لیست های کنترل دسترسی (ACL) می توانید دسترسی به سرور Squid را کنترل کنید.
به طور پیش فرض ، Squid فقط از localhost و localnet اجازه دسترسی می دهد.
اگر کلیه كاربران که از پروکسی استفاده می کنند دارای یک آدرس IP ثابت هستند می توانید ACL ایجاد کنید که شامل IP های مجاز باشد.
به جای اضافه کردن آدرس های IP در فايل پیکربندی اصلی ، یک فایل اختصاصی جدید ایجاد خواهیم کرد که IP ها را در خود نگه می دارد:
۱۹۲٫۱۶۸٫۳۳٫۱ # All other allowed IPs
پس از اتمام کار ، فايل پیکربندی اصلی را باز کرده و یک ACL جدید با نام (lej_ips)(first highlighted line) ایجاد کنید و اجازه دهید با استفاده از بخشنامه http_access (second highlighted line) به آن ACL دسترسی پیدا کنید:
# ... acl allowed_ips src "/etc/squid/allowed_ips.txt" # ... http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
با سه خط اول ، ما یک ACL جدید تأیید شده ایجاد می کنیم. آخرین خط اجازه دسترسی به کاربران معتبر را می دهد.
راه اندازی مجدد سرویس Squid :
sudo systemctl restart squid
اگر firewall در حال اجراست ، باید پورت ۳۱۲۸ را باز کنید. برای این کار دستورات زیر را اجرا کنید:
sudo firewall-cmd --permanent --add-port=3128/tcp
firewall-cmd --reload
پیکربندی مرورگر برای استفاده از پروکسی
اکنون که Squid را تنظیم کرده اید ، آخرین مرحله پیکربندی مرورگر مورد نظر خود برای استفاده از آن است.
firefox:
مراحل زیر برای Windows، macOS و Linux یکسان است.
۱) در گوشه سمت راست بالای صفحه ، روی نماد hamburger کلیک کنید تا منوی Firefox را باز کنید:
۲) روی گزينه ⚙ Preferences
کلیک کنید.
۳) به قسمت تنظیمات شبکه بروید و بر روی دکمه …Settings کلیک کنید.
۴) یک پنجره جدید باز خواهد شد.
در این مرحله ، Firefox شما پیکربندی شده است و می توانید اینترنت را از طریق پروکسی Squid مرور کنید. برای تأیید آن ، google.com را باز کنید ، “IP من چیست” را تایپ کنید و باید آدرس IP سرور Squid خود را ببینید.
برای بازگشت به تنظیمات پیش فرض به تنظیمات شبکه ، دکمه رادیویی Use system proxy settings system را انتخاب کرده و تنظیمات را ذخیره کنید.
چندین افزونه نیز وجود دارد که به شما کمک می کنند تنظیمات پروکسی Firefox مانند FoxyProxy را پیکربندی کنید.
Google Chrome از تنظیمات پیش فرض سیستم استفاده می کند. به جای تغییر تنظیمات پروکسی سیستم عامل خود می توانید از افزایشی مانند SwitchyOmega استفاده کنید یا مرورگر وب Chrome را از خط فرمان شروع کنید.
برای راه اندازی Chrome با استفاده از یک نمایه جدید و اتصال به سرور Squid ، از دستور زیر استفاده کنید:
لينوكس:
/usr/bin/google-chrome \ --user-data-dir="$HOME/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"
Windows:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
برای تأیید صحیح کارکرد سرور پروکسی ، google.com را باز کنید و “what is my ip” را تایپ کنید. IP نمایش داده شده در مرورگر شما باید آدرس IP سرور شما باشد.
ما به شما نحوه نصب و پیکربندی Squid Proxy در CentOS 7 را نشان داده ايم. ما را در شتابان هاست دنبال كنيد.