Tải bản đầy đủ (.pdf) (63 trang)

XÂY DỰNG BÀI THỰC HÀNH: BẢO VỆ AN TOÀN MẠNG SỬ DỤNG TƯỜNG LỬA PFSENSE

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.24 MB, 63 trang )

BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ

THỰC TẬP TỐT NGHIỆP

XÂY DỰNG BÀI THỰC HÀNH: BẢO VỆ AN TOÀN
MẠNG SỬ DỤNG TƯỜNG LỬA PFSENSE

Sinh viên thực hiện: Nguyễn Quang Tuấn
AT110279
Hướng dẫn:
ThS. Cao Minh Tuấn

Hà Nội, 3 - 2020

1


MỤC LỤC
LỜI CẢM ƠN................................................................................................................... 4
LỜI MỞ ĐẦU................................................................................................................... 5
CHƯƠNG I: FIREWALL PFSENSE.............................................................................6
1.1. Tổng quan tường lửa................................................................................................6
1.1.1.

Static packet-filtering firewall........................................................................7

1.1.2.

Application-level firewall..............................................................................7


1.1.3.

Circuit-level firewall......................................................................................8

1.1.4.

Stateful inspection firewall.............................................................................9

1.1.5.

Các mơ hình triển khai tường lửa...................................................................9

1.2. Tổng quan pfsense.................................................................................................11
1.2.1.

PfSense là gì?...............................................................................................11

1.2.2.

Một số phương pháp triển khai thực tế.........................................................12

1.2.3.

Tính năng cơ bản trong Pfsense...................................................................12

1.2.4.

VPN.............................................................................................................18

1.2.5.


Một số dịch vụ của firewall pfsense.............................................................19

CHƯƠNG II: XÂY DỰNG BÀI THỰC HÀNH: BẢO VỆ AN TOÀN MẠNG SỬ
DỤNG TƯỜNG LỬA PFSENSE..................................................................................22
2.1. Mơ hình..................................................................................................................22
2.2. Cài đặt PfSense......................................................................................................22
2.3. Thiết lập luật trong mạng LAN..............................................................................31
2.3.1. Client trong mạng LAN...................................................................................31
2.3.2. Thiết lập luật....................................................................................................33
2.4. Thiết lập luật trong mạng DMZ.............................................................................43
2.5. Thiết lập luật VPN.................................................................................................45
2.5.1. Cài đặt OpenVPN...........................................................................................51
2.5.2. Thiết lập luật cho VPN....................................................................................60
KẾT LUẬN.....................................................................................................................61
TÀI LIỆU THAM KHẢO.............................................................................................62
2


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………

………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………

Hà Nội, ngày tháng 3 năm 2020
GIÁO VIÊN HƯỚNG DẪN

3


LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cơ
khoa An tồn thơng tin, đặc biệt thầy Cao Minh Tuấn đã nhiệt tình hướng dẫn, tạo
điều kiện tốt nhất để em hoàn thành bài báo cáo thực tập tốt nghiệp này. Trong quá
trình thực tập, cũng như là trong quá trình làm bài báo cáo thực tập, khó tránh khỏi
sai sót, rất mong các thầy, cơ bỏ qua. Đồng thời do trình độ lý luận cũng như kinh
nghiệm thực tiễn cịn hạn chế nên bài báo cáo khơng thể tránh khỏi những thiếu
sót, em rất mong nhận được ý kiến đóng góp thầy, cơ để có thể học thêm được
nhiều kinh nghiệm và sẽ hoàn thành tốt hơn trong đồ án tốt nghiệp. Cuối cùng em
kính chúc q thầy, cơ dồi dào sức khỏe và thành công trong sự nghiệp cao quý.
Em xin chân thành cảm ơn!

4



LỜI MỞ ĐẦU

