Unix / Linux - Quản trị người dùng

Trong chương này, chúng ta sẽ thảo luận chi tiết về quản trị người dùng trong Unix.

Có ba loại tài khoản trên hệ thống Unix -

Tài khoản gốc

Đây cũng được gọi là superuservà sẽ có toàn quyền kiểm soát hệ thống. Một siêu người dùng có thể chạy bất kỳ lệnh nào mà không có bất kỳ hạn chế nào. Người dùng này nên được coi là quản trị viên hệ thống.

Tài khoản hệ thống

Tài khoản hệ thống là những tài khoản cần thiết cho hoạt động của các thành phần dành riêng cho hệ thống, ví dụ: tài khoản thư và sshdcác tài khoản. Những tài khoản này thường cần thiết cho một số chức năng cụ thể trên hệ thống của bạn và bất kỳ sửa đổi nào đối với chúng có thể ảnh hưởng xấu đến hệ thống.

Tài khoản người dùng

Tài khoản người dùng cung cấp quyền truy cập tương tác vào hệ thống cho người dùng và nhóm người dùng. Người dùng chung thường được chỉ định cho các tài khoản này và thường có quyền truy cập hạn chế vào các thư mục và tệp hệ thống quan trọng.

Unix hỗ trợ một khái niệm về Tài khoản Nhóm để nhóm một số tài khoản một cách hợp lý. Mọi tài khoản sẽ là một phần của tài khoản nhóm khác. Nhóm Unix đóng vai trò quan trọng trong việc xử lý các quyền đối với tệp và quản lý quy trình.

Quản lý người dùng và nhóm

Có bốn tệp quản trị người dùng chính:

  • /etc/passwd- Giữ thông tin tài khoản người dùng và mật khẩu. Tệp này chứa phần lớn thông tin về các tài khoản trên hệ thống Unix.

  • /etc/shadow- Giữ mật khẩu đã mã hóa của tài khoản tương ứng. Không phải tất cả các hệ thống đều hỗ trợ tệp này.

  • /etc/group - Tệp này chứa thông tin nhóm cho mỗi tài khoản.

  • /etc/gshadow - Tệp này chứa thông tin tài khoản nhóm an toàn.

Kiểm tra tất cả các tệp ở trên bằng cách sử dụng cat chỉ huy.

Bảng sau liệt kê các lệnh có sẵn trên hầu hết các hệ thống Unix để tạo và quản lý tài khoản và nhóm -

Sr.No. Lệnh & Mô tả
1

useradd

Thêm tài khoản vào hệ thống

2

usermod

Sửa đổi các thuộc tính tài khoản

3

userdel

Xóa tài khoản khỏi hệ thống

4

groupadd

Thêm nhóm vào hệ thống

5

groupmod

Sửa đổi các thuộc tính nhóm

6

groupdel

Xóa nhóm khỏi hệ thống

Bạn có thể sử dụng Manpage Help để kiểm tra cú pháp hoàn chỉnh cho từng lệnh được đề cập ở đây.

Tạo một nhóm

Bây giờ chúng ta sẽ hiểu cách tạo một nhóm. Đối với điều này, chúng tôi cần tạo nhóm trước khi tạo bất kỳ tài khoản nào, nếu không, chúng tôi có thể sử dụng các nhóm hiện có trong hệ thống của mình. Chúng tôi có tất cả các nhóm được liệt kê trong/etc/groups tập tin.

Tất cả các nhóm mặc định là các nhóm cụ thể của tài khoản hệ thống và không nên sử dụng chúng cho các tài khoản thông thường. Vì vậy, sau đây là cú pháp để tạo một tài khoản nhóm mới:

groupadd [-g gid [-o]] [-r] [-f] groupname

Bảng sau liệt kê các tham số:

Sr.No. Tùy chọn & Mô tả
1

-g GID

Giá trị số của ID nhóm

2

-o

Tùy chọn này cho phép thêm nhóm có GID không phải duy nhất

3

-r

Cờ này hướng dẫn groupadd để thêm tài khoản hệ thống

4

-f

Tùy chọn này khiến bạn chỉ thoát với trạng thái thành công, nếu nhóm được chỉ định đã tồn tại. Với -g, nếu GID được chỉ định đã tồn tại, thì GID (duy nhất) khác sẽ được chọn

5

groupname

Tên nhóm thực tế sẽ được tạo

