Quản lý user và phân quyền trên linux

Mình là dev web và việc phân chia quyền hạn cho mỗi user rất quan trọng, nhằm đảm bảo tính bảo mật cũng như tránh xung đột giữa hành vi của các user với nhau.

2021-01-02 7196 lượt xem

  1. Trang Chủ
  2. linux
  3. Xem và Quản lý user - group và phân quyền trên linux

đọc dữ liệu hộ bố

hùng ebudezain

User trong linux

tôi thích vậy đó

đọc dữ liệu hộ bố

1 cách dễ hiểu thì windows có user đăng nhập vào hệ thống thì linux cũng có user y chang bên windows. và cái linux thì có super user [ root ] và user cùi bắp được tạo ra do super user ng ta gọi là các regular user.  và 1 nùi user gom lại để có chung 1 vài quyền hạn thì gọi là group user

hùng thông minh lắm

super user root

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

đọc dữ liệu hộ bố

Trong hệ điều hành Linux, root là tài khoản khi cài hệ điều hành linux là có sẵn luôn. Nó là tài khoản tối thượng và bố thích làm gì thì làm. chỉ việc thêm chữ sudo trước câu lệnh mình muốn thực thi với quyền root. ví dụ: 

đọc dữ liệu hộ bố

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

$ sudo apt-get update
# hoặc 1 câu lệnh khác để chạy lệnh sudo cho các lệnh sau đó
$ su 

hùng đẹp trai

tôi thích vậy đó

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

Regular user

hùng ebudezain

hùng thông minh lắm

bài viết được viết bởi trương thanh hùng //ebudezain.com/

tôi thích vậy đó

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

hùng thông minh lắm

Regular user là các user được tạo ra từ super user root. mỗi user khi được tạo ra cũng sẽ có 1 group chứa nó. user root cũng có 1 group chứa nó. 

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

bài viết được viết bởi trương thanh hùng //ebudezain.com/

tôi thích vậy đó

đọc dữ liệu hộ bố

Khi bạn tạo ra 1 user thì tương ứng bạn cũng có 1 group cũng được tạo ra. và 1 group là để chứa nhiều user cùng làm 1 điều gì đó giống nhau.

hùng ebudezain

đọc dữ liệu hộ bố

hùng đẹp trai

đọc dữ liệu hộ bố

hùng thông minh lắm

Thông thường khi ta tạo một user thì hệ thống sẽ tự tạo ra một group cùng tên đó và gán user vô group luôn. Nếu muốn tạo một group mới thì chúng ta sử dụng lệnh groupadd:

hùng thông minh lắm

tôi thích vậy đó

hùng thông minh lắm

$ sudo groupadd admin
$ sudo groupadd manager

đọc dữ liệu hộ bố

ahihi đồ ngốc trương thanh hùng nè

Trong linux thì sẽ có dạng như sau: 

  • Owner [người sở hữu].
  • Group owner [nhóm sở hữu].
  • Other users [những người khác].

bài viết được viết bởi trương thanh hùng //ebudezain.com/

từ đó chúng ta sẽ có các quyền hạn khác nhau mặc định như sau: 

  • Read – r – 4  : cho phép đọc nội dung.
  • Write – w – 2  : dùng để tạo, thay đổi hay xóa.
  • Execute – x – 1  : thực thi chương trình.

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

tôi thích vậy đó

hùng ebudezain

đọc dữ liệu hộ bố

Để dễ nhớ các số 1 , 2 , 4 thì mình thường nhớ vì lệnh execute thường được sử dụng nên số nhỏ nhất là 1. còn quyền write thì W hay còn gọi là vê kép [ kép là 2 ]. Quyền read có 4 kí tự.

hùng thông minh lắm

hùng ebudezain

hùng thông minh lắm

hùng đẹp trai

hùng ebudezain

hùng đẹp trai

Trước khi phân tích quyền thì bạn xem ảnh này:

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

đọc dữ liệu hộ bố

tôi thích vậy đó

tôi thích vậy đó

hùng ebudezain

đọc dữ liệu hộ bố

Khi bạn gọi lệnh xem quyền linux sẽ show cho bạn 1 dãy gồm 10 chữ số. khi đó vị trí: 

  • 0 - chỉ định danh file hay folder
  • 1,2,3 - chỉ định quyền người sở hữu [ là ngừoi tạo ra nó ]
  • 4,5,6  - chỉ định quyền của những user trong group đó
  • 7,8,9 - chỉ định quyền của những user khác không nằm trong group .

tôi thích vậy đó

hùng ebudezain

khi mình chạy câu lệnh: 

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

hùng thông minh lắm

hùng đẹp trai

thì mình sẽ thấy được các quyền của file được liệt kê như sau 

hùng đẹp trai

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

hùng đẹp trai

hùng ebudezain

hùng thông minh lắm

 

đọc dữ liệu hộ bố

bạn để ý đoạn đầu -rw-r--r-- . Mình sẽ có tổng cộng 10 vị trí trong chuỗi -rw-r--r--  mình sẽ hiểu là : đây là file. người tạo là hero, group là admin.

  • User hero có quyền đọc, ghi [ không có quyền exec ] vì có khúc rw-
  • những user khác nằm trong group admin chỉ có quyền đọc [ không có quyền ghi và thực thi ] vì có khúc r--
  • những user khác không nằm trong admin và không phải hero thì chỉ có quyền đọc [ không có quyền ghi và thực thi ] vì có khúc r--

hùng đẹp trai

đọc dữ liệu hộ bố

Thay đổi quyền

bài viết được viết bởi trương thanh hùng //ebudezain.com/

bài viết được viết bởi trương thanh hùng //ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

hùng ebudezain

hùng thông minh lắm

đọc dữ liệu hộ bố

tôi thích vậy đó

hùng đẹp trai

hùng ebudezain

Chỉ có user có quyền root, hoặc user là owner của file mới có thể thay đổi quyền của file đó. Cú fap:

hùng thông minh lắm

hùng ebudezain

tôi thích vậy đó

hùng ebudezain

Trong đó “mode” có thể được viết theo 2 cách: symbolic hoặc octal mode và trong bài viết này mình chỉ nói về octal mode đơn giản vif mình thích. ok? 😆😆😆😆😆

hùng ebudezain

bài viết được viết bởi trương thanh hùng //ebudezain.com/

bài viết được viết bởi trương thanh hùng //ebudezain.com/

hùng đẹp trai

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

tôi thích vậy đó

hùng đẹp trai

hùng đẹp trai

với phương pháp octal mode thì mỗi quyền được thể hiện bằng 1 số tương ứng cao nhất là 7. 

  • – : 0
  • x : 1
  • w : 2
  • r : 4

hùng ebudezain

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

bài viết được viết bởi trương thanh hùng //ebudezain.com/

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

bài viết được viết bởi trương thanh hùng //ebudezain.com/

hùng ebudezain

tôi thích vậy đó

Quyền sẽ được tính tổng trên từng nhóm, vd: r[4]+w[2]+x[1]=7.

bài viết được viết bởi trương thanh hùng //ebudezain.com/

hùng đẹp trai

đọc dữ liệu hộ bố

đọc dữ liệu hộ bố

hùng thông minh lắm

hùng ebudezain

hùng đẹp trai

tôi thích vậy đó

hùng ebudezain

Khi gán quyền phải gán cho cả 3 nhóm.

đọc dữ liệu hộ bố

ví dụ quyền và số octal

hùng ebudezain

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

đọc dữ liệu hộ bố

751 =====> rwxr-x–x
755 =====> rwxr-xr-x
777 =====> rwxrwxrwx

hùng thông minh lắm

hùng đẹp trai

bài viết được viết bởi trương thanh hùng //ebudezain.com/

Ví dụ chmod

đọc dữ liệu hộ bố

hùng đẹp trai

# gán quyền 644 trên file.
$ chmod 644 [path-file]

hùng thông minh lắm

bài viết được viết bởi trương thanh hùng //ebudezain.com/

tôi thích vậy đó

đọc dữ liệu hộ bố

hùng thông minh lắm

Quyền mặc định

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

đọc dữ liệu hộ bố

ahihi đồ ngốc trương thanh hùng nè

lúc bạn tạo mới 1 folder hay 1 file thì file sẽ có quyền mặc định là 666 còn folder có quyền mặc định là 777

hùng đẹp trai

hùng thông minh lắm

Đổi người sở hữu

hùng đẹp trai

hùng đẹp trai

tôi thích vậy đó

hùng đẹp trai

tôi thích vậy đó

tôi thích vậy đó

hùng thông minh lắm

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

Đổi ngừoi sở hữu đôi khi cũng là 1 cách để thay đổi quyền 😂😂😂😂

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng //ebudezain.com/

$ chown [-R] [user.group] [path-file]

bài viết được viết bởi trương thanh hùng //ebudezain.com/

hùng đẹp trai

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

hùng đẹp trai

hùng ebudezain

-R : đổi tất cả files và thư mục con. và nhờ có lệnh trên chúng ta có thể thay đổi tất cả user hoặc group hoặc cả user và group 

hùng ebudezain

hùng đẹp trai

hùng thông minh lắm

bài viết được viết bởi trương thanh hùng //ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

hùng thông minh lắm

ví dụ: 

# đổi user owner qua hero 
$ chown hero nginx.conf
# đổi group owner qua kana
$ chown .kana nginx.conf
# đổi user qua hero và group qua kata
$ chown hero.kata nginx.conf

hùng thông minh lắm

tôi thích vậy đó

hùng ebudezain

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

Xem bạn là user nào trong linux

hùng thông minh lắm

tôi thích vậy đó

đọc dữ liệu hộ bố

hùng ebudezain

ahihi đồ ngốc trương thanh hùng nè

hùng đẹp trai

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

đôi khi bạn thao tác rất ngầu nhưng bạn đâu biết bạn là ai. vậy linux cung cấp cho bạn câu lệnh để biết bạn là ai trong hệ thống. 

hùng ebudezain

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

xem group bạn đang thuộc về

tôi thích vậy đó

hùng thông minh lắm

hùng đẹp trai

hùng thông minh lắm

hùng ebudezain

Lệnh đáng nhớ nhất để liệt kê tất cả các nhóm mà người dùng là thành viên là lệnh groups. Khi được thực thi mà không có đối số, lệnh sẽ in ra danh sách tất cả các nhóm mà người dùng hiện đang đăng nhập thuộc về:

$ groups 
# ví dụ
$ groups  

tôi thích vậy đó

tôi thích vậy đó

Liệt kê Usertrên Linux

hùng ebudezain

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng //ebudezain.com/

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng //ebudezain.com/

Liệt kê các Group trên Linux

Bài Viết Liên Quan

Chủ Đề