Mạng Internet ngày càng phát triển ngày một rộng rãi và hầu như lứa tuổi
nào cũng đều sử dụng cả. Bên cạnh những lợi ích tuyệt vời như xem video, hình
ảnh, xem phim, tra cứu thơng tin… thì cũng tiềm tàng những nguy cơ bị xâm nhập
bất hợp pháp và đánh cắp dữ liệu cá nhân. Do đó mà  Firewall xuất hiện như một
giải pháp vô cùng hữu hiệu cho các doanh nghiệp, cá nhân hiện nay. Firewall ra đời
giúp ngăn chặn được những cuộc tấn công mạng xảy ra, lọc tất cả những thông tin
thông qua kết nối Internet vào mạng và hệ thống máy tính của một cá nhân hoặc
một doanh nghiệp nào đó. Firewall đóng vai trị như một thiết bị cung cấp cho cơng
ty hoặc tổ chức một giải pháp để kiểm soát một cách chặt chẽ việc kết nối Internet
của họ. Các bức tường lửa có thể ngăn chặn hết tất cả các lượng truy cập đến từ
những IP không rõ ràng. Ở bài thực hành này chúng ta sẽ tìm hiểu và xây dựng mơ
hình mạng an tồn sử dụng tường lửa pfSense, bởi pfSense được đánh giá là tường
lửa nguồn mở tốt nhất hiện nay.

5


CHƯƠNG I: FIREWALL PFSENSE

1.1. Tổng quan tường lửa
Tường lửa là công cụ cần thiết trong việc quản lý và kiểm soát lưu lượng
mạng, là một thiết bị mạng được sử dụng để lọc lưu lượng truy cập, thường được
triển khai giữa một mạng riêng và một mạng kết nối đến Internet. Ngồi ra tường
lửa cũng có thể được triển khai để phân chia giữa các phịng ban trong một cơng ty.
Nếu khơng có tường lửa, hệ thống mạng sẽ khơng thể hạn chế lưu lượng truy cập
độc hại từ Internet thâm nhập vào mạng nội bộ. Lưu lượng mạng thông qua tường
lửa được lọc dựa trên các chính sách đã được thiết lập, còn được gọi là các bộ lọc

hoặc danh sách kiểm soát truy cập (ACL). Chúng cơ bản là một bộ các chỉ lệnh có
nhiệm vụ lọc ra các luồng dữ liệu nguy hại hoặc không được cho phép truy cập, chỉ
có các kết nối cho phép mới vượt qua hàng rào an ninh được cung cấp bởi các
tường lửa. Tường lửa là một biện pháp hiệu quả trong việc ngăn chặn hay lọc lưu
lượng truy cập, chống lại các lượt truy cập không hợp pháp cố gắng kết nối từ bên
ngoài vào mạng nội bộ bên trong, đồng thời ngăn chặn các dữ liệu độc hại dựa trên
thơng tin các gói đi vào, ứng dụng, giao thức hay địa chỉ nguồn.
Hầu hết các tường lửa cung cấp cơ chế log, kiểm định và khả năng giám sát
cũng như hệ thống phát hiện xâm nhập (IDS) cơ bản. Cần lưu ý rằng tường lửa
không thể ngăn chặn virus hoặc các mã độc hay lây lan qua các đường đi khác khi
người dùng vơ tình hay cố ý cho phép các đoạn mã độc thực thi đằng sau tường
lửa. Ngồi hoạt động kết nối mạng, tường lửa cịn lưu lại các thông tin về các sự
kiện như: Thời gian boot/reboot thiết bị tường lửa. Trạng thái dịch vụ như: proxy,
các dịch vụ phụ thuộc. Thay đổi cấu hình. Lỗi hệ thống tường lửa. Tường lửa chỉ
là một phần của một giải pháp bảo mật tổng thể. Với một tường lửa có nhiều các
cơ chế bảo mật được tập trung tại một nơi, điều này tạo ra rủi ro làm hệ thống
mạng có thể bị mất kết nối trong trường hợp thiết bị tường lửa có sự cố. Để bảo vệ
tốt hơn cho hệ thống thì chúng ta cần kết hợp nhiều tường lửa với nhau để bổ trợ
cho nhau trong trường hợp một tường lửa bị tấn cơng. Có bốn loại tường lửa cơ
bản: (Simple) Packet Filters, Circuit-Level, ApplicationLevel và Stateful
Multilayer Inspection. Cũng có nhiều cách để tạo ra bức tường lửa an toàn bằng
6


cách kết hợp hai hoặc nhiều hơn các loại tường lửa vào một giải pháp tường lửa
duy nhất.
1.1.1. Static packet-filtering firewall
Packet-filter lọc lưu lượng truy cập bằng cách kiểm tra thơng tin header của
gói tin. Thơng thường, các chính sách để tường lửa lọc sẽ dựa vào thông số liên
quan tới IP nguồn, IP đích, và cổng dịch vụ. Tường lửa dạng này không thể cung

