Android

Cách cài đặt và định cấu hình proxy mực trên Ubuntu 18.04

Bài 43: How to Setup a Proxy Server on AWS/EC2

Bài 43: How to Setup a Proxy Server on AWS/EC2

Mục lục:

Anonim

Squid là một proxy lưu trữ đầy đủ tính năng hỗ trợ các giao thức mạng phổ biến như HTTP, HTTPS, FTP, v.v. Squid chủ yếu được sử dụng để cải thiện hiệu suất của máy chủ web bằng cách lưu trữ các yêu cầu lặp lại, lọc lưu lượng truy cập web và truy cập nội dung bị giới hạn địa lý.

Hướng dẫn này sẽ hướng dẫn bạn qua quy trình thiết lập Proxy mực trên Ubuntu 18.04 và định cấu hình trình duyệt web Firefox và Google Chrome để sử dụng nó.

Cài đặt Squid trên Ubuntu

Gói mực được bao gồm trong kho Ubuntu 18.04 mặc định. Để cài đặt, hãy nhập các lệnh sau dưới dạng sudo user:

sudo apt update sudo apt install squid

Sau khi cài đặt hoàn tất, dịch vụ Mực sẽ tự động bắt đầu.

Để xác minh rằng cài đặt đã thành công và dịch vụ Squid đang chạy, hãy nhập lệnh sau sẽ in trạng thái dịch vụ:

sudo systemctl status squid

● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Thu 2019-06-27 11:45:17 UTC…

Cấu hình mực

Mực có thể được cấu hình bằng cách chỉnh sửa tệp /etc/squid/squid.conf . Bạn cũng có thể sử dụng các tệp riêng biệt với các tùy chọn cấu hình có thể được bao gồm bằng cách sử dụng chỉ thị của nhóm bao gồm.

Tệp cấu hình chứa các nhận xét mô tả những gì mỗi tùy chọn cấu hình làm.

Trước khi thực hiện bất kỳ thay đổi nào, bạn nên sao lưu tệp cấu hình gốc:

sudo cp /etc/squid/squid.conf{,.orginal}

Để chỉnh sửa tệp, hãy mở nó trong trình soạn thảo văn bản của bạn:

sudo nano /etc/squid/squid.conf

Theo mặc định, Squid được cấu hình để nghe trên cổng 3128 trên tất cả các giao diện mạng trên máy chủ.

/etc/squid/squid.conf

# Squid normally listens to port 3128 http_port IP_ADDR:PORT

Chạy Squid trên tất cả các giao diện và trên cổng mặc định sẽ tốt cho hầu hết người dùng.

Trong Squid, bạn có thể kiểm soát cách khách hàng có thể truy cập tài nguyên web bằng Danh sách điều khiển truy cập (ACL).

Theo mặc định, Squid chỉ cho phép truy cập từ localhost.

Nếu tất cả các máy khách sẽ sử dụng proxy có địa chỉ IP tĩnh, bạn có thể tạo ACL sẽ bao gồm các IP được phép.

Thay vì thêm địa chỉ IP vào tệp cấu hình chính, chúng tôi sẽ tạo một tệp chuyên dụng mới sẽ chứa IP:

/etc/squid/allowed_ips.txt

192.168.33.1 # All other allowed IPs

Sau khi hoàn tất, hãy mở tệp cấu hình chính và tạo một ACL mới có tên allowed_ips (dòng được tô sáng đầu tiên) và cho phép truy cập vào ACL đó bằng cách sử dụng lệnh http_access (dòng được tô sáng thứ hai):

/etc/squid/squid.conf

#… 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

Thứ tự của các quy tắc http_access rất quan trọng. Đảm bảo bạn thêm dòng trước khi http_access deny all .

Lệnh http_access hoạt động theo cách tương tự như các quy tắc tường lửa. Mực đọc các quy tắc từ trên xuống dưới và khi một quy tắc phù hợp với các quy tắc dưới đây không được xử lý.

Bất cứ khi nào bạn thay đổi tệp cấu hình, bạn cần khởi động lại dịch vụ Squid để các thay đổi có hiệu lực:

sudo systemctl restart squid

Xác thực mực

Mực có thể sử dụng các đầu cuối khác nhau, bao gồm xác thực cơ bản Samba, LDAP và HTTP cho người dùng được xác thực.

Trong hướng dẫn này, chúng tôi sẽ cấu hình Squid để sử dụng auth cơ bản. Nó là một phương thức xác thực đơn giản được tích hợp trong giao thức

