Trong bài viết này, tôi sẽ hướng dẫn các bạn cách quản trị user và group trong linux. Quản lý người dùng và nhóm là một phần quan trọng của việc quản lý hệ thống Linux. Từ việc quản lý user bao gồm việc kiểm tra, tạo mới, sửa đổi, lock, đổi mật khẩu, xóa người dùng cho đến việc thành lập và quản lý nhóm cũng như quản lý quyền truy cập vào tệp và thư mục thông qua quyền sở hữu và quyền truy cập.

Quản lý user

Linux có 3 loại tài khoản người dùng:

                Super user (root): có quyền quản trị cao nhất hệ thống Linux

                Service user : tài khoản này được sử dụng bởi các dịch vụ để chạy các quy trình và thực thi các   chức năng

                Regular user : thường được quyền đăng nhập hệ thống với một số quyền nhất định và không có quyền quản trị

Kiểm tra

File /etc/passwd là tập tin quan trọng nhất trong hệ điều hành Linux. Tập tin này lưu trữ thông tin cần thiết về người dùng trên hệ thống. Thuộc sở hữu của người dùng root và để chỉnh sửa tập tin này, chúng ta phải có quyền root. Nhưng hãy cố gắng tránh chỉnh sửa tập tin này. Bây giờ chúng ta hãy xem tập tin này trông như thế nào.

                [1] Username : lưu trữ tên người dùng được sử dụng khi đăng nhập vào hệ thống. Độ dài của trường này là từ 1 đến 32 ký tự

                [2] password : lưu trữ mật khẩu của người dùng. Ký tự x cho biết mật khẩu được lưu trong tệp /etc/shadow ở định dạng được mã hóa. Chúng ta có thể sử dụng lệnh passwd để cập nhật trường này

                [3] User ID(UID): Mã định danh người dùng là số được hệ điều hành gán cho mỗi người dùng để giới thiệu người dùng.

                                UID 0: được dành riêng cho người dùng root

                                UID 1-99: được dành riêng cho các tài khoản được xác định trước khác

                                UID 100-999: được hệ thống dành riêng cho các tài khoản/nhóm quản trị và hệ thống.

                [4] : Group ID(GID) : mặc dịnh là 0

                [5] : Real name(GECOS) : chứa thông tin của người dùng

                [6] : Home directory :  chứa đường dẫn tuyệt đối của thư mục chính của người dùng

                [7] : Login shell : lưu trữ đường dẫn tuyệt đối của shell người dùng. Shell này được khởi động khi người dùng đăng nhập vào hệ thống.

Để xem danh sách user chúng ta vào quyền root và sử dụng lệnh : cat /etc/passwd

File /etc/shadow là một tập tin văn bản chứa thông tin về mật khẩu của người dùng hệ thống.

                [1]  Username : tài khoản người dùng tồn tại trên hệ thống

                [2]  Encrypt password: mật khẩu được mã hóa với định dạng đầu

                                                $1$   – MD5

                                                $2a$ – Blowfish

                                                $2y$ – Eksblowfish

                                                $5$   – SHA – 256

                                                $6$   – SHA – 512

Nếu mật khẩu chứa dấu (*) hoặc (!) (ví dụ  :  root:!:19802:0:99999:7::: ) thì người dùng sẽ không thể đăng nhập vào hệ thống bằng xác thực mật khẩu.

                [3]  Last password change: là ngày mật khẩu được thay đổi lần cuối ( tính từ 01/01/1970)

                [4] Minimum password age : ngày trước khi phải thay đổi password

                [5] Maximum password age : ngày sau khi phải thay đổi password

                [6] Warning period : ngày user bị cảnh báo nếu không thay đổi password

                [7] Unused : Chưa sử dụng, dành riêng cho việc sử dụng sau này.

Tạo User

Để thêm một user mới, chúng ta sử dụng lệnh adduser hoặc useradd trên Linux với  quyền sudo

Tạo user với userid, home directory chỉ định

useradd [option] [username]

                Option : -c : tên mô tả user

                                -d : quy định thư mục cá nhân

                                -m : quy định và tạo thư mục cá nhân nếu nó chưa tồn tại

                                -g : quy định nhóm người dùng mà user là thành viên

Ví dụ

sudo useradd -d /etc/passwd adminvietnam1

Kiểm tra user với câu lệnh

more /etc/passwd   
id adminvietnam1

Khóa, mở tài khoản câu lệnh

passwd -l [username]
passwd -u [username]

Đổi mật khẩu trong lần đăng nhập tiếp theo

passwd -e [username]
passwd –expire [username]

Chỉnh sửa, xóa

Thay đổi thư mục home

usermod -d /home/adminvietnam adminvietnam1

Thay đổi nhóm

usermod -g group1, group2 [username]

Thay đổi shell

Thay đổi shell mặc định của người dùng trong hệ thống linux

usermod -s /bin/bash [username]

Không cho phép người dùng đăng nhập vào hệ thống qua môi trường dòng lệnh

usermod -s /bin/nologin [username]

Xóa user

userdel [username]

Quản lý group

Các tài khoản có chung đặc điểm hoặc quyền truy cập vào thư mục hay tập tin thì để giảm các thao tác quản trị , cần đưa các tài khoản này vào chung một nhóm để dễ quản lý

Kiểm tra

File /etc/group là một tập tin xác định các nhóm mà người dùng thuộc về hệ điều hành linux. Nhiều người dùng có thể được phân loại thành các nhóm. Việc sử dụng các nhóm cho phép khả năng bổ sung, ủy quyền một cách có tổ chức, chẳng hạn như truy cập vào disk, máy in, các thiết bị khác, …vv. Cho phép supper user ủy quyền một số nhiệm vụ quản trị cho người dùng thông thường. Bây giờ chúng ta hãy xem tập tin này trông như thế nào.

                [1] Groupname : tên của group

                [2] Group password : mật khẩu của group, ký tự x cho biết mật khẩu được lưu trong tệp /etc/shadow ở định dạng được mã hóa

                [3] : Group ID(GID) : số ID của nhóm, số này là duy nhất với mỗi nhóm

                [4] : Group list : danh sách tài khoản user là thành viên của nhóm.

Để xem danh sách group chúng ta vào quyền root và sử dụng lệnh : cat /etc/group

Tạo một group mới

groupadd [group name]

VD: tạo mới group manageAdmin

groupadd manageAdmin

Kiểm tra group

cat /etc/group

Thay đổi group ID

groupmod -g [group name]

VD: Group manageAdmin có GID là 1003 thì có thể thay đổi GID thành 1004

groupmod -g 1004 manageAdmin

Chuyển user sang group khác

groupmod -g [group name] [username]

VD: adminvietnam trong group1 chúng ta có thể thêm vào group2, group3 qua

groupmod -g group1, group2, group3 adminvietnam

Thêm người dùng trong group

adduser [username] [groupname]

VD: thêm adminvietnam vào group manageAdmin

adduser adminvietnam manageAdmin

Xóa người dùng trong group

gpasswd -d [username] [groupname]

VD: xóa adminvietnam khỏi group manageAdmin

gpasswd -d adminvietnam manageAdmin

Xóa group

groupdel [groupname]

Ví dụ: xóa group manageAdmin

groupdel manageAdmin

Cảm ơn các bạn đã theo dõi.

vanluong

Chia sẻ