Skip to content Skip to navigation

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

pfSense là một ứng dụng mã nguồn mở có chức năng định tuyến vào tường lửa mạnh và miễn phí, ứng dụng này sẽ cho phép bạn mở rộng mạng của mình mà không bị thỏa hiệp về sự bảo mật. Với nhiều ưu điểm của nó nên được phổ biến ở mọi nơi, từ nhà riêng đến các doanh nghiệp. Trong bài viết sau chúng tôi sẽ hướng dẫn các bạn cấu hình một pfSense 2.0 Cluster bằng cách sử dụng CARP Failover.

Yêu cầu hệ thống

Để thực hiện quá trình này chúng ta cần hai máy tính giống hệt nhau, với tối thiểu 3 card mạng và một subnet dành riêng cho đồng bộ hóa lưu lượng mạng (network traffic).

Ví dụ địa chỉ IP sẽ được sử dụng trong bài viết:

Cấu hình mạng:

Firewall 1   
WAN IP: 192.168.100.1 
SYNC IP: 10.155.0.1    
LAN IP: 192.168.1.252
Firewall 2
WAN IP: 192.168.100.2
SYNC IP: 10.155.0.2
LAN IP: 192.168.1.253

Hai địa chỉ IP dưới đây dùng để chia sẻ giữa các tường lửa:

  • IP mạng WAN ảo: 192.168.100.200
  • IP mạng LAN ảo: 192.168.1.254

Hướng dẫn này giả sử rằng bạn đã cài đặt sẵn pfSense trên cả hai máy tính và card mạng đã cấu hình với địa chỉ IP... và người dùng từng có kinh nghiệm làm việc với pfSense (chủ yếu là xung quanh các giao diện quản trị web).

Ví dụ minh họa về mô hình mà chúng ta xây dựng:

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Xây dựng Cluster

Trước tiên bạn cần cấu hình một quy tắc tường lửa trên cả hai ô box để cho phép các tường lửa giao tiếp với nhau trên thẻ SYNC.

Để làm điều này, kích chuột vào "Firewall | Rules”, chọn SYNC tại mục Interface. Kích nút Plus để thêm một mục firewall rule mới. Thiết lập "Protocol" cho "any", thêm một mô tả để có thể xác định quy tắc. Nhấn Save, sau đó nhấn Apply Changes nếu cần thiết.

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Vẫn trên backup tường lửa, ở đây chúng ta cần cấu hình đồng bộ hóa CARP và cấu hình cho nó chỉ là một bản sao. Kích "Firewall | Vitrual IPs" > "Firewall | Vitrual Ips", đánh dấu tích vào hộp "Synchronize Enabled". Chọn "Synchronize Interface to SYNC", sau đó lưu lại thay đổi này.

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Hoàn thành việc cấu hình sao lưu tường lửa, bây giờ chúng ta tiến hành cấu hình đồng bộ hóa CARP trên tường lửa chính.

Đăng nhập vào firewall chính của bạn, kích "Firewall | Virtual Ips", chuyển sang tab "CARP Settings" và đánh dấu tích vào hộp "Synchronize Enabled". Tại mục Synchronize Interface chọn "SYNC" làm mặc định, đánh dấu check vào các hộp dưới mục "Synchronize Rules", "Synchronize NAT", "Synchronize Virtual IPs".

Sau đó nhập địa chỉ IP SYNC của bản sao tường lửa vào hộp "Synchronize to IP" và thiết lập mật khẩu tại hộp "Remote System Password".

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Nhấn Save để lưu thay đổi.

Tiếp theo chúng ta cấu hình Virtual IP address cho cả hai tường lửa sẽ sử dụng. Để làm điều này vào "Firewall | Virtual IPs" và chuyển sang tab "Virtual Ips".

Trước tiên là thiết lập địa chỉ IP cho mạng WAN của mục Interface, nhấn nút Plus để thêm mới IP ảo, chắc chắn rằng kiểu IP được set ở CARP. Địa chỉ WAN này sẽ được sử dụng trên toàn hệ thống của bạn bất kể tường lửa chính hay bản sao được kích hoạt.

Tiếp theo tạo một mật khẩu trong hộp "Virtual IP Password", giữ nguyên giá trị 1 đối với "VHID Group" và giá trị 0 đối với "Advertising Frequency", thêm một chút mô tả tại Description và nhấn Save để lưu lại.

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Tương tự như vậy, chúng ta cấu hình Virtual IP address cho mạng LAN trong mục Interface. Các bước tiến hành không có gì khác so với hướng dẫn trên đối với WAN, riêng phần “VHID Group" bạn thay vào giá trị là 3, đặt một mô tả khác rồi nhấn Save để lưu thay đổi.

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Và giờ đây bạn sẽ nhìn tháy trong section "Firewall | Virtual IPs" xuất hiện danh sách hai IPs ảo theo kiểu CARP.

Hướng dẫn cấu hình pfSense 2.0 Cluster sử dụng CARP

Nếu đăng nhập vào giao diện web của tưởng lửa backup và kích vào "Firewall | Virtual IPs" bạn sẽ thấy virtual IPs đồng bộ với firewall backup.

Bây giờ là lúc xem nó hoạt động như thế nào. Hai bức tường lửa pfSense sẽ liên tục đồng bộ các quy tắc của chúng, NAT, virtual Ips và bất kỳ thiết lập nào khác bạn đã chọn trong tùy chọn Synchronize. Vì lý do nào đó mà tường lửa chính bị ngưng hoạt động thì bản sao của nó vẫn làm việc liên tục.

Trong điều kiện thử nghiệm, các bản sao tường lửa sẽ tiếp nhận với độ chễ là 10 giây, bởi hệ điều hành freeBSD sẽ áp dụng các địa chỉ IP ảo cho giao diện một khi bị mất kết nối với tường lửa chính.

Thử nghiệm Failover

Bạn có thể thử nghiệm bằng cách rút cáp mạng hoặc tắt tường lửa chính trong khi liên tục ping tới địa chỉ IP của LAN hoặc WAN. Bạn sẽ thấy các IP giảm xuống một vài giây trong các tường lửa khác.