Chuyên mục
Linux Network Virtualization

[ESXi] Cài đặt pfSense lên máy ảo ESXi 7.0

Hồi năm ngoái, mình đã chia sẻ loạt bài viết pfSense Lab tổng hơp lại những kiến thức và kinh nghiệm trong thời gian nghiên cứu về pfSense. Khi đó, mình cài đặt pfSesne lên máy ảo Hyper-V để thực hành. Sau khi mò xong, mình đã xóa toàn bộ máy ảo pfSense do không có nhu cầu sử dụng thực tế (mình hiện đang dùng Mikrotik làm router chính trong nhà và rất hài lòng với nó).

Còn ở hiện tại, mình đang nghiên cứu về nền tảng ảo hóa vSphere ESXi 7.0 nên quyết định cài đặt lại pfSense lên máy ảo ESXi. Mục đích để tạo mạng ảo nội bộ, quản lý các máy ảo khác.

Bài viết này là hướng dẫn cách cài đặt pfSense lên máy ảo ESXi 7.0

I. Thiết lập mạng ảo trên ESXi

1. Tạo Virtual Switch

Mặc định ESXi đã có sẵn vSwitch0 được kết nối ra mạng bên ngoài thông qua card mạng vật lý của máy. Mình sẽ tạo thêm 1 Virtual Switch với tên gọi pfSense-LAN để dùng cho mạng nội bộ của pfSense.

  1. Bấm chọn Networking
  2. Chuyển qua tab Virtual Switches
  3. Bấm Add standard virtual switch

Đặt tên pfSense-LAN và bấm Add.

ESXi giờ đã 2 virtual Switch: vSwitch0 và pfSense-LAN

2. Tạo port group

Tiếp theo chuyển qua tab Port groups, bấm vào Add port group để tạo mới.

Port group đầu tiên tên pfSense-WAN, và kết nối vào vSwitch0. Port group này sẽ được dùng để kết nối vào cổng WAN của máy ảo pfSense.

Tạo thêm 1 port group nữa với tên gọi pfSense-LAN và kết nối vào virtual switch pfSense-LAN.

Sau khi tạo xong, mục port group sẽ có hiện ra 4 cái: VM Network và Management Network là mặc định của ESXi. Còn pfSense-LAN và pfSense-WAN vừa mới tạo.

II. Tải pfSense ISO về datastore

Truy cập website của pfSense và tải về bản ISO cài đặt mới nhất lên datastore của ESXi. Mình truy cập SSH vào máy chủ ESXi để tải về

wget http://sgpfiles.netgate.com/mirror/downloads/pfSense-CE-2.6.0-RELEASE-amd64.iso.gzCode language: JavaScript (javascript)

File ISO sau khi tải về đang ở dạng nén gz, nên cần thực hiện thêm thao tác giải nén

gzip -d pfSense-CE-2.6.0-RELEASE-amd64.iso.gzCode language: CSS (css)

III. Tạo máy ảo mới cho pfSense

Tạo máy ảo mới trên ESXi theo các bước sau

  • Đặt tên máy ảo: pfSense
  • Guest OS family: Other
  • Guest OS version: FreeBSD 12 (64-bit)

Chọn datastore lưu máy ảo.

Tùy chỉnh cấu hình máy ảo tùy vào nhu cầu sử dụng của bạn. Mình chọn thông số như sau

  • CPU: 1
  • Memory: 2048 MB
  • Hard disk: 16 GB
  • CD/DVD Drive: Chọn file ISO của pfSense

Bấm vào Add network adapter để tạo thêm 1 card mạng cho máy ảo.

1 card mạng sẽ kết nối vào pfSense-WAN. 1 card mạng kết nối vào pfSense-LAN. Lưu ý: cần chỉnh Adapter Type của cả hai thành E1000e. Nhờ vậy pfSense sẽ tự động nhận diện cổng WAN và LAN sau khi cài đặt xong. Nếu bạn để mặc định VMXNET 3 thì phải làm thêm bước thiết lập cổng mạng khi khởi động pfSense lần đầu tiên.

Bấm Finish để tạo máy ảo mới.

IV. Cài đặt pfSense

Khởi động máy ảo và bắt đầu cài đặt pfSense theo các bước dưới đây

Bấm Accept

Chọn Install pfSense, bấm OK

Giữ nguyên keymap mặc định, bấm Select để tiếp tục

Chọn Auto (ZFS) và bấm OK

Giữ nguyên mặc định và bấm OK

Chọn VMware Virtual disk và bấm OK

