Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh iptables-save
để sao lưu và khôi phục các luật tường lửa iptables trên một hệ thống Linux. Lab này bao gồm mục đích và chức năng của iptables-save
, cách sao lưu và khôi phục các luật tường lửa, và cách tự động hóa quy trình này bằng cách sử dụng một Systemd service. Đây là một kỹ năng giá trị cho các systemadmin và các chuyên gia bảo mật, những người cần quản lý và duy trì các cấu hình tường lửa. Lab này cung cấp các ví dụ thực tế và hướng dẫn từng bước để giúp bạn nắm vững việc sử dụng iptables-save
cho các nhu cầu về mạng và liên lạc của bạn.
Hiểu Mục Đích và Chức Năng của iptables-save
Trong bước này, bạn sẽ tìm hiểu về mục đích và chức năng của lệnh iptables-save
. Lệnh iptables-save
được sử dụng để lưu trạng thái hiện tại của các luật tường lửa iptables vào một file, sau đó có thể được sử dụng để khôi phục cấu hình tường lửa vào một thời điểm sau này.
Lệnh iptables-save
nắm bắt trạng thái hiện tại của các luật tường lửa iptables, bao gồm các bảng filter, nat, mangle, và raw. Điều này cho phép bạn dễ dàng sao lưu và khôi phục cấu hình tường lửa của bạn, điều này rất hữu ích trong các tình huống như:
- Di chuyển các luật tường lửa sang một hệ thống mới
- Khôi phục cấu hình tường lửa sau khi hệ thống khởi động lại hoặc cập nhật
- Tự động hóa việc sao lưu và khôi phục các luật tường lửa
Để sử dụng lệnh iptables-save
, chỉ cần chạy lệnh sau trong terminal:
sudo iptables-save
Lệnh này sẽ xuất các luật tường lửa iptables hiện tại ra terminal. Bạn có thể chuyển hướng đầu ra này vào một file cho mục đích sao lưu:
sudo iptables-save > iptables-backup.rules
File iptables-backup.rules
được tạo sau đó có thể được sử dụng để khôi phục cấu hình tường lửa vào một thời điểm sau này bằng cách sử dụng lệnh iptables-restore
.
Ví dụ đầu ra:
## Generated by iptables-save v1.8.7 on Wed Apr 12 12:34:56 2023
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
## Completed on Wed Apr 12 12:34:56 2023
Đầu ra cho thấy các luật tường lửa iptables hiện tại, có thể được sử dụng để khôi phục cấu hình sau này.
Sao Lưu và Khôi Phục Các Luật Tường Lửa iptables Sử Dụng iptables-save
Trong bước này, bạn sẽ học cách sao lưu và khôi phục các luật tường lửa iptables bằng cách sử dụng các lệnh iptables-save
và iptables-restore
.
Đầu tiên, hãy sao lưu các luật tường lửa iptables hiện tại vào một file:
sudo iptables-save > iptables-backup.rules
Lệnh này sẽ tạo một file có tên iptables-backup.rules
trong thư mục hiện tại, chứa cấu hình tường lửa iptables hiện tại.
Để khôi phục các luật tường lửa từ file sao lưu, hãy sử dụng lệnh iptables-restore
:
sudo iptables-restore < iptables-backup.rules
Lệnh này sẽ áp dụng các luật tường lửa được lưu trữ trong file iptables-backup.rules
vào hệ thống hiện tại.
Ví dụ đầu ra:
$ sudo iptables-restore < iptables-backup.rules
$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
DROP all -- anywhere anywhere state INVALID
ACCEPT tcp -- anywhere anywhere tcp dpt:22
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Đầu ra cho thấy rằng các luật tường lửa đã được khôi phục thành công từ file sao lưu.
Tự Động Hóa iptables-save trong một Systemd Service
Trong bước này, bạn sẽ học cách tự động hóa việc sao lưu các luật tường lửa iptables bằng cách sử dụng một Systemd service.
Đầu tiên, tạo một file Systemd service mới:
sudo nano /etc/systemd/system/iptables-save.service
Thêm nội dung sau vào file:
[Unit]
Description=Backup iptables firewall rules
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/sbin/iptables-save -f /etc/iptables/rules.v4
[Install]
WantedBy=multi-user.target
Systemd service này sẽ chạy lệnh iptables-save
và lưu các luật tường lửa vào file /etc/iptables/rules.v4
.
Tiếp theo, kích hoạt và khởi động Systemd service:
sudo systemctl enable iptables-save.service
sudo systemctl start iptables-save.service
Điều này sẽ đảm bảo rằng các luật tường lửa iptables được tự động sao lưu bất cứ khi nào hệ thống khởi động.
Để xác minh rằng service đang hoạt động chính xác, hãy kiểm tra trạng thái của service:
sudo systemctl status iptables-save.service
Ví dụ đầu ra:
● iptables-save.service - Backup iptables firewall rules
Loaded: loaded (/etc/systemd/system/iptables-save.service; enabled; vendor preset: enabled)
Active: active (exited) since Wed 2023-04-12 12:34:56 UTC; 1min 23s ago
Main PID: 12345 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 1071)
Memory: 0B
CGroup: /system.slice/iptables-save.service
Apr 12 12:34:56 labex systemd[1]: Started Backup iptables firewall rules.
Service phải ở trạng thái "active (exited)", cho biết rằng lệnh iptables-save
đã được thực thi thành công.
Bạn cũng có thể kiểm tra nội dung của file /etc/iptables/rules.v4
để xác minh rằng các luật tường lửa đã được lưu:
cat /etc/iptables/rules.v4
Lệnh này sẽ hiển thị cấu hình tường lửa iptables hiện tại.
Tóm tắt
Trong lab này, trước tiên bạn đã tìm hiểu về mục đích và chức năng của lệnh iptables-save
, lệnh này được sử dụng để lưu trạng thái hiện tại của các luật tường lửa iptables vào một file. Điều này cho phép bạn dễ dàng sao lưu và khôi phục cấu hình tường lửa của bạn, điều này rất hữu ích trong các tình huống như di chuyển các luật tường lửa sang một hệ thống mới, khôi phục cấu hình tường lửa sau khi hệ thống khởi động lại hoặc cập nhật, và tự động hóa việc sao lưu và khôi phục các luật tường lửa. Sau đó, bạn đã học cách sao lưu và khôi phục các luật tường lửa iptables bằng cách sử dụng các lệnh iptables-save
và iptables-restore
. Cuối cùng, bạn đã khám phá cách tự động hóa lệnh iptables-save
bằng cách sử dụng một Systemd service, điều này đảm bảo rằng các luật tường lửa được tự động sao lưu một cách thường xuyên.