NỘI DUNG
Cài đặt OpenVPN với Script tự động trên các máy chủ Linux

OpenVPN là một SSL VPN với đầy đủ tính năng để triển khai mạng bảo mật mở rộng OSI lớp 2 hoặc 3, sử dụng giao thức SSL / TLS tiêu chuẩn, hỗ trợ các phương thức xác thực linh hoạt chio khách hàng theo chứng chỉ: thẻ thông minh và / hoặc thông tin tên người dùng đăng nhập / mật khẩu. OpenVPN cho phép người dùng hoặc nhóm người dùng quyền truy cập vào các chính sách kiểm soát cụ thể bằng sử dụng các quy tắc tường lửa được áp dụng cho giao diện ảo VPN. OpenVPN không phải là một ứng dụng web proxy và không hoạt động thông qua một trình duyệt web.
OpenVPN 2.0 mở rộng khả năng của OpenVPN 1.x nhờ cung cấp chế độ máy khách máy chủ co giãn linh hoạt, cho phép nhiều máy khách kết nối với một OpenVPN server process duy nhất trên một cổng TCP hoặc UDP duy nhất. OpenVPN 2.3 đem đến nhiều cải tiến lớn, trong đó bao gồm hỗ trợ đầy đủ IPv6 và hỗ trợ PolarSSL.
Bài viết sau đây sẽ hướng dẫn bạn cấu hình VPN máy khách / máy chủ OpenVPN 2.x từng bước.

Điều kiện cài đặt OpenVPN
- HĐH: Debian, Ubuntu, Fedora, CentOS, Oracle Linux, Arch Linux
- RAM: 1GB
- CPU: 1GB
- Disk: 10GB
Hướng dẫn cài đặt OpenVPN
Bước 1: Cài đặt OpenVPN với Script tự động
Bạn hãy tải scrip openvpn và cài đặt với tập lệnh sau. Và bạn cần chay với quyền ROOT và đã bật module TUN. Lần đầu khi khởi chạy script sẽ hiện tại các câu hỏi và bạn hãy trả lời theo hiển thị để thiết lập máy chủ VPN.
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh && chmod +x openvpn-install.sh && bash openvpn-install.sh
root@sv:~# curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh && chmod +x openvpn-install.sh && bash openvpn-install.sh % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 40671 100 40671 0 0 240k 0 --:--:-- --:--:-- --:--:-- 242k Welcome to the OpenVPN installer! The git repository is available at: https://github.com/angristan/openvpn-install I need to ask you a few questions before starting the setup. You can leave the default options and just press enter if you are ok with them. I need to know the IPv4 address of the network interface you want OpenVPN listening to. Unless your server is behind NAT, it should be your public IPv4 address. IP address: 103.110.84.109 Checking for IPv6 connectivity... Your host does not appear to have IPv6 connectivity. Do you want to enable IPv6 support (NAT)? [y/n]: n What port do you want OpenVPN to listen to? 1) Default: 1194 2) Custom 3) Random [49152-65535] Port choice [1-3]: 1 What protocol do you want OpenVPN to use? UDP is faster. Unless it is not available, you shouldn't use TCP. 1) UDP 2) TCP Protocol [1-2]: 1 What DNS resolvers do you want to use with the VPN? 1) Current system resolvers (from /etc/resolv.conf) 2) Self-hosted DNS Resolver (Unbound) 3) Cloudflare (Anycast: worldwide) 4) Quad9 (Anycast: worldwide) 5) Quad9 uncensored (Anycast: worldwide) 6) FDN (France) 7) DNS.WATCH (Germany) 8) OpenDNS (Anycast: worldwide) 9) Google (Anycast: worldwide) 10) Yandex Basic (Russia) 11) AdGuard DNS (Anycast: worldwide) 12) NextDNS (Anycast: worldwide) 13) Custom DNS [1-12]: 11 Do you want to use compression? It is not recommended since the VORACLE attack make use of it. Enable compression? [y/n]: n Do you want to customize encryption settings? Unless you know what you're doing, you should stick with the default parameters provided by the script. Note that whatever you choose, all the choices presented in the script are safe. (Unlike OpenVPN's defaults) See https://github.com/angristan/openvpn-install#security-and-encryption to learn more. Customize encryption settings? [y/n]: n Customize encryption settings? [y/n]: n Okay, that was all I needed. We are ready to setup your OpenVPN server now. You will be able to generate a client at the end of the installation. Press any key to continue... Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [109 kB] Hit:2 http://us.archive.ubuntu.com/ubuntu focal InRelease Get:3 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB] Get:4 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages [623 kB] Get:5 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB] Get:6 http://us.archive.ubuntu.com/ubuntu focal-updates/main i386 Packages [460 kB] Get:7 http://security.ubuntu.com/ubuntu focal-security/main i386 Packages [220 kB]
Hệ thống sẽ được diển ra tự động. Và bạn chờ ít phút để hoàn tất các bước cài đặt. Khi nhận được thông báo nhập vào thông tin Client Name:
bạn hãy nhập vào user để sử dụng như sau.
- Client name: Đặt tên User đăng nhập OpenVPN
- 1) Add a passwordless client: Tạo user khách không cần mật khẩu
- 2) Use a password for the client: Tạo User và có mật khẩu
- Enter PEM pass phrase: Đặt mật khẩu cho User
- Verifying – Enter PEM pass phrase: Nhập lại mật khẩu vừa đặt
Sau khi nhập vào đầy đủ thông tin trên bạn sẽ nhập được dòng thông báo là The configuration file has been written to /root/dotrungquan.ovpn.
Thì đây là file cấu hình và bạn hãy tải về để cấu hình trên máy Client nhé.
Bạn hãy FTP hoặc SFTP để download file này về.

