Network Address Translation(NAT)

Một phần của tài liệu tìm hiểu cân bằng tải và xây dựng mô hình cân bằng tải trên firewall pfsense (Trang 72 - 96)

III. Một số dịch vụ và ứng dụng của Pfsense

1.2Network Address Translation(NAT)

1. Một số tính năng của Pfsense firewall

1.2Network Address Translation(NAT)

NAT cho phép kết nối nhiều máy tính ra internet bằng cách sử dụng một địa chỉ IP public. Pfsense cho phép những triển khai đơn giản này và còn thu hút những yêu cầu cấu hình NAT nâng cao và phức tạp hơn trong mạng với nhiều địa chỉ IP public.

NAT được cấu hình theo hai hướng: Inboundoutbound. NAT Outbound định nghĩa cách chuyển đổi lưu lượng đi từ mạng nội bộ ra internet.

NAT Inbound đề cập đến lưu lượn đi từ internet vào mạng nội bộ. NAT Inbound phổ biến và quen thuộc nhất là port foward(chuyển tiếp cổng).

PfSense cung cấp tính năng network address translation (NAT) và tính năng chuyển tiếp cổng, tuy nhiên ứng dụng này vẫn còn một số hạn chế với Point- to-Point Tunneling Protocol (PPTP), Generic Routing Encapsulation (GRE) và Session Initiation Protocol (SIP) khi sử dụng NAT.

Trong Firewall bạn cũng có thể cấu hình các thiết lập NAT nếu cần sử dụng cổng chuyển tiếp cho các dịch vụ hoặc cấu hình NAT tĩnh (1:1) cho các host cụ

GVHD: Ngô Văn Công Page 56 thể. Thiết lập mặc định của NAT cho các kết nối outbound là automatic / dynamic, tuy nhiên bạn có thể thay đổi kiểu manual cho phù hợp với yêu cầu.

1.3 Pfsense rules

Pfsense rules là nơi lưu các rules (Luật) của Firewall. Để vào Rules của pfsense vào Firewall Rules.

Trên tab WAN pfsense tạo sẵn 2 rules: Block private networks để chặn lưu lượng truy cập từ địa chỉ IP chỉ dành cho các mạng private theo RFC 1918 và

Block bogon networks để chặn khối lưu lượng truy caaph từ các địa chỉ IP dành riêng (không theo RFC1918) và chưa được gán bới IANA. Nhấn chuột để enable hay disable rules này.

Hình 3-30 Pfsense rules

Tại tab LAN có 2 rules được tạo sẵn là: Anti-Lockout Rule để quy định cho phép các port được kết nối từ ngoài internet vào LAN(cho phép port 80) và

Default allow LAN to any rule cho phép các mạng trong LAN truy cập ra ngoài.

Hình 3-31 Hai rules được mặc định trong tab LAN

Mặc định pfsense cho phép mọi lưu lượng ra/vào hệ thống .Bạn phải tạo ra các rules để quản lí mạng bên trong firewall.

Để thêm rules mới nhấn vào biểu tương dấu .

Ví dụ: Tạo rules Cấm truy cập web sử dụng cổng 80 cho các máy trong đó máy LAN tên là Aliases . Sau khi tạo xong nhấn SaveApply Changes.

GVHD: Ngô Văn Công Page 57

Hình 3-32 Tạo rule cấm truy cập web sử dụng cổng 80 cho các máy LAN

1.4Pfsense schedules

Các Firewall rules có thể được sắp xếp để nó có chỉ hoạt động vào các thời điểm nhất định trong ngày hoặc vào những ngày nhất định cụ thể hoặc các ngày trong tuần.

Để tạo một Schedules mới vào Firewall Schedules : Nhấn dấu .

Hình 3-33 Pfsense schedules

Ví dụ:Tạo lịch tên GioLamViec của tháng 12 Từ thứ hai đến thứ bảy và thời gian từ 8 giờ đến 17 giờ:

