Nhân Linux, thông qua Mô-đun bảo mật Linux (LSM), hỗ trợ Linux tăng cường bảo mật (SELinux). Mô-đun này cung cấp một cách để hỗ trợ các chính sách kiểm soát truy cập bắt buộc. SELinux xác định cách các quy trình hạn chế tương tác với các tệp, cổng mạng, thư mục, các quy trình khác và các thành phần máy chủ bổ sung Show
Chính sách SELinux xác định bộ quy tắc, 3 cho tệp và 4 cho quy trình. Các quy tắc xác định cách một quy trình tương tác với một loại khác. SELinux quyết định cho phép hay từ chối một hành động dựa trên ngữ cảnh của chủ thể, đối tượng nào bắt đầu hành động và đối tượng nào là mục tiêu của hành độngNhãn thể hiện bối cảnh cho quản trị viên và người dùng CentOS 7 và CentOS 8 chứa chính sách MySQL SELinux. Máy chủ Percona dành cho MySQL là sự thay thế tùy chọn cho MySQL và có thể sử dụng chính sách này mà không cần thay đổi Ví dụ ngữ cảnh SELinuxĐể xem bối cảnh SELinux, hãy thêm công tắc 5 vào nhiều tiện ích. Đây là một ví dụ về bối cảnh cho 6
Đầu ra sẽ giống như sau
Bối cảnh có các thuộc tính sau
Hầu hết các quy tắc chính sách của SELinux đều dựa trên loại hoặc miền Liệt kê các loại hoặc tên miền SELinux được liên kết với các tệpThuộc tính bảo mật mà SELinux dựa vào là thuộc tính bảo mật Type. Tên loại thường kết thúc bằng một 7. Một nhóm các đối tượng có cùng loại giá trị bảo mật thuộc cùng một miềnĐể xem các loại 8 được liên kết với các thư mục và tệp MySQL, hãy chạy lệnh sau________số 8 Đầu ra sẽ giống như sau
Ghi chú Nếu một loại chính sách không xác định thuộc tính loại cho một đối tượng, giá trị mặc định là 9Chế độ SELinuxSELinux có các chế độ sau
Các loại chính sáchSELinux có một số loại chính sách
SELinux đã giới hạn các quy trình chạy trong một miền và hạn chế mọi thứ trừ khi được cho phép rõ ràng. Một quy trình không bị giới hạn trong một miền không bị giới hạn được phép truy cập gần như tất cả MySQL là một quy trình hạn chế và mô-đun chính sách xác định tệp nào được đọc, cổng nào được mở, v.v. SELinux giả sử Máy chủ Percona để cài đặt MySQL sử dụng vị trí tệp mặc định và cổng mặc định Nếu bạn thay đổi mặc định, bạn cũng phải chỉnh sửa chính sách. Nếu bạn không cập nhật chính sách, SELinux, ở chế độ thực thi, sẽ từ chối quyền truy cập vào tất cả các tài nguyên không mặc định Kiểm tra chế độ SELinuxĐể kiểm tra chế độ SELinux hiện tại, hãy sử dụng một trong các lệnh sau 1Đầu ra sẽ giống như sau 2hoặc
Đầu ra sẽ giống như sau 4Ghi chú Thêm tham số 40 vào 41 để hiển thị 42. Các giá trị boolean cho từng tham số được hiển thị. Một ví dụ về việc sử dụng tham số 43 như sau 9Đầu ra sẽ giống như sau 0Tệp 44 kiểm soát xem SELinux bị tắt hay bật và nếu được bật, liệu SELinux có hoạt động ở chế độ thực thi hay chế độ cho phép hay khôngVô hiệu hóa SELinuxNếu bạn định sử dụng chế độ thực thi vào thời điểm khác, hãy sử dụng chế độ cho phép thay vì tắt SELinux. Trong thời gian SELinux bị vô hiệu hóa, hệ thống có thể chứa các đối tượng bị dán nhãn sai hoặc các đối tượng không có nhãn. Nếu bạn bật lại SELinux và định đặt SELinux ở chế độ thực thi, bạn phải làm theo các bước để Dán nhãn lại toàn bộ hệ thống tệp Khi khởi động, để tắt SELinux, hãy đặt tùy chọn kernel 45. Hạt nhân không tải cơ sở hạ tầng SELinux. Tùy chọn này có tác dụng tương tự như thay đổi hướng dẫn 46 trong tệp cấu hình và sau đó khởi động lại hệ thốngCác công cụ SELinux bổ sungCài đặt các công cụ quản lý SELinux, chẳng hạn như 47 hoặc 48, nếu cầnTrên RHEL 7 hoặc các hệ điều hành tương thích, sử dụng lệnh sau với quyền root 0Trên RHEL 8 hoặc các hệ điều hành tương thích, sử dụng lệnh sau với quyền root 1Ghi chú Bạn có thể cần quyền root để chạy các lệnh quản lý SELinux Chuyển chế độ trong file cấu hìnhChuyển đổi giữa các chế độ có thể hữu ích khi khắc phục sự cố hoặc khi sửa đổi quy tắc Để thay đổi chế độ vĩnh viễn, hãy chỉnh sửa tệp 44 và thay đổi giá trị 90. Bạn cũng nên xác minh sự thay đổi 2Đầu ra sẽ giống như sau 3 4Đầu ra sẽ giống như sau 5Khởi động lại hệ thống của bạn sau khi thay đổi Nếu chuyển từ chế độ bị vô hiệu hóa hoặc chế độ cho phép sang chế độ thực thi, hãy xem Dán nhãn lại toàn bộ hệ thống tệp Chuyển chế độ cho đến lần khởi động lại tiếp theoĐể thay đổi chế độ cho đến lần khởi động lại tiếp theo, hãy sử dụng một trong các lệnh sau với quyền root 6hoặc 7Ghi chú Các thông số 91 sau đây khả dụngtham số thiết lập thiết lập tham số thực thiCũng được phép0Cho phép1Thực thiBạn có thể xem chế độ hiện tại bằng cách chạy một trong các lệnh sau 8Đầu ra sẽ giống như sau 9hoặc 0Đầu ra sẽ giống như sau 1Chuyển chế độ cho một dịch vụBạn có thể di chuyển một hoặc nhiều dịch vụ vào miền cho phép. Các dịch vụ khác vẫn ở chế độ thực thi Để thêm dịch vụ vào miền cho phép, hãy chạy phần sau với quyền root 2Để liệt kê các miền cho phép hiện tại, hãy chạy lệnh sau 3Để xóa một dịch vụ khỏi miền cho phép, hãy chạy như sau 4Dịch vụ trở về chế độ SELinux của hệ thống. Đảm bảo làm theo các bước để Dán nhãn lại toàn bộ hệ thống tệp Dán nhãn lại toàn bộ hệ thống tập tinChuyển từ vô hiệu hóa hoặc cho phép sang thực thi yêu cầu các bước bổ sung. Chế độ thực thi yêu cầu ngữ cảnh hoặc nhãn chính xác để hoạt động. Chế độ cho phép cho phép người dùng và quy trình gắn nhãn tệp và đối tượng hệ thống không chính xác. Chế độ bị vô hiệu hóa không tải cơ sở hạ tầng SELinux và không gắn nhãn tài nguyên hoặc quy trình RHEL và các hệ thống tương thích, hãy sử dụng ứng dụng 92 để dán nhãn lại. Bạn có thể dán nhãn lại toàn bộ hệ thống tệp hoặc ngữ cảnh tệp của một ứng dụngĐối với một ứng dụng, hãy chạy lệnh sau 5Để dán nhãn lại hệ thống tệp mà không cần khởi động lại hệ thống, hãy sử dụng lệnh sau 6Một tùy chọn khác gắn lại hệ thống tệp trong khi khởi động lại. Bạn có thể thêm tệp cảm ứng, đọc trong quá trình khởi động lại hoặc định cấu hình tham số khởi động kernel. Việc hoàn thành thao tác dán nhãn lại sẽ tự động xóa tệp cảm ứng Thêm tệp cảm ứng dưới dạng root 7Để định cấu hình kernel, hãy thêm tham số kernel 93 vào danh sách tham số khởi động. Tham số buộc dán nhãn lại hệ thống. Khởi động lại ở chế độ cho phép để cho phép quá trình hoàn tất trước khi chuyển sang thực thiGhi chú Dán nhãn lại toàn bộ hệ thống tập tin cần có thời gian. Khi việc dán nhãn lại hoàn tất, hệ thống sẽ khởi động lại Đặt thư mục Dữ liệu tùy chỉnhNếu bạn không sử dụng cài đặt mặc định, SELinux, ở chế độ thực thi, sẽ ngăn truy cập vào hệ thống Ví dụ: trong quá trình cài đặt, bạn đã sử dụng cấu hình sau 8Khởi động lại dịch vụ 9Đầu ra có thể như sau 0Kiểm tra nhật ký tạp chí để xem mã lỗi 1Đầu ra có thể như sau 2Kiểm tra các loại SELinux trong 94 3Đầu ra có thể như sau 95Để giải quyết vấn đề, hãy sử dụng các phương pháp sau
Giải pháp được đề xuất là đặt nhãn thích hợp. Quy trình sau đây giả định rằng bạn đã tạo và đặt quyền sở hữu cho vị trí thư mục dữ liệu tùy chỉnh
Đặt vị trí nhật ký tùy chỉnhNếu bạn không sử dụng cài đặt mặc định, SELinux, ở chế độ thực thi, sẽ ngăn truy cập vào vị trí. Thay đổi vị trí nhật ký thành một vị trí tùy chỉnh trong của tôi. cnf 7Xác minh vị trí nhật ký bằng lệnh sau 8Đầu ra có thể là 9Khởi động MySQL trả về thông báo sau 10Đầu ra có thể là 11Chính sách SELinux mặc định cho phép mysqld ghi nhật ký vào một vị trí được gắn thẻ 02, đó là vị trí 03. Bạn có thể giải quyết vấn đề bằng một trong các phương pháp sau
Để gắn thẻ vị trí 04 tùy chỉnh là phương pháp được đề xuất vì nó khóa quyền truy cập. Chạy các lệnh sau để gắn thẻ vị trí tùy chỉnh 12Bạn không thể thay đổi nhãn thư mục 04. Ví dụ: các ứng dụng khác, có quy tắc riêng, sử dụng cùng một thư mụcĐể điều chỉnh chính sách SELinux khi một thư mục được chia sẻ, hãy làm theo các bước sau
Khởi động lại dịch vụ. Nếu bạn gặp lỗi, hãy kiểm tra nhật ký nhật ký và làm theo quy trình tương tự Nếu SELinux ngăn mysql tạo tệp nhật ký bên trong thư mục. Bạn có thể xem tất cả các vi phạm bằng cách thay đổi chế độ SELinux thành 09 và sau đó chạy mysqld. Tất cả các vi phạm được ghi vào nhật ký tạp chí. Sau lần chạy này, bạn có thể tạo một mô-đun chính sách cục bộ, cài đặt nó và chuyển SELinux trở lại chế độ 00. Thực hiện theo thủ tục này
Ghi chú Sử dụng quy trình này để điều chỉnh mô-đun chính sách mysqld cục bộ. Bạn nên xem lại các thay đổi được tạo để đảm bảo các quy tắc không quá khoan dung Đặt thư mục system_u:system_r:mysqld_t:s0 3356 ? 00:00:01 mysqld 05Cập nhật các thẻ SELinux cho thư mục 06, được sử dụng cho 07 hoặc các hoạt động tương tự, nếu cần. Máy chủ chỉ cần truy cập đọc/ghi vào thư mục đích
SELinux dùng để làm gì?Linux được tăng cường bảo mật (SELinux) là kiến trúc bảo mật dành cho các hệ thống Linux® cho phép quản trị viên có nhiều quyền kiểm soát hơn đối với những người có thể truy cập hệ thống. It was originally developed by the United States National Security Agency (NSA) as a series of patches to the Linux kernel using Linux Security Modules (LSM).
Chế độ SELinux là gì?SELinux hoạt động theo nguyên tắc từ chối mặc định. Bất cứ điều gì không được phép rõ ràng đều bị từ chối. SELinux có thể hoạt động ở hai chế độ toàn cầu. Chế độ cho phép, trong đó việc từ chối cấp phép được ghi lại nhưng không được thực thi. Chế độ thực thi, trong đó cả việc từ chối quyền đều được ghi lại và thực thi .
SELinux đang thực thi điều gì?Được giới thiệu lần đầu trong Android 4. 3 Jelly Bean và được đặt ở chế độ Thực thi làm mặc định kể từ Android 4. 4 KitKat, SELinux giúp thực thi quyền kiểm soát truy cập và cố gắng ngăn chặn các cuộc tấn công leo thang đặc quyền
Thư mục SELinux Linux là gì?Linux được tăng cường bảo mật (SELinux) là kiến trúc bảo mật được tích hợp vào 2. 6. nhân x sử dụng Mô-đun bảo mật Linux (LSM) . Đây là một dự án của Cơ quan An ninh Quốc gia Hoa Kỳ (NSA) và cộng đồng SELinux. |