Nếu bạn không chỉ định bất kỳ tham số nào, thì hệ thống sẽ sử dụng các giá trị mặc định.

Ví dụ sau tạo một nhóm nhà phát triển với các giá trị mặc định, điều này được hầu hết các quản trị viên chấp nhận.

$ groupadd developers

Sửa đổi nhóm

Để sửa đổi một nhóm, hãy sử dụng groupmod cú pháp -

$ groupmod -n new_modified_group_name old_group_name

Để thay đổi tên nhóm nhà phát triển_2 thành nhà phát triển, hãy nhập -

$ groupmod -n developer developer_2

Đây là cách bạn sẽ thay đổi GID tài chính thành 545 -

$ groupmod -g 545 developer

Xóa nhóm

Bây giờ chúng ta sẽ hiểu cách xóa một nhóm. Để xóa một nhóm hiện có, tất cả những gì bạn cần làgroupdel commandgroup name. Để xóa nhóm tài chính, lệnh là:

$ groupdel developer

Thao tác này chỉ xóa nhóm, không xóa các tệp được liên kết với nhóm đó. Các tệp vẫn có thể truy cập được bởi chủ sở hữu của họ.

Tạo một tài khoản

Hãy để chúng tôi xem cách tạo tài khoản mới trên hệ thống Unix của bạn. Sau đây là cú pháp để tạo tài khoản của người dùng:

useradd -d homedir -g groupname -m -s shell -u userid accountname

Bảng sau liệt kê các tham số:

Sr.No. Tùy chọn & Mô tả
1

-d homedir

Chỉ định thư mục chính cho tài khoản

2

-g groupname

Chỉ định tài khoản nhóm cho tài khoản này

3

-m

Tạo thư mục chính nếu nó không tồn tại

4

-s shell

Chỉ định trình bao mặc định cho tài khoản này

5

-u userid

Bạn có thể chỉ định một id người dùng cho tài khoản này

6

accountname

Tên tài khoản thực tế sẽ được tạo

Nếu bạn không chỉ định bất kỳ tham số nào, thì hệ thống sẽ sử dụng các giá trị mặc định. Cácuseradd lệnh sửa đổi /etc/passwd, /etc/shadow/etc/group và tạo một thư mục chính.

Sau đây là ví dụ tạo tài khoản mcmohd, đặt thư mục chính của nó thành /home/mcmohd và nhóm với tư cách là developers. Người dùng này sẽ được gán Korn Shell cho nó.

$ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd

Trước khi phát hành lệnh trên, hãy đảm bảo rằng bạn đã tạo nhóm nhà phát triển bằng cách sử dụnggroupadd chỉ huy.

Khi một tài khoản được tạo, bạn có thể đặt mật khẩu của nó bằng cách sử dụng passwd lệnh như sau:

$ passwd mcmohd20
Changing password for user mcmohd20.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Khi bạn gõ passwd accountname, nó cung cấp cho bạn một tùy chọn để thay đổi mật khẩu, miễn là bạn là siêu người dùng. Nếu không, bạn chỉ có thể thay đổi mật khẩu của mình bằng cách sử dụng lệnh tương tự nhưng không cần chỉ định tên tài khoản của bạn.

Sửa đổi tài khoản

Các usermodlệnh cho phép bạn thực hiện các thay đổi đối với tài khoản hiện có từ dòng lệnh. Nó sử dụng các đối số giống nhưuseradd , cộng với đối số -l, cho phép bạn thay đổi tên tài khoản.

Ví dụ: để thay đổi tên tài khoản mcmohd đến mcmohd20 và để thay đổi thư mục chính cho phù hợp, bạn sẽ cần đưa ra lệnh sau:

$ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20

Xóa tài khoản

Các userdellệnh có thể được sử dụng để xóa một người dùng hiện có. Đây là một lệnh rất nguy hiểm nếu không sử dụng một cách thận trọng.

Chỉ có một đối số hoặc tùy chọn có sẵn cho lệnh .r, để xóa thư mục chính và tệp thư của tài khoản.

Ví dụ: để xóa tài khoản mcmohd20 , hãy sử dụng lệnh sau:

$ userdel -r mcmohd20

Nếu bạn muốn giữ thư mục chính cho mục đích sao lưu, hãy bỏ qua -rLựa chọn. Bạn có thể xóa thư mục chính nếu cần sau này.