Cài đặt OpenVPN trên máy ảo Cloud Azure
Bạn sống ở Việt Nam?
Bạn muốn truy cập Facebook, Netflix, … trong thời gian những dịch vụ nói trên bị chặn?
Bạn muốn bảo mật thông tin của mình trên hệ thống mạng Internet?
Hay bạn muốn truy cập vào hệ thống Azure SQL Database mọi lúc mọi nơi mà không cần phải Add Client IP mỗi khi di chuyển?
Bài tutorial hôm nay của mình sẽ giải quyết các câu hỏi trên của bạn qua việc trình bày cách thức xây dựng hệ thống OpenVPN trên Cloud Azure VM chạy HĐH Ubuntu 16.04 LTS.
VPN và OpenVPN
I. Chuẩn bị
- Tạo Resource Group để quản lý các resource mình có, ở đây mình tạo VPNClient
- Tạo máy ảo trên Azure Cloud: các bước tạo máy ảo mình có thể google.
- Tạo Gateway subnet theo thứ tự (1) (2) (3) (4). Vào Virtual Network, chọn Virtual Network vừa tạo, chọn Gateway Subnet.
- Thông tin về gateway subnet như bên dưới, ta chọn 1 subnet mà chưa sử dụng làm gateway subnet
** Chú ý khi tạo gateway subnet: kiểm tra trong address space mình đang có bao nhiêu như sau.
- Tạo Virtual Network Gateway. Thông thường mất khoảng 45 phút cho việc tạo mới theo các bước (1) (2) (3) (4)
- Ta cần chú ý là Azure sau khi tạo xong gateway thì sẽ có IP WAN như hình(3), ở đây ta có IP là “20.188.106.217”
II. Tạo Certificate
- Tạo chứng chỉ CA và import vào Azure.
- Log on vào VM vừa tạo xong, mở PowerShell. Gõ/copy dòng lênh sau vào. kiểm tra không báo lỗi là hoạt động tốt.
“$cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject “CN=P2SRootCert” -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation “Cert:\CurrentUser\My” -KeyUsageProperty Sign -KeyUsage CertSign”
- tiến hành export “PS2RootCert” và thêm vào azure.
- mở Certificates Management: vào run gõ lệnh “certmgr.msc“
- Tiến hành export CA key.
Bước 1:
Bước 2
Bước 3:
Bước 4:
Bước cuối: kiểm tra lại thông tin.
- Tiến hành mở CA và lấy key với notepad
- Chon cấu hình thêm CA vào Azure như bên dưới(1)(2)(3)
- chọn 1 subnet cho VPN Client và tiến hành thêm CA vào web Azure như bên dưới. Lưu lại mất khoảng 10 phút.
- Download file VPN Client và tiến hành cài đặt
- File download về bao gồm như bên dưới. Ta chọn WindowsAmd64 cho các máy chạy windows 64 bit
- Sau khi cài đặt xong ta sẽ có biểu tượng VPN kết nối góc phải màn hình
- Tiến hành tạo chứng chỉ CA cho máy trạm và xuất ra bằng PowerShell với dòng lệnh sau.
————————————————————————————————————————
$Cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject “CN=P2SChildCert” -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation “Cert:\CurrentUser\My” `
-Signer $cert -TextExtension @(“2.5.29.37={text}1.3.6.1.5.5.7.3.2”)
———————————————————————————————————————-
- Chú ý: 02 lệnh tạo “P2RootCert” và “P2SChildCert” phải làm chung trên 1 trang PowerShell.
- Nếu tiến hành riêng từng trang Powershell vui lòng tham khảo link sau: https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-certificates-point-to-site#ex2
- Tiến hành kiểm tra trong “certmgr.msc” ta thấy có 2 file như sau.
- Tiến hành export “P2SChildCert và Import vào các máy clients
Bước 1: chọn export
Bước 2: chọn ” Export the private key”
Bước 3:
Bước 4: tiến hành đặt password cho file export
Bước 5: Lưu file
Bước 6: xem thông tin tổng quan
- Tiến hành cài đặt “P2SChildCert” cho các máy cần VPN, chọn Install PFX, cung cấp mật khẩu lúc tiến hành export để cài đặt
- Tiến hành kết nối trên máy client
- Kết nối hoàn tất
Thông tin liên hệ
Cloudvietnam18.com / 08 6870 3349 -Vũ
Email moocfriends@gmail.com
Video tham khảo tạo máy ảo: https://www.youtube.com/watch?v=x5dk1M-O49Q
Video tạo VPN Point to site: https://www.youtube.com/watch?v=MxjikUZbow8&t=1s
link tham khảo tạo Point to site: https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-howto-point-to-site-resource-manager-portal
Link tham khảo tạo CA cho client: https://docs.microsoft.com/en-us/azure/vpn-gateway/point-to-site-how-to-vpn-client-install-azure-cert
https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-certificates-point-to-site
https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-certificates-point-to-site#ex2
III. Các Lỗi Có Thể Xảy Ra
- Giấy phép của Client đã bị thu hồi (lỗi 853)
- Kiểm tra: vào Azure portal và tiến hành kiểm tra trong phần “Revoked Certificates” và phát hành lại CA-Chứng Chỉ cho Client (1).
- Tạo P2SChildCert lỗi như bên dưới: Cannot bind parameter ‘Signer’ to the target
- Lỗi xảy ra do P2SRootCert và P2SChildCert không tạo chung trên một trang Powershell.
- Cách sửa lỗi 1: xóa và tạo lại cả 2.
- Cách sửa lỗi 2: làm theo link sau https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-certificates-point-to-site#ex2