Giới thiệu về OpenVPN
Tháng 10 05, 2022 • César Daniel Barreto

Internet cũng quan trọng như bất kỳ dịch vụ công cộng nào khác trên thế giới ngày nay. Điều đầu tiên mà mọi người nghĩ đến khi mua nhà mới hoặc mở công ty ở một địa điểm mới là kết nối internet đáng tin cậy, tiếp theo là điện, hệ thống sưởi, thu gom rác và (nhưng không nhất thiết) dịch vụ điện thoại.
Một số người có thể cho rằng cụm từ “thế giới thứ ba” là không đúng và xúc phạm. Với các chương trình như “Mỗi trẻ em một máy tính xách tay” và các sáng kiến của các công ty như Facebook và Google, nhiều quốc gia được gọi là thế giới thứ ba hiện có thể truy cập internet mà không cần nước máy hoặc hệ thống thoát nước.
Nhưng cái tốt đi kèm cái xấu. Mặc dù bất kỳ ai cũng có thể lập trang web, tạo tài khoản Facebook hoặc mở tài khoản Twitter, nhưng không phải ai cũng làm như vậy với mục đích tốt, bao gồm cả tin tặc và tội phạm. Khi có nhiều người dùng, nguy cơ ai đó cố gắng khai thác hệ thống để trục lợi cá nhân sẽ tăng lên.
OpenVPN là một dự án mã nguồn mở bắt đầu vào năm 2002 với mục đích tạo ra một giải pháp VPN SSL đầy đủ tính năng. OpenVPN mã hóa dữ liệu được gửi qua các mạng, điều này đặc biệt quan trọng khi nhiều người dùng ở cùng một mạng.
Lịch sử của các vụ chặn bắt và cách chúng diễn ra theo thời gian
Theo truyền thống, bạn có thể tin tưởng vào một thông điệp không bị thay đổi nếu nó được gửi trong một lá thư niêm phong bằng sáp bởi một người đáng tin cậy. Tuy nhiên, theo thời gian, việc chặn thư trở nên đơn giản hơn: Người gửi có thể đọc hoặc sửa đổi nó trước khi chuyển đi.
Những tiến bộ công nghệ trong Thế chiến II cho phép cả hai bên bảo vệ dữ liệu của mình an toàn hơn thông qua các ví dụ như máy Enigma và máy nói mã Navajo. Sau chiến tranh, chính phủ Hoa Kỳ đã sử dụng những kỹ thuật này và các kỹ thuật khác để bảo vệ thông tin của mình.
Khi thời gian trôi qua và công nghệ phát triển, cần có những cách mới để giữ dữ liệu an toàn, đó là lúc OpenVPN xuất hiện. OpenVPN sử dụng sự kết hợp giữa mật mã khóa công khai và SSL/TLS để trao đổi khóa. OpenVPN có thể chạy qua Giao thức dữ liệu người dùng (UDP) hoặc Giao thức điều khiển truyền (TCP). OpenVPN cung cấp nhiều tính năng, chẳng hạn như đường hầm lưu lượng IPv4 hoặc IPv6, chạy qua một cổng duy nhất và nhiều tính năng khác.
Phiên bản cộng đồng & Tiếng kêuGiao thức đường hầm nVPN
OpenVPN có hai phiên bản: Phiên bản cộng đồng OpenVPN, miễn phí và mã nguồn mở, và Giao thức đường hầm OpenVPN, là một sản phẩm thương mại.
Phiên bản cộng đồng OpenVPN
OpenVPN là một dự án mã nguồn mở mà bất kỳ ai cũng có thể đóng góp và chạy theo giấy phép GPL. Thiết lập CE miễn phí nếu bạn quen thuộc với Linux và giao diện dòng lệnh.
Phiên bản cộng đồng OpenVPN có sẵn để tải xuống trên trang web OpenVPN.
Giao thức đường hầm OpenVPN
Giao thức đường hầm OpenVPN sử dụng mã hóa SSL để đảm bảo dữ liệu được bảo vệ. Điều này là do mã hóa AES-256 được sử dụng, đây là tiêu chuẩn được chính phủ Hoa Kỳ sử dụng. Mã để kiểm tra có sẵn cho mọi người. Điều này có nghĩa là mọi người có thể tìm và sửa các lỗ hổng. Ngoài ra, giao thức cung cấp kết nối nhanh hơn và có thể vượt qua hầu hết các tường lửa.
Những lợi ích khác của Giao thức đường hầm OpenVPN bao gồm:
- Hỗ trợ: Windows, macOS, Linux, iOS, Android
- Kết nối: Tối đa 5 thiết bị với tốc độ nhanh hơn với OpenVPN 2.4P
- Đào hầm: Giao thức đường hầm OpenVPN có thể tạo đường hầm qua tường lửa và NAT
- Giao diện lập trình ứng dụng (API): API dễ sử dụng cho các nhà phát triển
VPN là gì?
Người quản trị có thể kết nối một vài máy tính trên các mạng khác nhau để tạo ra ảo giác rằng chúng chia sẻ cùng một mạng cục bộ. Các máy có thể ở cùng một phòng, ở hai bên thế giới hoặc sử dụng nhiều loại kết nối khác nhau, chẳng hạn như kết nối không dây, vệ tinh và kết nối quay số.
Chữ “P” trong VPN là viết tắt của quyền riêng tư, do đó mạng ảo được gọi là VPN. Đường hầm (VPN) đề cập đến lưu lượng mạng đi qua VPN, trong khi tất cả lưu lượng khác được gọi là bên ngoài đường hầm.
Biểu đồ sau đây cho thấy lưu lượng mạng di chuyển qua nhiều phần của mạng và internet như thế nào. Vì HTTPS và SSH là các giao thức truyền thông an toàn hơn nên việc phân tích loại dữ liệu này dễ dàng hơn nhiều. Ai đó phải tấn công lưu lượng mạng để xác định loại kết nối nào đang được thiết lập từ máy tính nào đến máy chủ nào, ngay cả khi chúng có thể được nhìn thấy.
Khi sử dụng VPN, lưu lượng truy cập bên trong đường hầm sẽ không còn có thể nhận dạng được nữa.
Lưu lượng nào có thể được định tuyến qua VPN?
Mạng riêng ảo (VPN) có thể mã hóa và tạo đường hầm cho bất kỳ loại lưu lượng nào, bao gồm hình ảnh, phim, lướt web, gửi email và nhắn tin. Một số chương trình phổ biến sử dụng VPN là:
Máy ATM:Bằng cách sử dụng VPN, các máy ATM có thể kết nối với hệ thống ngân hàng với mức độ bảo mật cao hơn.
Wi-Fi công cộng:Mạng Wi-Fi công cộng là ổ chứa tiềm năng cho các cuộc tấn công bảo mật. Bằng cách sử dụng VPN, bạn có thể mã hóa lưu lượng truy cập của mình để không ai có thể theo dõi dữ liệu của bạn.
Mạng gia đình: Bạn có thể sử dụng VPN để kết nối với mạng gia đình ở bất kỳ đâu. Điều này đặc biệt hữu ích nếu bạn có một ngôi nhà thông minh với các thiết bị cần được kết nối với mạng gia đình, chẳng hạn như camera an ninh hoặc hệ thống tự động hóa gia đình.
Bỏ qua kiểm duyệt quốc gia: Đối với những người sống trong chế độ áp bức, chẳng hạn như Bắc Triều Tiên hoặc Trung Quốc, kiểm duyệt từ các lệnh phong tỏa của chính phủ là mối quan tâm cấp bách. "Bức tường lửa vĩ đại của Trung Quốc" ngăn cản công dân truy cập vào thế giới bên ngoài và nhận tin tức và thông tin có thể gây ra sự nổi loạn—VPN cung cấp một cách để vượt qua những hạn chế này.
Mạng lưới kinh doanh: Các tập đoàn và tổ chức khác có thể sử dụng VPN để kết nối nhiều địa điểm văn phòng hoặc thậm chí toàn bộ trung tâm dữ liệu. Bằng cách đó, họ có thể cải thiện giao tiếp và cộng tác giữa các nhân viên đồng thời bảo vệ dữ liệu nhạy cảm.
Dịch vụ GeoIP: Một số trang web, bao gồm Hulu, YouTube và Netflix, sử dụng cơ sở dữ liệu GeoIP và các bản ghi khác để phân phối nội dung dựa trên vị trí. Bạn có thể truy cập tài liệu không khả dụng trong khu vực của mình bằng cách "phản hồi" kết nối máy tính của bạn qua máy chủ VPN gần hơn với khu vực địa lý mong muốn. Ngoài ra, VPN sẽ bảo vệ bạn khỏi mọi hình phạt pháp lý liên quan đến việc xem phim bị cấm hoặc chương trình truyền hình có bản quyền.
Đường hầm riêng tư hoàn toàn bị cô lập khỏi internet công cộng. Mặc dù VPN tự di chuyển qua internet như trong hình trên, các thiết bị dọc theo tuyến đường của nó sẽ chỉ có thể nhìn thấy lưu lượng VPN; chúng sẽ không biết những gì đang được truyền bên trong đường hầm an toàn. Đó là vì VPN không chỉ mã hóa lưu lượng bên trong mà còn mã hóa các luồng dữ liệu riêng lẻ từ những người dùng khác bên ngoài nó. Nói cách khác, ngay cả khi ai đó có thể chặn một trong những luồng dữ liệu này, họ sẽ không thể giải mã nó vì VPN vẫn sẽ mã hóa nó.
Bộ định tuyến và tường lửa ở cả hai bên tạo ra đường hầm. Nếu bạn không thực hiện các biện pháp đặc biệt để kiểm soát lưu lượng VPN, tất cả lưu lượng mạng đi qua đường hầm VPN sẽ bỏ qua mọi biện pháp bảo mật thông thường.
Mã hóa và xác thực dữ liệu
VPN sử dụng mã hóa và xác thực để ngăn người khác nhìn thấy dữ liệu của bạn. Mã hóa làm cho dữ liệu khó hiểu và xác thực đảm bảo rằng chỉ những người phù hợp mới có thể nhìn thấy dữ liệu.
Lớp bảo mật đầu tiên là xác thực, xác minh rằng chỉ những người dùng được ủy quyền mới có thể truy cập dịch vụ. Điều này có thể được thực hiện bằng chứng chỉ cho mỗi người dùng hoặc tên người dùng và mật khẩu. Sau đó, người dùng có thể thiết lập các hạn chế của riêng họ, chẳng hạn như các tuyến đường nhất định hoặc cài đặt tường lửa. Những hạn chế này thường chỉ giới hạn trong một lần cài đặt; tuy nhiên, chúng có thể được tùy chỉnh.
Thứ hai, chúng ta cần bảo vệ kênh truyền thông nhiều hơn. Để làm được điều này, chúng ta sẽ ký mỗi gói tin được truyền đi. Điều này có nghĩa là mỗi hệ thống sẽ xác minh rằng các gói tin VPN mà nó nhận được đã được ký đúng cách. Bằng cách xác thực các gói tin đã được mã hóa, hệ thống có thể tiết kiệm thời gian xử lý bằng cách không giải mã các gói tin không đáp ứng tiêu chí xác thực. Nếu chúng ta giữ an toàn cho các khóa ký, điều này sẽ ngăn chặn các cuộc tấn công từ chối dịch vụ!
PPTP so với OpenVPN
Được phát triển bởi Microsoft, PPTP (Point-to-Point Tunneling Protocol) là một trong những giao thức VPN lâu đời nhất và phổ biến nhất. OpenVPN hiện đại hơn một chút và có thể an toàn hơn nếu được cấu hình đúng.
OpenVPN sử dụng SSL/TLS để mã hóa, công nghệ tương tự mà trình duyệt web của bạn sử dụng để kết nối đến các trang web an toàn. OpenVPN linh hoạt hơn và có thể được cấu hình cho các trường hợp sử dụng khác nhau, trong khi PPTP rất dễ thiết lập nhưng kém linh hoạt hơn.
Mặc dù OpenVPN an toàn hơn PPTP, nhưng việc thiết lập có thể khó khăn hơn. Nếu bạn không thoải mái khi cấu hình VPN, bạn có thể muốn sử dụng PPTP.
Làm thế nào để sử dụng OpenVPN?
Dành cho nền tảng Windows
Đầu tiên, bạn cần tải xuống ứng dụng khách OpenVPN. Người dùng Windows và Mac có thể tìm thấy phiên bản mới nhất, V3, đây.
Sau khi bạn đã cài đặt máy khách OpenVPN, hãy khởi chạy nó và nhập tệp .ovpn từ
Sau khi cài đặt máy khách OpenVPN, bạn phải tải xuống tệp cấu hình. Tệp này cho máy khách OpenVPN biết cách kết nối với máy chủ VPN. Bạn có thể lấy tệp này từ nhà cung cấp VPN của mình.
Sau khi bạn đã tải xuống tệp cấu hình, hãy mở tệp đó bằng máy khách OpenVPN. Máy khách OpenVPN sẽ yêu cầu bạn nhập tên người dùng và mật khẩu. Sau khi bạn nhập những thông tin này, máy khách OpenVPN sẽ kết nối với máy chủ VPN.
OpenVPN hiện đang chạy ở chế độ nền. Bạn có thể xác minh điều này bằng cách kiểm tra địa chỉ IP của mình. Để thực hiện việc này, hãy truy cập whatismyip.com. Bạn sẽ thấy địa chỉ IP của mình đã thay đổi.
Dành cho nền tảng macOS
Nếu bạn đang sử dụng máy Mac, bạn có thể sử dụng máy khách OpenVPN cho macOS. Có thể tải xuống phiên bản mới nhất đây.
Sau khi cài đặt máy khách OpenVPN, bạn phải tải xuống tệp cấu hình. Tệp này cho máy khách OpenVPN biết cách kết nối với máy chủ VPN. Bạn có thể lấy tệp này từ nhà cung cấp VPN của mình.
Sau khi tải xuống tệp cấu hình, hãy mở tệp đó bằng máy khách OpenVPN. Máy khách OpenVPN sẽ yêu cầu bạn nhập tên người dùng và mật khẩu. Sau khi bạn nhập những thông tin này, máy khách OpenVPN sẽ kết nối với máy chủ VPN.
OpenVPN hiện đang chạy ở chế độ nền. Bạn có thể xác minh điều này bằng cách kiểm tra địa chỉ IP của mình. Để thực hiện việc này, hãy truy cập whatismyip.com. Bạn sẽ thấy địa chỉ IP của mình đã thay đổi.
Dành cho nền tảng Linux
Nếu bạn đang sử dụng Linux, bạn có thể sử dụng máy khách OpenVPN cho Linux. Phiên bản mới nhất có thể được tải xuống đây.
Cài đặt cho Debian và Ubuntu
Nếu bạn đang sử dụng Debian hoặc Ubuntu, bạn có thể cài đặt OpenVPN bằng lệnh sau:
- Mở Terminal bằng cách nhấn Điều khiển + thay thế + T
- Nhập lệnh sau vào Terminal:
sudo apt cài đặt apt-transport-https
. Sau đó nhập mật khẩu gốc. - Nhập lệnh sau:
sudo wget https://swupdate.openvpn.net/repos/openvpn-repo-pkg-key.pub
. Thao tác này sẽ tải xuống khóa kho lưu trữ OpenVPN được các gói OpenVPN 3 Linux sử dụng. - Nhập lệnh sau vào Terminal:
sudo apt-key thêm openvpn-repo-pkg-key.pub
- Nhập lệnh sau vào Terminal:
sudo wget -O /etc/apt/sources.list.d/openvpn3.list https://swupdate.openvpn.net/community/openvpn3/repos/openvpn3-$DISTRO.list
. Tùy thuộc vào bản phân phối Debian/Ubuntu của bạn, bạn cần thay thế $DISTRO với tên phát hành chính xác từ bảng bên dưới. - Nhập lệnh sau vào Terminal:
sudo apt cập nhật
- Nhập lệnh sau vào Terminal:
sudo apt cài đặt openvpn3
. Mã này sẽ cài đặt gói OpenVPN 3.
Cài đặt sử dụng .ovpn Profile
Nếu bạn có cấu hình OpenVPN (tệp .ovpn) từ nhà cung cấp VPN, bạn có thể sử dụng cấu hình này để kết nối với máy chủ VPN.
- Để tạo cấu hình một lần, hãy nhập lệnh sau vào Terminal:
openvpn3 session-start --config ${TỆP_CẤU_HÌNH_CÁC_CÁC_THỨC_CÁC_CÁC_HÌNH ...
- Nhập lệnh sau vào Terminal để nhập tệp cấu hình và bắt đầu phiên VPN:
openvpn3 config-import --config ${TỆP_CẤU_HÌNH_CỦA_MY}
. - Để thiết lập kết nối VPN mới từ hồ sơ đã nhập, hãy sử dụng lệnh sau:
openvpn3 phiên-khởi-đầu --config ${CONFIGURATION_PROFILE_NAME}
.
Cài đặt cho Red Hat Enterprise Linux hoặc Scientific Linux
Nếu bạn đang sử dụng Red Hat Enterprise Linux hoặc Scientific Linux 7, bạn có thể cài đặt OpenVPN bằng lệnh sau:
- Vào thanh tìm kiếm và nhập “phần cuối.“
RHEL/CentOS 6:sudo yum cài đặt https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
RHEL/CentOS 7:
sudo yum cài đặt https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Trên RHEL 7, bạn cũng nên bật các kho lưu trữ tùy chọn, bổ sung và HA vì các gói EPEL có thể phụ thuộc vào các gói từ các kho lưu trữ này:sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" --enable "rhel-ha-for-rhel-*-server-rpms"
RHEL/CentOS 8:
sudo yum cài đặt https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Kích hoạt các dịch vụ cần thiết trên Red Hat 8.kho lưu trữ codeready-builder-for-rhel-8-${ARCH}-rpms vì các gói EPEL có thể phụ thuộc vào các gói từ kho lưu trữ này: sudo ARCH=$( /bin/arch ) theo sau là sudo subscription-manager repos --enable "codeready-builder-for-rhel-8-${ARCH}-rpms"
Ngoài ra, người dùng CentOS 8 nên bật kho lưu trữ PowerTools vì một số gói EPEL có thể phụ thuộc vào các gói bổ sung từ kho lưu trữ này:
sudo dnf config-manager --set-enabled PowerTools
- Trước tiên hãy cài đặt mô-đun yum copr. Để thực hiện việc này, hãy chạy lệnh sau:
sudo yum cài đặt yum-plugin-copr
. - Bật kho lưu trữ OpenVPN 3 Copr với mô-đun Copr được kích hoạt. Để thực hiện, hãy sử dụng lệnh sau:
sudo yum copr kích hoạt dsommers/openvpn3
- Sau khi cài đặt, máy khách OpenVPN 3 Linux có thể được khởi chạy bằng lệnh sau:
sudo yum cài đặt openvpn3-client
OpenVPN là một công cụ mạnh mẽ và linh hoạt có thể được sử dụng để bảo mật toàn bộ kết nối internet của bạn. Điều quan trọng là phải hiểu những điều cơ bản về cách thức hoạt động của VPN trước khi bạn bắt đầu sử dụng, nhưng một khi bạn đã hiểu, OpenVPN có thể là một cách tuyệt vời để giữ an toàn cho dữ liệu của bạn.

César Daniel Barreto
César Daniel Barreto là một nhà văn và chuyên gia an ninh mạng được kính trọng, nổi tiếng với kiến thức sâu rộng và khả năng đơn giản hóa các chủ đề an ninh mạng phức tạp. Với kinh nghiệm sâu rộng về bảo mật mạng và bảo vệ dữ liệu, ông thường xuyên đóng góp các bài viết và phân tích sâu sắc về các xu hướng an ninh mạng mới nhất, giáo dục cả chuyên gia và công chúng.