iptables Trình tạo lệnh
Tạo các lệnh iptables để cấu hình quy tắc tường lửa netfilter của Linux (thêm, xóa, danh sách, thiết lập chính sách)
Bắt đầu với iptables
## iptables là gì?
`iptables` dùng để cấu hình tường lửa netfilter trong kernel Linux. Nó tạo ra các danh sách quy tắc có trình tự (chuỗi) nhằm quyết định xử lý từng gói mạng – chấp nhận, bỏ qua, từ chối, ghi nhật ký, hoặc trả lại gói đó. Các quy tắc tồn tại trong bộ nhớ và cần được lưu lại một cách rõ ràng để vẫn có hiệu lực sau khi khởi động lại hệ thống.
## Cách sử dụng
1. **Chọn hành động**: `append` (`-A`), `insert` (`-I`), `delete` (`-D`), `list` (`-L`), `policy` (`-P`), hoặc `flush` (`-F`). 2. **Chọn chuỗi**: `INPUT`, `OUTPUT`, `FORWARD`, hoặc một chuỗi tùy chỉnh. 3. **Thêm các điều kiện so khớp**: giao thức (`-p`), cổng đích (`--dport`), nguồn (`-s`). 4. **Đặt mục tiêu**: `-j ACCEPT|DROP|REJECT|LOG|RETURN`. 5. **Sao chép & Chạy** – và **luôn giữ một phiên SSH đang hoạt động** trước khi áp dụng các quy tắc.
⚠️ **Cảnh báo**: Việc áp dụng sai quy tắc iptables có thể khiến bạn không thể truy cập vào máy chủ qua SSH. Hãy thử các quy tắc mới từ một terminal khác, và tuyệt đối không xóa toàn bộ chuỗi INPUT với chính sách mặc định là DROP trừ khi bạn có quyền truy
Các thao tác phổ biến, các trường hợp khớp và mục tiêu
### `-A` / `-I` / `-D` Thêm vào, chèn vào, xóa `-A CHAIN` thêm một quy tắc vào cuối chuỗi; `-I CHAIN [n]` chèn vào vị trí n (mặc định là 1, có ưu tiên cao nhất); `-D CHAIN` xóa một quy tắc.
### `-L` / `-F` / `-P` Danh sách, xóa sạch, chính sách `-L` liệt kê các quy tắc; `-F` xóa sạch một chuỗi (hoặc tất cả các chuỗi); `-P CHAIN TARGET` thiết lập chính sách mặc định của chuỗi sẽ được áp dụng khi không có quy tắc nào khớp.
### `-p` So khớp giao thức So khớp với `tcp`, `udp`, hoặc `icmp`. Bắt buộc phải được sử dụng trước `--dport`.
### `--dport` Cổng đích So khớp với các gói dữ liệu được gửi đến một cổng cụ thể, ví dụ như `--dport 22` đối với SSH. Phải được sử dụng sau `-p tcp` hoặc `-p udp`.
### `-s` So khớp nguồn So khớp với IP nguồn hoặc CIDR, ví dụ như `-s 192.168.1.0/24`.
### `-j` Chuyển hướng đến mục tiêu Quyết định số phận của gói dữ liệu: `ACCEPT`, `DROP` (bỏ qua mà không báo hiệu
▶Làm thế nào để các quy tắc iptables vẫn tồn tại sau mỗi lần khởi động lại?
▶Chính sách mặc định là gì và tại sao nó lại quan trọng?
▶Làm thế nào để mở cổng 80 cho máy chủ web?
Nếu công cụ này đã giúp ích cho bạn, hãy nghĩ đến việc mua một cốc cà phê cho tôi.
Hãy mua cho tôi một cốc cà phê nhé.