Download luận văn bài tập tiểu luận với đề tài: Thiết kế hệ thống mạng cho một công ty, cho các bạn làm luận văn tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Download luận văn bài tập tiểu luận với đề tài: Thiết kế hệ thống mạng máy tính, cho các bạn làm đề tài tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu giải pháp an ninh mạng với firewall, cho các bạn làm luận văn tham khảo
Download luận văn bài tập tiểu luận với đề tài: Thiết kế hệ thống mạng cho một công ty, cho các bạn làm luận văn tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Download luận văn bài tập tiểu luận với đề tài: Thiết kế hệ thống mạng máy tính, cho các bạn làm đề tài tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu giải pháp an ninh mạng với firewall, cho các bạn làm luận văn tham khảo
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008laonap166
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
download full http://www.mediafire.com/download/ctm94clmsxcck6e/%5BDOTNET.VN%5DBai9-NETWORK_XayDungHeThongMang.zip
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu hệ thống phát hiện xâm nhập IDS-SNORT, cho các bạn làm luận văn tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Xây dựng hệ thống giám sát mạng dựa trên phần mềm nguồn mở Zabbix, cho các bạn làm luận văn tham khảo
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008laonap166
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
download full http://www.mediafire.com/download/ctm94clmsxcck6e/%5BDOTNET.VN%5DBai9-NETWORK_XayDungHeThongMang.zip
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu hệ thống phát hiện xâm nhập IDS-SNORT, cho các bạn làm luận văn tham khảo
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://baocaothuctap.net
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Xây dựng hệ thống giám sát mạng dựa trên phần mềm nguồn mở Zabbix, cho các bạn làm luận văn tham khảo
Quảng Ninh CIO: QUẢN LÝ VÀ BẢO MẬT THÔNG TIN DOANH NGHIỆPVu Hung Nguyen
CHƯƠNG TRÌNH NÂNG CAO NĂNG LỰC LÃNH ĐẠO THÔNG TIN (CIO) KHỐI DOANH NGHIỆP NHÀ NƯỚC THÀNH PHỐ HẠ LONG, QUẢNG NINH, 18-21/06/2013
NGƯỜI TRÌNH BÀY: LÊ TRUNG NGHĨA
VĂN PHÒNG PHỐI HỢP PHÁT TRIỂN
MÔI TRƯỜNG KHOA HỌC & CÔNG NGHỆ,
BỘ KHOA HỌC & CÔNG NGHỆ
Nội dung:
1. An toàn thông tin – Các lớp được bảo vệ
2. Kiến trúc mạng an toàn
3. Bảo mật email
4. Bảo mật mạng không dây
5. Chính sách về mật mã (password)
6. ISO/IEC 27001 – Information Security Management
7. Giải pháp phòng chống thảm họa
Thông tin liên hệ tư vấn hệ thống an ninh mạng:
Công ty Cổ phần Tin học Lạc Việt
Hotline: (+84.8) 38.444.929
Email: info@lacviet.com.vn
Website: http://www.lacviet.vn/
Tải Free TIỂU LUẬN VỀ AN NINH MẠNG 9 ĐIỂM. Thuật ngữ Firewall có nguồn gốc từ một kỹ thuật thiết kế trong xây dựng để ngăn chặn, hạn chế hỏa hoạn. Trong công nghệ thông tin, Firewall là một kỹ thuật được tích hợp vào hệ thống mạng để chống sự truy cập trái phép, nhằm bảo vệ các nguồn thông tin nội bộ và hạn chế sự xâm nhâp không mong muốn vào hệ thống. Firewall được miêu tả như là hệ phòng thủ bao quanh với các “chốt” để kiểm soát tất cả các luồng lưu thông nhập xuất. Có thể theo dõi và khóa truy cập tại các chốt này.
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn thạc sĩ ngành công nghệ thông tin với đề tài: Nghiên cứu tiêu chuẩn ISO 27001 và ứng dụng, cho các bạn làm luận văn tham khảo
Download luận văn thạc sĩ ngành công nghệ thông tin với đề tài: Nghiên cứu một số bài toán an toàn thông tin trong mạng riêng ảo, cho các bạn làm luận văn tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu giải pháp an ninh mạng với Firewall, cho các bạn làm luận văn tham khảo
Đồ Án Tốt Nghiệp Về Nghiên Cứu Kiến Trúc Mạng Internet, Sự Lây Lan Của Worm V...mokoboo56
Đồ Án Tốt Nghiệp Về Nghiên Cứu Kiến Trúc Mạng Internet, Sự Lây Lan Của Worm Và Cách Phòng Chống.docx
Dịch vụ hỗ trợ viết đề tài điểm cao – LUANVANTRUST.COM
Zalo / Tel: 0917.193.864
Đồ Án Tốt Nghiệp Về Nghiên Cứu Kiến Trúc Mạng Internet, Sự Lây Lan Của Worm V...
Pf sense firewall
1. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
MỤC LỤC
MỤCLỤC
I
CHƢƠNG 1.
TỔNG QUAN.....................................................................................1
1.1. Tổng quan tường lửa ......................................................................................... 1
1.1.1.
Static packet-filtering firewall ................................................................ 2
1.1.2.
Application-level firewal ........................................................................ 2
1.1.3.
Circuit-level firewall ............................................................................... 3
1.1.4.
Stateful inspection firewall ..................................................................... 4
1.2. Các mô hình triển khai tường lửa ..................................................................... 5
1.3. Tổng quan pfSense ............................................................................................ 6
1.4. Một số phương pháp triển khai thực tế ............................................................. 6
1.5. Các nền tảng phần cứng hỗ trợ ......................................................................... 7
CHƢƠNG 2. TRIỂN KHAI HỆ THỐNG PFSENSE TRONG MÔI TRƢỜNG
MẠNG DOANH NGHIỆP ...........................................................................................8
2.1. Sơ đồ triển khai cơ bản ..................................................................................... 8
2.2. Cài đặt pfSense.................................................................................................. 8
2.3. Cấu hình pfSense cơ bản ................................................................................... 9
2.4. Cấu hình tường lửa.......................................................................................... 12
2.4.1.
Alias ...................................................................................................... 12
2.4.2.
NAT ...................................................................................................... 14
2.4.3.
Rules ..................................................................................................... 16
2.4.4.
Schedules .............................................................................................. 17
2.5. QoS.................................................................................................................. 18
2.6. pfSense Squid proxy ....................................................................................... 24
2.6.1.
Squid web cache proxy ......................................................................... 24
2.6.2.
SquidGuad ............................................................................................ 26
2.7. VLAN.............................................................................................................. 28
2.7.1.
Trunking................................................................................................ 28
2.7.2.
VLAN ID .............................................................................................. 29
2.7.3.
Double tagging (QinQ) ......................................................................... 29
2.8. Cân bằng tải .................................................................................................... 29
2.8.1.
Cân bằng tải multi-WAN ...................................................................... 30
Internet Gateway với Firewall Open Sources
Trang I
2. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.8.2.
Cân bằng tải máy chủ............................................................................ 33
2.9. Redundancy và Failover: CARP và pfsync .................................................... 37
2.9.1.
Tổng quan CARP .................................................................................. 37
2.9.2.
Tổng quan psync ................................................................................... 38
2.9.3.
Tổng quan đồng bộ XML-RPC của pfSense ........................................ 38
2.9.4.
Triển khai mô hình cơ bản .................................................................... 39
2.9.5.
Triển khai mô hình multiWAN ............................................................. 43
2.10.
VPN ............................................................................................................. 46
2.10.1.
IPSEC.................................................................................................... 47
2.10.2.
L2TP ..................................................................................................... 49
2.10.3.
PPTP ..................................................................................................... 50
2.10.4.
OpenVPN .............................................................................................. 51
2.10.5.
Trích xuất cấu hình OpenVPN client.................................................... 54
2.11.
Captive portal .............................................................................................. 57
2.12.
Logging, monitoring, và statistics ............................................................... 59
2.12.1.
Remote syslog ....................................................................................... 61
2.12.2.
Đồ thị RRD ........................................................................................... 62
CHƢƠNG 3.
TÀI LIỆU THAM KHẢO ..............................................................64
Internet Gateway với Firewall Open Sources
Trang II
3. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
CHƢƠNG 1. TỔNG QUAN
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. Ngoà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.
Ngoà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
Internet Gateway với Firewall Open Sources
1
4. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
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 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 coilà 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 firewal
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ó
Internet Gateway với Firewall Open Sources
2
5. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
sẽ phân tích các gói dữ liệu. Khi các gói từ bên ngoài đến cổng này, chúng được kiểm
tra và đánh giá để xác định chính sách an toàn có cho 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
Internet Gateway với Firewall Open Sources
3
6. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
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
Internet Gateway với Firewall Open Sources
4
7. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
1.2. 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 toà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ớpsử dụng một tường lửa cóbanetwork 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 ngoà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
Hình 6: Two-tier
Hình 7: Three-tier
Internet Gateway với Firewall Open Sources
5
8. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
1.3. Tổng quan pfSense
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.1, tập trung phát triển các tính năng hỗ
trợ môi trường mạng IPv6.
1.4. 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 (yêu
cầu có thêm card mạng).
Internet Gateway với Firewall Open Sources
6
9. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Wireless Access Point.
Máy chủ VPN/DNS/DHCP/Sniffer: pfSense được tác giả tích hợp thêm các mã
nguồn mở như TinyDNS (http://tinydns.org), tcpdump
(http://www.tcpdump.org/) nhằm phục vụ với vai trò là máy chủ DNS hoặc
máy chủ sniffer (thu thập gói tin cho nhiệm vụ phân tích).
1.5. Các nền tảng phần cứng hỗ trợ
Live CD: nhân viên quản trị hệ thống có thể sử dụng pfSense bằng cách khởi động mã
nguồn pfSense và sử dụng trực tiếp trên CD hoặc USB. Tuy nhiên, phương pháp này
không được khuyến cáo sử dụng do một số tính năng như vẽ đồ thị lưu lượng truy cập
không thể thực hiện.
Cài đặt vào thiết bị có kiến trúc máy tính (computer based device): đây là phương
pháp được tác giả khuyến cáo sử dụng. PfSense được cài đặt trên thiết bị máy tính sẽ
hỗ trợ đầy đủ các tính năng mà tác giả đã tích hợp. Tuy nhiên, nhân viên quản trị cần
chú ý pfSense không hỗ trợ khởi động nhiều nền tảng hệ điều hành (Multi-boot), vì
vậy cần bảo đảm rằng các thiết bị lưu trữ (HDD, SSD) có thể bị xóa trắng trong quá
trình cài đặt.
Tích hợp (embedded): pfSense được cài đặt trên thẻ CF có thể được sử dụng cho các
thiết bị phần cứng tích hợp. Tuy nhiên do hạn chế về không gian lưu trữ, nên người sử
dụng cần lưu ý nên cấu hình sử dụng bộ nhớ RAM hệ thống để lưu trữ các bản ghi
nhật ký trong quá trình vận hành.
Internet Gateway với Firewall Open Sources
7
10. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
CHƢƠNG 2. TRIỂN KHAI HỆ THỐNG PFSENSE
TRONG MÔI TRƢỜNG MẠNG DOANH NGHIỆP
2.1. Sơ đồ triển khai cơ bản
Hình 8: Sơ đồ hệ thống
Vùng mạng
Internet (WAN)
IP/SUBNET
VMware NIC
VmNet0
192.168.0.0/24
(Auto bridging)
DMZ
172.16.10.0/24 VmNet8 (Host-only)
Internal (LAN)
10.0.0.0/24
VmNet1 (Host-only)
Mô tả
Phân vùng mạng
kết nối Internet
Phân vùng đặt các
máy chủ web.
Phân vùng mạng
nội bộ.
2.2. Cài đặt pfSense
Thực hiện tải CD cài đặt Pfsense tại website www.pfsense.org. Người dùng cóthể
download phiên bản cài đặt phù hợp với nhu cầu triển khai thực tế tại mục Download.
Hiện tại pfSense đã hỗ trợ nền tảng ảo hóa VMware, người sử dụng có thể tải và tích
hợp trực tiếp vào hạ tầng ảo dễ dàng và hiệu quả.
Internet Gateway với Firewall Open Sources
8
11. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Trong ví dụ bên dưới, chúng tôi thực hiện cài đặt pfSense từ tập tin ISO đã được tải và
ghi đĩa CD. Cấu hình phần cứng sử dụng bao gồm: CPU Core I3 (1 processor),
RAM 256MB, HDD 5GB, 3 NIC, CD Rom.
Hình 9: PfSense thông báo thông tin đăng nhập mặc định
2.3. Cấu hình pfSense cơ bản
Tại phần này, chúng tôi thực hiện cấu hình các chức năng cơ bản của pfSense bằng
giao diện quản trị Web (WebGUI). Thực hiện truy cập vào địa chỉ IP mà hệ thống đã
cấp cho máy pfSense như hình 7, đăng nhập với tài khoản mặc định user: admin,
password: pfsense.
Sau khi đã đăng nhập thành công, pfSense sẽ yêu cầu cấu hình một số thông tin cơ bản
phù hợp với hệ thống mạng sử dụng.
Hình 10: Cấu hình thông tin IP
Internet Gateway với Firewall Open Sources
9
12. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Tại mục cấu hình IP cho card mạng kết nối với hệ thống WAN, quản trị viên cần cấu
hình chính xác thông tin kết nối với hệ thống WAN do nhà cung cấp dịch vụ (ISP) đã
cung cấp. PfSense hỗ trợ các dạng cấu hình IP kết nối WAN như sau:
DHCP/Static/PPoE/PPTP.
Cấu hình PfSense cấp DHCP cho các máy client trong vùng mạng LAN.
Chúng tôi thực hiện đăng ký một card mạng vào vùng LAN với địa chỉ MAC tương
ứng tại menu Interfaces > Assign
Hình 11: Lựa chọn địa chỉ MAC tương ứng
Tiếp theo, chúng tôi cấu hình các thông tin IP, DNS cho card mạng kết nối với vùng
mạng nội bộ. Chú ý: trong trường hợp nhân viên quản trị muốn sử dụng pfSense như
một máy chủ DHCP thì bắt buộc card LAN phải được cấu hình địa chỉ IP tĩnh.
Hình 12: Thông tin mô tả card mạng
Hình 13: Địa chỉ IP được cấu hình tại card LAN
Sau khi các thông tin cấu hình cơ bản, nhấn nút Save và “Apply changes”. Chuyển
sang menu Services > DHCP Server, chọn thẻ LAN.
Internet Gateway với Firewall Open Sources
10
13. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 14: Cung cấp dãy IP mà pfSense cấp cho người dùng
Hình 15: Cung cấp DNS tại phía người dùng
Hình 16: Cung cấp Default gateway
Sau khi cấu hình hoàn thành, tại phía client thực hiện yêu cầu server cấp IP và kiểm
tra đường truyền.
Hình 17: Client đã được cấp IP từ pfSense
Hình 18: Kiểm tra kết nối mạng LAN
Internet Gateway với Firewall Open Sources
11
14. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 19: Kiểm tra kết nối Internet
Hình 20: Trạng thái cấp phát IP tại pfSense
2.4. Cấu hình tƣờng lửa
2.4.1. Alias
Alias là một phương pháp đặt bí danh cho một hoặc nhiều IP/Network/URL… nhằm
giúp quản trị viên dễ dàng quản lý các địa chỉ mạng hoặc subnet.
Thực hiện truy cập menu tường lửa > Aliases để tạo mới hoặc chỉnh sửa các alias.
Hình 21: Giao diện tạo alias
Internet Gateway với Firewall Open Sources
12
15. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 22: Alias Webserver1
pfSense hỗ trợ tạo alias bằng một danh sách địa chỉ IP được lưu trữ từ xa, và thực hiện
cập nhật danh sách tự động theo thời gian đã được cấu hình.
Hình 23: URL Table Alias
Hình 24: Danh mục IP Trung Quốc
Hình 25: Alias danh mục website
Internet Gateway với Firewall Open Sources
13
16. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.4.2. NAT
Network Address Tranlation (NAT) là một cơ chế chuyển đổi IP được sử dụng rộng
rãi, nhằm giảm số lượng IP publickhi kết nối với hệ thống mạng Internet. Cơ chế NAT
dược sử dụng theo một trong hai cách dựa vào hướng truyền dữ liệu là inbound và
outbound. Outbound NAT dùng chuyển đổi các IPprivate thành IP public với mục
đích cho phép các máy tính trong mạng nội bộ có thể kết nối Internet. Inbound NAT
dùng chuyển đổi IP từ bên ngoài vào các máy tính nội bộ.
2.4.2.1 Port Forward
Tại menu tường lửa > NAT > chọn thẻ Port Forward, thực hiện tạo mới một rule NAT
cho phép các máy tính từ Internet truy cập máy chủ web trong vùng DMZ.
Hình 26: NAT Webserver1 - DMZ
Internet Gateway với Firewall Open Sources
14
17. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 27: Truy cập máy chủ web từ Public IP
2.4.2.2 Reflection 1:1
Cấu hình NAT reflection 1:1 được dùng ánh xạ 1 địa chỉ IP public thành 1 IP private.
Hình 28: Cấu hình NAT Reflection 1:1
Internet Gateway với Firewall Open Sources
15
18. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.4.2.3 Outbound
Khi sử dụng cấu hình mặc định trong mục NAT Outbound, pfSense sẽ tự động tạo các
bản ghi NAT cho phép các IP private truy cập internet thông qua IP public. Các cấu
hình mẫu này bao gồm các rule cho phép các kết nối VPN đến hệ thống, tuy nhiên
quản trị viên cần chú ý tạo thêm các static route phù hợp với hạ tầng mạng.
Hình 29: Automatic outbound NAT
Đối với những hạ tầng mạng phức tạp yêu cầu cấu hình những rule linh động hơn để
phù hợp với kiến trúc mạng doanh nghiệp, ta có thể chọn Manual Outbound NAT với
mục đích tùy biến các rule hiện có.
2.4.3. Rules
Rule là thành phần cơ bản trong các hệ thống tường lửa giúp tạo ra các chính sách
mạng dựa trên mô hình TCP/IP. Theo cấu hình mặc định của pfSense, các rule cho
phép các vùng mạng kết nối với nhau, tuy nhiên việc này không thường gặp trong
thực tế do các yêu cầu bảo mật, nhân viên quản trị mạng cần tùy biến các rule cho phù
hợp với các chính sách truy cập mạng của doanh nghiệp.
Internet Gateway với Firewall Open Sources
16
19. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 30: Rule mặc định được cấu hình tại card WAN
Chú ý: Trong trường hợp sử dụng NAT port forward thì pfSense tự động tạo rule phù
hợp cho phép kết nối từ mạng WAN đến vùng DMZ.
Hình 31: Rule được tạo tự động khi sử dụng NAT
Các thành phần cơ bản của rule:
Action: pfSense có 3 tùy chọn Pass/Block (hủy gói tin)/Reject (gởi cờ
RST về phía người dùng);
Disabled: tắt hoạt động của rule hiện tại mà không cần xóa;
TCP/IP version: pfSense hoạt động với phiên bản IPv4 và IPv6;
Protocol: pfSense cho phép tùy chọn các giao thức truyền dữ liệu (TCP,
UDP, ICMP…) và giao thức định tuyến (OSPF, IGMP);
Source/Destination (port): chỉ định các IP nguồn/đích;
Log: bật chức năng theo dõi hoạtđộng của rule hiện tại.
2.4.4. 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.
Internet Gateway với Firewall Open Sources
17
20. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 32: Giao diện lập lịch pfSense
Chúng tôi 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 đó.
Hình 33: Chỉ định thời gian biểu Working
Hình 34: Rule hoạt động khi thời gian biểu phù hợp
2.5. QoS
Traffic Shaper còn được gọi QoS (Quality of Service) được sử dụng trong môi trường
có nhiều loại dịch vụ mạng cùng hoạt động như VoIP, data network, streaming…,
việc xây dựng QoS trong môi trường mạng doanh nghiệp là khá quan trọng nhằm bảo
đảm tính ổn định cho các dịch vụ cần độ ưu tiên cao.
Internet Gateway với Firewall Open Sources
18
21. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Việc quản lý QoS được sử dụng trong pfSense dựa trên nền tảng AltQ (ALTernate
Queueing). AltQ được tích hợp và sử dụng trong BSD UNIX nhằm cung cấp cơ chế
xử lý gói tin cũng như quản lý luồng băng thông đi qua. Đối với các luồng dữ liệu
TCP/IP mặc định thì các gói tin được xử lý theo thứ tự đầu vào (phương pháp FIFO).
Để thay đổi thứ tự gói tin được xử lý, AltQ sử dụng các thuật toán xử lý các gói tin
dựa trên mức độ ưu tiên. Các thuật toán được AltQ dùng trong cơ chế lập lịch kiểm
soát gói tin bao gồm Class Based Queuing (CBQ), Priority-based queues (PRIQ) và
Hierarchical Fair Service Curve (HFSC).
CBQ: Class-based queues hoạt động dựa vào các chỉ số băng thông mạng như
số phần trăm băng thông được sử dụng hoặc tổng dung lượng được sử dụng
theo đơn vị kilobits, megabits hoặc gigabits với thời gian tính bằng giây. CBQ
thực hiện phân mức ưu tiên cho các gói tin từ 0 đến 7, các gói tin có độ ưu tiên
cao hơn sẽ được xử lý trước so với các gói tin có độ ưu tiên thấp hơn.Ví dụ:
Dịch vụ/Giao thức
Băng thông đƣợc sử dụng
Web
30%
SSH
20%
ICMP
2%
UDP
30%
18%
Khác
PRIQ: cơ chế PRIQ dựa vào mức độ ưu tiên được chia thành các mức độ từ 0
đến 15, các dịch vụ có giá trị ưu tiên cao hơn sẽ được xử lý trước.
HFSC: thuật toán Hierarchical Fair Service Curve được sử dụng nhằm bảo đảm
các kết nối đều có thể ở một mức ổn định cho từng loại dịch vụ.Giả sử, khi bạn
tạo một kết nối lần đầu tiên đến một web server thì trong vài giây đầu tiên băng
thông sử dụng là tối đa ~100KB/giây, trong vài giây tiếp theo thì băng thông sẽ
giảm xuống phụ thuộc vào cấu hình ~25KB/sec. Vậy trong trường hợp người
dùng thực hiện tải một tập tin dung lượng 5MB sẽ được pfSense giới hạn ở tốc
độ thấp nhằm bảo đảm đủ băng thông cho các kết nối khác.
Các phiên bản pfSense từ 2.0 tích hợp thêm cơ chế Dummynet, đây là cơ chế được sử
dụng chính trong ipfirewall. Một tính năng mạnh mẽ mà pfSense cung cấp đến người
dùng là cho phép quản lý băng thông đối với các giao thức lớp 7 như Skype, IRC,
Internet Gateway với Firewall Open Sources
19
22. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Yahoo,… ipfw-classifyd là ứng dụng chịu trách nhiệm phân loại các nhóm giao thức
lớp 7 được tạo bởi một chương trình cụ thể.
Cơ chế lọc QoS tại lớp 7 được thực hiện qua bốn bước chính:
Phân loại nhóm giao thức lớp 7: tiến trình này được xử lý thông qua cơ chế
kiểm soát gói tin tại AltQ hoặc Dummynet nhằm phân loại các gói tin TCP/IP.
Chuyển hướng luồng dữ liệu: các gói tin đầu vào sau khi được kiểm tra tại lớp
3 (địa chỉ nguồn/đích) sẽ được pfSense chuyển sang xử lý tại tiến trình ipfwclassifyd.
Tạo mẫu cho các giao thức lớp 7: các mẫu này được pfSense định nghĩa trong
các tập tin có dạng tengiaothuc.pat nằm tại thư mục /usr/local/share/protocols,
đây là thành phần quan trọng giúp pfSense có thể xác định các giao thức hoạt
động tại lớp 7.
Hình 35: Các tập tin lưu trữ các mẫu dữ liệu giao thức lớp ứng dụng
Hình 36: Mẫu dữ liệu giao thức lớp 7 chương trình Half-Life 2
Internet Gateway với Firewall Open Sources
20
23. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Chỉ định hành vi: sau khi các gói tin được so trùng tại bước 3, tiến trình ipfwclassifyd sẽ thực hiện hủy/cho phép gói tin phụ thuộc cấu hình từ người dùng.
Hình 37: Quy trình xử lý gói tin tại pfSense
Cấu hình tại pfSense
Truy cập menu tường lửa > Traffic Shaper > chọn thẻ Wizards, pfSense cung cấp sẵn
một số cấu hình tham khảo thường dùng trong kiến trúc mạng bao gồm: Single Lan
multi Wan, Single Wan multi Lan, Multi Lan/Wan và Dedicated links.
Hình 38: Các cấu hình tham khảo do pfSense cung cấp
Chúng tôi thực hiện chọn 1 cấu hình mẫu cho sơ đồ tại mục SƠ ĐỒ TRIỂN KHAI là
Single Wan multi Lan.
Hình 39: Số lượng card LAN
Internet Gateway với Firewall Open Sources
21
24. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 40: Nhập thông số băng thông cho phép Upload/Download
Hình 41: Cấu hình QoS dịch vụ VoIP Asterisk
Hình 42: Cấu hình QoSdịch vụ P2P
Internet Gateway với Firewall Open Sources
22
25. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 43: Cấu hình QoS dịch vụGame (layer 7)
Hình 44: Cấu hình QoS dịch vụ mạng khác
Quản trị viên hệ thống cần tinh chỉnh độ ưu tiên các dịch vụ mạng tại phần này nhằm
đảm bảo vẫn có thể kết nối đến các máy chủ trong trường hợp hệ thống mạng xảy ra
độ trễ cao do nhiều người dùng cùng thời điểm.
Internet Gateway với Firewall Open Sources
23
26. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 45: Giao diện theo dõi lưu lượng và trạng thái QoS tại các interface
2.6. pfSense Squid proxy
Squid là một web proxy có khả năng tích hợp vào hệ thống pfSense bằng chương trình
quản lý gói cài đặt System > Packages, Squid hoạt động như một Web Cache proxy và
có thể trong suốt (Transparent) với người dùng. Squid web Cache proxy sẽ giúp hệ
thống mạng giảm băng thông đến hệ thống mạng WAN trong trường hợp nhiều người
dùng cùng tảimột tập tin hoặc cùng truy cập vào một website. Khi pfSense vận hành
trên nền tảng tích hợp (được cài đặt vào thẻ SD) thì bạn cần thận trọng khi sử dụng
chức năng Web cache do giới hạn về mặt dung lượng lưu trữ.
Người dùng có thể cài đặt gói mở rộng squidGuard phục vụ việc ngăn chặn danh sách
các website có nội dung nhạy cảm.
2.6.1. Squid web cache proxy
Chúng tôi tiến hành cài đặt hai gói Squid và squidGuard tại trình quản lý gói cài đặt
pfSense.
Hình 46: Gói tin Squid và squidGuard đã được cài đặt
Truy cập Service > Proxy server: General Settings
Internet Gateway với Firewall Open Sources
24
27. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 47: Chỉ định phân vùng mạng Squid thực hiện Cache
Hình 48: Tinh chỉnh dung lượng dữ liệu cho phép cache
Hình 49: Tinh chỉnh dung lượng Cachecho phép
Maximum object size = 1024 x 1024 = 1048576 kB
Internet Gateway với Firewall Open Sources
25
28. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 50: Bảng thống kê Squid log (package lightsquid)
2.6.2. SquidGuad
SquidGuard là một gói mở rộng cho phép cập nhật danh sách các website có nội dung
nhạy cảm và thực hiện ngăn chặn truy cập những nội dung này. Chúng tôi thực hiện
bật chức năng SquidGuard tại menu Services > Proxy filter
Hình 51: Bật tính năng filter
Internet Gateway với Firewall Open Sources
26
29. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 52: Bật tính năng ghi log
Hình 53: Cho phép SquidGuard cập nhật các mẫu website từ máy chủ www.shallalist.de
Sau khi Save, chuyển sang thẻ Blacklist thực hiện download và cập nhập các rule.
Hình 54: Tiến trình cập nhật blacklists
Internet Gateway với Firewall Open Sources
27
30. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Tại thẻ Common ACL, thực hiện chỉ định các nhóm nội dung web ngăn chặn hoặc
cho phép.
Hình 55: Chỉ định nhóm nội dung cần ngăn chặn
Hình 56: Kết nối đến trang web youporn.com bị ngăn chặn
2.7. VLAN
VLAN thường được sử dụng trong việc phân hoạch kiến trúc mạng nội bộ, kỹ thuật
này cho phép bạn xây dựng nhiều mạng LAN theo sơ đồ luận lý trên cùng một thiết
bị/hạ tầng vật lý. Việc sử dụng VLAN trong môi trường mạng nội bộ giúp giảm thiểu
vùng quảng bá (broadcast domain), đồng thời tạo thuận lợi cho quản trị viên điều hành
hệ thống mạng cục bộ có số lượng máy tính lớn và phân bố trên nhiều vùng địa lý
khác nhau.
2.7.1. Trunking
Trunking được sử dụng tại những phân đoạn mạng yêu cầu truyền tải dữ liệu từ nhiều
VLAN khác nhau trên cùng một cổng vật lý. Các frame dữ liệu khi chuyển ra khỏi
cổng trunk sẽ được thêm một thông tinnhãn 802.1Q trong phần đầu của gói tin, việc
này giúp các VLAN được cấu hình trên nhiều thiết bị phần cứng khác nhau có thể
Internet Gateway với Firewall Open Sources
28
31. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
giao tiếp với nhau. Cổng trunk thường được cấu hình phục vụ cho việc kết nối nhiều
switch vật lý, hoặc các thiết bị hỗ trợ đánh nhãn 802.1Q có nhu cầu truy cập dữ liệu
đến nhiều VLAN.
2.7.2. VLAN ID
Mỗi VLAN tồn tại một ID với mục đích dịnh danh nguồn gốc dữ liệu khi các gói tin
được vận chuyển qua kênh truyền có đánh nhãn dữ liệu. ID là một số định danh có giá
trị từ 1 đến 4094. Giá trị VLAN mặc định trên switch là VLAN 1 (native vlan), và
VLAN này không được sử dụng trong việc triển khai VLAN trunking, bạn có thể sử
dụng các giá trị VLAN khác cho việc triển khai trunking. Một số trường hợp bạn có
thể sử dụng VLAN 2 và tăng dần giá trị ID cho đến khi phù hợp với nhu cầu phân
hoạch mạng nội bộ của doanh nghiệp. Một cách khác mà các quản trị viên thường sử
dụng để phân hoạch VLAN là dựa vào octet thứ ba của dãy IP sẽ được cấp cho các
máy trạm. Ví dụ, nếu bạn sử dụng dãy IP 192.168.10.0/24, 192.168.20.0/24 và
192.168.30.0/24 thì việc đặt các giá trị VLAN ID có thể sử dụng là VLAN 10, 20, 30.
2.7.3. Double tagging (QinQ)
QinQ được sử dụng trong môi trường mạng có quy mô hạ tầng rất lớn như ISP. QinQ
được pfSense hỗ trợ trừ phiên bản 2.0 trở về sau. Việc sử dụng các cấu hình QinQ trên
pfSene ít được sử dụng trong hầu hết các môi trường mạng phổ biến và cần sự hỗ trợ
của thiết bị phần cứng chuyên dụng. Ta có thể tăng lưu lượngtag lên gấp đôi bằng
cách dùng giao thức 802.1Q hai chiều. Gọi là QinQ. Giải pháp này hiệu quả trong môi
trường lớn như của ISP và các môi trường mạng khác có hệ thống lớn. Ngoài ra, ta
còn có thể gắn tag ba lần. QinQ được hỗ trợ trong pfSense 2.0. Các hệ thống này chủ
yếu cần một loại định tuyến mạnh mà chỉ có các router dựa trên ASIC (ApplicationSpecific Integrated Circuit) hỗ trợ, và QinQ tăng cấp độ phức tạp không cần thiết
trong hầu hết các hệ thống môi trường mạng.
2.8. Cân bằng tải
PfSense hỗ trợ người dùng hai phương pháp cân bằng tải: gateway và server. Cân
bằng tải gateway cho phép hệ thống mạng phân bố lưu lượng dữ liệu trên nhiều kết
nối WAN. Cân bằng tải server cho phép bạn phân bố việc sử tài nguyên từ các máy
chủ nội bộ và bảo đảm tính dư thừa cho hệ thống máy chủ phục vụ. Phương pháp này
Internet Gateway với Firewall Open Sources
29
32. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
thường được sử dụng trong việc cân bằng tải các dịch vụ web, SMTP, DNS hoặc các
dịch vụ sử dụng giao thức TCP trong việc truyền dữ liệu.
Trong hệ thống mạng vừa và nhỏ, pfSense hỗ trợ khá tốt các vấn đề cân bằng tải cho
hạ tầng mà không cần đầu tư vào các giải pháp thương mại có chi phí cao như BigIP,
Cisco LocalDirector, Citrix NetScaler...Tuy nhiên, pfSense không thể hỗ trợ những
tính năng phức tạp và đòi hỏi hiệu suất cao như các giải pháp cùng chức năng khác.
Nếu doanh nghiệp cần giải quyết vấn đề cân bằng tải và cân đối chi phí hợp lý, chúng
tôi khuyến cáo bạn nên sử dụng kết hợp pfSense và một hoặc nhiều giải pháp nguồn
mở khác (nginx reverse proxy, LBS, HAproxy...) trong vùng DMZ để có kết quả tốt
nhất.
Dịch vụ chính chịu trách nhiệm cho quá trình cân bằng tải là relayd, đây là dịch vụ
được tác giả tích hợp từ phiên bản 1.2.x và vẫn hoạt động khá tốt trong nhiều trường
hợp triển khai hiện nay. HAProxy và Varnish là những plugin được cung cấp từ nhà
phát triển thứ ba mà bạn có thể cài đặt với mục đích cải thiện chất lượng của máy chủ
pfSense.
2.8.1. Cân bằng tải multi-WAN
Hình 57: Sơ đồ mạng có 2 kết nối WAN
Vùng mạng
IP/SUBNET
VMware NIC
VmNet0 (Auto
bridging)
WAN 1
192.168.0.0/24
WAN 2
192.168.116.0/24
VmNet8 (NAT)
Internal
(LAN)
10.0.0.0/24
VmNet1 (Host-only) Phân vùng mạng nội bộ.
Internet Gateway với Firewall Open Sources
Mô tả
Phân vùng mạng kết nối
Internet (ISP 1)
Phân vùng mạng kết nối
Internet (ISP 2)
30
33. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Việc kết hợp nhiều đường truyền WAN là một giải pháp thường được dùng trong các
môi trường mạng doanh nghiệp vừa và nhỏ nhằm bảo đảm tính sẵn sàng cho doanh
nghiệp đồng thời có thể tăng băng thông kết nối Internet.
Để thực hiện phần cấu hình này, truy cập System> Routing > chọn thẻ Gateways.
Trong phần này pfSense đã tự động tạo các Gateway mặc định cho hệ thống, tacó thể
tùy chỉnh lại các gateway này cho phù hợp với hệ thống mà tađang quản lý.
Chuyển sang thẻ Groups để tạo nhóm các Gateways.
Hình 58: Cấu hình nhóm các gateway
Hình 59: Nhóm các gateway thực hiện cân bằng tải
Tại mục Gateway Priority, chúng tôi chọn Tier 1 cho cả gateway WAN 1 và WAN 2.
Internet Gateway với Firewall Open Sources
31
34. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Chú ý: vì trong ví dụ này, chúng tôi thực hiện cấu hình cân bằng tải bằng cách kết hợp
nhiều đường truyền WAN nên Priority cho các gateway được ưu tiên bằng nhau.
Trong trường hợp bạn cần thiết lập Multi WAN Failover thì chỉ cần thay đổi giá trị
Tier có độ ưu tiên khác nhau.
Cuối cùng, để bảo đảm tất cả các kết nối từ mạng LAN sẽ được định tuyến qua nhóm
các gateway mà ta đã tạo, thực hiện truy cập tường lửa > Rules > chọn thẻ LAN và
chỉnh sửa tường lửa rule kết nối Internet.
Hình 60: Rule cần tinh chỉnh
Hình 61: Chỉ định nhóm các gateway đã được tạo
Thực hiện kiểm tra trong trường hợp 2 card WAN online và trường hợp 1 card WAN
offline.
Hình 62: Đường truyền khi 2 card WAN online
Internet Gateway với Firewall Open Sources
32
35. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 63: Đường truyền khi 1 card WAN offline
Hình 64: Giao diện theo dõi trạng thái Gateway
2.8.2. Cân bằng tải máy chủ
Trong phần này, chúng tôi sẽ thực hiện cấu hình cân bằng tải cho hệ thống web nằm
trong vùng DMZ như sơ đồ sau:
Hình 65: Cân bằng tải máy chủ web
Internet Gateway với Firewall Open Sources
33
36. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Vùng mạng
IP/SUBNET
VMware NIC
Mô tả
172.16.10.250/24 VmNet8 (Host-only)
172.16.10.20/24
VmNet8 (Host-only)
Máy chủ web Apache 1
172.16.10.21/24
DMZ
pfSense DMZ gateway
VmNet8 (Host-only)
Máy chủ web Apache 2
Trước tiên, truy cập Services > Load balancer > chọn thẻ Monitors và thêm một cấu
hình như hình sau:
Hình 66: Cấu hình Monitor
Tại mục Host/Hostname cần chỉ định 1 IP hoặc tên máy chủ web tại vùng DMZ, chọn
máy chủ web có IP 172.16.10.20.
Chuyển sang thẻ Pools, cấu hình danh sách các máy chủ web phục vụ cân bằng tải.
Hình 67: Mô tả poolphục vụ cân bằng tải
Internet Gateway với Firewall Open Sources
34
37. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 68: Danh mục các máy chủ tham gia phục vụ cân bằng tải
Sau khi danh mục các máy chủ web tại vùng DMZ đã được thêm vào tại mục
Members, thực hiện tạo một Virtual Server (Services > Load Balancer > Virtual
Server). Tại mục cấu hình IP Address tacần chỉ định địa chỉ IP/Alias tại card WAN.
Internet Gateway với Firewall Open Sources
35
38. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Để bảo đảm các kết nối từ Internet có thể truy cập website, chúng tôi thực hiện tạo
một rule trong tường lửa cho phép kết nối từ WAN đến Alias định nghĩa các máy chủ
web.
Hình 69: Tạo alias danh sách các máy chủ web
Hình 70: Danh mục máy chủ web
Hình 71: Tạo tường lửa rule cho phép kết nối đến hệ thống web
Thực hiện kiểm tra bằng cách truy cập vào WAN IP.
Hình 72: pfSense thực hiện chuyển hướng người dùng vào các máy chủ web
Internet Gateway với Firewall Open Sources
36
39. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.9. Redundancy vàFailover: CARP vàpfsync
2.9.1. Tổng quan CARP
CARP (Common Address Redundancy Protocol) được viết ra bởi các nhà phát triển
OpenBSD như một giải pháp dự phòng mã nguồn mở và miễn phí để chia sẻ địa chỉ IP
giữa một nhóm các thiết bị mạng. Các giải pháp tương tự đã tồn tại, khởi đầu là IETF
cho Virtual Router Redundancy Protocol (VRRP). Tuy nhiên, VRRP đã được đăng ký
bản quyền bởi Cisco. Do đó, các nhà phát triển OpenBSD tạo ra một giao thức mã
nguồn mở và miễn phí mới có thể đạt được hiệu quả tương tự mà không vi phạm bằng
sáng chế. CARP chính thức ra mắt vào tháng 10 năm 2003 bởi OpenBSD, và sau đó
được bổ sung vào FreeBSD.
Mỗi tường lửa pfSense trong một nhóm CARP có địa chỉ IP riêng được đặt trên mỗi
cổng, và nhóm các IP CARP được chia sẻ. Các địa chỉ IP CARP chỉ hoạt động khi
firewall hiện tại đang là master.
CARP gửi các gói tin đến các node khác, mỗi gói đến các địa chỉ IP ảo trên các
interfacetrong mỗi giây hoặc lâu hơn. Các thông tin được gửi bằng multicast và switch
sẽ chuyển tiếp đến các thiết bị khác trong mạng. CARP cũng quan sát các interfacecó
CARP IP đang hoạt động để theo dõi các gói tin CARP. Nếu một gói tin không
chuyển nhanh như mong đợi, nó sẽ giả định rằng hệ thống gặp vấn đề, và một node có
chỉ số ưu tiên thấp sẽ được chuyển thành master. Chúng ta cấu hình hệ thống CARP
như khi có vấn đề xảy ra thì thiết bị tường lửa được chỉ định kế đó sẽ lên nắm quyền
quản lý các interface.
Khi mất tín hiệu từ một máy master (không nhận được tín hiệu heartbeat) trên một
interface, hoặc các gói tin đến chậm (đánh giá theo mức chậm hơn so với node thứ
cấp), lập tức hệ thống sẽ giả định có vấn đề xảy ra. Các gói tin, thông tin của kết nối
giao thức CARP có thể không truyền lẫn nhau do nguyên nhân gây ra bởi một số vấn
đề ở lớp 2 như: các switch chặn multicast, xử lý kém, hoặc không cung cấp các gói tin
tín hiệu (heartbeat) giữa các node, dẫn đến trường hợp tất cả các node "nghĩ" rằng
chúng đều là master cho một số IP ảo nhất định.
Lưu ý: Vì mỗi thành viên thuộc nhóm CARP phải có một địa chỉ IP trong một subnet,
thêm với địa chỉ IP CARP, nên cần ít nhất ba địa chỉ IP có sẵn cho mỗi card mạng và
một IP ảo. Điều này cũng áp dụng cho cổng WAN của bạn để chắc chắn rằng bạn có ít
Internet Gateway với Firewall Open Sources
37
40. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
nhất ba địa chỉ IP định tuyến có sẵn từ ISP. Khối bảng định tuyến nhỏ nhất sẽ có 3 địa
chỉ IP là một mạng con /29, tương đương với 8 địa chỉ IP (6IP có thể sử dụng).
2.9.2. Tổng quan psync
pfsync sẽ đồng bộ hóa từ tường lửa chính đến tường lửa thứ cấp. Thay đổi trên bảng
trạng thái của máy chính sẽ được gửi đến các máy thứ cấp, và ngược lại. Phương thức
này mặc định dùng multicast, thông qua địa chỉ IP định nghĩa trên cổng pfSense sử
dụng unicast để cập nhập trong môi trường chỉ có 2 tường lửa, nơi multicast hoạt động
không chính xác (do một số thiết bị chuyển mạch sẽ chặn multicast). Ta có thể sử
dụng bất kỳ cổng nào đang mở để gửi cập nhập pfsync, tuy nhiên khuyến cáo nên sử
dụng một cổng riêng để tăng độ an toàn và hiệu suất hoạt động. pfsync không hỗ trợ
bất kỳ cơ chế chứng thực nào nên nếu có khả năng, bất cứ người dùng nào bên trong
mạng nội bộ đều có thể thay đổi trạng thái đến tường lửa l thứ cấp. Trong môi trường
mạng nhỏ ta có thể tận dụng cổng LAN cho giải pháp này. Để đồng bộ hóa sẽ tốn rất
nhiều băng thông, có thể chiếm đến 10% lưu lượngmạng đi qua tường lửa tùy theo sự
thay đổi trong mạng.
Lợi ích của pfsync là vẫn có thể duy trì hệ thống khi xảy ra sự cố. Trong một số mô
hình mạng, sẽ khó có thể nhận ra sự khác biệt giữa failing over statefully và losing
state during failover. Trong một vùng mạng khác, nó có thể gây ra ảnh hưởng nghiêm
trọng khiến mạng quá tải.
Cấu hình pfsync phải được kích hoạt trên tất cả các node tham gia đồng bộ, bao gồm
cả các node con.
2.9.3. Tổng quan đồng bộ XML-RPC của pfSense
Đồng bộ hóa cấu hình pfSense cho phép bạn thực hiện hầu hết các thay đổi cấu hình
chỉ trên các tường lửa chính, sau đó sao chép những thay đổi về phía tường lửa thứ
cấp. Các phần được hỗ trợ gồm danh sách người dùng và các nhóm, các máy chủ xác
thực, chứng chỉ, các rule của tường lửa, lập lịch, alias, NAT, IPSec, OpenVPN,
DHCP, Wake on LAN, các cấu hình định tuyến và gateway, cân bằng tải, IP ảo, quản
lý lưu lượng (hàng đợi, giới hạn, và các ứng dụng lớp 7), DNS forwarder, và captive
portal. Các thiết lập khác phải được cấu hình riêng trên các tường lửa thứ cấp khi cần
thiết, mặc dù sự đồng bộ đã bao gồm hầu hết các công việc nếu các dữ liệu trong hệ
Internet Gateway với Firewall Open Sources
38
41. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
thống không thường xuyên thay đổi. Đồng bộ hóa cấu hình nên sử dụng cùng một
cổng chạy pfsync.
Các thiết lập XML-RPC chỉ nên được kích hoạt trên node chính, tất cả các node khác
nên bị vô hiệu hóa những thiết lập này.
2.9.4. Triển khai mô hình cơ bản
Hình 73: Sơ đồ triển khai CARP
Cấu hình máy chủ pfSense chính (primary)
Cấu hình Vitural IP, CARP
Tại máy chủ pfSense chính (IP: 192.168.0.151), chúng tôi thực hiện tạo hai IP ảo
(VIP), một VIP dành cho kết nối WAN và một VIP dùng trong môi trường mạng
LAN. Tại menu Firewall > Virtual IP, thực hiện thêm VIP với các thông tin ứng với
sơ đồ mạng.
Internet Gateway với Firewall Open Sources
39
42. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 74: Cấu hình Virtual IP cho kết nối WAN
Bằng cách tương tự, tạo một VIP cho kết nối mạng LAN, kết quả sau khi tạo VIP trên
máy chủ pfSense chính sẽ như hình dưới.
Hình 75: VirtualIP được cấu hình tại máy chủ pfSense chính
Để đảm bảo các kết nối từ mạng LAN có thể thông suốt đến mạng Internet, thực hiện
cấu hình Outbound NAT từ vùng mạng 10.0.10.0/24 đi qua WAN VIP.
Hình 76: Cấu hình Outbound NAT
Cấu hình pfsync
Pfsync được thực hiện cấu hình trên trên card mạng còn lại của máy chủ pfSense, thao
tác tại menuSystem > High Availability Sync, ta cần bảo đảm thông tin IP được thiết
lập pfsync là địa chỉ IP của máy pfSense phụ, trong trường hợp này là 172.16.1.3.
Internet Gateway với Firewall Open Sources
40
43. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 77: Địa chỉ IP máy chủ pfSense phụ được cấu hình
Cấu hình máy chủ pfSense phụ (secondary)
Phần cấu hình cho máy chủ pfSense phụ tương tự như máy chủ pfSense chính. Tại
mục cấu hình pfsync cho máy pfSense phụ, tacần chỉ định IP của máy pfSense chính
để chắc chắn rằng hai máy tính có thể thực hiện việc theo dõi trạng thái lẫn nhau nhằm
bảo đảm tính sẵn sàng cho hệ thống mạng.
Sau khi hai máy pfSense được cấu hình hoàn chỉnh, chúng tôi thực hiện theo dõi trạng
thái CARP tại menu Status.
Internet Gateway với Firewall Open Sources
41
44. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 78: Trạng thái CARP trên cả hai máy pfSense
Để kiểm tra tính sẵn sàng của hệ thống mà chúng tôi vừa thiết lập, từ một máy tính
trong mạng nội bộ, chúng tôi thực hiện ping đến một WAN IP đồng thời tắt một máy
pfSense để kiểm tra tính thông suốt của luồng dữ liệu.
Hình 79: Kết nối mạng bảo đảm tính thông suốt trong trường hợpmáy pfSense chính khởi
động lại
Internet Gateway với Firewall Open Sources
42
45. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.9.5. Triển khai mô hình multiWAN
Hình 80: Sơ đồ hệ thống CARP multiWAN
Danh mục IP WAN1
IP
MÔ TẢ
VMNET
192.168.0.151
Primary WAN1
Bridged
192.168.0.152
Secondary WAN1
Bridged
192.168.0.160
Shared CARP IP dùng cho Outbound NAT
192.168.0.161 Shared CARP IP dùng cho 1:1 NAT
Danh mục IP WAN2
IP
MÔ TẢ
VMNET
192.168.10.151
Primary WAN1
Vmnet 8 (NAT)
192.168.10.152
Secondary WAN1
Vmnet 8 (NAT)
192.168.10.160
Shared CARP IP dùng cho Outbound NAT
192.168.10.161
Shared CARP IP dùng cho 1:1 NAT
Internet Gateway với Firewall Open Sources
43
46. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Danh mục IP pfsync
IP
MÔ TẢ
VMNET
172.16.10.2
Primary firewall LAN IP
Vmnet1 (host only)
192.168.10.152 Secondary firewall LAN IP
Danh mục IP LAN
IP
MÔ TẢ
10.0.10.1
CARP shared LAN IP
10.0.10.2
Primary firewall LAN IP
Vmnet1 (host only)
10.0.10.3 Secondary firewall LAN IP
Danh mục IP DMZ
IP
MÔ TẢ
10.0.30.1
Primary firewall DMZ IP
Vmnet2 (host only)
Vmnet2 (host only)
CARP shared DMZ IP
10.0.30.2
VMNET
VMNET
Vmnet3 (host only)
10.0.30.3 Secondary firewall DMZ IP Vmnet3 (host only)
Tại máy chủ pfSense chính và phụ, chúng tôi thực hiện tạo danh sách Virtual IP ứng
với sơ đồ mạng như hình dưới.
Hình 81: Danh sách VirtualIP tại máy chủ pfSense chính
Internet Gateway với Firewall Open Sources
44
47. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 82: Danh sách VirtualIP tại máy chủ pfSense phụ
Sau khi danh sách các VIP được thiết lập phù hợp với sơ đồ, ta cần bảo đảm chức
năng pfsync cũng được cấu hình chính xác trên cả hai máy chủ pfSense. Để thực hiện
thông suốt luồng dữ liệu từ máy tính trong mạng nội bộ có thể truy cập Internet, chúng
tôi thực hiện cấu hình Outbound NAT trên cả hai WAN1/WAN2 VIP (cấu hình trên
cả hai máy pfSense).
Hình 83: Cấu hình Outbound NAT
Thực hiện kiểm tra kết nối từ một máy tính trong mạng LAN, đồng thời ngắt kết nối
một máy chủ pfSense để kiểm tra tính sẵn sàng của hệ thống.
Hình 84: Trạng thái hệ thống Failover
Internet Gateway với Firewall Open Sources
45
48. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 85: Đường truyền chính được sử dụng khi hệ thống ổn định
Hình 86: Đường truyền dự phòng được sử dụng khi đường chính bị gián đoạn
2.10. VPN
Mạng riêng ảo (VPN) là một nền tảng cho phép người dùng kết nối an toàn đến một
hệ thống mạng máy tính từ xa, người dùng đóng vai trò như một đối tượng trong môi
trường mạng nội bộ. Một kết nối VPN được thiết lập thành công sẽ bảo đảm tính an
toàn cho dữ liệu được truyền đi trên truyền không bảo mật. Việc triển khai VPN trên
mã nguồn mở pfSense giúp doanh nghiệp giảm thiểu chi phí đầu tư vào các thiết bị
phần cứng từ các hãng nổi tiếng như Cisco, Fortinet... mà vẫn đảm bảo được các yêu
cầu về bảo mật cho các kết nối từ xa. pfSense hỗ trợ người dùng bốn loại VPN bao
gồm: IPSec, L2TP, PPTP và OpenVPN.
IPSec ngày nay được sử dụng rộng rãi song song với L2TP và PPTP. Việc triển khai
IPSec được xem là phức tạp hơn so với các loại còn lại, tuy nhiên đây là giải pháp
được khuyến cáo sử dụng trong hầu hết các giải pháp triển khai VPN do tính tương
thích cao trong những môi trường mạng sử dụng nhiều nền tảng phần cứng/phần mềm
khác nhau.
OpenVPN là lựa chọn khác cho người sử dụng pfSense. Hoạt động dựa trên cơ chế
SSL/TLS, OpenVPN có độ bảo mật, ổn định cao và dễ triển khai hơn so với IPSec.
Internet Gateway với Firewall Open Sources
46
49. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.10.1.
IPSEC
Quá trình đàm phán tạo kết nối VPN bằng IPSec trải qua hai bước (pha) chính:
Pha 1:Thiết bị đầu cuối thực hiện thiết lập một kênh truyền bảo mật bằng cách sử
dụng ISAKMP (Internet Security Association and Key Management Protocol) trao đổi
SA (Security Association) và các khóa (key) bao gồm: các thuật toán mã hóa, hàm
băm, các phương pháp bảo vệ mã khóa. Quá trình đàm phán tại pha này có thể thực
hiện qua hai cách: main mode và aggressive mode.
Main mode
Main mode thực hiện xác nhận và bảo đảm tính toàn vẹn của dữ liệu trong quá trình
truyền tải dữ liệu, có 6 thông điệp được trao đổi trong chế độ này:
Hai thông điệp đầu sử dụng đàm phán thuật toán mã hóa và thuật toán băm. Ví
dụ: 3DES, MD5 hoặc RSA.
Hai thông điệp tiếp theo đùng trao dổi khóa DH và nounce (độ dài khóa thường
được sử dụng là 1024 bit)
Hai thông điệp cuối đàm phán các chữ ký (signature), ID và chứng thư số.
Hình 87: ISAKMP Main mode
Aggressive mode
Phương thức này tương tự như main mode, tuy nhiên toàn bộ tiến trình đàm phán chỉ
sử dụng 3 gói tin.
Đàm phán chính sách bảo mật (SA), ID, nonce và khóa bảo mật dữ liệu.
Phản hồi các thông tin chấp nhận tại bước đầu tiên.
Khởi tạo chữ ký số, hàm băm và ID.
Hình 88: ISAKMP Aggressive mode
Internet Gateway với Firewall Open Sources
47
50. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Aggressive mode được đánh giá là nhanh hơn so với main mode, tuy nhiên mức độ
bảo mật trong pha 1 sẽ giảm đi khi sử dụng aggressive mode trong đàm phán các
chính sách bảo mật cho kênh truyền VPN.
Kết quả tại pha 1 là các đối tượng hoàn thành việc tạo SA cho ISAKMP.
Pha 2: Sau khi tạo SA thành công cho ISAKMP tại pha 1, giai đoạn 2 tiếp tục quá
trình tạo SA cho IPSec. Trong pha này các cơ chế xác thực, hàm băm và thuật toán mã
hóa bảo vệ dữ liệu IPSec sẽ được trao đổi. Sau khi pha 2 thực hiện thành công, tiến
trình truyền dữ liệu sẽ được bắt đầu thông qua IPSec VPN.
Triển khai
Tại mục này, chúng tôi thực hiện triển khai VPN thông qua cơ chế IPSec. Thực hiện
tạo một đường truyền mới bằng cách truy cập menu VPN > IPSec.
Hình 89:Cấu hình tham số Remote gateway và Pre-shared key
Internet Gateway với Firewall Open Sources
48
51. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 90:Các tùy chọn nâng cao khác
Hình 91: Kênh truyền VPN sau khi tạo thành công
Bước tiếp theo, thực hiện tạo một firewall rule cho phép kết nối từ hệ thống mạng bên
ngoài truy cập vào mạng nội bộ thông qua IPSec.
Hình 92: Rule cho phép kết nối đến LAN thông qua IPSec
2.10.2.
L2TP
Toàn bộ gói L2TP, bao gồm cả payload và L2TP header, được gửi trong một gói tin
UDP. Người ta thường dùng đường hầm L2TP để mang các session PPP. L2TP không
cung cấp cơ chế bảo mật và chứng thực mạnh mẽ. Do đó, IPsec thường được sử dụng
để bảo đảm an toàn cho các gói tin L2TP bằng cách cung cấp cơ chế bảo mật, xác
thực và toàn vẹn. Sự kết hợp của hai giao thức này thường được gọi là L2TP/IPsec.
Hai điểm đầu cuối của một đường hầm L2TP được gọi là LAC (L2TP Access
Concentrator) và LNS (L2TP Network Server). LAC khởi tạo kết nối VPN trong khi
LNS là máy chủ chờ đợi cho kết nối mới. Khi một kết nối VPN được thiết lập, luồng
Internet Gateway với Firewall Open Sources
49
52. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
kết nối giữa các client là hai chiều. Để hệ thống mạng chạy tốt hơn, các giao thức cấp
cao hơn sau đó đều đi qua đường hầm L2TP. Để tạo điều kiện này, một phiên L2TP
được gọi trong đường hầm cho mỗi giao thức cấp cao hơn như PPP. Hoặc là LAC,
hoặc là LNS đều có thể khởi tạo các session. Lưu lượng truy cập cho mỗi phiên đang
bị cô lập bởi L2TP, vì vậy ta có thể thiết lập nhiều mạng ảo trên một đường hầm duy
nhất. MTU nên được quan tâm khi thực hiện L2TP.
Các gói tin trao đổi trong một đường hầm L2TP được phân loại thành các gói điều
khiển hoặc các gói dữ liệu. L2TP cung cấp tính năng độ tin cậy cho các gói điều
khiển, nhưng không có độ tin cậy cho các gói dữ liệu. Độ tin cậy, nếu muốn, phải
được cung cấp bởi các giao thức lồng nhau chạy trong mỗi session của đường hầm
L2TP.
L2TP cho phép tạo ra một mạng lưới quay số riêng ảo (VPDN) để kết nối một khách
hàng từ xa vào mạng công ty bằng cách sử dụng một cơ sở hạ tầng được chia sẻ, có
thể là Internet hoặc một nhà cung cấp dịch vụ mạng.
2.10.3.
PPTP
Point-to-Point Tunneling Protocol (PPTP) là một phương pháp để tạo ra các mạng
riêng ảo. PPTP sử dụng một kênh điều khiển qua giao thức TCP và đường hầm GRE
để đóng gói các gói tin PPP.
pfSense có thể đóng vai trò như một máy chủ PPTP VPN trong danh mục các loại
VPN được hỗ trợ, PPTP VPN phù hợp với các hạ tầng mạng đã được xây dựng từ
trước tồn tại các máy khách sử dụng Windows hoặc OS X. Hơn nữa, pfSense có thể
quản lý các luồng dữ liệu đi vào một máy chủ PPTP VPN trong mạng nội bộ. Mặc dù
tính phổ dụng của PPTP VPN được biết đến trong nhiều năm trước đây, nhưng các
chính sách bảo mật ngày nay không khuyến cáo bạn sử dụng kiến trúc VPN này vì lý
do bảo mật. PPTP hoạt động dựa trên MS-CHAPv2, một giao thức xác thực đã được
các chuyên gia bảo mật công bố là có thể bị giải mã 100% bằng cách sử dụng các
công cụ của một hãng phần mềm thứ ba. Những giải pháp VPN có tính bảo mật cao
hơn như OpenVPN, IPSec được các chuyên gia khuyến cáo sử dụng nhằm thay thế
những kỹ thuật không còn bảo đảm tính an toàn cho hệ thống mạng của bạn.
Internet Gateway với Firewall Open Sources
50
53. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Do cơ chế xử lý gói tin GRE của pfSense chỉ có thể hoạt động trên một đường truyền
WAN tại một thời điểm, nên đối với hạ tầng có sử dụng nhiều kết nối WAN thì
pfSense không thể sử dụng chế độ cân bằng tải cho kết nối VPN.
2.10.4.
OpenVPN
OpenVPN là một giải pháp VPN nguồn mở dựa trên nền tảng SSL/TLS VPNtương
thích với nhiều kiến trúc hệ điều hành khác nhau bao gồm BSD, Linux, MacOS,
Solaris và Windows. OpenVPN cho phép sử dụng nhiều phương pháp chứng thực
khác nhau như: X.509 (SSL/TLS, PKI), chứng thực bằng pfSense user, LDAP và
RADIUS. Một số điểm mạnh khi triển khai OpenVPN như:
Hoạt động tại lớp 2 và lớp 3 trong mô hình OSI có thể vận chuyển dữ liệu
Ethernet frame (lớp 2), IPX packet (lớp 3) và cả NETBIOS (Windows Network
Browsing packets) giúp giải quyết được vấn đề thường gặp trong các giải pháp
VPN khác.
Kết nối sử dụng OpenVPN có thể tương thích tốt với hầu hết các thiết bị tường
lửa, proxy. Nếu bạn có thể kết nối đến các máy tính từ xa thông qua giao thức
HTTPS thì bạn cũng có thể sử dụng OpenVPN để thiết lập đường truyền VPN.
Có thể hoạt động với giao thức UDP hoặc TCP.
Hiệu suất sử dụng cao: OpenVPN hỗ trợ nén các dữ liệu tại phía đầu cuối trước
khi truyền đi qua môi trường mạng (sử dụng thư viện LZO).
Hỗ trợ cài đặt trên nhiều nền tảng khác nhau: việc triển khai OpenVPN tại phía
server lẫn phía người dùng đều khá dễ dàng so với IPSec. OpenWrt/FreeWrt là
những hệ điều hành được tích hợp trên thiết bị phần cứng cũng hoạt động khá
ổn định khi sử dụng OpenVPN.
Triển khai
Trong ví dụ tiếp theo, chúng tôi thực hiện phương pháp chứng thực kết hợp X.509 và
pfSense user.
Trước tiên, thực hiện tạo một CA bằng cách truy cập menu System > Cert manager
Internet Gateway với Firewall Open Sources
51
54. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 93: Thông tin VPN Server CA trong System: Certificate Authority Manager
Tiếp theo, tại menu System > User manager, tạo một user mới với thông tin như hình
dưới:
Hình 94: Thông tin User/Password kết nối VPN trong User Manager
Internet Gateway với Firewall Open Sources
52
55. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Bước tiếp theo, thực hiện cấu hình OpenVPN Server, truy cập menu VPN >
OpenVPN > chọn thẻ Wizards
Hình 95: Chọn phương pháp xác thực
Hình 96: Chỉ định CA
Hình 97: Chỉ định Certificate
Hình 98: Cấu hình tham số OpenVPN server
Hình 99: Thiết lập thông số tunnel
Internet Gateway với Firewall Open Sources
53
56. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Tunnel network: dãy IP được dùng cấp cho người dùng khi kết nối thông qua VPN,
cần bảo đảm rằng dãy IP không trùng với các dãy IP khác đã sử dụng trong hệ thống
mạng.
Local network: dãy IP nội bộ cho phép kết nối từ xa, phần này thường được chỉ định
dãy IP mạng LAN.
Hình 100: Cấu hình tường lửa rule
Thực hiện chọn tường lửa rule và OpenVPN rule thông báo pfSense tự động tạo rule
cho phép kết nối OpenVPN.
Hình 101: Thông tin OpenVPN server
2.10.5.
Trích xuất cấu hình OpenVPN client
pfSense cung cấp cho người dùng một tiện ích cho phép trích xuất cấu hình đăng nhập
OpenVPN nhanh chóng. Tại menu System > Packages > cài đặt tiện ích OpenVPN
Client Export Utility
Hình 102: Cài đặt tiện ích OpenVPN Client Export Utility
Internet Gateway với Firewall Open Sources
54
57. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 103: Quá trình cài đặt OpenVPN Client Export Utility
Để trích xuất cấu hình cho người dùng, truy cập menu VPN > OpenVNP > chọn thẻ
Client export, chọn thông tin cấu hình người dùng tamqm phù hợp với phiên bản máy
khách kết nối. Chúng tôi chọn cấu hình Windows Installer 2.3-x86 do máy tính được
sử dụng để kết nối là Windows 7 Professional – 32bits, tập tin tải về có dạng pfSenseudp-1194-tamqm-install.exe.
Hình 104: Chọn phiên bản cấu hình thích hợp với máy khách
Thực hiện kết nối VPN tại máy khách.
Yêu cầu:
Máy người dùng đã cài phiên bản OpenVPN Client phù hợp, trong ví dụ này
chúng tôi đã cài đặt OpenVPN 2.3.2 (http://openvpn.net/index.php/opensource/downloads.html).
Cài đặt tập tin cấu hình đã được cung cấp pfSense-udp-1194-tamqm-install.exe
Internet Gateway với Firewall Open Sources
55
58. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 105: Thông tin quá trình kết nối
Hình 106: Quá trình kết nối thành công
Hình 107: Địa chỉ IP cấp từ pfSense
Bằng phương pháp tương tự, người dùng có thể cấu hình sử OpenVPN cho các thiết bị
di động như máy tính bảng, điện thoại thông minh.
Hình 108: Sử dụng OpenVPN trên thiết bị di động (Android)
Internet Gateway với Firewall Open Sources
56
59. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 109: Nhật ký kết nối OpenVPN tại pfSense
2.11. Captive portal
Captive portal là một trang web hiển thị tại trình duyệt người dùng trước khi kết nối
đến một phân vùng mạng đã được chỉ định, đây là một tính năng khá mạnh mẽ giúp
quản lý việc truy cập của người dùng. pfSense hỗ trợ 2 phương pháp chứng thực
người dùng bao gồm: pfSense user và chứng thực thông qua Radius server. Trong
trường hợp hệ thống mạng cần cung cấp dịch vụ truy cập có tính phí, pfSense cung
cấp giải pháp sinh mã voucher nhằm tạo những ưu đãi cho người dùng.
Ví dụ, hệ thống mạng tại trường Đại học Hoa Sen yêu cầu sinh viên phải đăng nhập
tài khoản email/password trước khi truy cập internet. Thực hiện truy cập menu Service
> Captive Portal > tạo một Zone mới.
Hình 110: Chỉ định vùng mạng cần thông báo chứng thực
Hình 111: Chỉ định URL sẽ được chuyển hướng sau khi đăng nhập thành công
Internet Gateway với Firewall Open Sources
57
60. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 112: Giới hạn băng thông Download/upload cho từng người dùng
Hình 113: Chọn phương thức chứng thực
Hình 114: Upload mã HTML hiển thị tại người dùng
Mã HTML tham khảo như bảng dưới:
<!-- captiveprotal.html -->
<html><head>
<title>Welcome to Hoa Sen University | Hoa Sen
University</title>
<linkrel="shortcut
icon"href="http://hoasen.edu.vn/misc/favicon.ico"/>
<metahttp-equiv="Content-Type"content="text/html;
charset=utf-8"/>
</head>
<bodyBGCOLOR="224999"TEXT="FFFFFF"><center>
<h1><br/>CHÀO MỪNG BẠN ĐÃ KẾT NỐI ĐẾN <br/>HỆ THỐNG MÁY TÍNH
ĐẠI HỌC HOA SEN</h1>
<h2>VUI LÒNG NHẬP TÀI KHOẢN VÀ MẬT KHẨU ĐĂNG NHẬP</h2>
<imgsrc="captiveportal-logo.jpg"width="200"></img>
<formmethod="post"action="$PORTAL_ACTION$">
<p>Tài khoản:<inputname="auth_user"type="text"></p>
<p>Mật khẩu:<inputname="auth_pass"type="password"></p>
<inputname="redirurl"type="hidden"value="$PORTAL_REDIRURL$">
<inputname="accept"type="submit"value="Đăng nhập">
</form>
</center>
</body></html>
Sau khi Save, thực hiện truy cập web từ một máy tính trong mạng LAN.
Internet Gateway với Firewall Open Sources
58
61. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 115: Giao diện yêu cầu đăng nhập tại người dùng
Hình 116: Giao diện theo dõi trạng thái đăng nhập của người dùng, Status > Captive portal
2.12. Logging, monitoring, và statistics
Theo cấu hình mặc định, pfSense thực hiện ghi log với số lượng bản ghi giới hạn
nhằm giúp quản trị viên theo dõi trạng thái hiện tại của hệ thống tại thời điểm hiện tại.
Trong trường hợp doanh nghiệp cần thực hiện ghi log trong thời gian dài và cần thu
thập nhiều thông tin hơn, thì giải pháp được khuyến cáo sử dụng là “Remote syslog”
nhằm tăng dung lượng lưu trữ log đến một hệ thống bên ngoài.
Để thực hiện theo dõi trạng thái của máy chủ pfSense, quản trị viên có thể thực hiện
bằng 2 cách:
Cách 1: Truy cập bằng giao diện web Status > System logs > Chọn tab tương
ứng cần theo dõi như hình bên dưới:
Internet Gateway với Firewall Open Sources
59
62. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 117: Theo dõi DHCP log bằng giao diện web
Hình 118: tường lửa > Summary view
Cách 2:theo dõi bằng Secure Shell, các tập tin log được lưu trữ tại đường dẫn
/var/log/.
Hình 119: Theo dõi DHCP log bằng Secure Shell
Internet Gateway với Firewall Open Sources
60
63. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
2.12.1.
Remote syslog
Để đảm bảo tính sẵn sàng khi có nhu cầu theo dõi các sự kiện được ghi log trong thời
gian dài, phương pháp Remote syslog là giải pháp tối ưu để phục vụ mục đích này.
Để thực hiện phân tích log từ xa, bạn cần một chương trình syslog server để tiếp nhận
các dữ kiện từ pfSense gởi đến. Trong phần này, chúng tôi sử dụng máy chủ Splunk
hoạt động tại địa chỉ 10.0.0.32 có nhiệm vụ nhận các bản ghi log được gởi từ pfSense.
Hình 120: Cấu hình Splunk nhận các bản ghi log thông qua giao thức UDP
Tại giao diện web pfSense Status > System logs > chọn thẻ Settings và cấu hình IP
máy chủ Syslog Server, chọn các danh mục dịch vụ cần theo dõi.
Hình 121: Giao diện cấu hình Remote Syslog
Internet Gateway với Firewall Open Sources
61
64. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 122: Biểu đồ phân tích Syslog
2.12.2.
Đồthị RRD
Đồ thị RRD (Round-Robin Database) là một tiện ích hỗ trợ người dùng theo dõi lịch
sử hoạt động của hệ thống theo đồ thị, bao gồm: System (trạng thái máy chủ pfSense),
Traffic (lưu lượng qua các card mạng, IPSec và Outbound), Packets, Quality…
Hình 123: Biểu đồ trạng thái máy chủ pfSense
Internet Gateway với Firewall Open Sources
62
65. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
Hình 124: Biểu đồ lưu lượng dữ liệu tại card WAN
Internet Gateway với Firewall Open Sources
63
66. Draft1 – bnphuonganhvn@gmail.com | minhtamnw@gmail.com
CHƢƠNG 3. TÀI LIỆU THAM KHẢO
[1]
Buechler, Christopher M., and Jim Pingle. PfSense: The Definitive Guide: The
Definitive Guide to the PfSense Open Source Firewall and Router Distribution. [s.l.]:
Reed Media Services, 2009. Web.
[2]
Williamson, Matt. PfSense 2 Cookbook a Practical, Example-driven Guide to
Configure Even the Most Advanced Features of PfSense 2. Birmingham, U.K.: Packt
Open Source, 2011. Web.
[3]
Hansteen, Peter N. M. The Book of PF: A No-nonsense Guide to the OpenBSD
Firewall. San Francisco: No Starch, 2011. Web.
[4]
Feilner, Markus, and Norbert Graf. Beginning Open VPN 2.0.9: Build and
Integrate Virtual Private Networks Using OpenVPN. Birmingham: Packt, 2009. Web.
[5]
Hélder Pereira, André Ribeiro, Paulo Carvalho, "L7 Classification and Policing
in the pfSense Platform", Actas da CRC'2009 - 9ª Conferência sobre Redes de
Computadores, IST - Taguspark, Oeiras, 15-16 Outubro 2009.
[6]
"PfSense Setup HQ." PfSense Setup HQ. N.p., n.d. Web. 18 Dec. 2013.
<http://pfsensesetup.com/>.
[7]
BSD Firewalling with PfSense by Chris Buechler: 2010
NYCBSDCon. YouTube. YouTube, 07 Feb. 2012. Web. 18 Dec. 2013.
<http://www.youtube.com/watch?v=ckesvwkNiJE>.
[8]
"Layer 2 Tunneling Protocol." Wikipedia. Wikimedia Foundation, 5 Dec. 2013.
Web. 6 Dec. 2013. <http://en.wikipedia.org/wiki/Layer_2_Tunneling_Protocol>.
[9]
"Point-to-Point Tunneling Protocol." Wikipedia. Wikimedia Foundation, 9 Dec.
2013. Web. 12 Dec. 2013. <http://en.wikipedia.org/wiki/Point-toPoint_Tunneling_Protocol>.
Internet Gateway với Firewall Open Sources
64