CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.
Bài viết trên blog CFSDN này Quá trình cấu hình card mạng kép Tường lửa trong Linux (được khuyến nghị) được tác giả sưu tầm và biên soạn. Nếu bạn quan tâm đến bài viết này thì nhớ like nhé.
Dự án lưu trữ mô phỏng trong phòng thí nghiệm cần sử dụng chế độ lvs-nat để phân tách các dịch vụ của mạng bên trong và bên ngoài thông qua máy chủ lvs, do đó trọng tâm bảo vệ an ninh sẽ rơi vào máy chủ lvs. Cuối cùng tác giả đã chọn sử dụng tường lửa để giải phóng các cổng nhằm đáp ứng yêu cầu. Vì tường lửa khá khác so với công cụ iptable được sử dụng trong Linux truyền thống nên tôi sẽ ghi lại quá trình cấu hình của tường lửa qua blog.
1. Giới thiệu dịch vụ tường lửa:
tường lửa cung cấp tường lửa được quản lý động để hỗ trợ các quy tắc cho các vùng mạng khác nhau, chỉ định mức độ tin cậy nhất định cho mạng cũng như các liên kết và giao diện liên quan của nó. Nó có hỗ trợ cài đặt tường lửa ipv4 và ipv6. Nó hỗ trợ các cầu nối Ethernet và có các tùy chọn cấu hình liên tục và thời gian chạy phân chia. Nó cũng có giao diện cho một dịch vụ hoặc ứng dụng để thêm trực tiếp các quy tắc tường lửa.
Nội dung trên là lời giải thích từ tài liệu chính thức rethat, có vẻ khó hiểu. Vì vậy, tác giả ở đây xin giới thiệu ngắn gọn cách định vị của tường lửa khác với iptable truyền thống như thế nào:
tường lửa cung cấp dịch vụ tường lửa động. Các thay đổi về cấu hình có thể được thực hiện ngay lập tức bất kỳ lúc nào và không cần phải lưu hoặc thực hiện những thay đổi này. Đối với iptable, mỗi thay đổi riêng lẻ có nghĩa là xóa tất cả các quy tắc cũ và đọc tất cả các quy tắc mới từ đó. Nói một cách tương đối, phương pháp của tường lửa linh hoạt hơn.
tường lửa cung cấp các dịch vụ cách ly khu vực, tương tự như sự khác biệt giữa mạng công cộng và mạng nội bộ trong windows. Các dịch vụ quy tắc mạng khác nhau có thể được triển khai bằng cách định cấu hình các quy tắc tương ứng ở các khu vực khác nhau. Thông qua các quy tắc khu vực, tường lửa có thể hoạt động linh hoạt hơn.
Như thể hiện trong hình, tường lửa của tường lửa về cơ bản là một lớp trừu tượng được xây dựng trên tường lửa iptable gốc. Nó sử dụng các chức năng của iptable bằng cách tùy chỉnh các quy tắc. Do đó, hai tường lửa hoạt động song song ở cấp trên và cấp dưới và cả hai đều cần được triển khai. cuối cùng, hãy sử dụng netfilter trong kernel để lọc các gói mạng nhằm đơn giản hóa quy trình làm việc của tường lửa. ("Bốn bảng và năm liên kết" của iptable truyền thống thực sự phức tạp~~囧rz).

2. Môi trường hệ thống:
Như thể hiện trong hình bên dưới, một tường lửa cần được triển khai trên máy chủ LVS. Ở đây, tác giả sẽ chỉ xem xét ngắn gọn hoạt động của máy chủ LVS:

Nền tảng hệ thống: centos 7.
máy chủ lvs: card mạng kép.
- Địa chỉ mạng bên ngoài: 219.223.199.154
- Địa chỉ mạng nội bộ: 192.168.1.17
máy chủ bên ngoài
- Máy chủ a: 192.168.1.11
- Máy chủ b: 192.168.1.14
Ở đây, cổng cần mở phía trên địa chỉ mạng bên ngoài là cổng 10086 và việc chuyển tiếp được thực hiện thông qua cổng này. Không có hạn chế nào về địa chỉ mạng nội bộ và chúng tôi coi đó là môi trường mạng an toàn.
3. Quá trình cấu hình:
Tường lửa có thể được cấu hình theo ba cách:
Một công cụ cấu hình giao diện người dùng đồ họa.
Một công cụ cấu hình giao diện người dùng dòng lệnh.
Cài đặt cấu hình tường lửa được lưu trữ trong tệp xml trong thư mục /etc/firewalld/. Cấu hình tường lửa có thể đạt được bằng cách xem và chỉnh sửa các tệp xml này.
Sau đó, quá trình cấu hình của tác giả chủ yếu dựa trên lệnh tường lửa-cmd. Đầu tiên, hãy khởi động dịch vụ tường lửa:
?
1
|
systemctl khởi động firewalld.service
//
Bắt đầu dịch vụ tường lửa
|
Tiếp theo, mở cổng TCP tương ứng của card mạng ngoài. Ở đây tôi chọn khu vực công cộng, tức là các card mạng kép mở cổng cùng lúc.
?
1
|
tường lửa-cmd --zone=public --add-port=10086
/tcp
--Vĩnh viễn
|
Lệnh này định cấu hình khu vực công cộng để thêm cổng 10086 và tham số tiếp theo --permannet thể hiện sự bổ sung vĩnh viễn. Nghĩa là, nó được viết một lần và vẫn có hiệu lực sau những lần khởi động lại tiếp theo. Tường lửa hỗ trợ các quy tắc lọc và phân vùng theo vùng khác nhau sau đây. Đối với các cấu hình khác nhau, vui lòng tham khảo nội dung sau:
khu vực.
?
1
2
3
4
5
6
7
8
9
|
drop: Bỏ tất cả các gói đến mà không đưa ra bất kỳ phản hồi nào
chặn: Từ chối tất cả các kết nối được khởi tạo bên ngoài và cho phép các kết nối được khởi tạo bên trong.
công khai: Cho phép các kết nối đến được chỉ định
bên ngoài: Tương tự như trên, dành cho các kết nối đến được ngụy trang, thường được sử dụng để định tuyến và chuyển tiếp
dmz: cho phép các kết nối đến bị hạn chế
công việc: Cho phép các máy tính đáng tin cậy hạn chế các kết nối đến, tương tự như nhóm làm việc
home: Tương tự như trên, tương tự như homegroup
nội bộ: Tương tự như trên, phạm vi dành cho tất cả người dùng Internet
đáng tin cậy: Tin tưởng tất cả các kết nối
|
Lọc quy tắc.
?
1
2
3
4
5
6
7
8
|
nguồn
: Lọc dựa trên địa chỉ nguồn
Giao diện: lọc dựa trên card mạng
dịch vụ: lọc dựa trên tên dịch vụ
cổng: lọc dựa trên cổng
icmp-block: lọc gói tin icmp, được cấu hình theo loại icmp
giả mạo: giả mạo địa chỉ IP
cổng chuyển tiếp: chuyển tiếp cổng
quy tắc: quy tắc tùy chỉnh
|
Sau đó, định cấu hình nó thông qua lvs. Hình dưới đây cho thấy cơ chế chuyển tiếp được định cấu hình thông qua ipvsadm:
Tôi đã cố gắng kết nối với địa chỉ IP của mạng bên ngoài, 219.223.199.154:10086, thông qua mạng bên ngoài và nhận thấy rằng tôi không thể kết nối với các dịch vụ máy chủ phụ trợ, tức là các máy chủ chạy ở 192.168.1.11 và 192.168.1.14.
Sau khi gọi lệnh ipvsadm -lcn thì phát hiện đã xảy ra sự cố khi chuyển tiếp trên mạng nội bộ:

Qua packet capture, chúng tôi nhận thấy các gói tin truyền thông trên card mạng nội bộ 192.168.1.17 của máy chủ lvs đã bị chặn nên chúng tôi tiếp tục phát triển port của card mạng nội bộ thông qua lệnh tường lửa-cmd và thêm card mạng nội bộ vào vùng tin cậy.
?
1
|
tường lửa-cmd --zone=tin cậy --add-interface=enp3s0
|
Tiếp theo, bạn có thể thấy card mạng nội bộ tương ứng được mở ở mức tin cậy. Vùng tin cậy cho phép giải phóng tất cả các gói truyền thông. Vì mạng nội bộ là môi trường tương đối an toàn nên không có tác động lớn.
?
1
|
tường lửa-cmd --list-all-zones
|
Lệnh hiển thị kết quả cấu hình của tường lửa. Cả vùng công cộng và vùng tin cậy đều ở trạng thái hoạt động và dịch vụ mạng bên ngoài có thể kết nối với dịch vụ cổng mạng nội bộ một cách bình thường.

Có thể thấy rằng các cài đặt công khai ở trên liên quan đến dịch vụ ssh tương ứng cho dhcpv6-client. Trong tường lửa, nội dung tương ứng có thể được phát hành trực tiếp thông qua dịch vụ, đó là thông số cấu hình chi tiết cần có trong phần Cấu hình. trong thư mục /usr/lib/firewalld/services. Chúng tôi thử mở nội dung của dịch vụ ssh ở trên:

Có thể thấy từ nội dung cấu hình trên: bản thân cái gọi là tường lửa cấu hình dịch vụ cũng được thực hiện bằng cách đánh dấu giao thức và cổng, nhưng nó chỉ được đóng gói bằng logic của dịch vụ. Về việc sử dụng hình thức nào, mọi người đều có quan điểm khác nhau.
bản tóm tắt.
Tôi đã sắp xếp quá trình cấu hình tường lửa với card mạng kép dưới lvs. Các bản phân phối dòng debian cũng tương tự, ngoại trừ việc công cụ tường lửa cần được cài đặt bằng apt-get. Nếu nội dung trên có thiếu sót gì mong các bạn sửa lại.
Liên kết gốc: https://www.cnblogs.com/happenlee/archive/2018/04/24/8928843.html.
Cuối cùng, bài viết về quy trình cấu hình (được khuyến nghị) của Tường lửa với các card mạng kép trong Linux kết thúc tại đây. Nếu bạn muốn biết thêm về quy trình cấu hình (được khuyến nghị) của Tường lửa với các card mạng kép trong Linux, vui lòng tìm kiếm bài viết CFSDN hoặc. tiếp tục Duyệt các bài viết liên quan, tôi hy vọng bạn sẽ ủng hộ blog của tôi trong tương lai! .
Tôi là một lập trình viên xuất sắc, rất giỏi!