Giới thiệu về IPTABLES: cấu hình Tường lửa trên Linux

iptables

đến cấu hình tường lửa hoặc tường lửa trong Linux, chúng ta có thể sử dụng iptables, một công cụ mạnh mẽ dường như bị nhiều người dùng lãng quên. Mặc dù có các phương pháp khác, chẳng hạn như ebtables và arptables để lọc lưu lượng truy cập ở cấp độ liên kết hoặc Squid ở cấp ứng dụng, iptables có thể rất hữu ích trong hầu hết các trường hợp, thực hiện bảo mật tốt trong hệ thống của chúng tôi ở cấp độ lưu lượng truy cập và truyền tải net .

Nhân Linux thực thi iptables, một phần chăm sóc các gói lọc và trong bài viết này, chúng tôi hướng dẫn bạn cấu hình một cách đơn giản. Nói một cách đơn giản, iptables xác định những thông tin nào có thể và không thể nhập, cô lập nhóm của bạn khỏi các mối đe dọa tiềm ẩn. Và mặc dù có các dự án khác như Firehol, Firestarter, v.v., nhiều chương trình tường lửa này sử dụng iptables ...

À Hãy bắt tay vào làm việc, với các ví dụ bạn sẽ hiểu rõ hơn mọi thứ (đối với những trường hợp này, cần phải có đặc quyền, vì vậy hãy sử dụng sudo trước lệnh hoặc trở thành root):

Cách chung để sử dụng iptables để tạo chính sách bộ lọc là:

IPTABLES -ARGUMENTS I / O ACTION

-ARGUMENT ở đâu đối số mà chúng tôi sẽ sử dụng, thông thường -P để thiết lập chính sách mặc định, mặc dù có những cái khác như -L để xem các chính sách mà chúng ta đã cấu hình, -F để xóa chính sách đã tạo, -Z để đặt lại bộ đếm byte và gói, v.v. Một tùy chọn khác là -A để thêm một chính sách (không phải theo mặc định), -Tôi để chèn một quy tắc tại một vị trí cụ thể và -D để xóa một quy tắc nhất định. Cũng sẽ có các đối số khác để trỏ tới các giao thức -p, – cổng nguồn vận chuyển, – cổng cho cổng đích, giao diện -i đến,-giao diện gửi đi, địa chỉ IP nguồn -s và địa chỉ IP đích -d.

iptables đầu vào-đầu ra

Hơn nữa I / O sẽ đại diện cho nếu chính trị nó được áp dụng cho đầu vào INPUT, cho đầu ra OUTPUT hoặc nó là chuyển hướng lưu lượng FORWARD (có những loại khác như PREROUTING, POSTROUTING, nhưng chúng tôi sẽ không sử dụng chúng). Cuối cùng, cái mà tôi gọi là HÀNH ĐỘNG có thể mang giá trị CHẤP NHẬN nếu chúng ta chấp nhận, TỪ CHỐI nếu chúng ta từ chối hoặc DROP nếu chúng ta loại bỏ. Sự khác biệt giữa DROP và REJECT là khi một gói tin bị từ chối với REJECT, máy khởi tạo nó sẽ biết rằng nó đã bị từ chối, nhưng với DROP, nó hoạt động âm thầm và kẻ tấn công hoặc nguồn gốc sẽ không biết chuyện gì đã xảy ra, và sẽ không biết nếu chúng tôi có tường lửa hoặc kết nối không thành công. Cũng có những người khác như LOG, gửi theo dõi nhật ký hệ thống ...

Để sửa đổi các quy tắc, chúng tôi có thể chỉnh sửa tệp iptables bằng trình soạn thảo văn bản ưa thích của chúng tôi, nano, gedit, ... hoặc tạo các tập lệnh có quy tắc (nếu bạn muốn ghi đè chúng, bạn có thể thực hiện bằng cách đặt dấu # ở đầu dòng sao cho bị bỏ qua dưới dạng nhận xét) thông qua bảng điều khiển với các lệnh như chúng tôi sẽ giải thích ở đây. Trong Debian và các công cụ dẫn xuất, bạn cũng có thể sử dụng các công cụ iptables-save và iptables-restore ...

Chính sách cực đoan nhất là chặn mọi thứ, hoàn toàn là tất cả lưu lượng truy cập, nhưng điều này sẽ khiến chúng tôi bị cô lập, với:

iptables -P INPUT DROP

Chấp nhận tất cả:

iptables -P INPUT ACCEPT

Nếu chúng ta muốn điều đó tất cả lưu lượng đi từ nhóm của chúng tôi đều được chấp nhận:

iptables -P OUTPUT ACEPT

La một hành động triệt để khác sẽ là xóa bỏ tất cả các chính sách từ iptables với:

iptables -F

Hãy đi đến các quy tắc cụ thể hơnHãy tưởng tượng rằng bạn có một máy chủ web và do đó lưu lượng truy cập qua cổng 80 phải được cho phép:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Và nếu ngoài quy tắc trước đó, chúng tôi muốn một nhóm có iptables chỉ được nhìn thấy bởi các máy tính trên mạng con của chúng tôi và điều đó không được mạng bên ngoài chú ý:

iptables -A INPUT -p tcp -s 192.168.30.0/24 --dport 80 -j ACCEPT

Trong dòng trước, những gì chúng ta đang nói với iptables là thêm một quy tắc -A, để các đầu vào INPUT và giao thức TCP, thông qua cổng 80, được chấp nhận. Bây giờ hãy tưởng tượng bạn muốn tôi duyệt web bị từ chối đối với các máy cục bộ đi qua máy chạy iptables:

iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 DROP

Tôi nghĩ việc sử dụng rất đơn giản, có tính đến từng tham số của iptables dùng để làm gì, chúng ta có thể thêm các quy tắc đơn giản. Bạn có thể thực hiện tất cả các kết hợp và quy tắc mà chúng tôi tưởng tượng ... Để bản thân không mở rộng thêm, chỉ cần thêm một điều nữa, đó là nếu máy được khởi động lại, các chính sách đã tạo sẽ bị xóa. Các bảng được khởi động lại và sẽ vẫn như trước, do đó, khi bạn đã xác định rõ các quy tắc, nếu bạn muốn biến chúng thành vĩnh viễn, bạn phải khởi chạy chúng từ /etc/rc.local hoặc nếu bạn có Debian hoặc các công cụ dẫn xuất, hãy sử dụng các công cụ mà chúng tôi cung cấp (iptables-save, iptables-restore và iptables-apply).


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Jimmy olano dijo

    Đây là bài viết đầu tiên tôi thấy trên IPTABLES, mặc dù dày đặc - yêu cầu mức độ kiến ​​thức trung bình-, HÃY ĐI TRỰC TIẾP ĐẾN LỚP.

    Tôi khuyên mọi người nên sử dụng nó như một "sổ tay tham khảo nhanh" vì nó được cô đọng và giải thích rất tốt. số 8-)

  2.   JESUS dijo

    Tôi muốn bạn nói trong một bài viết trong tương lai về việc liệu sự thay đổi đối với systemd trong hầu hết các bản phân phối linux, có ảnh hưởng theo một cách nào đó đến tính bảo mật của linux nói chung hay không và nếu sự thay đổi này là tốt hơn hay tệ hơn cho các bản phân phối linux và tương lai. Tôi cũng muốn biết những gì đã biết về tương lai của devuan (debian không có systemd).
    Cảm ơn bạn rất nhiều bạn thực hiện bài viết rất tốt.

  3.   Slevin dijo

    Bạn có thể tạo một bài báo giải thích bảng mangle không?

  4.   Sebastián dijo

    Chỉ chặn Facebook?