Thời gian gần đây khi nghiên cứu về homelab, mình bắt đầu tìm hiểu về các loại tường lửa Firewall cho hệ thống mạng. Vừa để thoả mãn sự tò mò, vừa biết cách bảo mật cho máy chủ, máy ảo đang sử dụng.
Đã nhắc đến Firewall thì không thể không kể tên đến pfSense – nền tảng tường lửa phổ biết nhất hiện nay. Ngoài pfSense, còn có một số nền tảng tường lửa phổ biến khác: VyOS, OPNSense, RouterOS (Mikrotik)
Series [pfSense Lab] này sẽ được dành để chia sẻ lại những kiến thức về pfSense mình đã nghiên cứu trong thời gian gần đây. Trong bài viết đầu tiên của series, mình sẽ giới thiệu về cách thiết lập mạng ảo sử dụng pfSense làm Firewall/Router. Các bài viết sau sẽ chia sẻ cách cài đặt pfSense lên máy ảo Hyper-V cùng hướng chi tiết cách sử dụng và cấu hình pfSense.
Mục Lục
I. pfSense là gì?
pfSense là nền tảng Firewall mã nguồn mở miễn phí, được xây dựng dựa trên hệ điều hành FreeBSD. Ngoài chức năng tường lửa, pfSense còn có đầy đủ các chức năng định tuyến cao cấp của 1 Router chuyên dụng.
Ưu điểm của pfSense là sự ổn định, dễ sử dụng, cùng hiệu năng cao và không cần đòi hỏi phần cứng mạnh mẽ. pfSense có thể được cài trực tiếp trên máy tính cá nhân hoặc trên máy ảo, giúp giảm chi phí thiết lập. Nhờ vậy mang lại sự linh hoạt tối đa khi cần thêm tường lửa vào hệ thống mạng.
II. Yêu cầu hệ thống chạy pfSense
pfSense có thể hoạt động ngon lành trên các máy tính đời cũ. Dưới đây là cấu hình tối thiểu để chạy pfSense phiên bản 2.x :
- CPU – 500Mhz
- 512MB RAM
- 1GB ổ cứng trống.
- 2 card mạng
Đây chỉ là cấu hình tối thiểu để hệ thống hoạt động. Cấu hình phần cứng chính xác sẽ tuỳ thuộc vào lưu lượng gói dữ liệu đi qua Card mạng và mức độ phức tạp của các quy tắc tường lửa được thiết lập trên pfSense.
III. Sơ đồ mạng ảo pfSense Lab
Nhằm phục vụ nhu cầu nghiên cứu – vọc vạch, mình sẽ thiết đặt pfSense lên máy ảo Hyper-V. Máy ảo cài đặt pfSense sẽ đóng vai trò làm tường lửa – router cho hệ thống mạng nội bộ ảo kết nối qua Virtual Private Switch.
Chi tiết hệ thống mạng thiết lập trên Hyper-V dành cho [pfSense Lab] của mình như hình dưới đây
Máy ảo pfSense được thiết lập 2 card mạng:
- Card 1: đóng vai trò cổng WAN, kết nối vào External Switch để truy cập vào Internet
- Card 2: đóng vài cổng LAN, kết nối vào Private Switch để định tuyến dữ liệu cho mạng nội bộ.
pfSense được đặt giữa 2 Switch, đóng vai trò là Router + Firewall cho mạng nội bộ ảo gồm 2 máy ảo Arch kết nối qua Private Switch.
Nếu không sử dụng Hyper-V, bạn có thể áp dụng sơ đồ lab này với bất kỳ nền tảng ảo hoá nào khác: ESXi, Proxmox, Virtualbox,…
IV. Thiết lập Virtual Switch
Để thiết lập hệ thống mạng ảo dành cho pfSense lab, mình sử dụng 2 Virtual Switch của Hyper-V:
- External Switch: Kết nối vào Host và máy ảo pfSense
- Private Switch: Kết nối vào máy ảo pfSense và hai máy ảo khác chạy Ubuntu
Nếu bạn không hiểu các khái niệm trên, có thể xem lại bài viết chi tiết về Virtual Switch dưới đây
Trước khi cài đặt pfSense lên Hyper-V, mình cần phải thiết lập 2 Virtual Switch: 1 External và 1 Private Switch. Truy cập vào Virtual Switch Manager vào tạo 2 switch tương ứng như hình dưới đây
V. Tạo máy ảo Arch Linux
Mình sẽ tạo 2 máy ảo chạy Arch Linux nằm trong mạng nội bộ được quản lý bởi pfSense thông qua Private Switch. Hướng dẫn chi tiết mình đã chia sẻ trong bài viết dưới đây
VI. Tải pfSense ISO
Để cài đặt pfSense lên máy ảo, truy cập vào website pfSense để tải file ISO: Index of /mirror/downloads/ (netgate.com). Phiên bản pfSense mới nhất ở thời điểm mình viết bài này là 2.5.2
Sau khi tải về, bạn cần phải giải nén file .iso.gz để tạo ra file .iso, được dùng để cài đặt pfSense lên máy ảo.
VII. Tạo máy ảo mới trên Hyper-V
Bạn mở Hyper-V Manager, tạo máy ảo mới với các thông số như sau:
- Name: pfSense Firewall
- Generation: Generation 2
- Memory: 1024 MB
- Network: External Switch
- Hard Disk: 8GB
- Operating System: Chọn file ISO vừa tải trước đó.
VIII. Điều chỉnh thông số máy ảo
Tiếp theo, truy cập vào phần Settings của máy ảo pfSense Firewall để điều chỉnh thêm các thông số cho máy ảo.
Tắt chức năng Secure Boot
Tắt Enable checkpoints
Tạo thêm card mạng
Hiện tại máy ảo pfSense Firewall chỉ mới có 1 card mạng kết nối vào External Switch. Cần tạo thêm 1 card mạng và kết nối vào pfSense Switch
Bấm OK để lưu lại thông số. Tiếp theo hãy khởi động máy ảo để tiến hành cài đặt pfSense vào ổ cứng.
Bài viết Phần 1 trong series pfSense Lab xin kết thúc tại đây. Mình vừa mới hướng dẫn bạn các thiết lập mạng ảo với pfSense và Hyper-V. Trong phần 2, mình sẽ hướng dẫn chi tiết cách cài đặt pfSense lên máy ảo Hyper-V.
[convertkit form=7087807]
Quá tuyệt vời, cảm ơn chủ bài viết.
Chào bạn, mình có vài câu hỏi muốn nhờ bạn giúp đỡ.
Máy tính mình có 6 cổng mạng, mình thấy ESXI đều nhận tức là hoàn toàn có thể sử dụng được.
Trong mô hình mạng bạn viết ở trên, mình đã thử kết nối cổng mạng 5, 6 vào Modem nhà mạng có chức năng Router và nhận 1 địa chỉ IP giống như trên 192.168.0.1
Mình muốn cài pfSense để làm firewall cho cả máy ảo VM lẫn cho các thiết bị khác trong mạng LAN cắm mạng dây vào các cổng mạng 1 -> 4 để tận dụng các cổng mạng đó được không ?
Các việc chính cần phải làm để đạt được cấu hình mạng như trên (nếu có thể) là gì ạ?
Nếu thiết lập trên Hyper-V thì bạn tạo 6 cái External Switch trên Hyper-V rồi cho pfSense kết nối vào tất cả các External Switch đó. External Switch nào của cổng mạng nối với Router thì chỉnh là WAN trên pfSense, còn lại chỉnh là LAN. Vậy là xong.
Nếu thiết lập trên ESXi thì bạn phải mò cấu hình tương tự, mình không dùng nhiều ESXi nên không rõ.