Hệ ñiều hành UNIX-Linux

Chương 5. Quản lý tài khoản người dùng

1

Unix operating system - Nguyen Tri Thanh - Sep-10

Tài khoản người dùng (cid:1) Hệ ñiều hành ña người dùng cần phân biệt người dùng khác

nhau

(cid:1) Mọi truy cập hệ thống Linux ñều thông qua tài khoản người

dùng

(cid:1) Mỗi người sử dụng ñược gắn với tên duy nhất (cid:1) Khi cài ñặt hệ ñiều hành Linux root sẽ ñược tự ñộng tạo ra

ñược xem là thuộc về siêu người dùng

(cid:1) Chỉ nên ñăng nhập root khi thực sự cần thiết, và hãy ñăng

2

Unix operating system - Nguyen Tri Thanh - Sep-10

nhập vào hệ thống với t- cách là một người dùng bình thường.

Các file liên quan ñến tài khoản

(cid:1) Danh sách người dùng cũng như các thông tin tương ứng

ñược lưu trữ trong file /etc/passwd

mail:x:8:12:mail:/var/spool/mail: games:x:12:100:games:/usr/games: gopher:x:13:30:gopher:/usr/lib/gopher-data: bien:x:500:0:Nguyen Thanh Bien:/home/bien:/bin/bash sangnm:x:17:100:Nguyen Minh Sang:/home/sangnm:/bin/bash lan:x:501:0:Lan GNU:/home/lan:/bin/bash (cid:2) Tên người dùng (username) (cid:2) Mật khẩu người dùng (không lưu trực tiếp ở ñây) (cid:2) Chỉ số người dùng (user id) (cid:2) Các chỉ số nhóm người dùng (group id) (cid:2) Tên ñầy ñủ hoặc các thông tin khác về tài khoản người dùng (cid:2) Thư mục ñể người dùng ñăng nhập (cid:2) Shell ñăng nhập (chương trình chạy lúc ñăng nhập) (cid:2) Mật khẩu của các tài khoản ñược lưu trữ trong file /etc/shadow

3

Unix operating system - Nguyen Tri Thanh - Sep-10

Thêm người dùng

useradd [tùy-chọn] useradd -D [tùy-chọn]

(cid:2) -c, comment : soạn thảo trường thông tin về người dùng. (cid:2) -d, home_dir : tạo th- mục ñăng nhập cho người dùng. (cid:2) -e, expire_date : thiết ñặt thời gian (YYYY-MM-DD) tài khoản

người dùng sẽ bị hủy bỏ.

(cid:2) -f, inactive_days : tùy chọn này xác ñịnh số ngày trước khi mật khẩu của người dùng hết hiệu lực khi tài khoản bị hủy bỏ (cid:2) -g, initial_group : tùy chọn này xác ñịnh tên hoặc số khởi tạo

ñăng nhập nhóm người dùng

(cid:2) -G, group : danh sách các nhóm phụ mà người dùng cũng là

thành viên thuộc các nhóm ñó

(cid:2) -m : với tùy chọn này, thư mục cá nhân của người dùng sẽ ñược

tạo nếu nó chưa tồn tại.

4

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Tùy chọn

Thêm người dùng (tiếp)

useradd -D [tùy-chọn] (cid:1) Khi tùy chọn -D ñược sử dụng, lệnh useradd sẽ bỏ qua các giá

nhân ñể tạo tên th- mục cá nhân mới

(cid:2) -e, default_expire_date : thay ñổi thời hạn hết giá trị của tài

khoản người dùng

(cid:2) -f, default_inactive : xác ñịnh thời ñiểm hết hiệu lực của mật

khẩu ñăng nhập khi tài khoản người dùng bị xóa bỏ (cid:2) -g, default_group : thay ñổi chỉ số nhóm người dùng (cid:2) -s, default_shell : thay ñổi shell ñăng nhập

5

Unix operating system - Nguyen Tri Thanh - Sep-10

trị ngầm ñịnh và cập nhật các giá trị mới (cid:2) -b, default_home : thêm tên người dùng vào cuối th- mục cá

Tạo tài khoản không sử dụng lệnh useradd

(cid:2) vipw mở trình soạn thảo trên hệ thống và hiệu chỉnh bản sao tạm

của file /etc/passwd

(cid:2) Việc sử dụng file tạm và khóa file sẽ có tác dụng như một cơ chế khóa ñể ngăn việc hai người dùng cùng soạn thảo file một lúc (cid:2) Lúc ñó sẽ thêm dòng thông tin mới về người dùng cần tạo. Hãy