Bấm Select để xác nhận việc cài đặt pfSense lên ổ cứng của máy ảo.

Xác nhận YES thêm lần nữa.

Sau khi cài đặt xong, chọn No

Sau đó chọn Reboot để khởi động lại máy ảo.

Ở lần khởi động đầu tiên, pfSense sẽ tự động nhận dạng được cổng WAN và LAN hiện có.

V. Cài đặt Open VM Tools

Trong Console của pfSense, bạn gõ 8 sau đó bấm Enter để truy cập vào Shell. Tiếp theo, gõ lệnh pfctl -d để tắt tính năng packet filter. Nhờ đó bạn có thể truy cập vào pfSense theo địa chỉ WAN IP 192.168.0.164

Dùng trình duyệt web truy cập vào địa chỉ https://192.168.0.164 và đăng nhập vào pfSense bằng tài khoản mặc định username: admin / password: pfsense

Sau đó truy cập vào mục Package Manager để cài đặt Open VM Tools.

Sau khi cài đặt xong, ESXi sẽ nhận được thông tin địa chỉ IP và Storage chi tiết từ pfSense để hiển thị trên web client như dưới đây.

Việc cài đặt pfSense lên máy ảo ESXi 7.0 vậy là xong.

VI. Hướng dẫn sử dụng pfSense

Các bạn có thể tham khảo thêm các bài viết hướng dẫn sử dụng pfSense bên dưới.

Nếu bài viết của mình mang đến thông tin, kiến thức hữu ích cho bạn, đừng ngại mời mình ly bia để có thêm động lực chia sẻ nhiều hơn nữa. Cám ơn bạn!

Lưu ý: Nếu bạn cần hỗ trợ kỹ thuật, vui lòng gửi câu hỏi trực tiếp ở phần Thảo luận bên dưới, mình sẽ trả lời sớm. Đừng mò vào hỏi trong fanpage Yêu Chạy Bộ, sẽ không có phản hồi đâu!

Bởi Thuận Bùi

Runner at Yêu Chạy Bộ. Blogger at Ba Lô & Dép Lào. Web Developer at TB's Blog.
Follow me: Facebook / Instagram

9 trả lời trong “[ESXi] Cài đặt pfSense lên máy ảo ESXi 7.0”

Nếu cài pfsense trên esxi thì mình cấu hình vlan cho pfsense như thế nào vậy anh ơi. em có xem bài vlan pfsense anh viết ở trên nhưng nó dành cho hyperv thì phải.
Mong anh có bài hướng dẫn trên esxi ạ. cám ơn những bài viết quá hữu ích của anh

Mình sử dụng 2 cổng LAN cho WAN pfSense, 2 cổng LAN cho LAN pfSense. Mình nối 2 cổng LAN này vào một router WiFi chạy AP mode để phát WiFi mạng khách.
WAN: 10.0.0.20
LAN: 192.168.1.1
Tất cả đều để static
Mình cài thêm một máy ảo Ubuntu trong ESXI, attach vào LAN pfSense và có IP là 192.168.1.103
Mình làm theo guide trong lab pfSense của bạn để mở cổng cho truy cập Web từ lớp WAN fpSens (10.0.0.x) và mở ssh.
Hiện tại các máy ở WiFi mạng khách 192.168.1.xxx có thể truy cập vào dịch vụ trong máy ảo docker trong UBUNTU (mayan server, …) nhưng các máy nằm trong WAN 10.0.0.x thì không thể.
Mình cần tạo rules nào để các máy từ lớp 10.0.0.x có thể truy cập dịch vụ trong docker của máy ảo Ubuntu vậy. Cảm ơn bạn

Ubuntu Server của bạn nằm trong LAN, dùng IP LAN nội bộ nên các máy từ WAN không thể truy cập được do không có Routing table tương ứng. Để khắc phục, bạn cần tạo thêm Port Forwarding Rule để chuyển hướng từ WAN IP của Pfsense vào LAN IP của Ubuntu server (hướng dẫn: https://www.wundertech.net/pfsense-port-forwarding-setup-guide/), sau đó các máy trong WAN sẽ truy cập vào dịch vụ Docker theo đia chỉ “WAN IP của pfsense”:”port”.

Hoặc tối ưu hơn là cài đặt thêm 1 cái Reverse Proxy trên Ubuntu Server, và chỉ cần mở cổng 80 / 443 chuyển hướng về Ubuntu Server. Các dịch vụ Docker sẽ truy cập thông qua tên miền.

Trả lời Timmy Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *