Squid là một ứng dụng máy chủ lưu trữ và proxy phổ biến. Nó chủ yếu phục vụ như một proxy chuyển tiếp, nhưng cũng có thể được sử dụng như một proxy ngược. Squid cung cấp nhiều tính năng và thường được sử dụng trên các mạng cấp doanh nghiệp.
Hướng dẫn này sẽ chỉ cho bạn cách thiết lập proxy HTTP đơn giản với xác thực bằng Squid. Các bước được liệt kê trong hướng dẫn này đã được thử nghiệm trên Ubuntu 15.04 và 15.10.
CẢNH BÁO: Bạn phải rất cẩn thận khi tạo proxy. Tin tặc thường xuyên quét internet công cộng để tìm các proxy mở sử dụng chúng cho các hoạt động độc hại. Hầu hết các công ty lưu trữ sẽ đình chỉ các trường hợp của bạn nếu bạn nhận được quá nhiều khiếu nại, vì vậy hãy đảm bảo rằng bạn sử dụng đủ xác thực, chẳng hạn như mật khẩu mạnh.
Hướng dẫn này giả định rằng bạn đang sử dụng VPS mới được tạo mà không có gói cài đặt.
Cài đặt
Đầu tiên, đảm bảo rằng apt-get
thư viện gói được cập nhật bằng cách chạy lệnh bên dưới. Điều này sẽ đảm bảo rằng các gói mới nhất đã được cài đặt.
$ apt-get update
Một khi điều này đã hoàn thành, đã đến lúc cài đặt squid
ứng dụng và htpasswd
. Chạy lệnh sau bằng cách sử dụng sudo
để cài đặt cả hai gói.
$ sudo apt-get install squid3 apache2-utils
Sau khi cài đặt Squid hoàn tất, tôi khuyên bạn nên tạo một bản sao của tệp cấu hình gốc được tạo trong quá trình cài đặt vì đây là tài liệu tham khảo hữu ích và cho phép bạn khôi phục mọi thay đổi.
$ sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.default
Tiếp theo, tạo các tệp cần thiết cho Squid để lưu thông tin đăng nhập của tài khoản proxy.
$ sudo touch /etc/squid/squid_passwd
$ sudo chown proxy /etc/squid/squid_passwd
Cấu hình
Mở tệp cấu hình mực để chỉnh sửa bằng trình soạn thảo văn bản, chẳng hạn như nano
.
$ sudo nano /etc/squid/squid.conf
Thêm các dòng sau vào tệp để người dùng được xác thực có thể kết nối với proxy.
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/squid_passwd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
Ngoài ra, để ẩn IP của người kết nối với proxy khỏi hiển thị trong các tiêu đề HTTP, hãy thêm các dòng sau dưới các dòng trên.
forwarded_for off
request_header_access Allow allow all
request_header_access Authorization allow all
request_header_access WWW-Authenticate allow all
request_header_access Proxy-Authorization allow all
request_header_access Proxy-Authenticate allow all
request_header_access Cache-Control allow all
request_header_access Content-Encoding allow all
request_header_access Content-Length allow all
request_header_access Content-Type allow all
request_header_access Date allow all
request_header_access Expires allow all
request_header_access Host allow all
request_header_access If-Modified-Since allow all
request_header_access Last-Modified allow all
request_header_access Location allow all
request_header_access Pragma allow all
request_header_access Accept allow all
request_header_access Accept-Charset allow all
request_header_access Accept-Encoding allow all
request_header_access Accept-Language allow all
request_header_access Content-Language allow all
request_header_access Mime-Version allow all
request_header_access Retry-After allow all
request_header_access Title allow all
request_header_access Connection allow all
request_header_access Proxy-Connection allow all
request_header_access User-Agent allow all
request_header_access Cookie allow all
request_header_access All deny all
Tập tin cấu hình Squid của bạn bây giờ trông giống như thế này:
Lưu và đóng tập tin.
Để tạo người dùng trên proxy của bạn, hãy thực hiện lệnh sau, thay thế youruser
bằng tên người dùng bạn muốn. Nó sẽ yêu cầu mật khẩu hai lần.
$ sudo htpasswd /etc/squid/squid_passwd youruser
Bạn có thể tạo thêm người dùng theo cách tương tự.
Khởi động lại dịch vụ Mực ống.
$ sudo service squid restart
Sử dụng proxy của bạn
Bây giờ Squid đã được thiết lập, bạn có thể sử dụng nó làm proxy chuyển tiếp. Định cấu hình "cài đặt internet" của trình duyệt web của bạn để sử dụng proxy của bạn, bao gồm tên người dùng và mật khẩu bạn đã tạo trước đó. Để xác minh rằng proxy đang hoạt động, hãy truy cập trang web phát hiện địa chỉ IP, như trang này .
Sau khi thành công, bạn sẽ thấy một địa chỉ IP Vultr được báo cáo. Đây là một ảnh chụp màn hình từ máy chủ demo của tôi: