Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
597,4 KB
Nội dung
Bài 24 Cấu hình Firewall 24.1 Giới thiệu Firewall mơ hình mạng - Cấu hình máy Server thành Firewall 24.1.1 Cơ iptables - Iptables Netfilter Organiztion viết để tăng tính bảo mật hệt hống Linux - Iptables cung cấp tính sau: + Tích hợp tốt với kernel Linux + Có khả phân tích package hiệu + Cung cấp chi tiết tùy chọn để ghi nhận kiện hệ thống + Cung cấp kỹ thuật NAT + Có khả ngăn chặn số chế công theo kiểu DoS 24.1.2 Cơ chế xử lý package iptables Iptables kiểm tra tất package qua iptables, q trình kiểm tra thực cách từ entry đến entry cuối Có ba loại bảng iptables: - Mangle table: chịu trách nhiệm biến đổi quality of service bits TCP header - Filter queue: chịu trách nhiệm thiết lập lọc packet (packet filtering), có ba loại built-in chains mơ tả để thực sách firewall + Forward chain: Cho phép packet nguồn chuyển qua firewall + Input chain: Cho phép gói tin vào firewall + Output chain: Cho phép gói tin từ firewall - NAT queue: thực thi chức NAT (Network Address Translation), cung cấp loại built-in chains sau đây: + Prerouting chain: NAT từ ngồi vào nội Q trình NAT thực trước thực thi chế routing Điều thuận lợi cho việc đổi địa đích để địa tương thích với bảng định tuyến firewall, cấu hình ta dùng khóa DNAT để mô tả kỹ thuật + Post-routing chain: NAT từ ngồi Q trình NAT thực sau thực chế định tuyến Quá trình nhằm thay đổi địa nguồn gói tin Kỹ thuật gọi NAT one-to-one many-toone, gọi Source NAT hay SNAT + OUPUT: Trong loại firewall thực trình NAT 24.1.3 Jump Target - Jump chế chuyển packet đến target để xử lý thêm số thao tác khác - Target chế hoạt động iptables, dùng đển nhận diện kiểm tra packet Các target xây dựng sẵn iptables như: + ACCEPT: iptables chấp nhận chuyển data đến đích + DROP: iptables khóa packet + LOG: thơng tin packet gởi vào syslog daemon iptables tiếp tục xử lý luật bảng mô tả luật Nếu luật cuối khơng match drop packet Với tùy chọn thông dụng log-prefix=”string”, tức iptables ghi nhận lại message bắt đầu chuỗi “string” + REJECT: ngăn chặn packet gởi thông báo cho sender Với tùy chọn thông dụng reject-with qualifier, tức qualifier định loại reject message gởi lại cho người gởi Các loại qualifer sau: icmp-port-unreachable (default), icmp-net-unreachable, icmp-host-unreachable, icmp-proto-unreachable,… + DNAT: thay đổi địa đích packet Tùy chọn to-destination ipaddress + SNAT: thay đổi địa nguồn packet Tùy chọn to-source [-address][:-] + MASQUERADING: sử dụng để thực kỹ thuật NAT (giả mạo địa nguồn với địa interface firewall) Tùy chọn [ to-ports [-]], định dãy port nguồn ánh xạ với dãy port ban đầu 24.1.4 Thực lệnh iptables Lệnh Mô tả -t Chỉ định bảng cho iptables bao gồm: filter, nat, mangletables -j Nhảy đến target chain packet thỏa luật -A Thêm luật vào cuối iptables chain -F Xóa tất luật bảng lựa chọn -p Mô tả giao thức bao gồm: icmp, tcp, udp all -s Chỉ định địa nguồn -d Chỉ định địa đích -i Chỉ định “input” interface nhận packet -o Chỉ định “output” interface chuyển packet ngồi Ví dụ 1: Firewall chấp nhận cho TCP packet vào interface eth0 đến địa 172.28.24.199 #iptables -A INPUT -s 0/0 -i eth0 -d 172.28.24.199 -p tcp -j ACCEPT Ví dụ 2: Firewall chấp nhận TCP packet định tuyến vào interface eth0 interface eth1 để đến đích 172.28.2.2 với port nguồn 1024 đến 65535 port đích 8080 #iptables -A FORWARD -s 0/0 -i eth0 -o eth1 -d 172.28.2.2 -p tcp \ sport 1024:65535 dport 8080 -j ACCEPT Ví dụ 3: Firewall cho phép gởi icmp echo-request icmp echo-reply #iptables -A OUPUT -p icmp icmp-type echo-request -j ACCEPT #iptables -A INPUT -p icmp icmp-type echo-reply -j ACCEPT Ví dụ 4: Chỉ định số lượng yêu cầu phù hợp cho đơn vị thời gian theo dạng (/second,/minute,/hour./day) #iptables -A INPUT -p icmp -icmp-type echo-request -m limit limit 1/s \ -i eth0 -j ACCEPT Ưu điểm giới hạn số lượng kết nối, giúp cho ta chống chế công DoS (Denial of Service attack) Bảng sau mô tả thêm số thông số mở rộng Switch -m multiport –sport -m multiport –dport -m multiport –ports -m –state Mô tả Mô tả nhiều dãy sport, phải cách dấu “,” dùng tùy chọn –m Mô tả nhiều dãy dport, phải cách dấu “,” dùng tùy chọn –m Mô tả nhiều dãy port, phải cách dấu “,” dùng tùy chọn –m Kiểm tra trạng thái: ESTABLISHED: thiết lập connection NEW:bắt đầu thiết lập connection RELATED: thiết lập connection thứ (FTP data transfer ICMP error) Ví dụ 5: Firewall chấp nhận TCP packet từ địa vào interface eth0 đến địa 172.28.24.195 quainterfaceeth1, source port từ 1024 đến 65535 destionation port 8080 443 (dòng lệnh thứ 1) Packet trả chấp nhận từ 172.28.2.2 (dòng lệnh thứ 2) #iptables - A FORWARD -s 0/0 -i eth0 -d 172.28.24.195 -o eth1 -p tcp \ sport 1024:65535 -m multiport dport 8080,443 -j ACCEPT #iptables -A FORWARD -d 0/0 -i eth0 -s 172.28.2.2 -o eth1 -p tcp \ -m state state ESTABLISHED -j ACCEPT 24.1.5 Sử dụng chain tự định nghĩa Thay sử dụng chain xây dựng iptables, sử dụng User Defined chains để định nghĩa chain name mơ tả cho tất protocol-type cho packet Có thể dùng User Defined chains thay chain dài dòng cách sử dụng chain đến nhiều chain Ví dụ 6: #iptables -A INPUT -i eth0 -d 172.28.24.198 -j fast-input-queue #iptables -A OUTPUT -o eth0 -s 172.28.2.2 -j fast-output-queue #iptables - A fast-input-queue -p icmp -j icmp-queue-in #iptables -A fast-output-queue -p icmp -j icmp-queue-out #iptables -A icmp-queue-out -p icmp icmp-type echo-request \ -m state state NEW -j ACCEPT #iptables -A icmp-queue-in -p icmp icmp-type echo-reply \ -m state state NEW -j ACCEPT 24.1.6 Lưu iptables script Lệnh service iptables save để lưu trữ cấu hình iptables file /etc/sysconfig/iptables Khi khởi động lại chương trình iptables-restore đọc lại file script kích hoạt lại thơng tin cấu hình Định dạng file sau: 24.1.7 Phục hồi script script file Để phục hồi script scrip tfile Đầu tiên, phải lưu script lại dùng lệnh: iptables-save> script_du_phong Sau đó, xem lại script_du_phong vừa lưu, dùng lệnh cat script_du_phong Kết sau: Sau đó, sửa file script_du_phong nạp lại iptables thơng qua lệnh iptables-restore #iptables-restore