Cách tạo VPN miễn phí của riêng bạn với Amazon Web Services

Người dùng Internet tha hồ lựa chọn khi nói đến các dịch vụ VPN, nhưng họ yêu cầu đăng ký hàng tháng, bảo mật aren, hoặc chỉ đơn giản là chậm. Rất may, sự thay thế không tồn tại. Họ đòi hỏi một chút bí quyết kỹ thuật, nhưng nếu bạn muốn làm gì đó đúng, bạn phải tự làm.

Để tìm hiểu cách tạo VPN của riêng bạn, bạn có thể xem video hoặc đọc bài viết. Lưu ý rằng bài viết có chứa một số lệnh hữu ích và văn bản cấu hình mà bạn có thể sao chép và dán để thuận tiện cho bạn. Cập nhật: video sử dụng phiên bản cũ của easy-rsa không còn khả dụng. Khi bạn đạt đến mốc 8 phút, vui lòng tham khảo bài viết này để biết cấu hình dễ dàng rsa 3.

Bắt đầu

Amazon Web Services cung cấp một năm không gian máy chủ ảo miễn phí, miễn là bạn sử dụng ít hơn lượng băng thông, thời gian và không gian định trước. Ngay cả khi bạn vượt quá giới hạn đó, chi phí để chạy hình ảnh máy chủ trên Đám mây điện toán đàn hồi của Amazon có lẽ ít hơn bạn sẽ trả cho một thuê bao VPN.

Ở đây, chúng tôi sẽ giải thích hai cách khác nhau để sử dụng dịch vụ Đám mây đàn hồi của Amazon, còn được gọi là EC2, để chuyển hướng kết nối của bạn thông qua một địa điểm riêng tư mà bạn chọn: SSH Tunneling và OpenVPN. Mỗi cái đều có ưu điểm và nhược điểm, vì vậy hãy sử dụng cái bạn thấy phù hợp hơn với nhu cầu của bạn. Cho dù bạn chọn loại nào, bạn sẽ yêu cầu như sau:

  • Tài khoản Amazon Web Services. Điều này đòi hỏi phải có thẻ tín dụng, nhưng bạn sẽ chỉ bị tính phí cho những gì bạn sử dụng, điều này có thể sẽ không là gì nếu bạn khôn ngoan về những gì bạn làm.
  • PuTTy, nếu bạn trên Windows. OpenSSH thông qua Cygwin là một lựa chọn khác, nhưng tôi thấy đó là một nỗi đau. Máy tính Linux và Mac đã có các lời nhắc SSH được tích hợp trong hộp và thiết bị đầu cuối của chúng. Bạn cũng sẽ cần chương trình tạo khóa chị em PuTTy, PuttyGen.
  • WinSCP hoặc ứng dụng khách FTP tương đương để di chuyển các tệp giữa máy tính cục bộ của bạn và phiên bản EC2 của bạn.
  • Một kiến ​​thức làm việc cơ bản về các lệnh Unix và cách các máy chủ làm việc với các máy khách sẽ rất hữu ích trong việc khắc phục sự cố nếu một cái gì đó không đi đúng như kế hoạch.
  • GUI OpenVPN, được cài đặt ở vị trí mặc định và với cài đặt mặc định trên PC của bạn

Thiết lập AWS

Khi bạn đã đăng ký tài khoản Amazon Web Services, tại đây, cách thức khởi chạy máy chủ mà chúng tôi sẽ sử dụng cho VPN ::

  1. Đăng nhập vào tài khoản Dịch vụ web Amazon của bạn và truy cập bảng điều khiển EC2.
    cập nhật aws vpn 1
  2. Ở trên cùng bên phải, bạn có thể chọn vị trí nơi chúng tôi sẽ thiết lập VPN của mình. Nhấp vào Khởi động sơ thẩm.ec2 vpn 1
  3. Chọn bất cứ thứ gì Linux AMI được liệt kê là lớp miễn phí đủ điều kiện. Tại thời điểm viết bài viết này, đó là Amazon Linux AMI. Chuyển sang bước tiếp theo.ec2 vpn 2
  4. Ở đây chọn một ví dụ t2.micro mà tầng cũng miễn phí đủ điều kiện. Nhấp vào Đánh giá và Khởi chạy.ec2 vpn 3
  5. Trên trang tiếp theo, nhấp vào Chỉnh sửa nhóm bảo mật.
  6. Bạn sẽ cần chỉnh sửa nhóm bảo mật để chỉ cho phép lưu lượng truy cập từ máy tính của bạn truy cập VPN hoặc proxy. Bạn nên có sẵn một quy tắc để kết nối với máy chủ của mình thông qua SSH, mà chúng tôi sẽ sử dụng sau này. Chúng tôi sẽ cần thêm một cái khác để cho phép các kết nối OpenVPN, sử dụng cổng 1194 theo mặc định. Để đơn giản, rượu sake, dưới Trong nước bấm vào tab Thêm quy tắc cái nút. Đặt Kiểu đến UDP tùy chỉnh, các Phạm vi cảng đến 1194, và Nguồn để Bất cứ nơi nào.EC2 thêm nút quy tắc nhóm bảo mật
  7. Đánh Tiết kiệm.Nhóm bảo mật EC2 ở bất cứ đâu tới cổng 1194
  8. Nhấp vào xem lại và khởi chạy, sau đó, ra mắt.
  9. Bây giờ, bạn sẽ muốn tạo một cặp khóa, loại công việc này giống như mật khẩu mà bạn sử dụng để kết nối với máy chủ ảo mà bạn đang tạo. Chọn bộ phận tạo ra một cặp chìa khóa mới từ menu thả xuống và đặt tên cho nó bất cứ thứ gì bạn thích. Nhấn vào nút để tải về cặp chìa khóa. Lưu trữ nó ở một nơi an toàn.ec2 vpn 5
  10. Trang tiếp theo sẽ cảnh báo bạn rằng cá thể đang khởi chạy. Cuộn xuống phía dưới và nhấn các phiên bản Chế độ xem. Tại đây, bạn sẽ thấy một danh sách bất kỳ trường hợp nào mà bạn đã đưa ra, nếu đây là lần đầu tiên bạn sử dụng EC2 sẽ chỉ là một trường hợp.

