Cách ẩn lưu lượng OpenVPN bằng Obfsproxy trên máy chủ Windows PC và Linux EC2

kính ngụy trang
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cách thiết lập Obfsproxy với máy chủ OpenVPN tự chế và PC Windows. Điều này ngăn kiểm duyệt và tường lửa sử dụng kiểm tra gói sâu để xác định xem bạn có đang mã hóa lưu lượng không, bằng cách sử dụng OpenVPN.

Hướng dẫn này giả định rằng bạn có máy chủ OpenVPN hoạt động và máy khách Windows đã được thiết lập trên phiên bản EC2 của Dịch vụ web Amazon. Kiểm tra hướng dẫn máy chủ OpenVPN trước đây của chúng tôi về cách thực hiện điều đó.

Obfsproxy sẽ ngăn VPN của bạn khỏi bị kiểm duyệt tại các quốc gia như Trung Quốc. Chúng tôi đã xác nhận nó cũng bỏ qua lệnh cấm VPN trên Netflix.

Trước khi chúng tôi bắt đầu

Obfsproxy, viết tắt của proxy obfuscation, đã được cộng đồng Tor chấp nhận. Theo cách nói của họ:

Phần mềm Obfsproxy là một công cụ cố gắng vượt qua kiểm duyệt, bằng cách chuyển đổi lưu lượng Tor giữa máy khách và cây cầu. Bằng cách này, người kiểm duyệt, người thường giám sát lưu lượng giữa khách hàng và cây cầu, sẽ thấy lưu lượng được chuyển đổi trông vô tội thay vì lưu lượng Tor thực tế.

Tuy nhiên, Obfsproxy thực sự độc lập với Tor, do đó, nó cũng có thể được sử dụng để làm xáo trộn lưu lượng OpenVPN.

Để Obfsproxy hoạt động với OpenVPN, chúng tôi sẽ cần cấu hình nó ở cả phía máy khách và máy chủ. Một số nhà cung cấp VPN, bao gồm NordVPN và AirVPN, cung cấp các máy chủ được cấu hình sẵn, do đó bạn chỉ cần định cấu hình phía máy khách. Hướng dẫn này sẽ giải thích cả hai.

Đây là một danh sách những gì bạn cần:

  • Máy chủ OpenVPN chức năng trên phiên bản Amazon Linux EC2 tương tự như máy chủ trong hướng dẫn trước của chúng tôi
  • GUI kết nối OpenVPN (ứng dụng phía máy khách)
  • PuTTy
  • Python 2.7
  • Trình biên dịch Microsoft C ++ cho Python 2.7
  • OpenSSL Light cho Windows
  • ProxySwitchy Sharp hoặc một phần mềm proxy tương đương

Cấu hình Obfsproxy phía máy khách trên Windows

Chúng tôi sẽ bắt đầu với cấu hình phía máy khách, vì một số người đã giành chiến thắng cần phải thực hiện thiết lập phía máy chủ nếu nhà cung cấp VPN của họ đã cung cấp máy chủ được cấu hình sẵn.

Thiết lập sơ bộ

Rất may, NordVPN đã thực hiện cho bạn phép lịch sự trong việc kết hợp hầu hết các phụ thuộc cần thiết với nhau trong một tệp .zip duy nhất. Tải về tại đây.

Bắt đầu bằng cách cài đặt Python 2.7 trong thư mục mặc định với các cài đặt mặc định. Obfsproxy là một chương trình Python, vì vậy bạn sẽ cần nó để cài đặt. Nếu bạn có phiên bản Python mới hơn, chẳng hạn như 3.3 hoặc 3.4, chúng tôi khuyên bạn nên cài đặt 2.7. Bạn có thể tìm thấy tệp cài đặt trong thư mục Bước 3 của tệp zip NordVPN, (chúng tôi đã bỏ qua các thư mục bước 1 và 2).

trăn intfs obxyproxy

Tiếp theo chúng ta cần cài đặt Trình biên dịch Microsoft C ++ cho Python 2.7 từ thư mục bước 4. Không có trình biên dịch như vậy cho các phiên bản sau của Python. Bạn có thể tìm thấy một cách giải quyết bằng cách sử dụng MS Visual Studio hoặc gói Numby, nhưng chúng tôi thấy rằng việc cài đặt Python 2.7 sẽ bớt đau đớn hơn nhiều.

