EBOOKBKMT COM – CỘNG ĐỒNG KỸ THUẬT CƠ ĐIỆN “BACHKHOA NPOWER” ( HỆ THỐNG ĐÀO TẠO CHUYÊN GIA MẠNG QUỐC TẾ o0o ĐỀ TÀI HOÀN THÀNH MÔN HỌC “CompTIA Security + Certification” Tìm hiểu Pfsense Firewall Giảng.
Trang 1Tìm hiểu Pfsense Firewall
Giảng viên hướng dẫn:
Sinh viên:
Lớp: CNC6
Trang 2M c l c ụ ụ
Mục lục 2
I Giới thiệu Firewall pfSense 2
II Cài đặt và cấu hình Pfsense 4
1 Cài đặt Pfsense 4
2.Cấu hình card mạng cho máy Pfsense 7
3 Đặt IP và thiết lập DHCP cấp phát vào bên trong mạng LAN 8
4 Cấu hình Pfsense qua giao diện web - WebGUI 8
5 Cài đặt Packages 12
5 Backup and Recovery 13
III Một số ứng dụng và dịch vụ cơ bản của pfsense 14
1 Tính năng của pfsense firewall 14
1.2 NAT 14
1.3 Firewall Rules 14
1.4 Firewall Schedules 16
1.5 Traffic shaper 17
1.6 Virtual IPs 20
2 Một số dịch vụ của pfsense 21
2.1 Captive portal 21
2.2 DHCP Server 24
2.3 Load Balancer 25
3 VPN trên Pfsense 27
3.1 VPN PPTP 27
3.2 OpenVPN Site to Site 31
III Triển khai mô hình mạng Font-BackEnd 36
IV Nhận xét 43
I Giới thiệu Firewall pfSense
Để bảo vệ cho hệ thống mạng bên trong thì chúng ta có nhiều giải pháp như
Trang 3thỏa hiệp về sự bảo mật Bẳt đầu vào năm 2004, khi m0n0wall mới bắt đầu chập chững– đây là một dự án bảo mật tập trung vào các hệ thống nhúng – pfSense đã
có hơn 1 triệu download và được sử dụng để bảo vệ các mạng ở tất cả kích cỡ, từ các mạng gia đình đến các mạng lớn của của các công ty Ứng dụng này có một cộng đồng phát triển rất tích cực và nhiều tính năng đang được bổ sung trong mỗi phát hành nhằm cải thiện hơn nữa tính bảo mật, sự ổn định và khả năng linh hoạt của nó
Pfsense bao gồm nhiều tính năng mà bạn vẫn thấy trên các thiết bị tường lửa hoặc router thương mại, chẳng hạn như GUI trên nền Web tạo sự quản lý một cách dễ dàng Trong khi đó phần mềm miễn phí này còn có nhiều tính năng ấn tượng đối với firewall/router miễn phí, tuy nhiên cũng có một số hạn chế
Pfsense hỗ trợ lọc bởi địa chỉ nguồn và địa chỉ đích, cổng nguồn hoặc cổng đích hay địa chỉ IP Nó cũng hỗ trợ chính sách định tuyến và có thể hoạt động trongcác chế độ bridge hoặc transparent, cho phép bạn chỉ cần đặt pfSense ở giữa các thiết bị mạng mà không cần đòi hỏi việc cấu hình bổ sung pfSense cung cấp
network address translation (NAT) và tính năng chuyển tiếp cổng, tuy nhiên ứng dụng này vẫn còn một số hạn chế với Point-to-Point Tunneling Protocol (PPTP), Generic Routing Encapsulation (GRE) và Session Initiation Protocol (SIP) khi sử dụng NAT
pfSense được dựa trên FreeBSD và giao thức Common Address
Redundancy Protocol (CARP) của FreeBSD, cung cấp khả năng dự phòng bằng cách cho phép các quản trị viên nhóm hai hoặc nhiều tường lửa vào một nhóm tự động chuyển đổi dự phòng Vì nó hỗ trợ nhiều kết nối mạng diện rộng (WAN) nên
Trang 4có thể thực hiện việc cân bằng tải Tuy nhiên có một hạn chế với nó ở chỗ chỉ có thể thực hiện cân bằng lưu lượng phân phối giữa hai kết nối WAN và bạn không thể chỉ định được lưu lượng cho qua một kết nối.
II Cài đặt và cấu hình Pfsense
1 Cài đặt Pfsense
Trên máy tính cài Pfsense chúng ta bỏ đĩa pfSense LiveCD Installer vào ổ CD/DVD để tiến hành cài đặt
Trang 5• Màn hình Welcom to FreeBSD!
• Chọn 99 để bắt đầu quá trình cài đặt Pfsense lên máy tính.
Trang 6• Chọn Accept these settings để chấp nhận việc cài đặt Pfsense.
• Chọn Quick/Easy Install hoặc Custom Install để cài đặt vào ổ cứng
Giao diện textmode pfsense sau khi cài xong
Trang 7Enter an Option : 1 và Chọn số 1 để bắt đầu thiết lập các Interface
Do you want to setup VLANs now -> Chọn N
Dựa vào địa chỉ MAC để phân biệt card mạng Internal và External
Gõ le0 để thiết lập Interface LAN , le1 để thiết lập Interface WAN Nếu máy có 2 card mạng WAN thì chọn thêm le2 để thiết lập Interface WAN2
Sau khi thiết lập đủ Interface thì bạn để trống và ấn Enter khi được hỏi “Enter the Optional …”
Chọn Y để tiến hành quá trình thiết lập card mạng.
Thông tin card mạng của pfsense sau khi được thiết lập
Trang 83 Đặt IP và thiết lập DHCP cấp phát vào bên trong mạng LAN
Thiết lập IP cho card mạng LAN chọn 2 ,Nhập IP mà bạn muốn đặt và Enter the new LAN subnet bit count : 24 và Enter
Chọn “Y” để thiết lập DHCP cấp phát IP cho các máy Client (Network Internal).
Tạo dải IP cấp phát cho Client (Như trong hình từ 10.0.0.10 > 10.0.0.100 )
4 Cấu hình Pfsense qua giao diện web - WebGUI
Tại máy Client -> Vào trình duyệt và gõ vào IP internal của pfsense và đăng nhập
băng tài khoản và mật khẩu mặc định : admin - pfsense
Trang 9• Nhấn Next
• Khai báo DNS Server cho máy Pfsense -> Next
• Chọn múi giờ cho pfsense > Next
Trang 10Trong giao diện WAN, có thể chọn giữa nhiều kết nối khác nhau như Static,
Dynamic Host Configuration Protocol (DHCP), Point-to-Point Protocol và PPPoE Chọn kết nối thích hợp như được cấu hình bởi ISP của bạn
Cấu hình LAN hoàn toàn rất đơn giản Nếu bạn chưa thực hiện thì trước khi cài đặt, bạn chỉ cần thiết lập địa chỉ IP
Trang 11Thiết lập lại mật khẩu admin truy cập vào pfsense
Giao diện cấu hình Pfsense trên nền web
Trang 12Để cài đặt một gói phần mềm, hãy nhấp vào "Add" biểu tượng trên bên phải của trang.
Sau khi hoàn thành cài đặt , gói mới sẽ hiển thị trong "Installed packages" của pfSense Package Manager
Trang 13Loại bỏ một Packages pfSense là tương đối dễ dàng Từ quan điểm gói cài đặt, chọn "Hủy bỏ" biểu tượng từ phần bên phải của trang Việc này sẽ khởi chạy trình cài đặt gói, mà sẽ hiển thị sự tiến bộ của việc loại bỏ gói.
5 Backup and Recovery
Để Sao lưu hay khôi phục cấu hình pfsense vào Diagnostics/Backup/restore
Việc sao lưu hay khôi phục cấu hình pfsense cũng tương đối dễ dàng Bạn chỉ cần chọn khu vực cần sao lưu hay khôi phục cấu hình của Aliases, NAT, traffic
shaper,PPTP Server,system…
Trang 14III Một số ứng dụng và dịch vụ cơ bản của pfsense
1 Tính năng của pfsense firewall
1.1 pfSense Aliases
Aliases có thể giúp bạn tiết kiệm một lượng lớn thời gian nếu bạn sử dụng chúng một cách chính xác
Một Aliases ngắn cho phép bạn sử dụng cho một host ,cổng hoặc mạng có thể được
sử dụng khi tạo các rules trong pfSense Sử dụng Aliases sẽ giúp bạn
cho phép bạn lưu trữ nhiều mục trong một nơi duy nhất có nghĩa là bạn không cần tạo ra nhiều rules cho nhóm các máy hoặc cổng
Việc sửa đổi rules trở nên dẽ dàng hơn
1.2 NAT
PfSense cung cấp network address translation (NAT) và tính năng chuyển tiếp cổng, tuy nhiên ứng dụng này vẫn còn một số hạn chế với Point-to-Point TunnelingProtocol (PPTP), Generic Routing Encapsulation (GRE) và Session Initiation Protocol (SIP) khi sử dụng NAT
Trong Firewall bạn cũng có thể cấu hình các thiết lập NAT nếu cần sử dụng cổng chuyển tiếp cho các dịch vụ hoặc cấu hình NAT tĩnh (1:1) cho các host cụ thể Thiết lập mặc định của NAT cho các kết nối outbound là automatic/dynamic, tuy nhiên bạn có thể thay đổi kiểu manual nếu cần
Trang 15Để add rules mới nhấn vào biểu tương dấu
Ví dụ: Tạo rules Cấm truy cập web sử dụng công 80 cho các máy LAN trong đó
MayLan là tên Aliases Sau khi tạo xong nhấn Save và Apply Changes
Trang 161.4 Firewall Schedules
Các Firewall rules có thể được sắp xếp để nó có chỉ hoạt động vào các thời điểm nhất định trong ngày hoặc vào những ngày nhất định cụ thể hoặc các ngày trong tuần
Để tạo một Schedules mới vào Firewall > Schedules : Nhấn dấu +
Ví dụ:Tạo lịch tên GioLamViec của tháng 12 Từ thứ hai đến thứ bẩy và thời gian
từ 8 giờ đến 17 giờ
Sau khi tạo xong nhấn Add Time
Bên dưới sẽ hiện ra lịch chi tiết vừa thiết lập
Xong nhấn Save
Trang 17sắp xếp thứ tư ưu tiên trong đường truyền tải lên, điều này cho phép tiến trình tải
về được tiếp tục với tốc độ tối đa
Cấu hình Traffic Sharper để quản lý băng thông
• Mở giao diện Web của Pfsense -> chọn Firewall -> Traffic Sharper
• Chọn Next
• Chọn Inside là Lan -> nhập vào tốc độ download của đường truyền
Outside chọn Wan và nhập vào tốc độ Upload của đường truyền
Chọn Next
Trang 18• Hỗ trợ Voice IP > Next
• Chọn Next
Trang 19• Hỗ trợ mạng ngang hàng như BitTorent , CuteMX, iMesh…
• Hỗ trợ mạng chơi game như BattleNET , Xbox360 ,và một số game trực tuyến
Trang 20• Quản lí băng thông của một số ứng dụng khác như Remote Service ,VPN, Messengers, Web,Mail , Miscellaneous
1.6 Virtual IPs
Một Virtual IPs có thể sử dụng bất kỳ địa chỉ IP của pfSense, đó không phải là một địa chỉ IP chính Trong các tình huống khác nhau, mỗi trong số đó có các tính năng riêng của nó Virtual IP được sử dụng để cho phép pfSense đúng cách chuyển tiếp lưu lượng cho những việc như chuyển tiếp cổng NAT, NAT Outbound, và NAT1:1 Họ cũng cho phép các tính năng như failover, và có thể cho phép các dịch vụ trên router để gắn kết với địa chỉ IP khác nhau
CARP
Trang 21• Các VIP đã được trong cùng một subnet IP của giao diện thực
• Sẽ trả lời ICMP ping nếu được phép theo các quy tắc tường lửa
Proxy ARP
• Không thể được sử dụng bởi các bức tường lửa chính nó, nhưng có thể được chuyển tiếp
• Tạo ra lớp 2 giao thông cho các VIP
• Các VIP có thể được trong một subnet khác với IP của giao diện thực
• Không trả lời gói tin ICMP ping
• Các VIP có thể được trong một subnet khác với các giao diện IP
• Không trả lời ICMP Ping
2 Một số dịch vụ của pfsense
2.1 Captive portal
Captive portal là 1 tính năng thuộc dạng flexible, chỉ có trên các firewall thương
Trang 22mại lớn Tính năng này giúp redirect trình duyệt của người dùng vào 1 trang web định sẵn, từ đó giúp chúng ta có thể quản lý được người dùng Tính năng này tiên tiến hơn các kiểu đăng nhập như WPA, WPA2 ở chỗ người dùng sẽ thao tác trực tiếp với 1 trang web (http, https) chứ không phải là bảng đăng nhập khô khan như kiểu authentication WPA,WPA2.
Tính năng captive portal nằm ở mục Services/captive portal
Captive portal: Tinh chỉnh các chức năng của Captive Portal
Pass-though MAC: Các MAC address được cấu hình trong mục này sẽ được bỏ
qua,không authentication
Allowed IP address: Các IP address được cấu hình sẽ không authentication
Users: Tạo local user để dùng kiểu authentication: local user
File Manager: Upload trang quản lý của Captive portal lên pfsense.
Enable captive portal: Đánh dấu chọn nếu muốn sử dụng captive portal
Maximum concurrent connections:Giới hạn các connection trên mỗi ip/user/mac Idle timeout:Nếu mỗi ip không còn truy cập mạng trong 1 thời gian xác định thì sẽ
ngắt kết nối của ip/user/mac
Hard timeout: Giới hạn thời gian kết nối của mỗi ip/users/mac
Logout popup windows: Xuất hiện 1 popup thông báo cho ip/user/mac
Trang 23MAC filtering: Đánh dấu vào nếu pfsense nằm trước router Bởi vì pfsense quản
lý kết nối theo MAC (mặc định) Mà khi dữ liệu qua Router sẽ bị thay đổi macaddress nên nếu timeout thì toàn bộ người dùng sẽ mất kết nối
Authentication: Chọn kiểu chứng thực Pfsense hỗ trợ 3 kiểu:
No authentication: pfsense sẽ điều hướng người dùng tới 1 trang nhất định
mà không chứng thực
Local user manager: pfsense hỗ trợ tạo user để chứng thực
Radius authentication: Chứng thực bằng radius server (Cần chỉ ra địa chỉ ip của
radius, port, )
Trang 24Tạo trang index.htm có nội dung:
<form method="post" action="$PORTAL_ACTION$">
<input name="auth_user" type="text">
<input name="auth_pass" type="password">
<input name="redirurl" type="hidden" value="$PORTAL_REDIRURL$"> <input name="accept" type="submit" value="Continue">
DHCP Server chỉnh cấu hình cho mạng TCP/IP bằng cách tự động gán các địa chỉ
IP cho khách hàng khi họ vào mạng
Trang 25Mặc dù có thể gán địa chỉ IP vĩnh viễn cho bất cứ máy tính nào trên mạng
- Phải trang bị thêm modem nếu không có sẵn
- Không được hỗ trợ từ nhà sản xuất như các thiết bị cân bằng tải khác
- Vẫn chưa có tính năng lọc URL như các thiết bị thương mại
- Đòi hỏi người sử dụng phải có kiến thức cơ bản về mạng để cấu hình
Trang 26Để cấu hình load balancing vào Services -> Load Balancer
Ấn vào nút để thêm Pool
Cấu hình như sau:
Name: LoadBalancer
Type: Gateway
Behavior : Load Balancing
Monitor IP: Chọn monitor IP của gateway interface nào thì phần chọn Interface name tương ứng , ấn vào add to pool Save lại và ấn Apply Change
Sang tab LAN, Ấn vào dấu + để thêm rule
Action chọn Pass
Protocol chọn any
Trang 27Hai đường truyền đều Online
Khi một đường truyền Offline
3 VPN trên Pfsense
VPN là một mạng riêng sử dụng hệ thống mạng công cộng (thường là Internet) để kết nối các địa điểm hoặc người sử dụng từ xa với một mạng LAN ở trụ sở trung tâm Thay vì dùng kết nối thật khá phức tạp như đường dây thuê bao số, VPN tạo
ra các liên kết ảo được truyền qua Internet giữa mạng riêng của một tổ chức với địađiểm hoặc người sử dụng ở xa
3.1 VPN PPTP
Để sử dụng chức năng này bạn vào VPN / PPTP
Trang 28Chọn Enable PPTP server để bật tính năng VPN
Server address : Địa chỉ server mà client sẽ kết nối vào
Remote address range :Dải địa chỉ IP sẽ cấp khi VPN Client kết nối
RADIUS : Chứng thực qua RADIUS
Chọn Save và chuyển qua tab User để tạo tài khoản
Sau khi tạo xong user ,bạn vào Firewall Rules
Tạo Rules cho phép VPN client truy cập vào mạng
Trên VPN Client ,trong Network Connections chọn Create a new connection
Trang 29Chọn Conect to the network at my workplace > Next
Chọn Virtual Provate Network connection > Next
Trang 30Điền tên cho kết nối VPN > Next
Điền địa chỉ IP của VPN Server > Next
Điền tài khoản và mật khẩu và nhấn Connect
Trang 313.2 OpenVPN Site to Site
Tạo Share key cho pfsense
Vào Diagnostics > Command:
Tại Execute Shell command chạy lệnh : openvpn genkey secret /dev/stdout và
nhấn Execute
Trang 32Để tạo kết nối Site to site vào VPN / OpenVPN
Tại Tab Server nhấn
Trang 33Remote network: Khai báo mạng mà pfsense sẽ kết nối đến
Cryptography: Lựa chọn phương thức mã hóa
Authentication method: Shared Key
Shared key: Nhập Shared Key của pfsense
LZO compression : Nén gói tin khi chuyển dữ liệu sử dụng LZO
Chọn Save
Tạo rules cho phép kết nối OpenVPN trên WAN
Trang 34Trên pfsense2
Vào VPN/OpenVPN chọn Tab Client nhấn
Protocol : Giao thức mà server sử dụng cho VPN
Server Address : Địa chỉ của Server OpenVPN
Server port : Cổng kết nối cho các thiết lập VPN trên pfSense1
Interface IP : Địa chỉ IP mà server sẽ gán cho Client
Remote network:Dải IP Internal của pfsense1
Trang 35Lựa chọn phương thức mã hóa và điền Shared key của pfsense1 vào và nhấn Save
Trang 36III Triển khai mô hình mạng Font-BackEnd
Mô hình mạng Font/BackEnd giúp hệ thống mạng chống lại các đợt tấn công của hacker giúp bảo vệ dữ liệu trong Local an toàn và dễ dang quản lí các traffic trong mạng LAN Mô hình này tuy là có độ an toàn cao nhưng bù lại chi phí đầu tư cho
nó rất tốn kém
Yêu cầu mô hình mạng Front-Backend
- Cấu hình dịch vụ Load Balancer cho WAN1 và WAN2
- Public Web Server
- Cho phép máy XP ra ngoài Internet
Cấu hình dịch vụ Load Balancer
Trên Pfsense1 vào Service / Load Balancer
Nhấn để bắt đầu cấu hình
Trang 37Name : LoadBalancer
Type : Gateway
Behavior : Load Balancing
Monitor IP và Interface Name phải chọn tương tự nhau
Ví dụ : WAN2’s Gateway thì chọn WAN2 và nhấn Add to pool
Chọn Save
Vào Status / Load Balancer để xem trạng thái của dịch vụ
Trang 38Public WebServer
Trên Pfsense 1 vào Firewall / NAT: Port Forward
Nhấn để thêm NAT rules
External address : Chon Interface address ,nếu bạn muons vào web trong mạng LAN ,bạn có chon any
Protocol : TCP
External Port range : HTTP
NAT IP : Địa chỉ của Web Server
Chọn Auto-add a firewall rule to permit traffic through this NAT rule > Save
Trang 39Cho phép máy XP2 ra ngoài Internet
Trên pfsense 1 vào Firewall / Aliases