Kết nối với máy chủ với PuTTy

Chúng tôi có thể kết nối với phiên bản EC2 của mình với PuTTy, nhưng trước tiên chúng tôi sẽ cần một tệp khóa thích hợp để được kết nối. Khi bạn cài đặt PuTTy, bạn cũng nên cài đặt PuTTygen. Đi trước và chạy nó bây giờ. Cả PuTTy và PuTTygen đều chạy ngay ra khỏi tệp dưới dạng tệp .exe mà không cần cài đặt.ec2 vpn 7

  1. Mở PuTTygen, nhấp vào Tải.
  2. Điều hướng đến tệp cặp khóa .pem mà bạn đã tải xuống trước đó và tải nó vào Puttygen. Bạn phải chọn tùy chọn hiển thị tất cả các loại tệp cho khóa .pem để hiển thị. Lượt lưu Lưu khóa riêng. Tên tệp phải giống hệt với khóa .pem. Bạn có thể tạo cụm mật khẩu cho khóa riêng nếu bạn muốn.ec2 vpn 6
  3. Bây giờ hãy đóng PuTTygen và mở PuTTy. Sao chép IP công cộng của bạn từ bảng điều khiển EC2 vào PuTTy. Nhập tên cho phiên của bạn và nhấn lưu.ec2 vpn 8
  4. Trong khung bên trái, điều hướng đến Authhhhh trong SSH. Nhấp vào nút duyệt ở dưới cùng và điều hướng đến khóa riêng bạn vừa tạo.
  5. Quay lại trang Phiên chính, đặt tên và lưu hồ sơ phiên của bạn để bạn có thể nhanh chóng kết nối vào lần tiếp theo bạn sử dụng PuTTy. Sau đó bấm Mở.
  6. Một dấu nhắc sẽ xuất hiện yêu cầu bạn cho một tên người dùng. Điều này khác nhau dựa trên loại máy chủ bạn thiết lập lúc đầu. Đối với Amazon Linux AMI, nó xông vào ec2 người dùng ec2.

SSH đường hầm (tùy chọn)

Để bắt đầu, chúng tôi sẽ chỉ định tuyến lại lưu lượng truy cập web thông qua trường hợp chúng tôi đã tạo bằng cách sử dụng SSH đường hầm và proxy. Đây là một cách nhanh chóng và bẩn thỉu để vượt qua tường lửa hoặc khóa địa lý. Nó không hoàn toàn là một VPN VPN, nó tốt nhất cho lưu lượng truy cập web nhẹ và giành được nhiều công việc với mọi thứ, nhưng nó lại đơn giản hơn rất nhiều khi thiết lập. Tuy nhiên, thiết lập đường hầm SSH là hoàn toàn tùy chọn, vì vậy hãy thoải mái bỏ qua phần tiếp theo.

ec2 vpn 9

Mở PuTTy và điều hướng đến Đường hầm trong cơn đau bên trái. Thêm cổng 8080 với Tự động và Động được chọn. Quay trở lại trang Phiên và nhấn Lưu lại để bạn không phải làm lại tất cả. Sau đó bấm Mở.

ec2 vpn 10

Bây giờ bạn đã kết nối với máy chủ của mình, nhưng bạn vẫn cần định tuyến lưu lượng truy cập trình duyệt web của mình thông qua nó. Nếu bạn sử dụng Firefox, điều này có thể được thực hiện trong cài đặt trình duyệt của bạn. Nếu bạn sử dụng Chrome, hãy tải xuống tiện ích mở rộng Proxy Switchy. Nếu bạn muốn tạo VPN đầy đủ chức năng thay vì chỉ là proxy cho trình duyệt của mình, hãy bỏ qua phần tiếp theo ngay bây giờ.

Trong Firefox:

  • Chuyển đến Công cụ > Tùy chọn > Nâng cao > Mạng > Kết nối > Cài đặt > Cấu hình proxy thủ công
  • Đặt SOCKS Host là 127.0.0.1 và cổng là 8080 (hoặc bất cứ điều gì bạn đặt cổng đường hầm thành trên PuTTy).
  • Nhấn OK để lưu

Trong Chrome Proxy Switchy

  • Trang thiết lập sẽ xuất hiện ngay khi bạn cài đặt tiện ích mở rộng hoặc nhấp vào biểu tượng ở trên cùng bên phải của Chrome và nhấp vào Tùy chọn.
  • Đặt tên cho hồ sơ bất cứ điều gì bạn thích. Trong Cấu hình thủ công, đặt máy chủ SOCKS thành 127.0.0.1 và cổng thành 8080 (hoặc bất cứ điều gì bạn đặt cổng đường hầm thành trong PuTTy. Để trống mọi thứ khác.
  • Nhấn Save, sau đó nhấp vào biểu tượng một lần nữa để chọn hồ sơ proxy của bạn.

ec2 vpn 11

Voila! Lưu lượng truy cập trình duyệt của bạn hiện đang được chuyển qua phiên bản EC2 của bạn. Điều này sẽ hoạt động tốt cho trình duyệt cơ bản, nhưng một số trang web có thể gặp sự cố và các ứng dụng khác ngoài trình duyệt web của bạn vẫn sẽ sử dụng kết nối trực tiếp. Để tạo VPN đầy đủ, chạy lại tất cả lưu lượng truy cập internet của bạn, hãy đọc tiếp.

Thiết lập OpenVPN trên máy chủ và máy khách

OpenVPN là một công cụ mã nguồn mở miễn phí cho phép bạn chạy VPN đầy đủ thông qua thể hiện Amazon EC2 của bạn. Điều đó có nghĩa là tất cả lưu lượng truy cập internet của bạn đều đi qua nó, không chỉ lưu lượng truy cập trình duyệt web của bạn như proxy ở trên. Các chương trình máy tính để bàn như Steam hoặc Spotify hoạt động tốt hơn với phương pháp này.

ec2 vpn 12

Kết nối với thể hiện EC2 của bạn bằng PuTTy theo các hướng dẫn ở trên. Bạn nên có một dấu nhắc lệnh trước mặt bạn nói rằng Amazon Linux AMI. Chạy các lệnh sau (nhập hoặc sao chép / dán chúng và nhấn enter):

sudo yum cài đặt -y openvpn
sudo modprobe iptable_nat
tiếng vang 1 | sudo tee / Proc / sys / net / ipv4 / ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.4.0.1/2 -o eth0 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Chỉ cần một lưu ý nhanh ở đây. Bạn có thể đã nhận thấy trong ảnh chụp màn hình rằng tôi đã cố tải xuống và cài đặt OpenVPN không chính xác bằng cách sử dụng lệnh của apt apt-getật thay vì của y yiêu. Một số phiên bản khác của Linux vẫn sử dụng apt-get, vì vậy nếu yum doesn không hoạt động cho bạn, thay vào đó hãy thử lệnh này:

sudo apt-get install -y openvpn

Một loạt các văn bản sẽ nhấp nháy trên dấu nhắc lệnh trong khi nó cài đặt OpenVPN. Ba lệnh khác thiết lập chuyển tiếp IP, cần thiết để VPN hoạt động.

Phương pháp # 1: Thiết lập xác thực PKI với easy-rsa (được khuyến nghị)

Trong phiên bản gốc của hướng dẫn này, chúng tôi đã thiết lập OpenVPN với mã hóa tĩnh và tệp .ovpn. Trong khi nó hoạt động, nó chỉ cho phép một thiết bị được kết nối tại một thời điểm và thực tế là bạn chỉ sử dụng một khóa có nghĩa là nó kém an toàn. Bây giờ chúng tôi khuyên độc giả nên sử dụng easy-rsa để thiết lập xác thực, bảo mật hơn và cho phép mọi số lượng thiết bị được kết nối đồng thời. Tuy nhiên, nếu bạn muốn phiên bản cũ có mã hóa tĩnh, hãy bỏ qua nó bằng cách nhấp vào đây.

Cập nhật tháng 5 năm 2023: Bài viết này đã được cập nhật để sử dụng với easy-rsa 3.

Thiết lập máy chủ OpenVPN và easyrsa

Lý tưởng nhất là bạn sẽ tạo tất cả các khóa và chứng chỉ bạn cần trên một thiết bị riêng biệt từ máy chủ VPN để bảo mật tối đa. Điều này có thể khá tẻ nhạt, tuy nhiên, vì vậy chúng tôi sẽ tạo cả thông tin đăng nhập của máy khách và máy chủ trên máy chủ, sau đó di chuyển các tệp mà chúng tôi cần chúng từ đó.

  1. Easy-rsa không có sẵn trong danh sách gói yum mặc định, vì vậy chúng tôi sẽ cần kích hoạt repo EPEL để cài đặt nó. Nhập nội dung sau vào thiết bị đầu cuối PuTTy và nhấn Enter:
    • sudo yum cài đặt dễ dàng-rsa -y –enablerepo = epel
  2. Tạo một thư mục rsa dễ dàng trong thư mục cài đặt OpenVPN của bạn. Sao chép các tệp từ cài đặt dễ dàng rsa của bạn (phiên bản mới nhất là 3.0.3 tại thời điểm viết) vào thư mục mới:
    • sudo mkdir / etc / openvpn / easy-rsa
      cd / etc / openvpn / easy-rsa
      sudo cp -Rv /usr/share/easy-rsa/3.0.3/*
  3. Bây giờ chúng tôi đã sẵn sàng để thiết lập thẩm quyền chứng nhận của chúng tôi. Bắt đầu bằng cách khởi tạo thư mục PKI (cơ sở hạ tầng khóa công khai) mới, sau đó xây dựng khóa mã xác thực chứng chỉ.
    • sudo ./easyrsa init-pki
      sudo ./easyrsa build-ca
  4. Nhập cụm mật khẩu PEM. Điều này là không bắt buộc nhưng nên Nếu ai đó nắm giữ CA của bạn bằng cách nào đó, họ sẽ không thể tạo khóa hoặc ký chứng chỉ mà không cần mật khẩu.
  5. Bạn sẽ được nhắc nhập một tên chung. Gọi nó là bất cứ điều gì bạn muốn hoặc chỉ cần nhấn Đi vào để nó làm giá trị mặc định.
  6. Tiếp theo, chúng tôi sẽ tạo một khóa Diffie-Hellman, cung cấp bí mật hoàn hảo về phía trước:
    • sudo ./easyrsa gen-dh
  7. Lệnh này có thể mất một lúc. Nó sẽ tạo ra một tập tin gọi là dh.pem. Sau khi hoàn thành, chúng tôi chuyển sang thông tin đăng nhập máy chủ. Để thuận tiện, chúng tôi đã giành được mật khẩu bảo vệ những mật khẩu này, nhưng bạn chắc chắn hoan nghênh làm như vậy nếu bạn muốn bảo mật hơn nữa.
    • sudo ./easyrsa gen-req máy chủ nopass
  8. Đánh Đi vào để lại tên chung là người phục vụ. Khi cặp khóa được tạo, hãy ký chứng chỉ:
    • sudo ./easyrsa máy chủ đăng nhập req
  9. Kiểu Đúng để xác nhận và nhập mật khẩu CA của bạn nếu bạn đặt mật khẩu trước đó.
  10. Bây giờ chúng tôi sẽ thiết lập máy khách. Một lần nữa, chúng tôi đã giành được mật khẩu đặt mật khẩu về điều này nhưng bạn được chào đón. Lưu ý rằng nếu bạn muốn định cấu hình khởi động VPN tự động, tốt nhất là không nên đặt mật khẩu.
    • ./ easyrsa gen-req client nopass
  11. Đánh Đi vào để lại tên chung là khách hàng. Bây giờ ký tên:
    • sudo ./easyrsa đăng nhập khách hàng khách hàng
  12. Kiểu Đúng để xác nhận và nhập mật khẩu CA của bạn nếu bạn đặt.
  13. Tiếp theo, chúng tôi sẽ tạo khóa TLS để bảo mật hoàn hảo về phía trước trong OpenVPN, đảm bảo dữ liệu phiên trong quá khứ không thể được giải mã ngay cả khi kẻ tấn công nắm giữ khóa riêng của chúng tôi.
    • cd / etc / openvpn
      openvpn –genkey –secret pfs.key
  14. Bây giờ chúng tôi đã tạo ra tất cả các tệp tin xác thực mà chúng tôi cần. Tiếp theo, chúng tôi sẽ tạo một tệp cấu hình máy chủ OpenVPN. Chúng tôi đã có một bản viết cho bạn bên dưới, vì vậy tất cả những gì bạn cần làm là sao chép và dán nếu bạn đã theo dõi từ đầu. Bắt đầu bằng cách điều hướng đến thư mục OpenVPN và tạo một tệp mới:
    • cd / etc / openvpn
      máy chủ nano sudo.
  15. Bây giờ bạn đang ở trong trình soạn thảo văn bản nano. Sao chép và dán cấu hình sau, sau đó nhấn CTRL + O để tiết kiệm, Đi vào để xác nhận, và CTRL + X để thoát ra (Gợi ý: bạn có thể dán văn bản từ bảng ghi tạm vào PuTTy chỉ bằng cách nhấp chuột phải)
    • cổng 1194
      proto udp
      nhà phát triển
      ca /etc/openvpn/easy-rsa/pki/ca.crt
      cert /etc/openvpn/easy-rsa/pki/issued/server.crt
      khóa /etc/openvpn/easy-rsa/pki/private/server.key
      dh /etc/openvpn/easy-rsa/pki/dh.pem
      mật mã AES-256-CBC
      auth SHA512
      máy chủ 10.8.0.0 255.255.255.0
      đẩy "redirect-gateway def1 bypass-dhcp"
      đẩy "tùy chọn dhcp DNS 8.8.8.8"
      đẩy "tùy chọn dhcp DNS 8.8.4.4"
      ifconfig-pool-ipp.txt vẫn tồn tại
      giữ 10 120
      comp-lzo
      khóa liên tục
      kiên trì
      trạng thái openvpn-status.log
      đăng nhập append openvpn.log
      động từ 3
      máy chủ
      tls-auth /etc/openvpn/pfs.key
  16. Máy chủ hiện được cấu hình. Chúng ta chỉ cần khởi động OpenVPN. Chúng tôi sẽ khởi động nó như một dịch vụ để ngay cả sau khi bạn đóng PuTTy, nó sẽ tiếp tục chạy cho đến khi máy chủ bị tắt hoặc bạn kết thúc dịch vụ theo cách thủ công.
    • dịch vụ sudo openvpn bắt đầu

Biên tập: Một số độc giả đã chỉ ra rằng các máy chủ VPN của họ ngừng hoạt động sau khi khởi động lại hoặc bảo trì máy chủ. Điều này đôi khi xảy ra với các trường hợp EC2 cấp vi mô. Để ngăn chặn điều này, chúng tôi sẽ sử dụng một lệnh và bash script do Matt Doyle cung cấp trong phần bình luận. Bắt đầu với lệnh này:

sudo chkconfig openvpn trên

Trong khi bạn vẫn còn trong etc / openvpn, hãy sử dụng máy chủ nano.sh để tạo một tệp văn bản mới và dán đoạn sau vào nó:

#! / thùng / sh
tiếng vang 1 | sudo tee / Proc / sys / net / ipv4 / ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.4.0.1/2 -o eth0 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Sử dụng CTRL + O để tiết kiệm và CTRL + X để thoát.

Lệnh sẽ đảm bảo OpenVPN khởi động khi máy chủ khởi động và tập lệnh sẽ đảm bảo các tuyến cần thiết được thiết lập trong iptables để cho phép lưu lượng OpenVPN.

OpenVPN và thiết lập máy khách easyrsa

Bây giờ máy chủ được cấu hình, chúng ta cần thiết lập máy khách. Để làm điều đó, chúng tôi sẽ phải di chuyển các chứng chỉ và tệp chính cần thiết từ máy chủ của chúng tôi sang thiết bị khách của chúng tôi. Với PuTTy vẫn mở và chạy dưới quyền root, trước tiên chúng ta cần thay đổi quyền trên các tệp này để có thể truy cập chúng. Chúng tôi cũng sẽ đặt tất cả chúng ở một nơi để làm cho mọi thứ dễ dàng hơn một chút.

  1. Để truy cập một số tệp này, chúng tôi cần phải là người dùng root. Để làm điều đó, gõ:
    • sudo su
  2. Điều này sẽ làm cho bạn người dùng root và cấp đặc quyền quản trị. Bây giờ nhập các lệnh sau. Lệnh cuối cùng làm giảm các quyền cần thiết để truy cập các tệp này. Lưu ý rằng điều quan trọng là thay đổi chúng trở lại khi hoàn thành.
    • cd / etc / openvpn
      chìa khóa mkdir
      phím cp pfs.key
      phím cp /etc/openvpn/easy-rsa/pki/dh.pem
      phím cp /etc/openvpn/easy-rsa/pki/ca.crt
      phím cp /etc/openvpn/easy-rsa/pki/private/ca.key
      phím cp /etc/openvpn/easy-rsa/pki/private/client.key
      phím cp /etc/openvpn/easy-rsa/pki/issued/client.crt
      chmod 777 *
  3. Để lấy các tệp ra khỏi máy chủ của chúng tôi và vào PC của chúng tôi, chúng tôi sẽ sử dụng một chương trình miễn phí có tên WinSCP. Chỉ cần sử dụng các tùy chọn cài đặt mặc định. Sau khi thực hiện xong, một cửa sổ sẽ bật lên nhắc bạn nhập chi tiết xác thực máy chủ của bạn từ PuTTy. Chọn một trong những chúng tôi đã thực hiện ở trên và tiếp tục.ec2 vpn 14
  4. Chọn myvpn (hoặc bất cứ điều gì bạn đặt tên cho bạn) và nhấn nút Chỉnh sửa. Gõ vào người dùng ec2 dưới tên người dùng. Bấm vào Đăng nhập.
  5. Nếu đây là lần đầu tiên bạn sử dụng WinSCP, bạn có thể đặt tệp .ppk bạn đã sử dụng trong PuTTy bằng cách nhấp vào Biên tập Nâng cao. Đi đến SSH > Xác thực > Tệp khóa riêng và điều hướng đến tệp PPK của bạn.
  6. Trong trường tên máy chủ trên trang chính, bạn có thể nhập địa chỉ IP hoặc tên miền của thể hiện EC2 của bạn. Hãy nhớ lưu cài đặt của bạn, sau đó nhấn Đăng nhập.dễ dàng 6
  7. Trong khung bên phải, điều hướng đến thư mục chứa các tệp chính của bạn, trong trường hợp này / etc / openvpn / phímdễ dàng 7
  8. Làm nổi bật sáu tập tin bạn cần: client.crt, client.key, ca.crt, dh.pempfs.key, và ca.key (không hiển thị do cập nhật bài viết). Nhấn màu xanh Tải xuống cái nút. Nó không thực sự quan trọng khi họ đi vào khung bên trái miễn là bạn không cần đặc quyền quản trị viên để truy cập nó. Chúng tôi đặt các tập tin trên máy tính để bàn của chúng tôi vì đơn giản. Tuy nhiên, bạn sẽ muốn lưu trữ tệp ca.key ở nơi an toàn, chẳng hạn như ổ USB.
  9. Kết thúc lỏng lẻo cuối cùng chúng ta cần phải buộc lên là xóa tệp ca.key khỏi máy chủ. CA, hoặc cơ quan cấp chứng chỉ, được sử dụng để ký chứng chỉ ứng dụng khách và nếu bị xâm phạm, bạn không bao giờ có thể tin tưởng các chứng chỉ do CA đó cấp lại. Mặc dù điều này không cần thiết cho VPN để hoạt động, chúng tôi thực sự khuyên bạn nên làm điều đó, đặc biệt là nếu bạn đã không thiết lập mật khẩu cho CA. Đảm bảo bạn sắp xếp lại tất cả các khóa và chứng chỉ cho mọi thiết bị bạn muốn kết nối trước khi xóa tệp. Nếu bạn muốn thêm nhiều lần sau, bạn sẽ phải di chuyển tệp ca.key trở lại máy chủ.
  10. Khi bạn có khóa CA được lưu trữ an toàn ở một nơi khác ngoài máy chủ, hãy truy cập PuTTy và xóa cả ca.key gốc và bản sao chúng tôi đã tạo từ máy chủ:
    • sudo rm /etc/openvpn/easy-rsa/pki/private/ca.key
      sudo rm /etc/openvpn/keys/ca.key
  11. Khi các tệp đã được tải xuống, chúng tôi cần khôi phục các quyền nghiêm ngặt hơn trên máy chủ để không phải ai cũng có thể truy cập chúng. Trở lại PuTTy:
    • cd / etc / openvpn / phím
      sudo chmod 600 *
  12. Trên PC của bạn, cắt và dán năm tệp đó từ bất cứ nơi nào bạn đã tải chúng vào thư mục cấu hình OpenVPN. Trong trường hợp này mà LỚN C: // Tệp chương trình // OpenVPN // config.
  13. Cuối cùng, chúng ta cần tạo một tệp cấu hình máy khách. Mở trình soạn thảo văn bản yêu thích của bạn (Notepad hoạt động tốt) bằng cách nhấp chuột phải và chọn Chạy như quản trị viên và dán cấu hình sau, thay thế Your.EC2.INSTANCE.IP bằng địa chỉ IP của thể hiện EC2 của bạn:
    • khách hàng
      nhà phát triển
      proto udp
      từ xa CỦA BẠN.EC2.INSTANCE.IP 1194
      ca ca.crt
      chứng nhận client.crt
      key client.key
      tls-phiên bản-phút 1.2
      tls-mật mã TLS-ECDHE-RSA-VỚI-AES-128-GCM-SHA256: TLS-ECDHE-ECDSA-VỚI-AES-128-GCM-SHA256: TLS-ECDHE-RSA-VỚI-AES-256 : TLS-DHE-RSA-VỚI-AES-256-CBC-SHA256
      mật mã AES-256-CBC
      auth SHA512
      độ phân giải-thử lại vô hạn
      auth-thử lại không
      quý tộc
      khóa liên tục
      kiên trì
      máy chủ loại ns-cert
      comp-lzo
      động từ 3
      khách hàng
      tls-auth pfs.key
  14. Đây là tệp cấu hình Windows cho GUI OpenVPN, vì vậy chúng tôi sẽ lưu nó dưới dạng khách hàng.ovpn. Các ứng dụng khách OpenVPN khác có thể sử dụng phần mở rộng .conf thay thế. Dù thế nào đi nữa, hãy đảm bảo trình soạn thảo văn bản của bạn không có phần mở rộng .txt sau khi lưu. Lưu nó vào cùng vị trí với các tệp chính và tệp chứng nhận của bạn: C: \\ Tệp chương trình \ OpenVPN \\ configdễ dàng 8
  15. Bây giờ chạy GUI OpenVPN trong chế độ quản trị viên bằng cách nhấp chuột phải vào nó và chọn Chạy như quản trị viên. Nhấp chuột phải vào biểu tượng trong khay hệ thống của bạn và kết nối với khách hàng cấu hình chúng ta vừa thiết lập. Một màn hình trạng thái với vô số văn bản sẽ nhấp nháy trên màn hình và sau đó biểu tượng sẽ chuyển sang màu xanh.

Xin chúc mừng! Bây giờ bạn đã kết nối với VPN tự chế của mình.

Phương pháp # 2: Mã hóa tĩnh (dễ dàng hơn, nhưng không được khuyến nghị)

Trong phương pháp này, chúng tôi sẽ tạo một khóa chung để xác thực. Nó giống như một tập tin hoạt động như một mật khẩu. Nó dễ cài đặt hơn nhưng chỉ cho phép một thiết bị duy nhất được kết nối với VPN bất kỳ lúc nào và kém an toàn hơn so với phương pháp dễ dàng rsa ở trên.

  1. Trong PuTTy Nhập vào các lệnh sau và nhấn enter:
    • cd / etc / openvpn
      sudo openvpn –genkey –secret ovpn.key
  2. Bây giờ chúng tôi sẽ tạo một tệp cấu hình máy chủ cho VPN của chúng tôi. Nhập lệnh sau để tạo tệp văn bản trống trong trình soạn thảo văn bản rất cơ bản bên trong thiết bị đầu cuối:
    • sudo nano openvpn.conf
  3. Nhập cấu hình sau. Bạn có thể tìm thấy nhiều tùy chọn hơn trên trang web OpenVPN nếu bạn muốn chơi xung quanh với điều này sau, nhưng hãy chắc chắn rằng bạn biết bạn đang làm gì trước tiên.ec2 vpn 13
    • cổng 1194
      proto tcp-server dev tun1
      ifconfig 10.4.0.1 10.4.0.2
      máy chủ trạng thái-tcp.log
      động từ 3
      bí mật ovpn.key
  4. Bây giờ hãy nhấn CTRL + O (chữ cái đó ’s O không phải bằng 0) và nhấn enter để lưu tệp. Sau đó nhấn CTRL + X để thoát trình soạn thảo văn bản. Quay lại dấu nhắc lệnh, đã đến lúc khởi động OpenVPN:
    • dịch vụ sudo openvpn bắt đầu
  5. Tiếp theo chúng ta cần lấy khóa chia sẻ từ máy chủ đến máy tính cục bộ của bạn. Đầu tiên chúng ta cần thay đổi các quyền trên tệp đó để có thể truy cập nó bằng lệnh sau:
    • sudo chmod 777 ovpn.key
  6. Nếu tại bất kỳ thời điểm nào bạn vô tình đóng PuTTy hoặc nó chỉ xuất hiện, bạn có thể điều hướng trở lại thư mục cài đặt VPN đang mở sau khi kết nối lại bằng lệnh này:
    • cd / etc / openvpn
  7. Để làm cho điều này dễ dàng nhất có thể, hãy tải xuống và cài đặt ứng dụng miễn phí này, WinSCP (Người dùng Mac sẽ phải tìm một ứng dụng khách FTP khác. Don vá lo lắng, có rất nhiều trong số họ). Chỉ cần sử dụng các tùy chọn cài đặt mặc định. Sau khi thực hiện xong, một cửa sổ sẽ bật lên nhắc bạn nhập chi tiết xác thực máy chủ của bạn từ PuTTy. Chọn một trong những chúng tôi đã thực hiện ở trên và tiếp tục.ec2 vpn 14
  8. Chọn myvpn (hoặc bất cứ điều gì bạn đặt tên cho bạn) và nhấn nút Chỉnh sửa. Nhập vào Ec ec-người dùng tên người dùng dưới tên người dùng. Bấm vào Đăng nhập.ec2 vpn 15
  9. Bây giờ bạn có thể di chuyển các tệp giữa máy chủ thể hiện EC2 và máy tính cục bộ của bạn. Trên bảng điều khiển bên phải, điều hướng lên càng xa càng tốt, sau đó truy cập vv / openvpn. Tại đây, bạn sẽ tìm thấy tệp ovpn.key mà chúng ta cần. Nhấp và kéo nó vào thư mục bạn chọn, nhưng hãy nhớ nơi bạn đặt nó vì chúng tôi sẽ muốn di chuyển nó sau.ec2 vpn 16
  10. Bây giờ bạn đã có chìa khóa, chúng tôi cần áp dụng lại các quyền cũ để không phải ai cũng có thể lấy nó. Quay lại thiết bị đầu cuối PuTTy của bạn, nhập:
    • sudo chmod 600 ovpn.key
  11. Đã đến lúc tải xuống ứng dụng khách OpenVPN và GUI cho máy tính cục bộ của bạn. Chuyển đến trang tải xuống OpenVPN và chọn phiên bản phù hợp cho hệ điều hành của bạn. Cài đặt nó với các thiết lập mặc định.
  12. Khởi chạy OpenVPN và nó sẽ xuất hiện dưới dạng một biểu tượng trong khay hệ thống của bạn. Mở trình thám hiểm tệp và điều hướng đến nơi bạn đã cài đặt OpenVPN, có thể trong thư mục Tệp chương trình của bạn. Di chuyển tệp opvn.key mà chúng tôi đã tải xuống từ máy chủ vào thư mục cấu hình được tìm thấy tại đây (C: / Tệp chương trình / OpenVPN / config nếu bạn sử dụng thư mục cài đặt mặc định trên Windows).
  13. Tiếp theo, chúng ta cần tạo một tệp cấu hình cho máy cục bộ để khớp với tệp chúng ta đã tạo trên máy chủ của mình. Mở Notepad và dán các mục sau, thay thế địa chỉ IP sau khi điều khiển từ xa bằng IP của đối tượng EC2 của bạn (nếu bạn đã quên nó, hãy tìm nó trong Bảng điều khiển AWS của bạn trong EC2 Instances). Ngoài ra, kiểm tra kỹ xem đường dẫn tệp đầy đủ trỏ đến khóa của bạn có đúng không.
    • proto tcp-client
      Xa xôi
      cổng 1194
      nhà phát triển
      bí mật "C: \\ Tệp chương trình \\ OpenVPN \\ config \\ ovpn.key"
      chuyển hướng cổng def1
      ifconfig 10.4.0.2 10.4.0.1
  14. Lưu nó dưới dạng myconfig.ovpn (đảm bảo rằng trình soạn thảo văn bản của bạn không có tên gọi là myconfig.ovpn.txt) trong thư mục cấu hình của bản cài đặt OpenVPN, cùng vị trí với tệp opvn.key của bạn.ec2 vpn 17
  15. Nhấp chuột phải vào biểu tượng OpenVPN trong khay hệ thống của bạn và nhấp Thoát để thoát. Bây giờ hãy khởi động lại một lần nữa, từ phím tắt trên màn hình nền hoặc từ thư mục Tệp chương trình, nhưng lần này hãy sử dụng nhấp chuột phải và nhấn vào Run Run với tư cách quản trị viên. Nếu bạn không có thể chạy OpenVPN với tư cách quản trị viên trên Windows, thì có lẽ họ đã thắng.ec2 vpn 18
  16. Nhấp chuột phải vào biểu tượng khay hệ thống và nhấp vào Kết nối. GUI OpenVPN sẽ bật lên hiển thị cho bạn trạng thái kết nối. Giả sử nó hoạt động, biểu tượng khay hệ thống sẽ chuyển sang màu xanh. Truy cập Google và nhập vào Nhật ký. Điều gì về IP của tôi?, Và nó sẽ trả về địa chỉ IP của Trường hợp Amazon EC2 của bạn.ec2 vpn 19

Xin chúc mừng, bạn vừa tạo VPN của riêng mình!

Ghi chú bổ sung

Nếu bạn muốn bảo vệ VPN của mình khỏi việc kiểm tra gói sâu, một kỹ thuật được sử dụng bởi các chế độ kiểm duyệt ở những nơi như Trung Quốc và Syria để chặn các kết nối OpenVPN, hãy xem hướng dẫn của chúng tôi về cách thiết lập Obfsproxy. Lưu ý hướng dẫn này được viết dưới dạng phần tiếp theo của Phương pháp # 2 cũ hơn trong bài viết này, vì vậy nếu bạn sử dụng easy-rsa, nó sẽ yêu cầu một số cấu hình bổ sung.

Hãy nhớ giữ băng thông của bạn trong giới hạn tầng miễn phí của Amazon. Cách dễ nhất để làm điều này là nhấp chuột phải vào cá thể của bạn trong Bảng điều khiển AWS và nhấp vào liên kết Thêm / Chỉnh sửa Báo động. Bạn có thể đặt máy chủ của mình dừng hoặc thậm chí chấm dứt sau vài giờ không hoạt động. Cấp miễn phí cho phép 750 giờ mỗi tháng (bao gồm cả tháng), vì vậy bạn không cần phải làm điều này. Tuy nhiên, những người dùng đó đã qua năm dịch vụ miễn phí ban đầu hoặc làm nhiều hơn với máy chủ của họ, tuy nhiên, có thể ngăn chặn các khoản phí không cần thiết cho thời gian máy chủ không sử dụng.

Ở đâu đó trong hướng dẫn này, một cái gì đó có thể sẽ đi sai cho bạn. Nếu bạn thực sự muốn có VPN nhưng aren không sẵn sàng thực hiện phần chia sẻ khắc phục sự cố của bạn, thì có lẽ tốt nhất là bạn nên chọn dịch vụ VPN trả phí. Chúng cũng cho phép bạn chuyển lưu lượng truy cập internet của mình qua nhiều vị trí địa lý, trong khi phiên bản EC2 bị giới hạn chỉ một. Kiểm tra đánh giá VPN của chúng tôi ở đây!

Mã hóa máy chủ DNS vào VPN của bạn

Nếu bạn cần đặt máy chủ DNS cụ thể để sử dụng với VPN của mình, có một số tùy chọn.

Để có thể đẩy máy chủ DNS vào máy khách, hãy thêm dòng này vào cấu hình máy chủ. Điều này sẽ ảnh hưởng đến tất cả các thiết bị kết nối với VPN của bạn (bao gồm cả trích dẫn):

đẩy "tùy chọn dhcp DNS 45.56.117.118"

Ngoài ra, bạn có thể đặt DNS trong cấu hình máy khách riêng lẻ bằng cách sử dụng:

tùy chọn dhcp DNS 45.56.117.118

Trong các ví dụ này, tôi đã sử dụng máy chủ DNS công cộng OpenNIC với ghi nhật ký ẩn danh ở Hoa Kỳ. Bạn có thể tìm thấy máy chủ OpenNIC ở quốc gia bạn chọn và lọc theo các tính năng như ghi nhật ký ẩn danh và DNSCrypt tại đây.

Đặc biệt cảm ơn blog Dctr Watson, mà tôi đã dựa vào như một tài nguyên khi viết bài viết này.

Jon Watson (không liên quan, tôi nghĩ) đã đóng góp cho bài viết này.