cài đặt trực quan obfsproxy ms

Khi bạn đã cài đặt trình biên dịch C ++ bằng các cài đặt và thư mục mặc định, hãy chuyển sang thư mục bước 5. Cài đặt OpenSSL Light, một lần nữa, sử dụng tất cả các cài đặt mặc định. Bạn có thể được nhắc đóng góp sau khi cài đặt. Nhấn Kết thúc, sau đó đóng cửa sổ bật lên nếu bạn không muốn tặng.

Đánh dấu trang này, khởi động lại máy tính của bạn và mở lại trang này.

Thiết lập Obfsproxy và OpenVPN

Bây giờ bạn có mọi thứ bạn cần để chạy Obfsproxy, nhưng chúng tôi vẫn cần cấu hình nó để có thể sử dụng nó với OpenVPN. Chúng tôi sẽ bắt đầu bằng cách sửa đổi các tệp .ovpn hiện có trong thư mục OpenVPN. Nếu bạn đã thiết lập OpenVPN, vui lòng tham khảo hướng dẫn trước đây của chúng tôi. Nếu bạn đã cài đặt OpenVPN trong thư mục mặc định, bạn sẽ tìm thấy các tệp cấu hình trong C: / Chương trình tệp / OpenVPN / config.

Tìm Notepad hoặc trình soạn thảo văn bản khác, nhấp chuột phải vào nó và chọn Chạy Run làm Quản trị viên. Mở tệp cấu hình bạn sử dụng để kết nối với máy chủ OpenVPN của bạn một cách bình thường. Bấm vào tệp > Lưu As và đặt tên cho nó một cái gì đó khác để chúng tôi có một bản sao để làm việc mà không phải lo lắng về việc làm hỏng bản gốc.

Chúng tôi sẽ sửa đổi tập tin cấu hình để trông giống như sau:

proto tcp-client
từ xa 8080
cổng 1194
dev tun1
bí mật ovpn.key
chuyển hướng cổng def1
ifconfig 10.4.0.2 10.4.0.1
vớ-proxy-thử lại
vớ-proxy 127.0.0.1 10194

Lưu ý thêm hai dòng ở dưới cùng, cộng với số cổng ở cuối dòng từ xa. Thay thế bằng địa chỉ IP của phiên bản Amazon EC2 của bạn. Trừ khi bạn đã thiết lập một IP đàn hồi trên Amazon, địa chỉ này sẽ thay đổi mỗi khi bạn dừng và bắt đầu cá thể của mình, vì vậy hãy nhớ thay đổi nó nếu cần. Trên đường dây từ xa, số cổng có thể là bất cứ thứ gì nằm ngoài phạm vi cổng dành riêng. Chúng tôi sử dụng 8080 vì nó tương thích với hầu hết tất cả các máy chủ web, nhưng 21194 được đề xuất trên wiki OpenVPN. Chỉ cần nhớ rằng bất cứ điều gì bạn đặt ở đây phải phù hợp với những gì chúng tôi định cấu hình ở phía máy chủ sau này.

Nếu bạn kết nối với máy chủ được cấu hình sẵn thuộc sở hữu của nhà cung cấp VPN, các tệp cấu hình sẽ được cung cấp cho bạn (thư mục bước 2 cho người dùng NordVPN).

Lưu tệp cấu hình mới của bạn, đảm bảo không ghi đè lên tệp cũ. Ngoài ra, hãy đảm bảo trình soạn thảo văn bản của bạn không tự động thêm tên tệp bằng .txt. Nó phải là một tập tin .ovpn.

Bây giờ OpenVPN đã được cấu hình, chúng ta cần cài đặt và chạy Obfsproxy. Đây là nơi cài đặt Python mới của bạn đến. Trong thanh tìm kiếm Windows của bạn, hãy nhập vào Command Prompt. Nhấp chuột phải vào ứng dụng Dấu nhắc Lệnh và nhấn vào Run Run với tư cách quản trị viên. Trong thiết bị đầu cuối, nhập các lệnh sau một dòng một lần, nhấn Enter sau mỗi dòng.

cd C: \ Python27 \ Script

cài đặt pip

Pip cài đặt obfsproxy

obfsproxy –log-min-severity = thông tin obfs2 – Shared-secret = vớ 127.0.0.1:10194