GVHD: Ngô Văn Công Page 58

Hình 3-34 Lịch giờ làm việc

Sau khi tạo xong nhấn Add Time.

Bên dưới sẽ hiện ra lịch chi tiết vừa thiết lập. Nhấn save để lưu lại.

Hình 3-35 Chi tiết lịch làm việc

1.5Traffic Shapers

Traffic Sharper giúp bạn theo dõi và quản lí băng thông mạng dễ dàng và hiệu quả hơn.

GVHD: Ngô Văn Công Page 59 Traffic Shaping là phương pháp tối ưu hóa kết nối Internet. Nó tăng tối đa tốc độ trong khi đảm bảo tối thiểu thời gian trễ .Khi sử dụng những gói dữ liệu ACK được sắp xếp thứ tư ưu tiên trong đường truyền tải lên, điều này cho phép tiến trình tải về được tiếp tục với tốc độ tối đa.

Cấu hình Traffic Sharper để quản lý băng thông:

Hình 3-36 Traffic Sharper

Mở giao diện Web của Pfsense  Firewall Traffic Sharper. Chọn

Next.

Chọn InsideLAN, nhập vào tốc độc dowload của đường truyền. Outside

chọn WAN và nhập tốc độ Upload của đường truyền. Chọn Next để tiếp tục.

GVHD: Ngô Văn Công Page 60 Hỗ trợ Voice IPNext.

Hình 3-38 Voice over IP

Chọn Next.

GVHD: Ngô Văn Công Page 61 Hỗ trợ mạng ngang hàng như BitTorent , CuteMX, iMesh….

Hình 3-40 Peer to peer netwworking

Hỗ trợ mạng chơi game như BattleNET , Xbox360 ,và một số game trực tuyến.

GVHD: Ngô Văn Công Page 62 Quản lý băng thông của một số ứng dụng khác như Remote, Services,

VPN, Messengers, Web, Mail, Miscelanous.

Hình 3-42 Raise of lower other Applications

1.6 Virtual IPs

Một IP ảo không phải là địa chỉ IP của các interface chính mà là một địa chỉ IP bất kì cod thể được sử dụng bởi Pfsense. Những địa chỉ IP này có các dạng khác nhau, mỗi IP ảo có có các tính năng riêng. Mỗi Ip ảo được sử dụng để cho phép Pfsense chuyển tiếp lưu lượng truy cập cho: Nat port forwards, Outbound NAT và 1:1 NAT. Chúng cũng cho phép các tính năng như failover, và có thể cho phép các dịch vụ trên router để gắn kết với địa chỉ IP khác nhau.

CARP:

Có thể được sử dụng bởi các bứ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ưu lượng tầng 2 cho các IP ảo.

Có thể được sử dụng cho clustering (một tường lửa chính và một tường lửa dự phòng chế độ chờ).

Các IP ảo trong cùng một subnetvới IP của giao diện thật. Sẽ trả lời ping ICMP nếu các quy tắc tường lửa cho phép.

GVHD: Ngô Văn Công Page 63

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ưu lượng tầng 2 cho các IP ảo.

Các Ip ảo có thể 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 nhà cung cấp các tuyến đường IP ảo bằng bất kì cách nào mà không cần thông điệp ở tầng 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 IP ảo có thể trong một subnet khác với các giao diện IP. Không trả lời ICMP Ping.

2. Một số dịch vụ của Pfsense 2.1 Captive Portal

Captive portal là một tính năng thuộc dạng flexible, chỉ có trên các firewall thương mại lớn. Tính năng này giúp redirect trình duyệt của người dùng vào một trang web định sẵn. Từ đó giúp chúng ta có thể quản lý được người dùng . Tính năng này tiên tiến hơn các kiểu đăng nhập như WPA, WPA2 ở chỗ người dùng sẽ thao tác trực tiếp với 1 trang web (http, https) chứ không phải là bảng đăng nhập khô khan như kiểu authentication WPA,WPA2.

Tính năng captive portal nằm ở mục Servicescaptive portal.

GVHD: Ngô Văn Công Page 64

Captive portal có các tính năng chính nhƣ sau:

Captive portal: Tinh chỉnh các chức năng của Captive Portal:

Pass-though MAC: Các địa chỉ MAC được cấu hình trong mục này sẽ được

bỏ qua, không chứng thực.

Allowed IP address: Các địa chỉ IP được cấu hình sẽ không chứng thực.

Allowed Hostnames: Các hostname được cấu hình sẽ không chứng thực.

File Manager: Upload trang quản lý của Captive portal lên pfsense.

Các tính năng trong menu Captive portal:

Enable captive portal: đánh dấu chọn nếu muốn sử dụng captive portal.

Maximum concurrent connections: Giới hạn các kết nối trên mỗi

ip/user/mac .

Idle timeout: nếu mỗi ip không còn truy cập mạng trong 1 thời gian xác

định thì sẽ ngắt kết nối của ip/user/mac.

Hard timeout: giới hạn thời gian kết nối của mỗi ip/users/mac.

Logout popup windows: xuất hiện 1 popup thông báo cho ip/user/mac.

Redirect URL: địa chỉ URL mà người dùng sẽ được direct tới sau khi đăng

nhập.

GVHD: Ngô Văn Công Page 65

MAC filtering: đánh dấu vào nếu pfsense nằm trước router. Bởi vì pfsense

quản lý kết nối theo MAC (mặc định). Mà khi dữ liệu qua Router sẽ bị thay đổi mac address nên nếu timeout thì toàn bộ người dùng sẽ mất kết nối.

Authentication: chọn kiểu chứng thực. Pfsense hỗ trợ 3 kiểu:

No authentication: pfsense sẽ điều hướng người dùng tới 1 trang nhất

định mà không chứng thực.

Local user manager: pfsense hỗ trợ tạo user để chứng thực.

Radius authentication: Chứng thực bằng radius server (Cần chỉ ra địa chỉ ip

của radius, port, ...).

HTTP login: dùng https.

https server name: tên server để cấu hình trong trang portal.

https certificate/private key: kiểu chứng thực https.

Hình 3-45 Các tính năng trong menu Captive Portal

Portal page contents dùng để up file portal lên pfsense. Trang portal có dạng:

<form method="post" action="$PORTAL_ACTION$"> <input name="auth_user" type="text">

<input name="auth_pass" type="password">

<input name “rediurl” type=”hidden” value=”$PORTAL_REDIURL”> <input name="accept" type="submit" value="Continue">

GVHD: Ngô Văn Công Page 66

Hình 3-46 Các tính năng trong menu Captive Portal

Cấu hình captive portal dùng tính năng local users (tƣơng tự cho radius):

Đầu tiên ta chọn interface đế áp captive portal: chọn LAN nếu là mạng nội bộ, hoặc các OPT cho vùng DMZ...

Để giới hạn người dùng tải file hoặc dùng trình p2p ta chỉ cho 1 người dùng 10 connections.

Do pfsense thường cài trên các máy cũ, chậm nên ta đặt idle time out khoảng 5 phút để giảm tải cho pfsense.

Ta để Hard timeout là 0 và có thể đánh dấu hoặc không đánh dấu vào mục logout popup window

Đánh dấu vào concurrent user login nếu muốn trong 1 thời điểm chỉ có 1 user đăng nhập. vì ta authentication kiểu local user nên không quan tâm tới các mục trong authentication with radius.

Sau đó, ta tạo trang index.htm có nội dung:

<html> <head>

<title>Wellcome to my portal</title> </head>

GVHD: Ngô Văn Công Page 67

<p>Wellcome to my portal</p>

<p>Click contine to access the Internet</p>

<form method=”post” action=”$PORTAL_ACTION$”> <input name=”auth_user” type=”text”>

<input name=”auth_pass” type=”password”>

<input name=“rediurl” type=”hidden”

value=”$PORTAL_REDIURL$”>

<input name=”accept” type="submit" value="Continue"> </form>

</body> </html>

Rồi chọn browse trong portal page content rồi up file này lên. Rồi bấm

Save để lưu lại.

2.2 DHCP Server

DHCP Server chỉnh cấu hình cho mạng TCP/IP bằng cách tự động gán các địa chỉ IP cho clients khi họ vào mạng.

Hình 3-47 DHCP server

2.3 Load Balancer

pfSense được dựa trên FreeBSD và giao thức Common Address Redundancy Protocol (CARP) của FreeBSD, cung cấp khả năng dự phòng bằng

GVHD: Ngô Văn Công Page 68 cách cho phép các quản trị viên nhóm hai hoặc nhiều tường lửa vào một nhóm tự động chuyển đổi dự phòng. Vì nó hỗ trợ nhiều kết nối mạng diện rộng (WAN) nên có thể thực hiện việc cân bằng tải. Tuy nhiên có một hạn chế với nó như sau:

Chỉ có thể thực hiện cân bằng lưu lượng phân phối giữa hai kết nối WAN và bạn không thể chỉ định được lưu lượng cho qua một kết nối.

Phải trang bị thêm modem nếu không có sẵn.

Không được hỗ trợ từ nhà sản xuất như các thiết bị cân bằng tải khác. Vẫn chưa có tính năng lọc URL như các thiết bị thương mại.

Đòi hỏi người sử dụng phải có kiến thức cơ bản về mạng để cấu hình. Để cấu hình load balancing vào Services Load Balancer.

Hình 3-48 Load balancer

Ấn vào nút để thêm Pool

GVHD: Ngô Văn Công Page 69 Trong đó:

Name: tên pool.

Mode: chọn Load Balancing.

Gateway: chọn gateway muốn áp dụng pool.

Monitor IP: Chọn monitor IP của gateway interface nào thì phần chọn Interface name tương ứng , ấn vào add to pool . Save lại và ấn Apply Change.

Hình 3-50 Chọn monitor cho pool load balacing

Sau khi tạo pool, tạo rules để áp dụng pool. Vào menu Firewall Rules, qua tab LAN, Ấn vào dấu để thêm rule:

GVHD: Ngô Văn Công Page 70 Action: chọn các hành động cho rules.

Interface: rules sẽ áp dụng cho interface nào. Protocol: chọn giao thức áp dụng cho rules. Source: nơi xuất phát (nguồn).

Destination: đích đến.

Ngoài ra chúng ta còn có thể tùy chỉnh các thông số cho rules như trong hình sau:

Hình 3-52 Các thông số tùy chỉnh trong firewall rules

Kết thúc click SaveApply Rule.

Để kiểm tra tình trang cân bằng tải, vào menu Status Load Balancer.

Khi 2 đường truyền online:

GVHD: Ngô Văn Công Page 71

Khi một đường truyền Offline

Hình 3-54 Cân bằng tải khi 1 đường truyền offline, 1 đường truyền online

3. VPN trên Pfsense

VPN (Virtua Private Network) là một nền tảng của hệ thống máy tính hiện đại. Một kết nối VPN cho phép người dùng từ xa kết nối với tài nguyên mạng và truy cập như đã kết nối cục bộ.

PfSense 2.0 có bốn triển khai VPN ngay trên nó là PPTP VPN, OpenVPN, L2TP, IPSec. Open VPN đang phát triển như là giao thức VPN chuẩn, nhưng phait tải về phần mềm client cho bất kì máy tính nào của Microsoft. IPSec thì phức tạp hơn cũng là một giao thức VPN phổ biến. Dịch vụ PPTP và L2TP thường bị thay thế bởi IPSec và OpenVPN nhưng vẫn được sử dụng phổ biến vì cấu hình đơn giản chỉ cần tạo một kết nối vào hầu hết các hệ điều hành chính.

3.1VPN PPTP

