Bảo vệ cho hệ điều hành Linux

he-dieu-hanh-linux

Sử dụng phiên bản hệ điều hành Linux được phân phối bởi một tổ chức uy tín như Red Hat, Ubuntu và một vài nhà phân phối khác.

Sử dụng nhân hệ điều hành Linux phiên bản mới nhất

Bạn Đang Xem: Bảo vệ cho hệ điều hành Linux

Khi triển khai cài đặt dịch vụ mới cần kiểm tra dịch vụ đó có những lỗ hổng gì có thể xảy ra.

Sử dụng các phần mềm bảo mật khác cài đặt trên máy tính Linux (Anti-Virus, IDS/IPS, Firewall).

Sau đây tôi trình bày sơ lược về sử dụng Iptable để bảo vệ máy tính Linux

 

khai-niem-ve-he-dieu-hanh-linux

 

Firewall IPtable trên Redhat

Phiên bản nhân Linux version 2.2.x đã được đưa ra với rất nhiều tính năng mới giúp Linux hoạt động tin cậy hơn và hỗ trợ cho nhiều thiết bị. Một trong những tính năng mới của nó đó là hỗ trợ Netfilter iptables ngay trong kernel, giúp thao tác trên packet hiệu quả hơn so với các ứng dụng trước đó như ipfwadm trong kernel 2.0 và ipchains trong kernel 2.2, tuy vẫn hỗ trợ cho các bộ lệnh cũ. Thiết lập firewall theo kiểu lọc packet (packet filtering – lọc gói thông tin) với ipfwadm hoặc ipchains có nhiều hạn chế: thiếu các tích hợp cần thiết để mở rộng tính năng, khi sử dụng lọc packet cho các giao thức thông thường và chuyển đổi địa chỉ mạng (Network Address Translation – NAT) thì thực hiện hoàn toàn tách biệt mà không có được tính kết hợp. Netfilter và iptables trên kernel 2.4 giải quyết tốt các hạn chế trên và có thêm nhiều tính năng khác mà Ipfwadm và Ipchains không có.

Giới thiệu về IPtables

Trong hệ điều hành Linux có rất nhiều firewall. Trong đó có một số firewall được cấu hình và hoạt động trên nền console rất nhỏ và tiện dụng đó là Iptable và Ipchain.

Xem Thêm : Khái quát chung về Authentications

Netfilter/IPtables

Giới thiệu

Iptables do Netfilter Organiztion viết ra để tăng tính năng bảo mật trên hệ thống Linux.

Iptables là một tường lửa ứng dụng lọc gói dữ liệu rất mạnh, có sẵn bên trong kernel Linux 2.2.x và 2.6.x. Netfilter/Iptable gồm 2 phần là Netfilter ở trong nhân Linux và Iptables nằm ngoài nhân. IpTables chịu trách nhiệm giao tiếp giữa người dùng và Netfilter để đẩy các luật của người dùng vào cho Netfilter xử lí. Netfilter tiến hành lọc các gói dữ liệu ở mức IP. Netfilter làm việc trực tiếp trong nhân, nhanh và không làm giảm tốc độ của hệ thống. Được thiết kế để thay thế cho linux 2.2.x Ipchains và linux 2.0.x ipfwadm và có nhiều đặc tính hơn Ipchains và nó được xây dựng hợp lý hơn với những điểm sau:

Netfilter/Iptables có khả năng gì?

Xây dựng bức tường lửa dựa trên cơ chế lọc gói stateless và stateful

Dùng bảng NAT và masquerading chia sẻ sự truy cập mạng nếu không có đủ địa chỉ mạng.

Dùng bảng NAT để cài đặt transparent proxy Giúp các hệ thống tc và iproute2 để tạo các chính sách router phức tạp và QoS. Làm các thay đổi các bit(mangling) TOS/DSCP/ECN của IP header.

Có khả năng theo dõi sự kết nối, có khả năng kiểm tra nhiều trạng thái của packet. Nó làm việc này cho UDP và ICMP tốt nhất là kết nối TCP, ví dụ tình trạng đầy đủ của lọc ICMP chỉ cho phép hồi âm khi có yêu cầu phát đi, chứ không chặn các yêu cầu nhưng vẫn chấp nhận hồi âm với giả sử rằng chúng luôn đáp lại lệnh ping. Sự hồi âm không do yêu cầu có thể là tín hiệu của sự tấn công hoặccửa sau. Xử sự đơn giản của các packet thoả thuận trong các chains (một danh sách các nguyên tắc) INPUT, OUTPUT, FORWARD. Trên các host có nhiều giao diện mạng, các packet di chuyển giữa các giao diện chỉ trên chain FORWARD hơn là trên 3 chain.

Phân biệt rõ ràng giữa lọc packet và NAT (Nework Address Translation)

Có khả năng giới hạn tốc độ kết nối và ghi nhật ký. Bạn có thể giới hạn kết nối và ghi nhật ký ồ ạt để tránh sự tấn công từ chối dịch vụ (Deinal of service).Có khả năng lọc trên các cờ và địa chỉ vật lý của TCP. Là một firewall có nhiều trạng thái, nên nó có thể theo dõi trong suốt sự kết nối, do đó nó an toàn hơn firewall có ít trạng thái.Iptables bao gồm 4 bảng, mỗi bảng với một chính sách (police) mặc định và các nguyên tắc trong chain xây dựng sẵn.

 

Xem Thêm : Các phương pháp chống tràn bộ nhớ đệm

he-dieu-hanh-linux

 

 

Ipchain

Một trong những phần mềm mà hệ điều hành Linux sử dụng để cấu hình bảng NAT của kernel là Ipchain. Bên trong chương trình Ipchain có 2 trình kịch bản (scrip) chính được sử dụng để đơn giản hóa công tác quản trị Ipchains.Ipchain được dùng để cài đặt, duy trì và kiểm tra các luật của Ip firewall trong Linux kernel. Những luật này có thể chia làm nhóm chuỗi luật khác nhau là:

Ip Input chain (chuỗi luật áp dụng cho các gói tin đi đến firewall).

Ip Output chain (chuỗi luật áp dụng cho các gói tin được phát sinh cục bộ trên firewall và đi ra

khỏi firewall).

Ip forwarding chain (áp dụng cho các gói tin được chuyển tiếp tới máy hoặc mạng khác qua firewall). Và các chuỗi luật do người dùng định nghĩa (user defined).

Ipchains sử dụng khái niệm chuỗi luật (chain ) để xử lý các gói tin. Một chuỗi luật là một danh sách các luật dùng để xử lý các gói tin có cùng kiểu là gói tin đến, gói tin chuyển tiếp hay gói tin đi ra.Những luật này chỉ rõ hành động nào được áp dụng cho gói tin. Các luật được lưu trữ trong bảng NAT là những cặp địa chỉ IP chứ không phải từng địa chỉ IP riêng lẻ.

Một luật firewall chỉ ra các tiêu chuẩn để packet và đích đến. Nếu packet không đúng luật kế tiếp sẽ được xem xét, nếu đúng thì luật kế tiếp sẽ chỉ định rõ giá trị của đích có thể các chain do người dùng định nghĩa hay có thể là một trong các giá trị cụ thể sau: ACCEPT, DENY, REJECT, MASQ REDICRECT hay RETURN.

  • ACCEPT: cho phép packet đi qua.
  • DENY: Hủy packet mà không có trả lời thông báo cho phía client biết điều này.
  • REJECT: Tương tự như DENY nhưng có trả lời cho client biết gói tin đã bị hủy bỏ.
  • MASQ: Chỉ hợp lệ đối với chain forward và chain do người dùng định nghĩa và được dùng khi kernel được biên dịch với CONFIG_IP_MASQUERADE. Với chain này packet sẽ được masquerade như là nó được sinh ra từ máy cục bộ, hơn thế nữa các packet ngược sẽ được nhận ra và chúng sẽ được demasqueraded một cách tự động, bỏ qua forwarding chain.
  • REDIRECT: Chỉ hợp lệ với chain input và chain do người dùng định nghĩa và chỉ dùng được dùng khi Linux kernel được biên dịch với tham số CONFIG_IP_TRANSPARENT_PROXY được định nghĩa. Với điều này packets sẽ được chuyển tới socket cục bộ, thậm chí chúng được gửi đến host ở xa. Một số cú pháp hay được sử dụng:Ipchains –[ADC] chain rule-specification [options]Ipchains –[RI] chain rulenum rule-specification[options]Ipchains –D chain rulenum [options]Ipchains –[LFZNX] [chain] [options] Ipchains –P chain target [options]

    Ipchains –M [-L | -S] [options]

     

Nguồn: https://giaiphapmangh3t.com
Danh mục: Security

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *