Posted by : Admin Thứ Sáu, 1 tháng 11, 2013

Trong quá trình cài đặt Linux, CentOS sẽ yêu cầu bạn xác định có bật tường lửa lên hay không.

Trường hợp bạn quyết định bật tường lửa bằng cách chọn Enable firewall, bạn vẫn có thể cho phép một số ứng dụng và dịch vụ có thể đi xuyên qua tường lửa này, chẳng hạn như Remote Login, Web Server, File Transfer hay Mal Server.
Ngoài ra, trong bước cài đặt này, bạn cũng được chọn lựa sử dụng tính năng bảo mật nâng cao Security Enhanced Linux (SELinux) theo hai mức độ Warn (chỉ cảnh báo), Active (bảo mật toàn diện) hoặc bỏ qua không dùng tính năng này (Disable).
Dịch vụ iptables
Bạn cũng có thể cài đặt thêm dịch vụ IPTables trong CentOS để biến máy chủ Linux thành một tường lửa cho hệ thống mạng. Đây là một cách làm khá hiệu quả, vì IPtables có thể tích hợp tốt hơn phần nhân của hệ điều hành LinuxCentOS, có khả năng phân tích gói tin hiệu quả, lọc gói tin dựa vào địa chỉ MAC và một số cờ hiệu trong TCP Header.Dịch vụ này cũng cung cấp các tuỳ chọn để ghi nhận sự kiện hệ thống (Event Log) và khả năng ngăn chặn được cơ chế tấn công theo kiểu DOS (Denial Of Service).
Cài đặt dịch vụ iptables
Để kiểm tra xem dịch vụ iptables đã được cài đặt hay chưa trong CentOS, ta sử dụng lệnh:
Nếu không có kết quả nào tìm thấy, để cài đặt, ta dùng lệnh:
Và sau đó tiến hành khởi động dịch vụ iptables
Cấu hình dịch vụ iptables
Có 2 cách cấu hình iptables là dùng lệnh và sửa file /etc/sysconfig/iptables. Nếu cấu hình iptables bằng cách dùng lệnh, cấu hình sẽ không được lưu lại sau khi ta khởi động lại dịch vụ iptables. Ví dụ sau đây là cấu hình iptables cho phép truy cập ssh:
Trong đó, dòng Firewall -1 INPUT –m tcp –p tcp –dport 22 –j ACCEPT sẽ mở cổng giao tiếp mặc định của dịch vụ SSH (port 22) và cho phép truy cập hệ thống bằng dịch vụ này.
Sau khi cấu hình, ta khởi động lại dịch vụ iptables, để phần thay đổi bắt đầu có tác dụng
Rồi chúng ta sẽ sang một máy tính Linux khác trong mạng, và kiểm tra cấu hình vừa hoàn tất bằng cách gõ lệnh ssh dia_chi_ip, với dia_chi_ip là địa chỉ IP của máy chủ cài iptables, và ta thấy truy cập là thành công.
Nếu thử nghiệm lại, ta thực hiện thao tác thêm dấu # vào đầu dòng để xóa tạm dòng cấu hình này trong trong file /etc/sysconfig/iptables, và cũng khởi động lại dịch vụ iptables, rồi bạn hãy tự kiểm tra lại kết quả.
Tương tự là phần cấu hình để iptables cấm thao tác trả lời gói tin ICMP (ping):
Ta thêm dấu # vào trước dòng cấu hình cho phép ICMP trong /etc/sysconfig/iptables, rồi khởi động lại
Khi dùng một máy tính bất kỳ để ping vào máy tính có iptables, bạn sẽ nhận được các phản hồi dạng Destination host unreachable.
Để có thể trở lại trạng thái ban đầu, bạn mở lại dòng cấu hình trong /etc/sysconfig/iptables để cho phép ping
Một số cấu hình iptables thường được sử dụng
Chấp nhận các packet vào cổng 80 trên card mạng eth0
iptables -A INPUT -i eth0 --dport 80 -j ACCEPT
Bỏ các gói tin gửi đến cổng 23 dùng giao thức TCP trên card mạng eth0
iptables -A INPUT -i eth0 -p tcp --dport 23 -j DROP
Cho phép firewall chấp nhận các gói tin TCP có địa chỉ nguồn là bất kỳ và địa chỉ đích là 192.168.1.1; và có hướng đi vào là công interface eth0:
iptables –AINPUT –s0/0 eth0 -d 192.168.1.1-p TCP -j ACCEPT
Chấp nhận các gói tin TCP cho việc forward khi các gói tin có địa chỉ nguồn là bất kì đến từ interface ethernet 0, source post nằm trong dãy 1024-65535 và có địa chỉ đích là 192.168.1.58, ngõ ra là interface ethernet 1, với destination post là 80 (www)
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o eth1 -p TCP --sport 1024:65535 --dport 80 -j ACCEPT
Chấp nhận cho firewall send ICMP (echo-request) và nhận ICMP (echo-reply)
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT-p icmp --icmp-type echo-reply-j ACCEPT
Firewall chấp nhận các gói tin TCP sẽ được route khi chúng đi vào interface ethernet0 với địa chỉ nguồn là bất kì và có chiều đi ra là interface ethernet 1 với địa chỉ đích là 192.168.1.58. Source post là dãy 1024-65535 và destination port là 80 (www) và 443 (https).
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o eth1 -p TCP --sport 1024:65535 -m multiport --dport 80,443 -j ACCEPT
Thay vì phải định ra source post và destination port, ta chỉ đơn giản sử dụng tùy chọn –m state --state ESTABLISHED
iptables -A FORWARD -d 0/0 -o eth0 -s 192.168.1.58 -i eth1 -p TCP -m state --state ESTABLISHED -j ACCEPT
Đổi IP nguồn cho các packet ra card mạng eth0 là 210.40.2.71. Khi nhận được packet vào từ Internet, Iptables sẽ tự động đổi IP đích 210.40.2.71 thành IP đích tương ứng của máy tính trong mạng LAN 192.168.0/24
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 210.40.2.71
Hoặc bạn có thể dùng MASQUERADE thay cho SNAT như sau:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
(MASQUERADE thường được dùng khi kết nối đến Internet là pp0 và dùng địa chỉ IP động)
Đổi địa chỉ đích của server thành 192.168.1.2 khi truy cập đến 172.28.24.199
iptables -t nat -A PREROUTING -d 172.28.24.199 -i eth0 -j DNAT to-destination 192.168.1.2
Quản lý iptables bằng shorewall:
Shorewall là một kiểu giao diện để dễ quản lý iptables hơn. Ta có thể cài đặt shorewall bằng gói rpm như sau:
Cấu hình shorewall:
Trong tập tin cấu hình /etc/shorewall/interfaces, ta định nghĩa interface như sau:
Tiếp theo là định nghĩa các vùng trong tập tin cấu hình /etc/shorewall/zone:
Còn trong tập tin cấu hình /etc/shorewall/policy, ta xác định các chính sách kết nối giữa các vùng (zone) mà bạn đã định nghĩa trong file /etc/shorewall/zone phía trên
Việc cấu hình tập tin /etc/shorewall/rules là quan trọng nhất, kiểm soát những rule cho phép kết nối hay không. File /etc/shorewall/rules được hiểu như giao diện của iptables, thay vì định nghĩa bằng iptables phức tạp, thì ta tiến hành định nghĩa theo cấu trúc của shorewall, sau đó shorewall sẽ biên dịch lại thành những câu lệnh iptables.
Sau đó, bạn sửa chữa tập tin cấu hình /etc/shorewall/shorewall.conf, giữ nguyên cấu hình mặc định, chỉ sửa dòng sau:
Trước khi sử dụng, bạn phải khởi động dịch vụ shorewall, rồi kiểm tra các luật iptables phát sinh từ shorewall:

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog

Tổng số lượt xem trang

Social Icons

Social Icons

Message From Admin

các bạn có thể tham gia bình luận,góp ý...những bình luận nào mang tính thô tục,chửi bậy..không tốt,admin sẽ xóa không báo trước Thân!

- Copyright © Hệ thống mạng unix/Linix -Robotic Notes- Powered by Blogger - Designed by Johanes Djogan -