اوبونتودبیانسیستم عامل لینوکسمقالات وب

چگونه به کمک Squid بر روی اوبونتو و دبیان، پروکسی سرور ایجاد کنیم؟

در مقاله قبلی در مورد Squid صحبت کردیم. این گزینه یکی از محبوب ترین پروکسی سرورهای HTTP است و در شرکت های مختلفی مورد استفاده قرار می گیرد.  شما می توانید از این پروکسی سرور برای بهبود سرعت سرور، کاهش زمان پاسخگویی، کاهش پهنای باند مصرفی هم استفاده کنید. در این مقاله سعی می کنیم نحوه راه اندازی پروکسی سرور در اوبونتو و دبیان را به کمک این ابزار محبوب مرور کنیم. پس همراه وب ایده باشید.

چگونه Squid را بر روی اوبونتو نصب کنیم؟

قبل از اینکه بخواهیم کار خود را آغاز کنیم باید بدانیم که سرور Squid هیچ گونه پیش نیازی ندارد اما مقدار رم مورد نیاز ممکن است بر اساس عادت های گشت و گذار کاربران متفاوت باشد. پکیج های Squid را می توان از مخزن اصلی اوبونتو به دست آورد اما قبل از انجام اینکار باید مطمئن شوید که همه پکیج های موجود بر روی آن به روز هستند. برای اینکار دستور زیر را اجرا کنید.

$ sudo apt update

 

بعد از اینکه پکیج ها را به روز کردید می توانید Squid را نصب کنید و سرویس های آن را به گونه ای فعال سازید  که بتواند در startup اجرا شود. برای اینکار هم می توانید از دستورات زیر کمک بگیرید:

$ sudo apt -y install squid

$ sudo systemctl start squid

$ sudo systemctl enable squid

 

در این مرحله وب پروکسی شما باید در حال اجرا باشد. به کمک دستور زیر می توانید وضعیت سرویس های آن را بررسی و تایید کنید.

$ sudo systemctl status squid

 

نمونه خروجی:

squid.service - LSB: Squid HTTP Proxy version 3.x
   Loaded: loaded (/etc/init.d/squid; generated)

   Active: active (running) since Tue 2018-12-04 06:42:43 UTC; 14min ago

     Docs: man:systemd-sysv-generator(8)

    Tasks: 4 (limit: 1717)

   CGroup: /system.slice/squid.service

           ├─2761 /usr/sbin/squid -YC -f /etc/squid/squid.conf

           ├─2766 (squid-1) -YC -f /etc/squid/squid.conf

           ├─2768 (logfile-daemon) /var/log/squid/access.log

           └─2772 (pinger)



Dec 04 06:42:43 tecmint systemd[1]: Starting LSB: Squid HTTP Proxy version 3.x...

Dec 04 06:42:43 tecmint squid[2708]:  * Starting Squid HTTP Proxy squid

Dec 04 06:42:43 tecmint squid[2708]:    ...done.

Dec 04 06:42:43 tecmint systemd[1]: Started LSB: Squid HTTP Proxy version 3.x.

Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: will start 1 kids

Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: (squid-1) process 2766 started

 

موقعیت فایل های مهم که باید در مورد ان ها اطلاعاتی داشته باشید به شرح زیر است:

  • فایل پیکربندی: /etc/squid/squid.conf
  • لاگ دسترسی: /var/log/squid/access.log
  • لاگ کش: /var/log/squid/cache.log

فایل پیکربندی پیش فرض در برگیرنده دستورالعمل های پیکربندی است. حالا این فایل را به کمک ویرایشگر Vim باز کنید و تغییرات زیر را در آن اعمال نمایید.

$ sudo vim /etc/squid/squid.conf

 

حالا می توانید به دنبال خطوط زیر باشید :

  • http_port:  این گزینه پورت پیش فرض برای پروکسی سرور است. می توانید آن را به هر پورتی که دوست داشتید تغییر دهید.  همچنین می توانید تگ transparent را به انتهای خط اضافه نمایید. اینکار به پروکسی کمک می کند در صورت نیاز همانند یک پروکسی transparent رفتار نماید.
  • http_access deny all : این خط به هیچ کس اجازه نمی دهد به پروکسی سرور شما دسترسی پیدا کند. به همین خاطر باید ان را به http_access allow all  تغییر دهید.
  • visible_hostname : این دستورالعمل برای تنظیم هاست نیم خاص برای سرور استفاده می شود. شما می توانید هر نامی که دوست داشتید به آن بدهید.

خوب بعد از اینکه تغییرات بالا را ایجاد کردید، باید سرور را ریستارت کنید . برای اینکار می توانید از دستورات زیر کمک بگیرید:

$ sudo systemctl restart squid

 

 

