quy tắc iptables không tải lại trên CentOS 6.x


7

Tôi có một ipset duy nhất được thêm iptablesvào hộp trên CentOS 6.x và quy tắc này bị mất khi máy khởi động lại.

Tôi đã tìm thấy câu trả lời này cho thấy cách tạo một hệ thống Ubuntu tải lại các iptablesquy tắc sau khi khởi động lại nhưng thư mục này không có trên CentOS.

Làm cách nào để làm cho hộp CentOS này tải các quy tắc tường lửa sau khi khởi động lại?

LƯU Ý: Có, tôi đang lưu các quy tắc sử dụng iptables savevà tệp đang được lưu.

Đây là những gì bên trong /etc/sysconfig/iptables:

# Generated by iptables-save v1.4.7 on Mon Apr  8 09:52:59 2013
*filter
:INPUT ACCEPT [2713:308071]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1649:1766437]
-A INPUT -p tcp -m multiport --dports 25,587,465,110,143,993,995 -m state --state INVALID,NEW,RELATED,ESTABLISHED -m set
 --match-set blocking src -j DROP 
COMMIT
# Completed on Mon Apr  8 09:52:59 2013

Lệnh hiển thị -A INPUTnhưng khi tôi tạo nó tôi đã sử dụng -I INPUT.

Quy tắc được sử dụng để tạo này là:

iptables -I INPUT -p tcp -m multiport --dports 25,587,465,110,143,993,995 -m state --state NEW,ESTABLISHED,RELATED,INVALID -m set --set blocking src -j DROP

@Christopher, âm thanh tương tự như tập tin / etc / sysconfig / network-scripts / rule- *. Tập tin ipset này có chứa các định nghĩa về cấu trúc dữ liệu ipset hoặc các quy tắc iptables thực tế không? Thí dụ?
rjt

Câu trả lời:


2

Bạn bị mất quy tắc vì:

Sau khi thêm quy tắc, bạn phải lưu trước khi khởi động lại dịch vụ hoặc máy chủ. bởi vì khi bạn thêm quy tắc, chúng nằm trong bộ nhớ nhưng sau khi lưu, chúng sẽ lưu trong tệp và khôi phục từ tệp đó khi khởi động.

Vì vậy, trước tiên Bạn cần lưu các quy tắc được thêm bằng cách sử dụng:

$ /etc/init.d/iptables save

Điều này sẽ lưu tất cả các quy tắc /etc/sysconfig/iptables, sau đó chỉ cần kích hoạt dịch vụ iptables khi khởi động bằng cách sử dụng:

$ chkconfig --level 53 iptables on

Cách 2

Để lưu quy tắc:

$ /sbin/iptables-save  > /etc/iptables.rules

Để khôi phục quy tắc [Thêm mục dưới đây vào /etc/rc.local]:

$ /sbin/iptables-restore < /etc/iptables.rule

1
Tôi đã làm điều đó và iptables tải khi hệ thống khởi động, nhưng nó tải trống.
DuckDucking

bạn đã kiểm tra /etc/sysconfig/iptableshồ sơ chưa?
Rahul Patil

sau khi thêm quy tắc chỉ cần thực hiện save mà tôi đã đề cập ở trên, sau đó nó sẽ khôi phục khi khởi động bằng /etc/sysconfig/iptablestệp
Rahul Patil

Có, tập tin được lưu chính xác. Đây là một điều kỳ lạ tôi phát hiện ra bây giờ: khi tôi thực hiện dịch vụ lưu iptables tôi thấy một thông báo cho tôi biết rằng các quy tắc đã được lưu vào / etc / sysconfig / iptables nhưng khi tôi thực hiện lệnh /etc/init.d/iptables của bạn sẽ lưu thông báo với tôi rằng các quy tắc đã được lưu vào / etc / sysconfig / ipt. Nói cách khác, được lưu vào một tệp khác ... tại sao vậy?
DuckDucking

1
không Các quy tắc không được tải lại sau khi khởi động. Tôi đã giải quyết điều đó tạm thời bằng cách tạo một crontab chạy tập lệnh bash để kiểm tra xem có bất kỳ quy tắc nào được tải và tải chúng không. Đó là một giải pháp khập khiễng, nhưng nó đang hoạt động cho đến khi tôi khám phá ra một giải pháp thực sự. Cảm ơn.
DuckDucking

2

Tôi đã có cùng một vấn đề.

Bạn đã tạo một setipset có tên là "chặn", tuy nhiên, tôi không thấy nơi này setđược lưu để bạn phải tạo lại nó sau khi khởi động lại trong một kịch bản tôi đoán?


1

Chỉ cần lưu ý vấn đề tương tự trên Centos 6.4.

Tôi vừa mới đặt @reboot /etc/init.d/iptables restartcrontab và nó hoạt động.


0

Tôi đã gửi email đến Host Gator và cuối cùng tôi đã nhận được phản hồi từ Quản trị viên Linux tại Host Gator:

Xin chào!

HostGator đã xây dựng một tường lửa tùy chỉnh theo mặc định trên tất cả các gói VPS và máy chủ chuyên dụng.

Luckliy, có một tập tin trong cấu hình tường lửa có nghĩa là để duy trì cấu hình iptables.

Các tập tin này là: /etc/firewall/INCLUDE

Chỉ cần thêm các dòng iptables của bạn vào tệp đó và khởi động lại tường lửa với khởi động lại tường lửa dịch vụ. Các quy tắc iptables sẽ tồn tại.

Trên thực tế, tôi đã đi trước và thêm các dòng đó vào tệp, vì vậy các quy tắc iptables của bạn sẽ tải và tồn tại ngay bây giờ.

Xin đừng ngần ngại theo dõi nếu bạn có thêm bất kỳ câu hỏi hoặc thắc mắc nào

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.