cấp cơ chế xác thực người dùng hay có thể xác định được gói tin đến từ bên trong
hay bên ngoài mạng riêng, dẫn đến việc dễ dàng bị lừa với các gói tin giả mạo.
Static packet filter được xem là khởi đầu cho hệ thống tường lửa, hoạt động ở lớp 3
(lớp Mạng) của mơ hình OSI. Nó cũng có thể được coi là thiết bị định tuyến hoặc
xem như một router thơng thường.

Hình 1: Packet-filter trong mơ hình OSI
1.1.2. Application-level firewall
Một tường lửa ở lớp Ứng dụng còn được gọi là tường lửa proxy. Proxy là
một bộ máy tính làm nhiệm vụ sao chép các gói tin từ một mạng đến một mạng
khác; việc sao chép này đồng thời sẽ đổi địa chỉ nguồn và địa chỉ đích để bảo vệ
thơng tin về mạng riêng hoặc mạng trong của hệ thống. Tường lửa lớp Ứng dụng
sẽ lọc các lưu lượng mạng dựa trên các dịch vụ Internet dùng để chuyển hoặc nhận
dữ liệu. Một proxy server là cách để tập trung các dịch vụ ứng dụng thông qua một
máy đơn lẻ, tại đây nó sẽ phân tích các gói dữ liệu. Khi các gói từ bên ngồi đến
cổng này, chúng được kiểm tra và đánh giá để xác định chính sách an tồn có cho
7


phép gói này đi vào mạng nội bộ hay khơng. Loại tường lửa này ảnh hưởng đến
hiệu suấtcủa mạng vì mỗi gói tin đi đến tường lửa phải được kiểm tra và đánh giá
để xác định trước khi cho phép đi vào mạng nội bộ. Tường lửa lớp ứng dụng được
xem là thế hệ tường lửa thứ hai, chúng hoạt động tại lớp ứng dụng (lớp 7) của mơ
hình OSI.

Hình 2: Tường lửa lớp ứng dụng
1.1.3. Circuit-level firewall
Tường lửa Circuit-level dùng để khởi tạo phiên kết nối giữa hai người dùng
tin cậy. Chúng hoạt động tại lớp Phiên (lớp 5) của mơ hình OSI. SOCKS
(SOCKetS trong TCP/IP) là dạng tường lửa circuit-level thường được áp dụng

nhất. Tường lửa circuitlevel còn được biết đến như là circuit proxy, quản lý kết nối
dựa trên circuit, chứ không phải nội dung của lưu lượng mạng. Chúng cho phép
hoặc từ chối chuyển tiếp gói tin dựa trên nơi mà gói tin cần được gởi đến (địa chỉ
nguồn/đích, số portnguồn/đích). Tường lửa circuit-level cũng được xem là thế hệ
thứ hai của tường lửa vì cơ chế hoạt động gần giống với tường lửa lớp ứng dụng

8


Hình 3: Circuit-level firewall
1.1.4. Stateful inspection firewall
Tường lửa kiểm tra trạng thái đánh giá hiện trạng hoặc bối cảnh lưu lượng
mạng. Bằng cách kiểm tra nguồn và địa chỉ đích, sử dụng các ứng dụng, nguồn
gốc, và mối quan hệ giữa các gói hiện tại và các gói trước của cùng một session.
Tường lửa kiểm tra trạng thái có thể cấp một phạm vi truy cập rộng cho người
dùng và các hoạt động có thẩm quyền, chủ động theo dõi và ngăn chặn người sử
dụng thực hiện các hoạt động trái phép. Tường lửa kiểm tra trạng thái thường hoạt
động hiệu quả hơn so với tường lửa mức Ứng dụng, được xem là tường lửa thế hệ
thứ ba, hoạt động ở lớp Mạng và lớp Giao vận (lớp 3 và 4) của mơ hình OSI .

Hình 4: Stateful inspection firewall
9


1.1.5. Các mơ hình triển khai tường lửa
Có ba dạng kiến trúc tường lửa thường được triển khai là: một lớp, hai lớp,
và ba lớp (còn được gọi là nhiều lớp). Kiến trúc tường lửa một lớp được kết nối
thông qua một router đến Internet (hoặc những vùng mạng không an tồn khác).
Mơ hình tường lửa một lớp khá hữu ích trong việc ngăn chặn các cuộc tấn công cơ
bản, kiến trúc này thực hiện được các cơ chế bảo mật tối thiểu.

Kiến trúc tường lửa hai lớp sử dụng một tường lửa có ba network interface
trở lên, cho phép thiết lập thêm một vùng DMZ hoặc Extranet để giao tiếp với
mạng bên ngoài. DMZ được sử dụng đặt những hệ thống máy chủ thơng tin mà
người dùng bên ngồi có thể truy cập.
Một kiến trúc ba lớp là việc triển khai của nhiều mạng con giữa mạng nội bộ
và Internet ngăn cách bởi các tường lửa. Mỗi tường lửa có quy tắc lọc nghiêm ngặt
hơn để hạn chế các quyền truy cập bất hợp lệ vào hệ thống mạng dữ liệu nhạy cảm.
Mạng ngoài cùng thường được triển khai như là một vùng DMZ. Lớp mạng thứ hai
có nhiệm vụ như một lớp mạng chuyển tiếp nhằm phục vụ các tính năng phức tạp
theo yêu cầu của máy chủ tại vùng DMZ (ví dụ: database, web service…). Mạng
con thứ ba hoặc back-end có thể hỗ trợ mạng nội bộ. Kiến trúc này là an toàn nhất,
tuy nhiên mức độ triển khai và quản lý phức tạp hơn so với các kiến trúc cịn lại.

Hình 5: Mơ hình tường lửa một lớp

10


Hình 6: Two-tier

Hình 7: Three-tier

1.2. Tổng quan pfsense

1.2.1. PfSense là gì?
PfSene là một dự án nguồn mở dựa trên nền tảng hệ điều hành FreeBSD và
được sử dụng như một tường lửa hoặc một thiết bị định tuyến. Chris Buechler và
Scott Ullrich là hai tác giả sáng lập dự án m0n0wall năm 2004. Tuy nhiên tại thời
điểm 2004, tác giả phải gặp vấn đề khó khăn khi mã nguồn của họ khơng tương
thích tốt với các giải pháp tích hợp phần cứng (các thiết bị sử dụng 64MB RAM).

