top of page

CẤU HÌNH OPENVPN TRÊN PFSENSE

Updated: Sep 7, 2018


ree

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).

ree

ree

1. Cài đặt package OpenVPN


System > Package Manager

ree

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

ree

Confirm

ree

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

ree

2. Tạo VPN


VPN > OpenVPN

ree

Chọn tab Wizards

ree

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.

ree

Tạo Certificate Authority

Descriptive name: Đặt tên cho CA

ree

Điền các thông tin

ree

Thêm các thông tin sau

ree

Tạo Server Certificate

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

ree

Điền các thông tin

ree

Setup VPN Server

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

ree

Description: Đặt tên cho VPN

ree

ree

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.

ree

ree

ree

ree

ree

Tự động tạo rule cho VPN

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

ree

ree

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

ree

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

Firewall > Rules

ree

Chọn tab OpenVPN

ree

Tab WAN

ree

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


System > User Manager

ree

Tab Users > Add

ree

Username: Đặt tên cho user

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

ree

Next

ree

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

ree

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

ree

Chọn tab Client Export

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

ree

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.

ree

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

ree

Next

ree

I Agree

ree

Next

ree

Next

ree

Finish

ree

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

ree

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

ree

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

ree

VPN thành công

ree

ree

ree


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

ree

Tab Users > Add

ree

Username: Đặt tên cho user

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

ree

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

ree

ree

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

ree

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

ree

Chọn tab Client Export

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

ree

ree

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

ree

ree

Connect lại OpenVPN

ree


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

Trên AD

Tạo OU PFSENSE

ree

Trong OU PFSENSE tạo user admin.pfsense

ree

Trên pfSense

System > User Manager

ree

Qua tab Authentication Servers > Add

ree

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

ree

ree

Bind anonymous: bỏ tick

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

Initial Template: chọn Microsoft AD

ree

ree

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

ree

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

ree

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

ree

Save lại

ree

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

ree

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

ree

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

Diagnostics > Authentication

ree

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

ree

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

ree

Vào lại VPN > OpenVPN

ree

Edit lại VPN Server đã tạo

ree

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

ree

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

ree

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

ree

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

Comments


 

© 2018 by Tuấn Nguyễn

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