cẩn thận trong việc soạn thảo tránh nhầm lẫn (cid:2) Trường mật khẩu nên ñể trống và tạo mật khẩu sau (cid:2) Khi file này ñược lwu, vipw sẽ kiểm tra sự ñồng nhất trên file bị

thay ñổi

(cid:2) Nếu tất cả mọi thứ thích hợp thì có nghĩa là file /etc/passwd ñã

ñược cập nhật.

6

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Soạn thảo file /etc/passwd bằng vipw

Tạo tài khoản không sử dụng lệnh useradd

# mkdir /home/new

(cid:1) Tạo thư mục cá nhân của người dùng mới với lệnh mkdir

(cid:1) Sao chép các file từ thư mục /etc/skel/ thư mục lưu trữ các file

cần thiết cho người dùng) vào thư mục cá nhân vừa tạo

(cid:1) Thay ñổi quyền sở hữu và các quyền truy nhập file /home/new

với các lệnh chown và chmod # chown new /home/new # chmod go=u,go-w /home/new

# passwd new

7

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Thiết lập mật khẩu của người dùng với lệnh passwd

Thay ñổi thuộc tính người dùng

home_phone] [-m other] [-r service] [-q] [-u] [-v] [user]

(cid:1)Lệnh thay ñổi thông tin cá nhân người dùng chfn [-D binddn] [-P path] [-f name] [-o office] [-p phone] [-h

chsh [-D binddn] [-P path] [-s shell] [-l] [-q] [-u] [-v] [user]

ư

(cid:1)Thay ñổi shell ñăng nhập.

8

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1)Thay ñổi mật khẩu passwd user

Thay ñổi thuộc tính người dùng

usermod [tùy-chọn] Tùy chọn:

(cid:2)-c, comment : thay ñổi thông tin cá nhân của tài khoản người dùng. (cid:2)-d, home_dir : thay ñổi th- mục cá nhân của tài khoản người dùng. (cid:2)-e, expire_date : thay ñổi thời ñiểm hết hạn của tài khoản người dùng (YYYY-MM-DD). (cid:2)-g, initial_group : tùy chọn này thay ñổi tên hoặc số khởi tạo ñăng ư nhập nhóm người dùng. Tên nhóm phải tồn tại, và số của nhóm phải tham chiếu ñến một nhóm ñã tồn tại (cid:2)-G, group : thay ñổi danh sách các nhóm phụ mà người dùng cũng là thành viên thuộc các nhóm ñó (cid:2)-l, login_name : thay ñổi tên ñăng nhập của người dùng. Trong một số trường hợp, tên thư mục riêng của người dùng có thể sẽ thay ñổi ñể tham chiếu ñến tên ñăng nhập mới. (cid:2)-s, shell : thay ñổi shell ñăng nhập. (cid:2)-u, uid : thay ñổi chỉ số người dùng.

9

Unix operating system - Nguyen Tri Thanh - Sep-10

Xóa bỏ một người dùng (lệnh userdel)

userdel [-r]

10

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Xóa bỏ các thông tin về người dùng ñược ñưa ra trên dòng lệnh. người dùng này phải thực sự tồn tại. (cid:1) Tuỳ chọn -r có ý nghĩa: các file tồn tại trong thư mục riêng của người dùng cũng như các file nằm trong các thư mục khác có liên quan ñến người dùng bị xóa bỏ cùng lúc với thư mục người dùng (cid:1) Lệnh userdel sẽ không cho phép xóa bỏ người dùng khi họ ñang ñăng nhập vào hệ thống (cid:1)Ngoài ra cũng có thể xóa bỏ tài khoản của một người dùng bằng cách hiệu chỉnh lại file /etc/passwd

Nhóm người dùng - Mỗi người dùng trong hệ thống Linux ñều thuộc vào một nhóm người dùng cụ thể

- Tất cả những người dùng trong cùng một nhóm có thể cùng truy nhập một trình tiện ích, hoặc ñều cần truy cập một thiết bị nào ñó như máy in chẳng hạn.

- Một người dùng cùng lúc có thể là thành viên của nhiều nhóm khác nhau, tuy nhiên tại một thời ñiểm, người dùng chỉ thuộc vào một nhóm cụ thể

11

Unix operating system - Nguyen Tri Thanh - Sep-10

-Nhóm có thể thiết lập các quyền truy nhập ñể các thành viên của nhóm ñó có thể truy cập thiết bị, file, hệ thống file hoặc toàn bộ máy tính mà những người dùng khác không thuộc nhóm ñó không thể truy cập ñược

Nhóm người dùng

root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon

(cid:1) Nhóm người dùng chứa trong file /etc/group, file này có cách bố trí tương tự như file /etc/passwd