PPTP là một tùy chọn VPN phổ biến bởi vì gần hết hệ điều hành đều có tích hợp sẵn trong PPTP clients, bao gồm tất cả các bản phát hành Windows từ Windows 95 OSR2.

PfSense PPTP Server có thể sử dụng một cơ sở dữ liệu người dùng cục bộ, hoặc một máy chủ RADIUS để xác thực.

Để sử dụng chức năng này vào VPN PPTP.

Các bước cấu hình PPTP VPN:

Cấu hình VPN Server.

Vào menu VPN PPTP, chọn tab Configuration: Chọn Enable PPTP server để kích hoạt tính năng VPN.

GVHD: Ngô Văn Công Page 72

Remote address range :Dải địa chỉ IP sẽ cấp khi VPN Client kết nối

Hình 3-55 Cấu hình PPTP VPN

Check Require 128-bit encryption.

Hình 3-56 Chọn mã hóa 128 bit

Chọn save để lưu lại.

Tạo user kết nối qua VPN:

Quan tab User kích chọn vào để thêm user: PPTPVPN/123.

Tạo rule cho phép PPTP clients kết nối đến mạng LAN.

Vào menu firewall  rules, chọn tab PPTP VPN. Nhấn để tạo firewall rule.

Destination: LAN subnet. Destination port range: any.

GVHD: Ngô Văn Công Page 73

Hình 3-57 Tạo rule cho phép PPTP client kết nối đến mạng LAN

Chọn save để lưu lại.

Cấu hình VPN cho Client bện ngoài VPN về Pfsense.

Trên máy client tạo new Connection Wizard Connect to the network at my workplace Virtual Private Network connection.

Hình 3-58 Tạo kết nối VPN

Nhập địa chỉ IP server PPTP. Sau đó nhập username và password để kết nối vào mạng VPN.

GVHD: Ngô Văn Công Page 74

Hình 3-59 Nhập IP PPTP server Hình 3-60 Nhập username, password để kết nối

3.2Open VPN

Các dịch vụ OpenVPN cho phép người dùng bên ngoài thiết lập một chính sách bảo mật, mã hóa kết nối đên mạng cục bộ. Người dùng sẽ kết nối được với mạng bằng cách sử dụng một OpenVPN client và một chứng thực, và sẽ sẽ có quyền truy cập vào mạng như đã được kết nối vật lý.

Lựa chọn thuật toán mã hóa chính xác cho phần cứng của bạn để có hiệu suất tối đa là rất quan trọng. Nhiều tấm card mở rộng VPN, chẳng hạn như những gì tìm thấy trên hệ thống Netgate bằng cách sử dụng bảng Alix yêu cầu AES-128-CBC. Kiểm tra với nhà cung cấp phần cứng để biết thêm chi tiết.

Để cấu hình OpenVPN, ta vào menu VPN OpenVPN, qua tab Wizard, tại

Type of server chọn Local User Acess. Chọn next để tiếp tục.

GVHD: Ngô Văn Công Page 75 Sau đó lần lượt nhập thông tin vào các mục Descriptive name, Country code, State or Province, City, Organization, Email để tạo một chứng chỉ CA mới. Click Add new CA.

Hình 3-62 Tạo một CA mới

Tiếp theo, nhập thông tin vào các mục Descriptive name, Country code, State or Province, City, Organization, Email, nhấp vào Create new Certificate

GVHD: Ngô Văn Công Page 76

Hình 3-63 Tạo server chứng thực

Nhập các thông tin cấu hình server certificate.

Hình 3-64 Thông tin cấu hinh server certificate

Tunnel Network: nhập vào phạm vi interface không sử dụng (không chồng chéo lên mạng LAN đang tồn tại).

Local network: địa chỉ client sẽ truy cập, cụ thể là địa chỉ mạng LAN.

Một phần của tài liệu tìm hiểu cân bằng tải và xây dựng mô hình cân bằng tải trên firewall pfsense (Trang 72 - 96)