Sau lệnh thứ hai, bạn có thể thấy một số lỗi hoặc cảnh báo. Bỏ qua chúng bây giờ.

Ở đây bạn cần thay thế bằng một mật khẩu của sự lựa chọn của bạn. Ghi nhớ hoặc ghi lại mật khẩu này, vì bạn sẽ cần nó sau này. Nếu bạn kết nối với các máy chủ được cấu hình sẵn do dịch vụ VPN của bạn cung cấp, lệnh này sẽ được cung cấp cho bạn.

cửa sổ obfsproxy cmd

Sau dòng cuối cùng, dấu nhắc lệnh của bạn sẽ cho bạn biết rằng nó đang lắng nghe lưu lượng obfsproxy, như trong ảnh chụp màn hình. Lưu ý trong ảnh chụp màn hình tôi quên nhập mật khẩu của mình vào lần thử đầu tiên.

Bạn sẽ phải điều hướng đến thư mục ScScript (lệnh đầu tiên), nhập lệnh Obfsproxy (lệnh cuối cùng) và để lại dấu nhắc lệnh của bạn mở bất cứ khi nào bạn muốn sử dụng Obfsproxy.

Thiết lập proxy (tùy chọn)

Chỉnh sửa: Bước này không cần thiết để Obfsproxy hoạt động, nhưng cần thiết nếu bạn muốn sử dụng kết nối Obfsproxy + VPN của mình để xem Netflix và các trang web phát video trực tuyến khác từ bên ngoài Hoa Kỳ (hoặc bất kỳ quốc gia nào mà máy chủ VPN của bạn đang ở). Nếu không, Netflix sẽ được đặt thành vùng không chính xác.

Điều cuối cùng chúng ta cần làm ở phía máy khách là thiết lập kết nối proxy. Điều này khác nhau cho mỗi ứng dụng. Bạn có thể thiết lập nó trong cài đặt Windows Internet, nhưng tôi thích làm điều đó trên cơ sở từng ứng dụng. Trên các ứng dụng gốc sử dụng internet, bạn thường có thể thiết lập proxy ở đâu đó trong cài đặt. Các lĩnh vực như sau:

  • Máy chủ SOCKS: 127.0.0.1
  • Cổng: 8080 (hoặc bất cứ điều gì bạn đặt trong tệp cấu hình OpenVPN của bạn trên đường dây từ xa)
  • SOCKS phiên bản 5 (SOCKS5)

Trên trình duyệt, cách dễ nhất để thiết lập tính năng này là với tiện ích mở rộng proxy. Chúng tôi sẽ chỉ cho bạn cách sử dụng Proxy Switchy Sharp trên Chrome.

obfsproxy chrome proxy chuyển đổi

Trong cài đặt ProxySwitchy, tạo một cấu hình mới. Với Cấu hình thủ công được chọn, nhập các cài đặt ở trên như hình dưới đây. Đặt tên cho nó bất cứ điều gì bạn thích. Chúng tôi sẽ không bật tính năng này cho đến khi chúng tôi thiết lập kết nối với máy chủ, vì vậy hãy giữ chặt.

Cấu hình máy chủ Obfsproxy trên phiên bản Linux EC2

PC của bạn đã sẵn sàng để kết nối, vì vậy bây giờ chúng tôi cần chuẩn bị máy chủ.

Nhóm bảo mật AWS

Trước khi bạn cài đặt và chạy obfsproxy trên máy chủ, bạn có thể cần thêm một quy tắc mới vào nhóm bảo mật của máy chủ của bạn để đảm bảo tường lửa EC2 thể hiện không chặn lưu lượng truy cập. Để thực hiện việc này, đăng nhập vào tài khoản AWS của bạn, sau đó nhấp vào EC2. Trong Mạng và Bảo mật, đi đến Nhóm bảo mật.

quy tắc awfsproxy aws

