Iptables kiểm tra cú pháp kịch bản


11

Có cách nào để kiểm tra / kiểm tra cú pháp của tập lệnh quy tắc iptables mà không sửa đổi cấu hình tường lửa thực tế không (tôi nghĩ rằng việc thêm và xóa từng quy tắc không phải là cách tốt nhất ...).

Tôi biết về tùy chọn -C nhưng nó không kiểm tra các tùy chọn như chuỗi và hơi khó với mã trả về của nó, bởi vì 1 không phải lúc nào cũng có nghĩa là cú pháp đúng.

Cám ơn!

Câu trả lời:


9

Như đã đề xuất, bạn có thể sử dụng iptables-restore, tuy nhiên bạn có thể sử dụng nó với cờ --test để chỉ kiểm tra cấu hình, thay vì kiểm tra nó như một phần của cài đặt thực tế.

iptables-restore --test [YOUR RULES AS A FILE]

Điều này dường như không luôn luôn hoạt động tốt. Tôi hiện đang làm việc trên một tệp iptables không thành công khi thực sự cài đặt nó (iptables-restore <iptables-new) nhưng với tùy chọn --test, không có lỗi nào được tạo. Tôi sẽ đăng nó nhưng nó dài. m15440 @ NDC01P04CU2PNGA sysconfig # iptables-restore --test <iptables-mới m15440 @ NDC01P04CU2PNGA sysconfig # iptables-restore <iptables-restore iptables-mới: dòng 217 thất bại m15440 @ NDC01P04CU2PNGA sysconfig #
PatrickTaylor

1

Sử dụng iptables-save / iptables-restore. Theo tôi, sử dụng kịch bản là một ý tưởng tồi. Viết quy tắc đầu tiên của bạn từ dòng lệnh, sau đó lưu chúng với "iptables-save> file" và tiếp tục chỉnh sửa tệp đó. "iptables-restore <file" được sử dụng để áp dụng các quy tắc. Lệnh đó sẽ kiểm tra cú pháp và sẽ không áp dụng các quy tắc nếu có lỗi.


1
Ngoài ra, khi chơi với iptables trên một máy từ xa, tôi cũng thiết lập một công việc định kỳ để chạy cứ sau 5 hoặc 10 phút để khôi phục iptables về trạng thái "cho phép tất cả" mặc định, vì vậy nếu tôi tự khóa mình, tôi sẽ quay lại trong vòng 5 đến 10 phút. Chỉ cần nhớ khóa lại và vô hiệu hóa công việc định kỳ;)
jwbensley
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.