آموزشیسرور مجازیلینوکس

آموزش ساخت و کانفیگ سرور پروکسی در لینوکس | Squid Proxy

چگونه یک سرور پروکسی ایجاد کنیم ؟

سرور پروکسی

یک سرور پروکسی موارد استفاده زیادی دارد. مانند ایجاد محدودیت دسترسی به اینترنت شخصی یا محدود کردن سیستم‌ها و سرورهای یک سازمان برای دسترسی به اینترنت جهانی.

بهترین راه برای پیکربندی یک سرور پراکسی استفاده از Squid proxy است. Squid یک سرور پراکسی پرکاربرد است.

در این مقاله به موارد زیر می پردازیم:

  • نصب سرور پروکسی
  • کانفیگ سرور پروکسی
  • پیکربندی احراز هویت پروکسی

توجه: این آموزش بر روی CentOS 7 انجام میشود.

 

نصب سرور پروکسی : Squid Proxy

1. بروزرسانی سرور

sudo yum update -y

 

2. پیکربندی مخزن EPEL

sudo yum -y install epel-release
sudo yum -y update
sudo yum clean all

 

3. نصب squid

sudo yum -y install squid

 

4. سرور squid را راه اندازی و فعال کنید.

sudo systemctl start squid
sudo systemctl enable squid

 

5. وضعیت سرور squid را بررسی کنید.

sudo systemctl status squid

 

سرور پروکسی squid

 


 

کانفیگ سرور پروکسی : Squid Proxy

تمام تنظیمات برای سرور squid در فایل /etc/squid/squid.conf موجود است.

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

ابتدا باید منابعی را پیکربندی کنید که پروکسی squid باید از طریق آنها اتصالات را بپذیرد. به عنوان مثال، ممکن است لازم باشد فقط از شبکه خانگی خود یا از محدوده های CIDR خاص به این سرور پروکسی دسترسی داشته باشید.

با استفاده از فرمت زیر می توانید محدوده IP منبع را با ACL اضافه کنید.

acl localnet src 110.220.330.0/24

 

/etc/squid/squid.conffile را باز کنید و مطابق شکل زیر منبع را اضافه کنید. IP را بر اساس نیاز خود به منبع شبکه یا IP مورد نظر تغییر دهید. در مثال زیر، ما یک IP تک منبع اضافه کرده ایم.

 

پیکربندی سرور پروکسی

 

پس از انجام تغییرات ACL، سرور پراکسی را مجددا راه اندازی کنید.

sudo systemctl restart squid

 

تست اتصال به سرور پروکسی

تست کنید که آیا سرور پروکسی با استفاده از یک درخواست curl ساده کار می کند یا خیر. از فرمت curl زیر استفاده کنید. به طور پیش فرض پروکسی squid روی پورت 3128 اجرا می شود.

curl -x http://<squid-proxy-server-IP>:3128 -L http://google.com

 

تست سرور

 

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

همراه با دسترسی به ACL، می توانید برای امنیت بیشتر، احراز هویت اولیه را به سرور پروکسی خود اضافه کنید. مراحل زیر را برای تنظیم یک auth اولیه برای سرور پراکسی squid دنبال کنید.

1. نصب httpd-tools

 sudo yum -y install httpd-tools

 

2. یک فایل passwd ایجاد کنید و squid را به عنوان مالک فایل بسازید.

sudo touch /etc/squid/passwd && sudo chown squid /etc/squid/passwd

 

3. pxuser را با استفاده از ابزار htpasswd به فایل رمز اضافه کنید. یک رمز عبور قوی مورد برای خود وارد کنید. این نام کاربری و رمز عبور برای همه اتصالات از طریق این پروکسی استفاده خواهد شد.

sudo htpasswd /etc/squid/passwd pxuser

 

تست سرور پروکسی

 

4. فایل کانفیگ Squid را باز کنید.

sudo vi /etc/squid/squid.conf

موارد زیر را به فایل کانفیگ اضافه کرده و ذخیره کنید.

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

 

سرور-squid

 

5. اکنون سرور squid را مجددا راه اندازی کنید تا تغییرات پیکربندی انجام شود.

sudo systemctl restart squid

 

6. اکنون اگر اتصال پروکسی را با استفاده از curl آزمایش کنید، مطابق شکل زیر پیام authentication required را دریافت خواهید کرد.

 

تست سرور squid

 

اکنون، اتصال را با کاربر پروکسی و رمز عبوری که در مرحله 3 تنظیم کردیم، آزمایش کنید. برای نمونه، مثال زیر را ببینید.

curl -x http://35.196.101.43:3128 --proxy-user pxuser:12345 -I http://google.com

با نام کاربری و رمز عبور، درخواست پروکسی شما باید انجام شود.

 

بلاک وبسایت ها

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

1. با دستور زیر یک فایل برای بلاک سایت ها بسازید و آن را باز کنید.

sudo vi /etc/squid/blocked_sites

وب سایت هایی را که قرار است مسدود شوند به فایل اضافه کنید. مثلا :

facebook.com
twitter.com
instagram.com

 

2. فایل کانفیگ squid را باز کنید.

sudo vi /etc/squid/squid.conf

موارد زیر را به لیست ACL اضافه کنید.

acl blocked_sites dstdomain "/etc/squid/blocked_sites"
http_access deny blocked_sites

 

3. سرور squid را مجددا راه اندازی کنید.

sudo systemctl restart squid

 

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

بلاک سایت در پروکسی


 

تبریک ! شما توانستید یک سرور پروکسی مخصوص خود بسازید. امیدواریم این آموزش را پسندیده باشید. برای خرید سرور مجازی لینوکس با بهترین قیمت، همین الان میتوانید به سایت ایرانیکا سرور مراجعه کنید.

 

19رای - امتیاز 5 ممنون از امتیازی که دادید..!

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

یک دیدگاه

  1. خوب هستی این مطالبی که قرار دادید عالی بود اما یک نکته خدمت شما عرض کنم اینکه برخی کلمات به هم چسپیده شده اینو درست کنید

  2. خوب هستی این مطالبی که قرار دادید عالی بود اما یک نکته خدمت شما عرض کنم اینکه برخی کلمات به هم چسپیده شده اینو درست کنید

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

نشانی ایمیل شما منتشر نخواهد شد.

دکمه بازگشت به بالا