Tại đây, bạn có thể chọn tạo một nhóm bảo mật mới và thêm nó vào máy chủ của mình hoặc sửa đổi một nhóm hiện có. Nhấp chuột phải vào một quy tắc và chọn Chỉnh sửa quy tắc trong nước. Trong Loại, chọn tất cả lưu lượng TCP (lưu ý: bỏ qua quy tắc tùy chỉnh tùy chỉnh trong ảnh chụp màn hình, vì chúng tôi đã cập nhật hướng dẫn này), sau đó đặt nguồn thành IP của My My hay IP của bất kỳ thiết bị nào bạn dự định kết nối với. Sau đó nhấp chuột phải và vào phần chỉnh sửa quy tắc hướng ngoại. Theo loại, chỉ cần chọn tùy chọn thả xuống cho tất cả lưu lượng truy cập.

Nếu bạn đã tạo một nhóm bảo mật mới, hãy nhấp vào Instances trong thanh bên trái, nhấp chuột phải vào thể hiện VPN của bạn, cuộn xuống Mạng và nhấp vào Thay đổi nhóm bảo mật. Kiểm tra nhóm bảo mật mới của bạn và nhấn Save.

Thiết lập máy chủ Obfsproxy

Sử dụng PuTTy để kết nối với máy chủ của bạn thông qua SSH. Nếu bạn không nhớ cách làm điều này hoặc bạn đã không lưu hồ sơ, vui lòng tham khảo hướng dẫn trước đây của chúng tôi. Hãy nhớ rằng trong bản phân phối máy chủ Amazon Linux AMI, tên người dùng là người dùng ec ec2. Chạy OpenVPN bằng lệnh này:

dịch vụ sudo openvpn bắt đầu

Đảm bảo rằng tệp cấu hình OpenVPN của bạn trên máy chủ (etc / openvpn / openvpn.conf) có cổng 1194 mở, theo hướng dẫn trước đây của chúng tôi.

Python đã được cài đặt nếu bạn sử dụng phân phối máy chủ Linux 14.04. Trong thiết bị đầu cuối PuTTy, nhập từng dòng lệnh sau một dòng và nhấn enter sau mỗi dòng:

sudo yum cài đặt gcc

sudo pip cài đặt obfsproxy

obfsproxy –log-min-severity = thông tin obfs2 –dest = 127.0.0.1: 1194 – Shared-secret = server 0.0.0.0:8080

Đối với lệnh đầu tiên, các phiên bản cũ hơn của Linux có thể sử dụng tính năng apt apt-get-Thay vì.

Nhớ thay thế trong lệnh cuối cùng với cùng mật khẩu bạn đã sử dụng ở phía máy khách.

lệnh obfsproxy linux 2

Bạn sẽ thấy một thông báo tương tự trên thiết bị đầu cuối này như trên dấu nhắc lệnh của bạn, cho biết rằng máy chủ đang lắng nghe trên cổng 8080 cho lưu lượng obfsproxy.

Kết nối thông qua Obfsproxy

Bạn được thiết lập để kết nối. Với Obfsproxy chạy trên cả máy cục bộ của bạn (dấu nhắc lệnh) và máy chủ của bạn (PuTTy), hãy chạy GUI OpenVPN. Nhấp chuột phải vào nó và kết nối bằng cấu hình mới của bạn. Biểu tượng OpenVPN sẽ chuyển sang màu xanh và thông báo với IP được chỉ định của bạn sẽ xuất hiện.

kết nối obfsproxy openvpn

Nếu bạn muốn xem Netflix hoặc một số nội dung bị chặn địa lý khác, hãy bật cài đặt proxy trong ứng dụng của bạn. Đối với Proxy Switchy trên Chrome, hãy nhấp vào biểu tượng ở góc trên bên phải và chọn cấu hình bạn đã tạo trong phần tùy chọn ở trên. Bạn cũng có thể thêm proxy trong cài đặt Windows Internet.

proxy chrome obfsproxy

Xin chúc mừng! Lưu lượng OpenVPN của bạn hiện không thể phân biệt với lưu lượng HTTP thông thường nhờ Obfsproxy.

Tự động hóa quá trình

Như bạn có thể đã kết luận, việc chạy obfsproxy ở phía máy khách mỗi khi bạn muốn sử dụng nó có thể hơi tẻ nhạt. Để tự động hóa quy trình, một người dùng đã tạo trình cài đặt Windows chạy Obfsproxy dưới dạng dịch vụ bắt đầu khởi động. Bạn có thể tải về và tìm hướng dẫn tại đây.

Mùi cải trang-kính.jpg. nial bradshaw được cấp phép theo CC BY 2.0

Kim Martin
Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me