Chúng tôi sẽ sử dụng openssl để tạo mật khẩu và nối username:password cặp username:password vào tệp /etc/squid/htpasswd bằng lệnh tee như hình dưới đây:

printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd

Chúng ta hãy tạo một người dùng có tên là Wikipedia josh với mật khẩu của mình Sz$Zdg69

printf "josh:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd

josh:RrvgO7NxY86VM

Bây giờ người dùng được tạo, bước tiếp theo là kích hoạt xác thực cơ bản HTTP và bao gồm tệp htpasswd .

Mở cấu hình chính và thêm vào như sau:

/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

Ba dòng được tô sáng đầu tiên đang tạo ra một ACL mới có tên được authenticated và dòng được tô sáng cuối cùng đang cho phép truy cập vào người dùng được xác thực.

Khởi động lại dịch vụ Mực:

sudo systemctl restart squid

Cấu hình tường lửa

Giả sử bạn đang sử dụng UFW để quản lý tường lửa của mình, bạn sẽ cần mở cổng Squid teg. Để kích hoạt cấu hình 'Squid' bao gồm các quy tắc cho các cổng Squid mặc định.

sudo ufw allow 'Squid'

Để xác minh loại trạng thái:

sudo ufw status

Đầu ra sẽ trông giống như sau:

Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere Squid ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) Squid (v6) ALLOW Anywhere (v6) Nếu Squid đang chạy trên một cổng khác, không mặc định, chẳng hạn, 8888 , bạn có thể cho phép lưu lượng truy cập trên cổng đó với: sudo ufw allow 8888/tcp .

Định cấu hình Trình duyệt của bạn để sử dụng Proxy

Bây giờ bạn đã thiết lập Squid, bước cuối cùng là định cấu hình trình duyệt ưa thích của bạn để sử dụng nó.

Firefox

Các bước dưới đây giống nhau cho Windows, macOS và Linux.

  1. Ở góc trên bên phải, nhấp vào biểu tượng bánh hamburger để mở menu của Firefox:

    Nhấp vào liên kết ⚙ Preferences .

    Cuộn xuống phần Network Settings và nhấp vào nút Settings…

    Một cửa sổ mới sẽ mở ra.

    • Chọn nút radio Manual proxy configuration thủ công. Nhập địa chỉ IP máy chủ Squid của bạn vào trường HTTP Host 3128 trong trường Port Chọn hộp kiểm Use this proxy server for all protocols Bấm vào nút OK để lưu cài đặt.

Tại thời điểm này, Firefox của bạn được định cấu hình và bạn có thể duyệt Internet thông qua proxy Squid. Để xác minh, hãy mở google.com , nhập vào ip của tôi là gì và bạn sẽ thấy địa chỉ IP máy chủ Squid của bạn.

Để trở lại cài đặt mặc định, hãy đi tới Network Settings , chọn nút radio Use system proxy settings và lưu cài đặt.

Có một số plugin cũng có thể giúp bạn định cấu hình cài đặt proxy của Firefox như FoxyProxy.

Google Chrome

Google Chrome sử dụng cài đặt proxy hệ thống mặc định. Thay vì thay đổi cài đặt proxy hệ điều hành, bạn có thể sử dụng một addon như SwitchyOmega hoặc khởi động trình duyệt web Chrome từ dòng lệnh.

Để khởi chạy Chrome bằng cấu hình mới và kết nối với máy chủ Squid, hãy sử dụng lệnh sau:

Linux:

/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

hệ điều hành Mac:

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

Các cửa sổ:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"

Hồ sơ sẽ được tạo tự động nếu nó không tồn tại. Bằng cách này, bạn có thể chạy nhiều phiên bản Chrome cùng một lúc.

Để xác nhận máy chủ proxy đang hoạt động bình thường, hãy mở google.com và nhập vào tên ip của tôi là gì. IP hiển thị trong trình duyệt của bạn phải là địa chỉ IP của máy chủ của bạn.

Phần kết luận

Bạn đã học cách cài đặt Squid trên Ubuntu 18.04 và định cấu hình trình duyệt của bạn để sử dụng nó.

Squid là một trong những máy chủ bộ nhớ cache proxy phổ biến nhất. Nó cải thiện tốc độ của máy chủ web và có thể giúp bạn hạn chế quyền truy cập của người dùng vào Internet.

proxy ubfox