(cid:2) Tên nhóm người dùng (groupname) (cid:2) Mật khẩu nhóm người dùng (passwd - ñược mã hóa), nếu trường này rỗng, tức là nhóm không yêu cầu mật khẩu (cid:2) Chỉ số nhóm người dùng (group id) (cid:2) Danh sách các người dùng thuộc nhóm ñó (users)

12

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Ý nghĩa từng trường

Thêm nhóm người dùng (cid:1) Hiệu chỉnh thông tin trong file /etc/group bằng bất kỳ trình soạn thảo văn bản nào có trên hệ thống của ñể thêm nhóm người dùng (cid:1)Sử dụng lệnh

groupadd [tùy-chọn]

(cid:1)Tuỳ chọn

(cid:2) -g, gid : tùy chọn này xác ñịnh chỉ số nhóm người dùng,

chỉ số này phải là duy nhất

(cid:2) -r : tùy chọn này ñược dùng khi muốn thêm một tài khoản

hệ thống

(cid:2) -f : tùy chọn này sẽ bỏ qua việc nhắc nhở, nếu nhóm người

dùng ñó ñã tồn tại, nó sẽ bị ghi ñè

# groupadd -r installer

13

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1)Ví dụ

Sửa ñổi các thuộc tính của một nhóm người dùng (cid:1)Sửa ñổi một nhóm người dùng

groupmod [tùy-chọn] (cid:2) Tùy chọn: (cid:2) -g, gid : thay ñổi giá trị chỉ số của nhóm người dùng (cid:2) -n, group_name : thay ñổi tên nhóm người dùng

groupdel

(cid:1)Xóa một nhóm người dùng (lệnh groupdel) (cid:1)Xóa tên nhóm ñó trong file /etc/group (chỉ xóa ñược một nhóm khi không có người dùng nào thuộc nhóm ñó nữa) (cid:1)Ngoài ra có thể sử dụng lệnh groupdel ñể xóa một nhóm người dùng

(cid:2) Lệnh này sẽ sửa ñổi các file tài khoản hệ thống, xóa tất cả

các thực thể liên quan ñến nhóm

14

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:2) Tên nhóm phải thực sự tồn tại

Xác ñịnh người dùng ñang ñăng nhập

who [tùy-chọn]

(cid:2) -H, --heading : hiển thị tiêu ñề của các cột trong nội dung lệnh. (cid:2) -m : hiển thị tên máy và tên người dùng với thiết bị vào chuẩn. (cid:2) -q, --count : hiển thị tên các người dùng ñăng nhập và số người

dùng ñăng nhập.

(cid:1) Tuỳ chọn

# who root tty1 Nov 15 03:54 lan pts/0 Nov 15 06:07

15

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1)Ví dụ

Xác ñịnh người dùng ñang ñăng nhập (cid:1)Liệt kê danh sách những người dùng ñang ñăng nhập

# users lan root

whoami who am i

(cid:1)Khi không nhớ biết tên ñăng nhập trong một phiên làm việc, hãy sử dụng lệnh whoami và who am i

# whoami lan # # who am i may9!lan pts/0 Nov 15 06:07

(cid:1)Ví dụ

16

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1)Có sự khác nhau một chút giữa whoami và who am i. khi ta ñăng nhập bằng 1 tài khoản rồi dùng lệnh su ñể chuyển sang một tài khoản khác

Xác ñịnh thông tin người dùng

id [tùy-chọn] [người-dùng]

(cid:1) ðưa ra thông tin về người dùng ñược xác ñịnh trên dòng lệnh

hoặc thông tin về người dùng hiện thời (cid:2) -g, --group : chỉ hiển thị chỉ số nhóm người dùng. (cid:2) -u, --user : chỉ hiển thị chỉ số của người dùng. (cid:2) --help : hiển thị trang trợ giúp và thoát.

17

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Ví dụ # id uid=506(lan) gid=503(lan) groups=503(lan) # id -g 503 # id -u 506 # id root uid=0(root)gid=0(root)groups=0(root),1(bin),2(daemon), 3(sys),4(adm),6(disk),10(wheel)

Xác ñịnh các quá trình người dùng ñang thi hành

w [người-dùng]

(cid:1) Lệnh w ñưa ra thông tin về người dùng hiện thời trên hệ thống

và quá trình họ ñang thực hiện

18

Unix operating system - Nguyen Tri Thanh - Sep-10

(cid:1) Ví dụ # w root tty2 - 2:14pm 13:03 9.30s 9.10s /usr/bin/mc -P lan pts/1 192.168.2.213 3:20pm 0.00s 0.69s 0.10s w root pts/2 :0 3:33pm 9:32 0.41s 0.29s /usr/bin/mc -P