حتما بخوانید: چگونه به کمک Squid بر روی سنت او اس پروکسی سرور ایجاد کنیم؟

 

پیکربندی squid به عنوان پروکسی در اوبونتو:

در این بخش، نحوه پیکربندی squid به عنوان پروکسی سرور را با هم مرور خواهیم کرد.

ACL های مورد نیاز را اضافه کنید:

اگر دوست دارید تنها به یک ای پی آدرس اجازه دسترسی به اینترنت از طریق پروکسی سرور جدید را بدهید باید ACL جدیدی در فایل پیکربندی ایجاد کنید:

$ sudo vim /etc/squid/squid.conf

 

قوانین ACL که باید اضافه کنید به صورت زیر است:

acl localnet src XX.XX.XX.XX

 

در دستور بالا XX.XX.XX.XX آی پی آدرس ماشین کلاینت است. این ACL  باید به ابتدای بخش ACL ها اضافه شود. بهتر است همیشه کامنتی کنار ACL تعریف کنید. به عنوان مثال می توانید از این کامنت برای تعریف ای پی آدرس استفاده شده استفاده نمایید.

acl localnet src 192.168.0.102  # Boss IP address

 

حالا باید سرویس های Squid را ریستارت کنید تا تغییرات جدید اعمال شوند.

$ sudo systemctl restart squid

 

پورت های باز در پروکسی:

به طور پیش فرض، تنها پورت های خاصی در فایل پیکربندی اجازه کار دارند. اگر می خواهید پورت های بیشتری تعریف کنید باید از دستورات زیر کمک بگیرید:

acl Safe_ports port XXX

 

در این دستور، XXX شماره پورتی است که می خواهید به آن اجازه کار بدهید. باز هم بهتر است کنار ACL کامنتی تعریف کنید. برای اینکه تغییرات ایجاد شده اعمال شوند باید بار دیگر وب پروکسی را ریستارت کنید.

$ sudo systemctl restart squid

 

تایید هویت کلاینت وب پروکسی:

اگر می خواهید کاربران قبل از به کار بردن پروکسی تایید هویت شوند، باید تایید هویت پایه HTTP را در فایل پیکربندی فعال کنید اما قبل از انجام اینکار باید پکیج apache2-utils  را به کمک دستور زیر نصب نمایید:

$ sudo apt install apache2-utils

 

حالا فایلی به نام “passwd”  ایجاد کنید. این فایل بعدا می تواند نام کاربری را در خود ذخیره کند. Squid به کمک نام کاربری proxy اجرا می شود. پس صاحب فایل این کاربر است

$ sudo touch /etc/squid/passwd

$ sudo chown proxy: /etc/squid/passwd

$ ls -l /etc/squid/passwd

 

حالا نام کاربری جدیدی ایجاد می کنیم و پسوردش را تعیین می نماییم. به دستورات زیر توجه کنید.

$ sudo htpasswd /etc/squid/passwd tecmint



New password:

Re-type new password:

Adding password for user tecmint

 

در این مرحله برای  فعال سازی تایید هویت HTTP باید فایل پیکربندی را باز کنیم:

$ sudo vim /etc/squid/squid.conf

 

بعد از پورت های ACL، خطوط زیر را اضافه کنید:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd

auth_param basic children 5

auth_param basic realm Squid Basic Authentication

auth_param basic credentialsttl 2 hours

acl auth_users proxy_auth REQUIRED

http_access allow auth_users

 

فایل را ذخیره کنید و وب پروکسی را ریستارت نمایید تا تغییرات اعمال شوند:

$ sudo systemctl restart squid

 

پیکربندی کلاینت برای استفاده از پروکسی سرور Squid:

خوب حالا باید ببینیم پروکسی سرور ما کار می کند یا خیر. ما در این مرحله از مرورگر فایرفاکس استفاده می کنیم.

آن را باز کنید و به Edit –> Preferences –> Advanced –> Network –> Settings بروید. حالا می توانید Manual proxy configuration را انتخاب کنید و ای پی آدرس پروکسی سرور و پورتی که برای اتصال استفاده می شود را وارد نمایید. بعد از اینکه همه جزییات مورد نیاز را پر کردید، می توانید به کمک پروکسی سرور خود، در وب گشت و گذار کنید.  در سایر مرورگرها هم همین کارها را می توانید انجام دهید. برای اینکه مطمئن شوید به کمک پروکسی سرور از وب بازدید می کنید http://www.ipaddresslocation.org را بزنید. در گوشه بالا و سمت راست باید ای پی آدرس یکسانی با ای پی آدرس سرور ببینید.

Rate this post
برچسب ها

نوشته های مشابه

‫2 نظرها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بستن