Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

Trong quá trình sử dụng Linux, khi bạn cài đặt một phần mềm nào đó, chúng sẽ yêu cầu bạn vô hiệu hóa SELinux. Vậy, SELinux là gì? Tắt SELinux có an toàn hay không? Cách tắt SELinux như thế nào? Cách sử dụng SELinux ra sao? Tất cả câu hỏi sẽ được Tino Group giải đáp trong bài viết này.

SELinux là gì?

SELinux là viết tắt của Security Enhanced Linux, một module bảo mật Linux kernel của hệ điều hành Linux nhằm gia tăng khả năng bảo mật cho hệ thống được tích hợp sẵn trong hệ thống (chỉ có RedHat Enterprise Linux (RHEL) và CentOS là tích hợp sẵn, bật sẵn giúp người dùng). Module này dùng để thực thi các chính sách tài nguyên xác định mức độ truy cập của user, chương trình và dịch vụ trên hệ thống của hệ điều hành.là viết tắt của Security Enhanced Linux, một module bảo mật Linux kernel của hệ điều hành Linux nhằm gia tăng khả năng bảo mật cho hệ thống được tích hợp sẵn trong hệ thống (chỉ có RedHat Enterprise Linux (RHEL) và CentOS là tích hợp sẵn, bật sẵn giúp người dùng). Module này dùng để thực thi các chính sách tài nguyên xác định mức độ truy cập của user, chương trình và dịch vụ trên hệ thống của hệ điều hành.

Trong chế độ mặc định, SELinux sẽ ngăn chặn và ghi nhật ký tất cả những hành vi truy cập trái phép vào bất kỳ tài nguyên nào của hệ thống. Với phương pháp bảo mật này, người quản trị hệ thống phải cung cấp rõ ràng các quyền truy cập vào: tệp, thư mục, socket và các dịch vụ khác cho user và các chương trình.

Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

SELinux có những chế độ nào?

SELinux chạy ở 3 chế độ khác nhau bao gồm:

“Enforcing”, “Permissive” và “Disabled”.

Enforcing – Thi hành

Trong chế độ Enforcing này, hệ thống sẽ thi hành các chính sách bảo mật một cách khắc khe, cưỡng chế các ứng dụng, người dùng phải tuân theo.Enforcing này, hệ thống sẽ thi hành các chính sách bảo mật một cách khắc khe, cưỡng chế các ứng dụng, người dùng phải tuân theo.

Permissive – Cho phép

Ở chế độ Permissive, SELinux sẽ mô phỏng chính sách Enforcing bằng cách tạo ra các cảnh báo. Tuy nhiên, chế độ Permissive sẽ không thực thi bất kỳ chính sách bảo mật nào, chỉ đưa ra các cảnh báo cho người dùng.Permissive, SELinux sẽ mô phỏng chính sách Enforcing bằng cách tạo ra các cảnh báo. Tuy nhiên, chế độ Permissive sẽ không thực thi bất kỳ chính sách bảo mật nào, chỉ đưa ra các cảnh báo cho người dùng.

Disabled – Tắt

Trong chế độ Disabled, đúng như cái tên của mình, SELinux sẽ tắt chính sách bảo mật và không ép buộc các phần mềm, người dùng thực hiện theo – đây là chế độ không được khuyến khích nếu bạn không biết cách bảo mật hệ thống Linux của mình.Disabled, đúng như cái tên của mình, SELinux sẽ tắt chính sách bảo mật và không ép buộc các phần mềm, người dùng thực hiện theo – đây là chế độ không được khuyến khích nếu bạn không biết cách bảo mật hệ thống Linux của mình.

Nhưng các chính sách DAC – Discretionary Access Control dùng để kiểm soát các user vẫn hoạt động như thông thường.DAC – Discretionary Access Control dùng để kiểm soát các user vẫn hoạt động như thông thường.

Cách vô hiệu hóa SELinux

Cách kiểm tra trạng thái của SELinux

Để kiểm tra trạng thái của SELinux, thông thường, ta sẽ sử dụng lệnh “sestatus” trong command line để kiểm tra đầy đủ thông tin.sestatus” trong command line để kiểm tra đầy đủ thông tin.

Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

QUẢNG CÁO

Ví dụ khi chạy lệnh “sestatus”, hệ thống sẽ trả lại cho bạn thông tin như sau:sestatus”, hệ thống sẽ trả lại cho bạn thông tin như sau:

# sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: default
Current mode: permissive
Mode from config file: permissive
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 30

Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

Sau khi kiểm tra, bạn có thể quyết định bật hoặc tắt SELinux nếu chế độ của SELinux là Enforcing.Enforcing.

