CHƯƠNG 5:
TRIỂN KHAI MẠNG VPN SỬ DỤNG HỆ THỐNG OPENVPN
Giải pháp mạng riêng ảo sử dụng mã nguồn mở OpenVPN cho phép các nhân viên thường đi công tác xa có thể ngồi bất kì nơi đâu có kết nối internet đều có thể truy cập vào các ứng dụng, dịch vụ của hệ thống mạng nội bộ trong công ty 1 cách an toàn và đảm bảo tính toàn vẹn của dữ liệu và thông tin người dùng. Với những tính năng ưu việt OpenVPN hỗ trợ cho người quản trị dễ dàng kiểm soát được những kết nối bất kì đâu. Trong mô hình này , em chỉ triển khai cài đặt và cấu hình OpenVPN server trên hệ điều hành trên máy tính để bàn: Windows server 2003. Về phía OpenVPN client, dụng hệ diều hành Windows 7 trên máy tính laptop. Máy client và server có thể kết nối với nhau ở đầu xa .
5.1. MÔ HÌNH TRIỂN KHAI
Hình5.1: Mô hình triển khai hệ thống OpenVPNTrong đó:
- VPN Server có địa chỉ thực là 192.168.1.128/24 , Địa chỉ đường hầm VPN là 10.8.0.1/24.
- VPN Client có địa chỉ thực là 192.168.1.11/24 , Địa chỉ đường hầm VPN là 10.8.0.2/24.
5.2. TIẾN TRÌNH TRIỂN KHAI CHUNG
Phần này trình bày các bước triển khai chung áp dụng cho tất cả hệ thống (server và client)
(1). Download phần mềm cài đặt OpenVPN thích hợp
(2). Cài đặt phần mềm OpenVPN. Đối với Linux có thể cài đặt trực tiếp từ internet
(3). Tạo các khóa (key), cụ thể có các khóa sau:
- ta: dùng mã hóa và bảo vệ dữ liệu.
- ca: dùng để chứng thực các khóa của client và server.
- server: khóa của OpenVPN server.
- client: khóa của các client. Nếu có nhiều client thì mỗi client được tạo một khóa riêng.
- dh: (DH: Diffie–Hellman) dùng cho việc trao đổi khóa.
(4). Chỉnh sửa thông tin thích hợp trong tập tin cấu hình của client và server
(5). Thiết lập thông số trên router (hay modem ADSL) như: port forwarding,
static route, …
(6). Khởi tạo OpenVPN phía server. OpenVPN phải khởi tạo trước.
(7). Khởi tạo OpenVPN phía client
5.3. CÀI ĐẶT OPENVPN
5.3.1. Cài đặt trên Windows server 2003 làm OPENVPN server
· Download phần mềm về máy tại địa chỉ
(Em đang sử dụng phiên bản openvpn-2.2.1)
· Cài đặt phần mềm. Sau khi kích hoạt sẽ trải qua các màn hình sau:
Hình 5.2: Màn hình cài OpenVPN trên Windows – 1
Chấp nhận các tùy chọn mặc định.
Hình 5.3: Màn hình cài OpenVPN trên Windows – 2
Chọn các thành phần cài đặt để phù hợp từng chức năng (như client& server)
Hình 5.4: Màn hình cài OpenVPN trên Windows – 3
Bắt đầu cài đặt
Hình 5.5: Màn hình cài OpenVPN trên Windows – 4Tiến trình đang cài đặt:
Hình 5.6: Màn hình cài OpenVPN trên Windows – 5
Tiến trình cài đặt thành công.
Hình 5.7: Màn hình cài OpenVPN trên Windows - 6
Reconmment : Đối với win 7/vistar thì nên chạy ở mode administrator.
Hình 5.8: Màn hình cài OpenVPN trên Windows - 7
Sau khi cài đặt, một biểu tượng của OpenVPN xuất hiện trên màn hình.
Hình 5.9: Biểu tượng openVPN trên màn hìnhVà bật dịch vụ OpenVPN trong services lên :
Hình 5.10: OPenVPNservices đang ở chế độ manual và chưa start lên
Hình 5.11: Sau khi bật dịch vụ OpenVPN lên5.3.2. Cài đặt trên Windows 7 làm OPENVPN client
Trình tự cài đặt OpenVPN trên Windows 7 cũng giống như trình tự cài đặt trên Windows server 2003. Chỉ có một chút lưu ý là trước khi cài đặt, ta điều chỉnh quyền admin như hình:
Hình 5.12: Điều chỉnh quyền admin để cài OpenVPN5.4. CẤU HÌNH OPENVPN
5.4.1. Cấu hình trên OpenVPN server (Windows server 2003)
Các bước chuẩn bị:
a. Chuyển đến thư mục C: \Program Files\OpenVPN\essy-rsatại dấu nhắc lệnh:cd "C:\Program Files\OpenVPN\easy-rsa"
b. Bắt đầu cấu hình OpenVPN
Sử dụng câu lện “init-config “.
Chú ý : Chỉ chạy 1 lần duy nhất trong quá trình cài đặt
Hình 5.13: Lệnh varsc. Mở file vars.bat và thêm vào các dòng như :
set KEY_COUNTRY=VN
set KEY_PROVINCE=HCM
set KEY_CITY=HCM
set KEY_ORG=PTIT
set KEY_EMAIL=dokhanh.ime@gmail.com
Sau đó save lại
d. Chạy câu lệnh:
Vars
Clean-all
Xây dưng Certificates và keys
a. Tạo giấy chứng nhận CA và keys
Khóa này dùng để chứng thực cho các khóa của server và client trong quá trình xác thực, đảm bảo các đối tác truyền thông là hợp lệ.
Sử dụng câu lệnh : “build-ca”
Hình 5.14: Lệnh tạo CA
b. Tạo khoá và chứng thực cho server
Dùng lệnh “build-key-server server”
Hình 5.15: Lệnh tạo khóa cho server
c. Tạo khoá và chứng thực cho client
Hình 5.16: Lệnh tạo khóa cho client
d. Tạo tham số DH (Diffie Hellman)
Tập tin này dùng để quản lý việc trao đổi khóa. Nó chỉ đƣợc đặt trên OpenVPN server.
Lệnh sử dụng: “build-dh”
Hình 5.17: Lệnh tạo tham số DHCác tập tin và khóa vừa tạo
Hình 5.18: Các khóa và tập tin vừa tạo
Bảng 5.1: Thống kê các tập tin và khóa cần tạo
e. Tạo tập tin cấu hình cho OpenVPN server
Tên tập tin là server.ovpn, đặt trong thư mụcC:\Program Files\OpenVPN\config
Hình 5.19: Tạo tập tin cấu hình server.ovpnChú ý : các dấu # và ; nhằm mục địch giải thích
5.4.2. Cấu hình trên OpenVPN client (Windows 7)
· Sau khi cài đặt, thư mục cấu hình OpenVPN trên máy Windows 7 là: C:\ProgramFiles\OpenVPN\config\. Ta chép một số tập tin đã tạo trên máy OpenVPN server vào thư mục này. Giả dụ máy này là win7-laptop:
ca.crt
client1.crt
client1.key
client1.ovpn
· Kế tiếp, điều chỉnh tập tin cấu hình client.ovpn như sau:
Hình 5.20: Tạo tập tin cấu hình client.ovpnChú ý : “remote my-server-1 1194” , my-server-1 được thay thế vào là havu.dyndns-ip.com ( được tạo bởi phần mềm DynDNS Updater configuration ) với mục đích là tạo 1 tên miền choc lien trỏ tới , tránh việc địa chỉ public của modem thay đổi
Hình 5.21: Trang DynDNS.com để tạo domain
5.4.3. Cấu hình trên Router
Để kết nối được OpenVPN qua môi trường Internet, ta phải cấu hình các thông số trên router. Có một trở ngại là mỗi loại router có một giao diện riêng và cách thức cầu hình riêng cho nên ta không thể đƣa ra một phương cách chung được.
Trong phạm vi thiết bị phục vụ báo cáo, tôi sử dụng modem ADSL của FPT để cho phép các máy tính trong mạng LAN truy cập internet.
Thực hiện cấu hình như sau:
(1). Truy cập vào router và mở trang web quản trị với quyền admin.
(2). Vào Network -> NAT -> Port forwarding
(3). Chọn Add, nhập thông số, bấm nút Save/Apply, như hình:
Hình 5.22: Kết quả cấu hình Port Forwarder trong ADSL FPT
(4). Chọn tiếp Advanced -> Static route -> Bấm nút Add
(5). Nhập thông số định tuyến tĩnh để nối thông hai mạng: 192.168.1.0/24 và 10.8.0.0/24 -> Chọn nút Save/Apply.
Hình 5.23: Kết quả cấu hình định tuyến tĩnh trong ADSL (6) Reboot lại modem
5.5. KẾT NỐI OPENVPN
OpenVPN server khởi tạo trước, OpenVPN client khởi tạo sau
5.5.1. Khởi tạo OpenVPN server (Windows server 2003)
· Double-click lên biểu tương OpenVPN trên màn hình (hoặc trong Start Menu), một biểu tương OpenVPN màu đỏ xuất hiện ở System Tray của server
Hình 5.24: OpenVPN server đã chạy nhưng chưa sẵn sàng nhận kết nối· Bấm phải chuột lên biểu tượng này -> chọn Connect.
Hình 5.25: Lệnh connect để khởi tạo kết nối· Nếu kết nối thành công, sẽ xuất hiện thông báo và IP (ảo) của OpenVPN server là 10.8.0.1.
Hình 5.26: OpenVPN server đã sẵn sàng nhận kết nối từ client
Hình 5.27: Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp
Lúc này server đang sẵn sàng nhận kết nối OpenVPN từ client.
Xem lại file log để biết trạng thái kết nối.
Hình 5.28: Ghi nhận trạng thái kết nối trong log file (Windows)
Dòng Initialization sequence completed cho biết kết nối thành công.
Hình 5.29: màn hình của 2k3 khi hoàn thành xong quá trình cài đặt và config5.5.2. Khởi tạo OpenVPN client (Windows 7)
· Thực hiện tương tự mục 5.5.1 (Khởi tạo OpenVPN server (Windowsserver 2003))
· Nếu kết nối thành công, biểu tượng OpenVPN xuất hiện mày xanh lá.
Hình 5.30: OpenVPN client đã sẵn sàng nhận kết nối từ server
· Xem lại file log
Hình 5.31: Ghi nhận trạng thái kết nối trong log file (Windows)
· Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp.
Hình 5.32: Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp.
TRIỂN KHAI MẠNG VPN SỬ DỤNG HỆ THỐNG OPENVPN
Giải pháp mạng riêng ảo sử dụng mã nguồn mở OpenVPN cho phép các nhân viên thường đi công tác xa có thể ngồi bất kì nơi đâu có kết nối internet đều có thể truy cập vào các ứng dụng, dịch vụ của hệ thống mạng nội bộ trong công ty 1 cách an toàn và đảm bảo tính toàn vẹn của dữ liệu và thông tin người dùng. Với những tính năng ưu việt OpenVPN hỗ trợ cho người quản trị dễ dàng kiểm soát được những kết nối bất kì đâu. Trong mô hình này , em chỉ triển khai cài đặt và cấu hình OpenVPN server trên hệ điều hành trên máy tính để bàn: Windows server 2003. Về phía OpenVPN client, dụng hệ diều hành Windows 7 trên máy tính laptop. Máy client và server có thể kết nối với nhau ở đầu xa .
5.1. MÔ HÌNH TRIỂN KHAI
Hình5.1: Mô hình triển khai hệ thống OpenVPN
- VPN Server có địa chỉ thực là 192.168.1.128/24 , Địa chỉ đường hầm VPN là 10.8.0.1/24.
- VPN Client có địa chỉ thực là 192.168.1.11/24 , Địa chỉ đường hầm VPN là 10.8.0.2/24.
5.2. TIẾN TRÌNH TRIỂN KHAI CHUNG
Phần này trình bày các bước triển khai chung áp dụng cho tất cả hệ thống (server và client)
(1). Download phần mềm cài đặt OpenVPN thích hợp
(2). Cài đặt phần mềm OpenVPN. Đối với Linux có thể cài đặt trực tiếp từ internet
(3). Tạo các khóa (key), cụ thể có các khóa sau:
- ta: dùng mã hóa và bảo vệ dữ liệu.
- ca: dùng để chứng thực các khóa của client và server.
- server: khóa của OpenVPN server.
- client: khóa của các client. Nếu có nhiều client thì mỗi client được tạo một khóa riêng.
- dh: (DH: Diffie–Hellman) dùng cho việc trao đổi khóa.
(4). Chỉnh sửa thông tin thích hợp trong tập tin cấu hình của client và server
(5). Thiết lập thông số trên router (hay modem ADSL) như: port forwarding,
static route, …
(6). Khởi tạo OpenVPN phía server. OpenVPN phải khởi tạo trước.
(7). Khởi tạo OpenVPN phía client
5.3. CÀI ĐẶT OPENVPN
5.3.1. Cài đặt trên Windows server 2003 làm OPENVPN server
· Download phần mềm về máy tại địa chỉ
(Em đang sử dụng phiên bản openvpn-2.2.1)
· Cài đặt phần mềm. Sau khi kích hoạt sẽ trải qua các màn hình sau:
Hình 5.2: Màn hình cài OpenVPN trên Windows – 1
Chấp nhận các tùy chọn mặc định.
Hình 5.3: Màn hình cài OpenVPN trên Windows – 2
Hình 5.4: Màn hình cài OpenVPN trên Windows – 3
Bắt đầu cài đặt
Hình 5.5: Màn hình cài OpenVPN trên Windows – 4
Hình 5.6: Màn hình cài OpenVPN trên Windows – 5
Tiến trình cài đặt thành công.
Hình 5.7: Màn hình cài OpenVPN trên Windows - 6
Hình 5.8: Màn hình cài OpenVPN trên Windows - 7
Sau khi cài đặt, một biểu tượng của OpenVPN xuất hiện trên màn hình.
Hình 5.9: Biểu tượng openVPN trên màn hình
Hình 5.10: OPenVPNservices đang ở chế độ manual và chưa start lên
Hình 5.11: Sau khi bật dịch vụ OpenVPN lên
Trình tự cài đặt OpenVPN trên Windows 7 cũng giống như trình tự cài đặt trên Windows server 2003. Chỉ có một chút lưu ý là trước khi cài đặt, ta điều chỉnh quyền admin như hình:
Hình 5.12: Điều chỉnh quyền admin để cài OpenVPN
5.4.1. Cấu hình trên OpenVPN server (Windows server 2003)
Các bước chuẩn bị:
a. Chuyển đến thư mục C: \Program Files\OpenVPN\essy-rsatại dấu nhắc lệnh:cd "C:\Program Files\OpenVPN\easy-rsa"
b. Bắt đầu cấu hình OpenVPN
Sử dụng câu lện “init-config “.
Chú ý : Chỉ chạy 1 lần duy nhất trong quá trình cài đặt
Hình 5.13: Lệnh vars
set KEY_COUNTRY=VN
set KEY_PROVINCE=HCM
set KEY_CITY=HCM
set KEY_ORG=PTIT
set KEY_EMAIL=dokhanh.ime@gmail.com
Sau đó save lại
d. Chạy câu lệnh:
Vars
Clean-all
Xây dưng Certificates và keys
a. Tạo giấy chứng nhận CA và keys
Khóa này dùng để chứng thực cho các khóa của server và client trong quá trình xác thực, đảm bảo các đối tác truyền thông là hợp lệ.
Sử dụng câu lệnh : “build-ca”
Hình 5.14: Lệnh tạo CA
b. Tạo khoá và chứng thực cho server
Dùng lệnh “build-key-server server”
Hình 5.15: Lệnh tạo khóa cho server
c. Tạo khoá và chứng thực cho client
Hình 5.16: Lệnh tạo khóa cho client
d. Tạo tham số DH (Diffie Hellman)
Tập tin này dùng để quản lý việc trao đổi khóa. Nó chỉ đƣợc đặt trên OpenVPN server.
Lệnh sử dụng: “build-dh”
Hình 5.17: Lệnh tạo tham số DH
Hình 5.18: Các khóa và tập tin vừa tạo
Bảng 5.1: Thống kê các tập tin và khóa cần tạo
e. Tạo tập tin cấu hình cho OpenVPN server
Tên tập tin là server.ovpn, đặt trong thư mụcC:\Program Files\OpenVPN\config
Hình 5.19: Tạo tập tin cấu hình server.ovpn
5.4.2. Cấu hình trên OpenVPN client (Windows 7)
· Sau khi cài đặt, thư mục cấu hình OpenVPN trên máy Windows 7 là: C:\ProgramFiles\OpenVPN\config\. Ta chép một số tập tin đã tạo trên máy OpenVPN server vào thư mục này. Giả dụ máy này là win7-laptop:
ca.crt
client1.crt
client1.key
client1.ovpn
· Kế tiếp, điều chỉnh tập tin cấu hình client.ovpn như sau:
Hình 5.20: Tạo tập tin cấu hình client.ovpn
Hình 5.21: Trang DynDNS.com để tạo domain
5.4.3. Cấu hình trên Router
Để kết nối được OpenVPN qua môi trường Internet, ta phải cấu hình các thông số trên router. Có một trở ngại là mỗi loại router có một giao diện riêng và cách thức cầu hình riêng cho nên ta không thể đƣa ra một phương cách chung được.
Trong phạm vi thiết bị phục vụ báo cáo, tôi sử dụng modem ADSL của FPT để cho phép các máy tính trong mạng LAN truy cập internet.
Thực hiện cấu hình như sau:
(1). Truy cập vào router và mở trang web quản trị với quyền admin.
(2). Vào Network -> NAT -> Port forwarding
(3). Chọn Add, nhập thông số, bấm nút Save/Apply, như hình:
Hình 5.22: Kết quả cấu hình Port Forwarder trong ADSL FPT
(4). Chọn tiếp Advanced -> Static route -> Bấm nút Add
(5). Nhập thông số định tuyến tĩnh để nối thông hai mạng: 192.168.1.0/24 và 10.8.0.0/24 -> Chọn nút Save/Apply.
Hình 5.23: Kết quả cấu hình định tuyến tĩnh trong ADSL
5.5. KẾT NỐI OPENVPN
OpenVPN server khởi tạo trước, OpenVPN client khởi tạo sau
5.5.1. Khởi tạo OpenVPN server (Windows server 2003)
· Double-click lên biểu tương OpenVPN trên màn hình (hoặc trong Start Menu), một biểu tương OpenVPN màu đỏ xuất hiện ở System Tray của server
Hình 5.24: OpenVPN server đã chạy nhưng chưa sẵn sàng nhận kết nối
Hình 5.25: Lệnh connect để khởi tạo kết nối
Hình 5.26: OpenVPN server đã sẵn sàng nhận kết nối từ client
Hình 5.27: Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp
Lúc này server đang sẵn sàng nhận kết nối OpenVPN từ client.
Xem lại file log để biết trạng thái kết nối.
Hình 5.28: Ghi nhận trạng thái kết nối trong log file (Windows)
Dòng Initialization sequence completed cho biết kết nối thành công.
Hình 5.29: màn hình của 2k3 khi hoàn thành xong quá trình cài đặt và config
· Thực hiện tương tự mục 5.5.1 (Khởi tạo OpenVPN server (Windowsserver 2003))
· Nếu kết nối thành công, biểu tượng OpenVPN xuất hiện mày xanh lá.
Hình 5.30: OpenVPN client đã sẵn sàng nhận kết nối từ server
· Xem lại file log
Hình 5.31: Ghi nhận trạng thái kết nối trong log file (Windows)
· Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp.
Hình 5.32: Dùng lệnh ipconfig /all để biết địa chỉ IP (ảo) được cấp.
Comment