top of page

CẤU HÌNH OPENVPN TRÊN PFSENSE

Writer's picture: Tuan NguyenTuan Nguyen

Updated: Sep 7, 2018


Trong mô hình trên mình sẽ cấu hình OpenVPN dạng client to site trên pfSense, trên router Draytek sẽ làm chứ năng NAT port OpenVPN (port mặc định 1194).



1. Cài đặt package OpenVPN


System > Package Manager


Tab Available Packages > Ô Search term nhập vào: openvpn > Search > Install


Confirm


Cài đặt package OpenVPN thành công


2. Tạo VPN


VPN > OpenVPN


Chọn tab Wizards


Type of Server chọn Local User Access > Next

Ở bước này chúng ta sẽ chọn kiểu chứng thực bằng Local User bằng cách tạo user trên pfSense cấp cho người dùng để VPN vào.


Tạo Certificate Authority

Descriptive name: Đặt tên cho CA


Điền các thông tin


Thêm các thông tin sau


Tạo Server Certificate

Descriptive name: Đặt tên cho Server Certificate


Điền các thông tin


Setup VPN Server

Interface: chọn port mà pfSense kết nối ra internet WAN


Description: Đặt tên cho VPN



Tunnel Network: Tạo lớp mạng cấp IP cho client khi VPN vào

Local Network: Lớp mạng local bên trong pfSense, nếu bên trong có nhiều lớp mạng bạn muốn bên ngoài VPN vào thấy lớp mạng nào bên trong thì điền vào ví dụ: 172.16.10.0/24,192.168.20.0/24

Concurrent Connections: Cho phép bao nhiều client VPN đồng thời vào cùng một lúc.






Tự động tạo rule cho VPN

Tick các mục để tự động tạo các rule cho VPN



Kết quả chúng ta đã tạo thành công một OpenVPN Server


Kiểm tra các rule đã được tự tạo cho VPN

Firewall > Rules


Chọn tab OpenVPN


Tab WAN


3. Tạo account cấp cho client để VPN


System > User Manager


Tab Users > Add


Username: Đặt tên cho user

Password: Tạo password và nhập lại password


Next


Khi user được tạo ra dùng để VPN chỉ có chứng thực bằng username và password (User Auth) với cách chứng thực này khi export ra file config để cài cho user thì chúng ta chỉ cần export ra 1 file config để cài cho tất cả các client muốn dùng VPN (chỉnh trong VPN Server chúng ta chỉnh Server mode thành Remote Access (User Auth)).


VPN > OpenVPN> tab Servers chọn hình cây bút để edit


Server mode chúng ta chọn Remote Access (User Auth) > Save


Chọn tab Client Export

Các thông số để mặc định


Nếu client chưa cài phần mềm OpenVPN thì chúng ta tiến hành tải file cài (có chưa cả file config) về để cài cho client.

Nếu máy client đã có phần mềm OpenVPN rồi thì chúng ta chỉ cần tải file config về rồi copy bỏ vào thư mục config trong thư mục cài OpenVPN (nếu máy windows thường nằm trong C:\Program Files\OpenVPN )

Ở đây do máy client chưa cài phần mềm OpenVPN nên mình tải file cài.


Sau khi tải xuống chúng ta copy sang máy client, nhấp đúp vào file cài để tiến hành cài OpenVPN

Install


Next


I Agree


Next


Next


Finish


Vào C:\Program Files\OpenVPN\config chỉnh lại file pfSense-UDP4-1194-config bằng notepad với quyền Administrator


Dòng remote nhập IP WAN của của VPN Server vào rồi save lại


Mở phần mềm OpenVPN dưới góc trái màn hình nhấn chuột phải vào biểu tượng OpenVPN chọn Connect

Sau đó nhập Username và Password đã tạo trên pfSense


VPN thành công





Nếu muốn bảo mật hơn thì ta tạo CA cho user với cách chứng thực CA + User Auth thì khi export ra file config cho client thì mỗi client chúng ta phải export ra từng file riêng (trong VPN Server chúng ta chỉnh Server mode thành Remote Access (SSL/TLS+ User Auth)).


System > User Manager


Tab Users > Add


Username: Đặt tên cho user

Password: Tạo password và nhập lại password


Certificate authority: Chọn CA mà chúng ta đã tạo từ trước



VPN > OpenVPN> tab Servers chọn hình cây bút để edit


Server mode chúng ta chọn Remote Access (SSL/TLS + User Auth) > Save


Chọn tab Client Export

Các thông số để mặc định



Giải nén file zip vừa tải xuống, copy 3 file vào C:\Program Files\OpenVPN\config



Connect lại OpenVPN



Chúng ta có thể chứng thực VPN bằng account Active Directory.

Trên AD

Tạo OU PFSENSE


Trong OU PFSENSE tạo user admin.pfsense


Trên pfSense

System > User Manager


Qua tab Authentication Servers > Add


Descriptive name: Đặt tên cho server chứng thực

Type: Chọn LDAP

Hostname or IP address: Điền IP của Active Directory



Bind anonymous: bỏ tick

Bind credentials: nhập username và password user đã tạo trên AD

Initial Template: chọn Microsoft AD



Edit lại Authentication Server vừa tạo


Kéo xuống phần Authentication containers bấm Seclect a container


Phần này có nghĩa là những user nào nằm trong OU mà tick chọn thì những user đó có thể dùng để chứng thực khi VPN

Ở đây mình sẽ cho phép những user nằm trong OU KETOAN, NHANSU, PFSENSE chứng thực được khi VPN


Save lại


Vào tab Settings để kiểm tra thử cấu hình Authentication Server đã đúng chưa


Như hình là ta đã cấu hình đúng


Kiểm tra xem user trên AD có quyền chứng thực được hay không

Diagnostics > Authentication


Nhập Username và Password của một user nằm trong OU mà ta đã chọn trong bước tạo Authentication Server

Như ta thấy là user có quyền chứng thực được


Ta thử nhập Username và Password của một user nằm trong OU mà chúng ta không tick chọn trong bước tạo Authentication Server

Ta thấy sẽ báo lỗi


Vào lại VPN > OpenVPN


Edit lại VPN Server đã tạo


Ta chỉ chỉnh phần Backend for authentication, chọn tên Authentication Server đã tạo rồi save lại. Hoặc chúng ta có thể chọn cả hai vừa chứng thực VPN bằng user AD vừa chứng thực bằng user local tạo trên pfSense


Chúng ta connect VPN lại dùng user trên AD


Chúng ta có thể theo dõi được có những ai đang VPN vào


Vậy là chúng ta đã cấu hình xong VPN client to site dùng OpenVPN.

288 views0 comments

Comments


 

© 2018 by Tuấn Nguyễn

 Liên hệ tôi
  • Facebook - Black Circle
  • Google+ - Black Circle
bottom of page