Thiết lập một mạng riêng ảo là cách mà bạn không phải mua các thiết bị đắt tiền mà vẫn cho phép người dùng có thể truy cập từ xa hoặc kết nối các văn phòng với nhau một cách an toàn. Những ưu điểm của mạng riêng ảo còn mang lại rất nhiều lợi ích cho các doanh nghiệp có kích thước trung bình và nhỏ. Microsoft cung cấp cho bạn chức năng máy khách và máy chủ VPN ngay bên trong hệ điều hành Windows; mặc dù vậy tập các tính năng này còn rất nhiều hạn chế, chỉ có các phiên bản Vista và các phiên bản sau này có mức độ bảo mật tốt hơn. Tuy nhiên có một phương pháp khác mà chúng tôi sẽ giới thiệu ở đây là cài đặt một phần mềm thay trên Router không dây được load với máy chủ và máy khách OpenVPN miễn phí. Các bạn chắc đã biết đến cách thực hiện này qua phần mềm DD-WRT, tuy nhiên trong bài này chúng tôi sẽ giới thiệu cho các bạn một phần mềm khác, một biến thể của TomatoVPN. Tìm Router tương thích
Chúng ta không thể sử dụng phần mềm Tomato trên bất cứ Router không dây nào. Cần phải bảo đảm rằng bạn có một Router tương thích với nó. Các hãng có Router hỗ trợ cho phần mềm này gồm có Linksys, Buffalo và Asus. Bạn có thể kiểm tra sự tương thích của model và phiên bản cụ thể tại đây.
Khi đã thẩm định Router của bạn có khả năng tương thích, hãy download và cài đặt phần mềm.
Trong hướng dẫn này chúng tôi dựa trên việc sử dụng phát hành 1.27vpn3.6 của TomatoVPN, sử dụng máy chủ và máy khách OpenVPN 2.1.1. Sau đó trên một máy tính (PC), sẽ sử dụng OpenVPN 2.1.4 để tạo các chứng chỉ SSL và tạo hoạt động của máy khách VPN trên các máy tính. Đăng nhập ban đầu
Bắt đầu bằng cách kết nối với Router TomatoVPN và đăng nhập vào giao diện điều khiển web. Mở trình duyệt và nhập vào địa chỉ IP mặc định 192.168.1.1 của Router. Sau đó đăng nhập bằng username và password mặc định, cả hai đều là "admin".
Trước khi thực hiện bất cứ thao tác nào với các tính năng VPN, cần bảo đảm cấu hình những vấn đề cơ bản về bảo mật: các thiết lập không dây (bảo mật WPA hay WPA2) và mật khẩu của Router cho panel điều khiển. Thay đổi Subnet và IP của Router
Do các kết nối VPN sẽ liên kết các mạng với nhau, do đó chúng ta phải cẩn thận với subnet và IP để không xảy ra hiện tượng xung đột. Địa chỉ IP mặc định của TomatoVPN là 192.168.1.1 và đây đôi khi là nguyên nhân gây ra vấn đề. Hãy sử dụng một địa chỉ khác, chẳng hạn như 192.168.50.1 để tránh gặp phải vấn đề xung đột. Nếu bạn có nhiều văn phòng, hãy gán cho mỗi văn phòng một IP/subnet khác nhau, chẳng hạn như 192.168.51.1 và 192.168.52.1.
Để thay đổi Router TomatoVPN, kết nối và triệu gọi giao diện điều khiển web bằng cách nhập địa chỉ IP mặc định 192.168.1.1 vào trình duyệt web. Tiếp tục kích Basic > Network (xem trong hình 1). Thay đổi Router IP Address, chẳng hạn 192.168.50.1 và điều chỉnh IP Address Range theo, chẳng hạn 192.168.50.100 - 192.168.50.149. Sau đó kích Save.
Lúc này bạn phải sử dụng IP mới để đăng nhập vào giao diện điều khiển TomatoVPN Đăng ký và cấu hình dịch vụ DNS động
Nếu kết nối Internet nơi bạn muốn thiết lập máy chủ VPN sử dụng một địa chỉ IP động, khi đó bạn cần sử dụng dịch vụ DNS động. Bằng không bạn sẽ phải tự đi tìm IP của kết nối Internet và cập nhật nó trên các máy khách khi địa chỉ này thay đổi.
Đăng ký một dịch vụ DNS động, chẳng hạn như từ No-IP. Sau đó trên Router TomatoVPN, kích Basic > DDNS, nhập các thông tin chi tiết cho dịch vụ. Router của bạn lúc này sẽ tự động cập nhật hostname để trỏ vào địa chỉ IP hiện hành của bạn. Bạn chỉ cần nhập vào hostname trên cấu hình VPN máy khách thay cho địa chỉ IP.
Hình 1: Tomato VPN Router
Tạo chứng chỉ máy chủ và máy khách
Do OpenVPN sử dụng SSL nên bạn phải tạo và cài đặt các chứng chỉ SSL trên máy chủ và khách. Chọn một máy tính an toàn để tạo và quản lý PKI, sau đó download và cài đặt OpenVPN bằng Windows Installer. Lưu ý cần phải quay trở lại máy tính này để tạo các chứng chỉ khách bổ sung trong tương lai.
Khi cài đặt OpenVPN, bạn có thể bắt đầu công việc dưới đây:
1. Mở Command Prompt: Kích Start, đánh cmd và nhấn Enter.
2. Chuyển sang thư mục easy-rsa: cd C:Program FilesOpenVPNeasy-rsa.
3. Chạy file batch để tạo các file cấu hình: init-config (xem trong hình 2
4. Để mở cửa sổ Command Prompt để sử dụng sau này.
Tiếp theo, vào thư mục dưới đây trong Windows: C:Program FilesOpenVPNeasy-rsa. Sau đó kích phải vào file vars.bat và kích Edit. Bạn phải thay đổi các giá trị mặc định của tất cả các thiết lập dưới đây:
• KEY_COUNTRY
• KEY_PROVINCE
• KEY_CITY
• KEY_ORG
• KEY_EMAIL
Nếu mở file bằng Notepad mà không có bất cứ dòng nào trả về thì lúc này mọi thứ đang OK. Bạn chỉ cần chỉnh sửa các giá trị thiết lập nằm giữa dấu bằng và từ “set”. Để rõ hơn, chúng ta có thể download và sử dụng bộ soạn thảo như VIM.
Hình 2: File cấu hình Tomato VPN Router
Lúc này quay trở lại cửa sổ Command Prompt và khởi tạo PKI bằng cách nhập vào các lệnh dưới đây:
Vars
clean-all
build-ca
Khi thấy nhắc nhở nhập vào các tham số (xem hình 3), chỉ thiết lập trong file vars.bat, nhấn Enter để chấp nhận chúng. Có thể để trắng phần Organizational Unit Name. Tuy nhiên chúng ta cần phải nhập vào phần Common Name. Đây sẽ là tên của chứng chỉ CA sẽ được cài đặt vào máy chủ và tất cả các máy khách. Chọn một tên nào đó, chẳng hạn như "ABC_Corp-VPN-CA".
Lúc này bạn có thể tạo một chứng chỉ và khóa bảo mật cho máy chủ bằng lệnh:
build-key-server server
Chúng ta sẽ thấy nhắc nhở nhập các tham số lần nữa. Chấp nhận các giá trị mặc định cho những thứ yêu cầu trong vars.bat. Với Common Name, nhập vào tên giống như "ABC_Corp-VPN-Server". Cần bảo đảm nhập vào mật khẩu bảo mật và bạn có thể nhớ hoặc lưu ở địa điểm an toàn nào đó. Khi được nhắc nhở để ký và cất giữ chứng chỉ, hãy xác nhận các thông tin chi tiết và sau đó nhấn “y”.
Hình 3: Các tham số Tomato VPN Router
Tiếp đến, bạn có thể tạo các chứng chỉ máy khách cho các máy tính và Router sẽ kết nối từ xa với máy chủ VPN của bạn. Cũng phải tạo một chứng chỉ riêng cho mỗi máy khách. Nhập "build-key" vào Command Prompt, sau đó là một dấu cách và tên của chứng chỉ. Cho ví dụ, với ba máy khách:
build-key client1
build-key client2
build-key client3
Bạn có thể muốn có thêm nhiều chi tiết cho phần tên, do đó hãy chỉ định người hoặc Router sẽ sử dụng nó.
Nhắc nhở nhập các tham số có thể xuất hiện lần nữa. Chọn một Common Name duy nhất cho mỗi tham số. Có thể tùy chọn tạo mật khẩu. Lưu ý: Nếu phải tạo các chứng chỉ máy khách bổ sung trong tương lai, hãy trở về thư mục easy-rsa trong Command Prompt, đánh "vars", sau đó sử dụng lệnh build-key, chẳng hạn như build-key client2.
Lúc này bạn phải tạo các tham số Diffie Hellman bằng cách nhập:
build-dh
Cuối cùng, bạn sẽ thấy các chứng chỉ của mình trong thư mục dưới đây:
C:Program FilesOpenVPNeasy-rsakeys
Cần lưu ý: CA, máy chủ và tất cả các khóa máy khách cần được giữ riêng tư và bảo mật.
Phần 2
Trong phần trước của loạt bài này, chúng ta đã nâng cấp Router không dây bằng phần mềm TomatoVPN và bắt đầu chuẩn bị sử dụng máy chủ VPN của nó. Đây là cách rất kinh tế và an toàn để người dùng từ xa có thể truy cập vào mạng của bạn hoặc có thể kết nối nhiều văn phòng với nhau. Trong phần này, chúng ta sẽ cùng nhau đi tìm hiểu cách cấu hình máy chủ và máy khách VPN, sau đó đi test toàn bộ quá trình.
Cấu hình máy chủ VPN
Lúc này bạn đã có mọi thứ cần thiết để cấu hình máy chủ VPN trên Router TomatoVPN. Kết nối đến Router và mở giao diện điều khiển web. Sau đó kích VPN Tunneling > Server (xem hình 1). Ở đây là các thiết lập ví dụ:
• Start with WAN: Checked
• Interface Type: TAP
• Protocol: UDP
• Port: 1194
• Firewall: Automatic
• Authorization Mode: TLS
• Extra HMAC authorization: Disabled
Hình 1: Cấu hình máy chủ VPN
Với Client Address Pool, hủy chọn mục này và bảo đảm rằng dải địa chỉ IP nằm trong cùng subnet với Router. Cho ví dụ, nếu bạn thay đổi địa chỉ IP của Router thành 192.168.50.1, khi đó hãy đặt dải địa chỉ IP của bạn là 192.168.50 đến 192.168.50.55. Khi đó hệ thống của bạn có thể hỗ trợ được 6 máy khách VPN cùng lúc. Bạn hoàn toàn có thể tăng dải này lên nếu có nhiều máy khách hơn số lượng này. Ở đây không được nhầm lẫn với dải được phân định trước cho người dùng cục bộ, cho ví dụ 192.168.50.100 đến 192.168.50.149.
Kích Save để lưu các thay đổi.
Tiếp đó, kích tab Advanced. Đối với phần Compression, chọn Disabled. Nếu bạn muốn tất cả lưu lượng Internet của các máy khách đi qua VPN, chẳng hạn như để bảo vệ lưu lượng trên các mạng công cộng, hãy tích mục Direct clients to redirect Internet traffic. Để cho phép các máy khách VPN có thể truy cập vào các tài nguyên của nhau, tích Manage Client-Specific Options và Allow Client<->Client. Bằng không, các máy khách VPN sẽ có thể truy cập vào các tài nguyên chia sẻ của các máy tính được kết nối trực tiếp đến mạng nội bộ của Router TomatoVPN cấu hình máy chủ. Sau khi thực hiện bước này, kích Save để lưu các thay đổi.
Hình 2: Tab Advanced
Lúc này kích tab Keys (xem hình 3) và điền vào các trường bằng cách copy trong các nội dung của các file mà bạn đã tạo trong thư mục easy-rsakeys:
• Certificate Authority - ca.crt
• Server Certificate - server.crt
• Server Key - server.key
• Diffie Hellman parameters - dh1024.pem
Hình 3: Tab Keys
Mở các file này trong Notepad để xem và copy nội dung. Một số file bạn có thể kích phải, chọn Open With, Notepad.
Đối với chứng chỉ máy chủ, không tích hợp phần đầu tiên của file. Tương tự như các file khác, bắt đầu với -----BEGIN CERTIFICATE----- và kết thúc -----END CERTIFICATE-----.
Sau khi thực hiện xong, kích Save. Khởi chạy máy chủ VPN
Lúc này bạn đã hoàn toàn sẵn sàng cho việc chạy máy chủ VPN. Trên bất cứ tab nào của máy chủ, nhấn nút Start Now. Nếu thành công, nút này sẽ thay đổi thành Stop Now và bạn sẽ thấy phần thống kê nói chung (General Statistics) trên tab Status. Cấu hình máy khách trên các máy tính
Thời điểm này bạn có thể cấu hình các máy khách mà bạn muốn kết nối với máy chủ VPN. Bắt đầu bằng cách download và cài đặt OpenVPN trên mỗi máy tính. Tiếp đến, mở Notepad và dán vào đoạn mã dưới đây:
remote XXX.XXX.XXX.XXX 1194
client
dev tun0
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun
float
ca ca.crt
cert client1.crt
key client1.key
ns-cert-type server
Thay thế địa chỉ từ xa ở phần đầu bằng địa chỉ IP Internet hoặc WAN của bạn. Cách khác bạn có thể sử dụng hostname, chẳng hạn từ một dịch vụ DNS động, nếu kết nối Internet của bạn không có IP tĩnh. Ngoài ra cần bảo đảm rằng filename của chứng chỉ khách và key phải đúng.
Lưu file Notepad với đuôi .ovpn vào địa chỉ sau: C:Program FilesOpenVPNconfig.
Copy chứng chỉ CA (ca.crt) và chứng chỉ lẫn key máy khách (client1.crt & client1.key) từ máy tính mà bạn đã tạo PKI ở trên vào cùng một địa điểm (C:Program FilesOpenVPNconfig) trên máy khách.
Các thiết lập máy khách đã được thiết lập xong để bạn có thể kết nối lúc này. Kích Start > All Programs > OpenVPN > OpenVPN GUI. Sau đó kích phải vào biểu tượng trong khay hệ thống và kích Connect. Cấu hình máy khách trên các Router TomatoVPN bổ sung
Nếu muốn kết nối toàn bộ với máy chủ VPN, bạn có thể thiết lập các Router TomatoVPN phụ tại các địa điểm khác. Có thể sử dụng máy khách VPN trên Router để tất cả người dùng trên mạng từ xa có thể truy cập.
Kết nối đến Router và mở giao diện điều khiển web. Sau đó kích VPN Tunneling > Client. Trên tab Basic (xem hình 4), chắc chắn bạn sẽ muốn kích hoạt Start with WAN để máy khách VPN có thể tự động khởi chạy khi Router khởi động. Nhập vào địa chỉ WAN hay địa chỉ IP Internet của Router TomatoVPN đang hosting máy chủ VPN đối với phần Server Address. Cách khác bạn có thể sử dụng là dùng hostname, trường hợp sử dụng dịch vụ DNS động khi không có địa chỉ IP tĩnh. Các thiết lập khác có thể để mặc định. Sau đó kích Save để lưu các thay đổi.
Kích Advanced, đối với phần Compression, chọn Disabled. Sau đó kích Save.
Tiếp theo, kích tab Keys và điền vào các trường bằng cách copy nội dung trong các file mà bạn đã tạo trong thư mục easy-rsakeys:
• Certificate Authority - ca.crt
• Client Certificate - i.e. client1.crt
• Client Key - i.e. client1.key
Đối với phần chứng chỉ máy khách, không chèn vào phần đầu tiên của file. Tương tự với các thành phần khác, bắt đầu với -----BEGIN CERTIFICATE - và kết thúc với -----END CERTIFICATE-----.
Hình 4: Tab Basic
Sau khi thực hiện xong, kích Save. Tiếp đó để kết nối, kích Start Now. Nếu thành công, nút này sẽ thay đổi thành Stop Now và bạn sẽ thấy thống kê nói chung trên tab Status. Kiểm tra lần cuối
Sau khi đã kết nối, bạn có thể truy cập vào các tài nguyên mạng cũng như các chia sẻ trên mạng cục bộ của Router TomatoVPN đang hosting máy chủ.
Nếu muốn test cài đặt của mình mà không cần rời vị trí, hãy kết nối với Router TomatoVPN đang hosting máy chủ VPN từ cổng WAN/Internet đến cổng Ethernet trên Router khác. Để test kết nối máy khách trên một máy tính nào đó, hãy kết nối đến Router khác và cấu hình máy khách VPN với địa chỉ WAN IP của Router TomatoVPN. Thao tác này sẽ mô phỏng cho một kết nối đến từ Internet. Sau khi thực hiện xong, muốn sử dụng nó thông qua Internet, hãy lấy Router TomatoVPN và nối trực tiếp nó với modem Internet.