Một số điểm lưu ý trước khi tắt SELinux:

  • SELinux là hệ thống “phòng thủ” tránh những sự xâm phạm của user hoặc chương trình vào hệ thống. Do đó, khi tắt SELinux bạn sẽ gặp những nguy cơ về an toàn hệ thống của bạn.
  • Tino Group chỉ hướng dẫn cách tắt, việc thực hiện hay không do bạn quyết định. Nếu hệ thống của bạn gặp phải các tấn công ngoài ý muốn, trách nhiệm sẽ do bạn tự giải quyết. Chúng tôi sẽ không hỗ trợ sửa chữa hay chịu trách nhiệm về những lỗi này.

Cách vô hiệu hóa SELinux tạm thời

Để tạm thời vô hiệu hóa SELinux, bạn sử dụng 1 trong 2 lệnh sau:tạm thời vô hiệu hóa SELinux, bạn sử dụng 1 trong 2 lệnh sau:

$ echo 0 > /selinux/enforce
$ setenforce 0

Đối với cách này, toàn bộ chính sách bảo mật của SELinux sẽ tạm thời vô hiệu hoá cho đến khi bạn khởi động lại hệ thống. Trong trường hợp bạn đã cài đặt xong phần mềm, bạn thực hiện lệnh sau để mở lại SELinux:

$ echo 1 > /selinux/enforce
$ setenforce 1

Cách vô hiệu hóa SELinux vô thời hạn

Tino Group không khuyến khích thực hiện nếu bạn không có nhiều kiến thức khi sử dụng Linux và kiến thức về bảo mật nhằm tránh tình trạng bị tấn công bất ngờ.

Để vô hiệu hoá SELinux vô thời hạn, chúng ta sẽ sửa file config trong SELinux.vô hiệu hoá SELinux vô thời hạn, chúng ta sẽ sửa file config trong SELinux.

Bước 1: truy cập vào file config bằng lệnh:truy cập vào file config bằng lệnh:

$ vi /etc/selinux/config

Bước 2: thay đổi dòng SELINUX=enforcing thành SELINUX=disabled và lưu lại.thay đổi dòng SELINUX=enforcing thành SELINUX=disabled và lưu lại.

# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled

Bước 3: sau khi lưu lại, bạn khởi động lại toàn bộ hệ thống để áp dụng cài đặt mới.sau khi lưu lại, bạn khởi động lại toàn bộ hệ thống để áp dụng cài đặt mới.

Tương tự, khi bạn đã vô hiệu hóa SELinux tạm thời, bạn có thể mở lại SELinux bằng cách đổi SELINUX=disabled thành SELINUX=enforcing trong file config.SELINUX=disabled thành SELINUX=enforcing trong file config.

Kiểm tra hệ thống đã vô hiệu hoá SELinux hay chưa

Bạn có thể sử dụng lệnh “getenforce” để hiển thị nhanh trạng thái của SELinux. Tuy nhiên, lệnh “getenforce” chỉ hiển thị duy nhất thông tin trạng thái của SELinux là “Enforcing”, “Permissive” hoặc “Disabled”.getenforce” để hiển thị nhanh trạng thái của SELinux. Tuy nhiên, lệnh “getenforce” chỉ hiển thị duy nhất thông tin trạng thái của SELinux là “Enforcing”, “Permissive” hoặc “Disabled”.

Hệ thống hiển thị Disabled đồng nghĩa với việc bạn đã vô hiệu hóa SELinux thành công.Disabled đồng nghĩa với việc bạn đã vô hiệu hóa SELinux thành công.

Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

Cách kiểm tra và cài đặt SELinux

Kiểm tra các gói SELinux đã cài đặt

Hiện tại, có 2 hệ điều hành Linux thường được cài đặt sẵn SELinux là RedHat Enterprise Linux (RHEL) và CentOS. Để kiểm tra hệ thống cài đặt sẵn cho bạn gói SELinux nào, bạn chạy lệnh như sau:

rpm -qa | grep -i selinux

Sau khi chạy, hệ thống sẽ trả lại thông tin gói SELinux đã cài đặt trong hệ thống:

# rpm -qa | grep -i selinux
selinux-policy-targeted-3.14.3-67.el8.noarch
libselinux-utils-2.9-5.el8.x86_64
rpm-plugin-selinux-4.14.3-13.el8.x86_64
flatpak-selinux-1.8.5-3.el8.noarch
container-selinux-2.158.0-1.module_el8.4.0+781+acf4c33b.noarch
python3-libselinux-2.9-5.el8.x86_64
selinux-policy-3.14.3-67.el8.noarch
libselinux-2.9-5.el8.x86_64

Cách cài đặt SELinux