Hướng dẫn tạo và xoá User VPN
Để tạo mới hoặc xoá bạn thực hiện chạy file *.sh
như sau
root@sv:~# ./openvpn-install.sh Welcome to OpenVPN-install! The git repository is available at: https://github.com/angristan/openvpn-install It looks like OpenVPN is already installed. What do you want to do? 1) Add a new user 2) Revoke existing user 3) Remove OpenVPN 4) Exit
Trong đó:
- 1) Add a new user: Thêm User mới
- 2) Revoke existing user: Xoá bỏ User
- 3) Remove OpenVPN: Xoá OpenVPN
- 4) Exit: Thoát
Bước 2: Cấu hình OpenVPN Client
Để sử dụng VPN trên máy tính hoặc điện thoại của bạn, bạn phải thực hiện cài đặt VPN Client để kết nối. Một số phần mềm dành cho từng hệ điều hành như:
- Windows : OpenVPN Client for Windows
- macOS: TunnelBlick hoặc OpenVPN
- iOS: OpenVPN Connect for iOS
- Android: OpenVPN Connect for Android
Ở bài viết này mình sẽ hướng dẫn cấu hình VPN Client trên MacOS sử dụng ứng dụng có tên là OPENVPN và Windows sử dụng APP OpenVPN
1. Cấu hình trên Windows
Sau khi tải được file *.opvn
bạn hãy copy file này và di chuyển vào bên trong C:\program File\OpenVPN\config

Tiếp theo bạn mở ứng dụng OpenVPN lên sẽ thấy được file cấu hình đã hiển thị. Bạn click Connect để bắt đầu.

Ứng dụng sẽ hỏi Passwd và bạn hãy nhập vào Passwd để kết nối.

2. Cấu hình trên MACOS
Trên MacOS sau khi cài đặt xong ứng dụng. Bạn mở ứng dụng lên và Click vào biểu tượng +
để thêm cấu hình mới.

Tiếp theo bạn click vào BROWSE để tìm đến file *.ovpn
đã tải về.

Và bây giờ bạn hãy nhập vào Passwd để bắt đầu kết nối.

Bây giờ bạn hãy truy cập trang sau để kiểm tra IP của mình nhé.
- Trang kiểm tra IP: viewip.info

Như vậy mình đã hoàn tất bài Cài đặt OpenVPN với Script tự động. Hy vọng bài viết sẽ giúp bạn thực hiện cài đặt thành công mà không gặp bất kỳ lỗi nào.
- Tham khảo nguồn: https://github.com/angristan/openvpn-install