PfSense với sự phát triển theo thời gian đã hỗ trợ rộng rãi các nền tảng phần cứng
khác nhau và được sự đóng góp to lớn từ cộng động sử dụng mã nguồn mở thế
giới. Cùng với các chức năng quản lý mạnh mẽ, thân thiện với người dùng nên
pfSense được cộng đồng sử dụng rộng rãi trong môi trường doanh nghiệp vừa và
nhỏ. PfSense yêu cầu cấu hình phần cứng thấp nên phù hợp cho việc tích hợp vào
các thiết bị tích hợp khác nhau nhằm tăng tính linh động và hiệu suất trong quá
trình vận hành. Phiên bản pfSense hiện tại được công bố là 2.4.4, tập trung phát
triển các tính năng hỗ trợ mơi trường mạng IPv6. PfSense bao gồm nhiều tính năng
đặc biệt là firewall trạng thái 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 lớn, chẳng hạn như giao diện người dùng (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ơ chế hoạt động
11


trong chế độ brigde 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 cơ
chế 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. Trong phân khúc tường lửa cho
doanh nghiệp vừa và nhỏ, với khoảng dưới 1000 người sử dụng, pfSense được
đánh giá là tường lửa nguồn mở tốt nhất hiện nay với khả năng đáp ứng lên tới
hàng triệu kết nối đồng thời. Khơng những thế, tường lửa pfSense cịn có nhiều
tính năng mở rộng tích hợp, tất cả trong một, vượt xa các tưởng lửa thông thường,
kể cả các tường lửa cứng của các hãng nổi tiếng về thiết bị mạng.

1.2.2. Một số phương pháp triển khai thực tế
Với các tính năng linh hoạt, pfSense được sử dụng trong nhiều mục đích
khác nhau trên thực tế. Giá thành triển khai thấp hơn so với những thiết bị cùng
loại, hỗ trợ những tính năng cơ bản và nâng cao như VPN, BGP, Wirelsess, cân
bằng tải, QoS… Các chức năng thường được sử dụng bao gồm: Tường lửa: với
tính năng xử lý gói tin TCP/IP mạnh mẽ, nên pfSense được dùng như một tường
lửa nhằm cản lọc những kết nối không hợp pháp đến một phân vùng mạng chỉ
định. Thiết bị định tuyến mạng WAN/LAN: đóng vai trị như một router, pfSense
hỗ trợ các chức năng như định tuyến như PPoE, BGP… phù hợp cho doanh nghiệp
triển khai với giá thành thấp mà không cần đầu tư thêm router cùng chức năng.
Trong môi trường mạng LAN, pfSense hỗ trợ giao thức 802.1q cho phép nhân viên
kỹ thuật có thể hoạch định các phân vùng mạng nội bộ khác nhau. PfSense có thể
hỗ trợ băng thơng 3Gbps hoặc xử lý hơn 500.000 gói tin/giây, vì vậy pfSense có
thể sử dụng thay thế một thiết bị switch lớp 3 (u cầu có thêm card mạng).
1.2.3. Tính năng cơ bản trong Pfsense
a. Aliases
Trong pfsense, firewall không thể có 1 rule gồm nhiều nhóm IP hoặc 1 nhóm
port. Vì vậy, điều ta cần làm là gom nhóm các IP, Port hoặc URL vào thành 1 alias .
Một alias sẽ cho phép thay thế 1 host, 1 dải mạng, nhiều IP riêng biệt hay 1 nhóm
12


port, URL … Alias giúp ta tiết kiệm được phần lớn thời gian nếu bạn sử dụng một
cách chính xác như thay vì sử dụng hàng loạt rule để thiết lập cho nhiều địa chỉ, ta
có thể sử dụng 1 rule duy nhất để gom nhóm lại.

Hình 8: Aliases
Các thành phần trong Aliases:
–    Host: tạo nhóm các địa chỉ IP.
–    Network: tạo nhóm các mạng.

–    Port: Cho phép gom nhóm các port nhưng khơng cho phép tạo nhóm các
protocol. Các protocol được sử dụng trong các rule.
b. NAT

Pfsense có hỗ trợ nat static dưới dạng NAT 1:1. Điều kiện để thực hiện được
nat 1:1 là ta phải có IP public. Khi thực hiện NAT 1:1 thì IP private được nat sẽ
ln ra ngồi bằng IP public tương ứng và các port cũng tương ứng trên IP public.
Pfsense hỗ trợ nat outbound mặc định với Automatic outbound NAT rule
generation. Để cấu hình thủ cơng, ta chọn Manual Outbound NAT rule generation
13


(AON - Advanced Outbound NAT) và xóa các rule mặc định của pfsense đi đồng
thời cấu hình thêm các rule outbound.

Hình 9: NAT Outbound
Ngồi 3 kiểu NAT: port forward, 1:1 và outbound, pfsense còn hỗ trợ NAT Npt.
Phương thức này thực hiện NAT đối với Ipv6.
c. Rules (Luật)
Là nơi lưu trữ tất cả các luật ra, vào trên pfsense. Mặc định PfSense cho phép
mọi kết nối ra, vào (tại cổng LAN có sẵn rule any à any). Ta phải tạo các rule để
quản lý mạng bên trong.
Một số lựa chọn trong Destination và Source.
Any: Tất cả
Single host or alias: Một địa chỉ ip hoặc là một bí danh.
Lan subnet: Đường mạng LAN.
Network: địa chỉ mạng.
LAN address: Tất cả địa chỉ mạng nội bộ.
Wan address: Tất cả địa chỉ mạng bên ngoài.
PTP clients: Các clients thực hiện kết nối VPN sử dụng giao thức PPT.

PPPoE clients: Các clients thực hiện kết nối VPN sử dụng giao thức PPPoE.
14


Hình 10: Giao diện Rules
d. Schedules
Chức năng lập lịch trong pfSense cho phép cấu hình thời gian hoạt động của hệ
thống một cách tự động thông qua bảng thời gian đã được thiết lập sẵn. Bằng cách
này, hệ thống pfSense sẽ tự động điều chỉnh các firewall rule theo thời gian lập
lịch.

Hình 11: Giao diện lập lịch pfSense
Chúng ta thực hiện cấu hình chỉ cho phép truy cập webserver của công ty vào thời
gian đã được chỉ định trong mục Schedules. Tại menu cấu hình tường lửa rule,
thực hiện chỉ định thời gian biểu đã được tạo trước đó.

e. Traffic shaper
15


Hình 12: Traffic shaper
Đây là tính năng giúp quản trị mạng có thể tinh chỉnh, tối ưu hóa đường truyền
trong pfsense. Trong pfsense, 1 đường truyền băng thông sẽ chia ra các hàng khác
nhau. Có 7 loại hàng trong pfsense:
 Hàng qACK: dành cho các gói ACK (gói xác nhận) trong giao thức TCP ở
những ứng dụng chính cần được hỗ trợ như HTTP, SMTP … luồng thông tin
ACK tương đối nhỏ nhưng lại rất cần thiết để duy trì tốc độ lưu thông lớn.
 Hàng qVoIP: dành cho những loại lưu thông cần đảm bảo độ trễ nghiêm ngặt,
thường dưới 10ms như VoIP, video conferences.
 Hàng qGames: dành cho những loại lưu thông cần đảm bảo độ trễ rất chặt chẽ,

thường dưới 50ms như SSH, game online …
 Hàng qOthersHigh: dành cho các loại ứng dụng quan trọng có tính tương tác rất
cao, cần đáp ứng nhanh, cần độ trễ thấp như: NTP, DNS, SNMP …
 Hàng qOthersDefault: dành cho các giao thức ứng dụng quan trọng có tính
tương tác vừa, cần độ đáp ứng nhất định như HTTP, IMAP …
 Hàng qOthersLow: dành cho các giao thức ứng dụng quan trọng nhưng có tính
tương tác thấp như SMTP, POP3, FTP
 Hàng qP2P: dành cho cho các ứng dụng không tương tác, không cần đáp ứng
nhanh như bittorrent
Mặc định trong pfsense, các hàng sẽ có độ ưu tiên từ thấp đến cao: qP2P <
qOthersLow < qOthersDefault < qOthersHigh < qGames < qACK < qVoIP. Ta có
thể chỉnh lại độ ưu tiên priority cũng như dung lượng băng thông bandwidth mặc
định mà các hàng chiếm để nâng cao băng thông cho các hàng tương ứng.
16


Pfsense cũng hỗ trợ giới hạn tốc độ download/upload của 1 IP hoặc 1 dải IP với ta
thiết lập thông số tại phần limiter. Firewall pfsense hỗ trợ chặn những ứng dụng
chạy trên layer 7 – application trong mơ hình OSI như sip, ftp, http … trong phần
Layer 7.
f. Virtual Ips.

Hình 13: Virtual Ips.
Pfsense cho phép sử dụng nhiều địa chỉ IP công cộng kết hợp với cơ chế
NAT thông qua IP ảo. Có ba loại IP ảo có sẵn trên pfSense: Proxy ARP, CARP và
một loại khác. Mỗi loại đều rất hữu ích trong các tình huống khác nhau. Trong hầu
hết các trường hợp, pfSense sẽ cung cấp ARP trên IPs, do đó cần phải sử dụng
Proxy ARP hoặc CARP. Trong tình huống mà ARP khơng cần thiết, chẳng hạn
như khi các IP công cộng bổ sung được định tuyến bởi nhà cung cấp dịch vụ mạng,
sẽ sử dụng IP ảo loại khác. 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à NAT 1:1. Họ cũng cho phép các tính năng như failover, và có thể cho
phép dịch vụ trên router để gắn kếtvới địa chỉ IP khác nhau.
CARP
 Có thể được sử dụng bởi các tường lửa chính nó để chạy các dịch vụ hoặc
được chuyển tiếp.
 Tạo ra lớp 2 lưu lượng cho các VIP (Virtual IP).
 Có thể được sử dụng cho clustering (tường lửa và tường lửa chủ failover chế
độ chờ).
 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.
17


 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 lưu lượ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.

Other
 Có thể được sử dụng nếu các tuyến đường cung cấp cho bạn VIP của bạn dù
sao mà không cần thông báo lớp 2.
 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.
 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.

1.2.4. VPN

VPN (Virtual Private Network) là một kiểu kết nối cho phép các máy tính
truyền thơng với nhau thơng qua một môi trường chia sẻ như mạng Internet nhưng
vẫn đảm bảo được tính riêng tư và bảo mật dữ liệu. Để cung cấp kết nối giữa các
máy tính, các gói thơng tin được bao bọc bằng một header có chứa những thơng tin
định tuyến, cho phép dữ liệu có thể gửi từ máy truyền qua môi trường mạng chia sẻ
và đến được máy nhận, như truyền trên các đường ống riêng được gọi là tunnel. Để
bảo đảm tính riêng tư và bảo mật trên môi trường chia sẻ này, các gói tin được mã
hố và chỉ có thể giải mã với những khóa thích hợp, ngăn ngừa trường hợp “trộm”
gói tin trên đường truyền. Chức năng này của pfSense được đánh giá là rất tốt.
a. Ipsec (Ip Security)

18


IPSec có vai trị rất quan trọng trong việc giải quyết các vấn đề mà chúng ta cố
giải quyết nó với firewall. IPSec (IP Security) đề ra một tập các chuẩn được phát
triển bởi Internet Engineering Tast Force (IETF). IPSec giải quyết hai vấn đề gây
hại cho bộ giao thức IP: Sự xác thực host-to-host (cho các host biết là chúng đang
nói chuyện với nhau mà khơng phải là sự giả mạo) và việc mã hóa (ngăn chặn
những kẻ tấn công xem dữ liệu trong luồng lưu lượng giữa hai máy). Đây là các
vấn đề mà firewall cần giải quyết. Mặc dù firewall có thể làm giảm nguy cơ tấn
cơng trên Internet mà không cần sự xác thực và mã hóa, nhưng vẫn cịn hai vấn đề
lớn ở đây: tính tồn vẹn và sự riêng tư của thơng tin đang truyền giữa hai host và
sự giới hạn trong việc đặt ra các loại kết nối giữa các mạng khác nhau. IPSec giúp
giải quyết các vấn đề này. Có vài khả năng đặc biệt khi chúng ta xem xét sự kết
hợp giữa các firewall với các host cho phép IPSec. Cụ thể là, VPN, việc lọc gói tốt
hơn (lọc những gói mà có tiêu đề xác thực IPSec), và các firewall lớp ứng dụng sẽ
cung cấp sự xác minh host tốt hơn bằng cách sử dụng tiêu đề xác thực IPSec thay
cho “just trusting” địa chỉ IP hiện tại.
b. PPTP VPN

Pfsense có thể hoạt động như một máy chủ PPTP VPN, là một trong ba tùy
chọn của VPN, là lựa chọn phổ biến nhất vì hầu hết các hệ điều hành đã được xây
dựng trong PPTP client. Bao gồm tất cả các phiên bản Windows từ Windows 95.
Tuy nhiên nó khơng được đảm bảo an tồn, khơng nên sử dụng.
c. OpenVPN
OPENVPN là một giải pháp SSL VPN mã nguồn mở có thể được sử dụng cho
cả client truy cập từ xa và kết nối kiểu site-to-site. Nó hỗ trợ client trên phạm vi
rộng của các hệ điều hành bao gồm tất cả BSD, Linux, Mac OS X, Windows 2000
trở đi. Chức năng này tương đường với cấu hình trực diện. Địa điểm chính được
cấu hình như client đang kết nối với máy chủ tại địa điểm từ xa đó.
1.2.5. Một số dịch vụ của firewall pfsense

19


a. DHCP Server
Dịch vụ này cho phép pfSense cấp địa chỉ IP và các thơng tin cấu hình cho
client trong mạng LAN.
b. DHCP Relay
Dịch vụ này cho phép pfSense forward yêu cầu cấp IP của client nằm trong một
subnet nào đó tới một DHCP server cho trước. Chỉ được phép chạy một trong hai
dịch vụ DHCP server và DHCP relay.
c. Dynamic DNS
Pfsense cho phép đăng ký địa chỉ IP của WAN interface của nhiều nhà cung cấp
DNS động. Nó rất hữu ích khi muốn điều khiển từ xa.
d. SNMP (Simple Network Management Protocol)
Chức năng SNMP của pfSense sẽ cho phép giám sát từ xa các thông số hệ
thống pfSense. Tùy thuộc vào các tùy chọn cho phép mà có thể theo dõi như: lưu
lượng mạng, hàng đợi, thông tin chung hệ thống(CPU, bộ nhớ….).
e. WOL (Wake On Lan)

Được dùng để đánh thức máy tính đã tắt bằng cách gửi gói tin đặc biệt “Magic
packet”. Các NIC trong máy tính phải được hỗ trợ WOL và phải được cấu hình
đúng. Thơng thường thiết lập WOL của NIC ở BIOS.
f. PPPoE Server
Pfsense có thể hoạt động như một máy chủ PPPoE, chấp nhận hoặc xác thực kết
nối từ client PPPoE trên interface cục bộ. Nó được dùng để bắt buộc người dùng

20


xác thực trước khi được quyền truy cập mạng hoặc kiểm soát hoạt động đăng nhập
của họ.
g. Một số chức năng khác
 System log: theo dõi hoạt động của hệ thống pfSense và các dịch vụ mà
pfSense cung cấp. Mọi hoạt động của hệ thống và dịch vụ đều được ghi lại.
 System Status: Liệt kê các thông tin và tình trạng của hệ thống.
 Service Status: Hiển thị trạng thái của tất cả các service có trong hệ thống.
Mỗi service có hai trạng thái là: running, stopped.
 Interface Status: Hiển thị thông tin của tất cả card mạng.
 RRD Graph: Hiển thị các thông tin dưới dạng đồ thị. Các thông tin mà RRD
Graph sẽ thể hiện là: System, Traffic, Packet, Quality, Queues.
 Pfsense khá linh hoạt với các hệ thống khác để hỗ trợ tốt hơn cho việc vận
hành của pfSense như: kết hợp chứng thực người dùng thơng qua hệ thống
RADIUS…
 Ngồi ra pfSense cịn có thể kết nối với mạng 3G, 4G thông qua thiết bị 3G,
4G. Trường hợp này phòng bị cho sự cố bất khả kháng khi tất cả các đường
truyền internet bằng cáp bị hư hỏng.

21



CHƯƠNG II: XÂY DỰNG BÀI THỰC HÀNH: BẢO VỆ
AN TOÀN MẠNG SỬ DỤNG TƯỜNG LỬA PFSENSE
2.1. Mơ hình

- WAN: 192.168.1.0/24. Sử dụng card mạng VmNet0 (Auto bridging) - Phân vùng
mạng kết nối Internet
- DMZ: 20.1.1.0/24 VmNet8 (Host-only) - Phân vùng đặt các máy chủ web.
- Internal (LAN) 10.0.0.0/24 VmNet1 (Host-only) - Phân vùng mạng nội bộ.
- VPN: 30.1.1.0/24 – Mạng riêng ảo, truy cập kết nối từ xa.

2.2. Cài đặt PfSense
22


Trước hết, chúng ta cùng điểm qua cấu hình phần cứng yêu cầu để chạy
pfSense. Firewall yêu cầu cấu hình rất nhẹ, hầu hết máy tính ngày nay đều có thể
đáp ứng tốt.





Pentium II trở lên.
256 Ram trở lên.
1GB ổ cứng trống.
2 card mạng, gói cài đặt pfSense.
.

Đầu tiên chúng ta cần truy cập địa chỉ trang chủ: để tải file

cài đặt pfSense. Chọn kiến trúc vi xử lí ( Intel hoặc AMD ). Sau đó tiến hành
download file Image về máy, lưu ý nhớ chọn bản mới nhất với hiện tại là bản
2.4.4. Sau khi tải xong ta mở VMWare lên vào tạo máy ảo mới, add 3 card mạng
cho PfSense.

Tại màn hình cài đặt của pfSense, một menu sẽ hiển thị các tùy chọn cài đặt. Có
thể bấm phím 1 để cài đặt mặc định. Nếu khơng chọn thì máy tính sẽ tự động chọn
cài đặt mặc định.

23


Ở màn hình kế tiếp, bấm vào “Accept” để di chuyển đến tiến trình cài đặt kế tiếp.

Tiếp theo tại màn hình Welcome to pfSense, ta chọn Install pfSense.

24


Chọn cài đặt mặc định với keymap, chọn Select.

Chương trình hỏi muốn phân vùng ổ đĩa không, ta chọn Auto rồi nhấn OK.

25


×