Nếu bạn sử dụng những hệ điều hành là các phiên bản phân phối khác của Linux như: Ubuntu hay Debian, những hệ điều hành này sẽ không được cài đặt sẵn SELinux.

Cách 1: sử dụng atp

Cả 2 phiên bản phân phối Linux là Ubuntu và Debian, bạn chạy code như sau để cài đặt SELinux:

$ apt-get install selinux-basics selinux-policy-default auditd

Cách 2: tải và cài đặt thông thường trên Ubuntu

Nếu bạn sử dụng Ubuntu, bạn thực hiện như sau:

Bước 1: tải gói load_selinux_policy về thiết bịtải gói load_selinux_policy về thiết bị

Bước 2: copy và dán vào: /usr/share/initramfs-tools/scripts/init-bottom/

Bước 3: bạn chạy lệnh sau trong terminal để khởi động gói:bạn chạy lệnh sau trong terminal để khởi động gói:

update-initramfs -u

Cuối cùng, bạn chạy lại lệnh “getenforce” để kiểm tra xem hệ thống đã cài đặt SELinux hay chưa.getenforce” để kiểm tra xem hệ thống đã cài đặt SELinux hay chưa.

Nếu SELinux đã được cài đặt, bạn có thể khởi động lại SELinux bằng cách dùng lệnh như sau:

# selinux-activate
# reboot

Sau khi reboot, trạng thái của SELinux sẽ là “Permissive”.Permissive”.

Hướng dẫn se linux trên ubuntu - nếu linux chạy ubuntu

Vậy là chúng ta đã tìm hiểu SELinux là gì, cũng như cách vô hiệu hóa SELinux để bạn cài đặt một số phần mềm cho Linux hoặc các phiên bản phân phối của Linux. Tino Group hi vọng rằng, những kiến thức này sẽ giúp bạn khai thác SELinux tốt hơn để bảo vệ hệ thống của mình.

FAQs về hướng dẫn cách tắt SELinux

Có nên tắt SELinux hay không?

Câu trả lời sẽ tùy thuộc vào bạn. Nếu bạn cần cài đặt một số phần mềm và chúng yêu cầu bạn phải tắt SELinux để có thể cài đặt, bạn nên xem xét việc tắt hay không. Vì nhiệm vụ chính của SELinux là bảo vệ hệ thống của bạn.

Cách kiểm tra nhanh trạng thái hoạt động của SELinux ra sao?

Để kiểm tra trạng thái hoạt động hiện tại của SELinux trong vòng “1 nốt nhạc”, bạn có thể sử dụng lệnH “getenforce”. Ví dụ như sau:

  • # getenforce
  • Enforcing

Enforcing hiển thị, đồng nghĩa với việc SELinux đang thực thi.hiển thị, đồng nghĩa với việc SELinux đang thực thi.

Booleans trong SELinux là gì?

Booleans là chức năng bật/ tắt cài đặt của SELinux. Về cơ bản, bạn sẽ hiểu là bật và tắt. Nhưng trong thực tế, có đến hàng trăm cài đặt riêng biệt để bạn quản lý SELinux một cách hiệu quả nhất theo mục đích sử dụng của bạn.là chức năng bật/ tắt cài đặt của SELinux. Về cơ bản, bạn sẽ hiểu là bật và tắt. Nhưng trong thực tế, có đến hàng trăm cài đặt riêng biệt để bạn quản lý SELinux một cách hiệu quả nhất theo mục đích sử dụng của bạn.

Tài liệu để quản lý và sử dụng SELinux trên CentOS 7 ở đâu?

Nếu bạn muốn tìm kiếm tài liệu để quản lý và sử dụng SELinux trên CentOS 7 một cách đầy đủ và hiệu quả, DigitalOcean có sẵn 1 bộ tài liệu: Introduction to SELinux on CentOS 7 với 3 phần chính bao gồm:Introduction to SELinux on CentOS 7 với 3 phần chính bao gồm:

  1. Giới thiệu cơ bản
  2. Tệp và Quy trình
  3. User

Sau khi học và thực hiện hết trong tài liệu này, bạn sẽ có một hệ thống CentOS 7 với các cài đặt SELinux hoàn chỉnh và kích hoạt, cũng như setting 4 người dùng với 4 cấp độ khác nhau.

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO

  • Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, Phường Bến Nghé, Quận 1, Thành phố Hồ Chí MinhVăn phòng đại diện: 42 Trần Phú, Phường 4, Quận 5, Thành phố Hồ Chí Minh
    Văn phòng đại diện: 42 Trần Phú, Phường 4, Quận 5, Thành phố Hồ Chí Minh
  • Điện thoại: 0364 333 333Tổng đài miễn phí: 1800 6734
    Tổng đài miễn phí: 1800 6734
  • Email:
  • Website: www.tino.org