Các khái niệm Tài khoản : Các thông số khởi tạo cho tài khoản mặc định được khai báo trong các file : /etc/default/useradd, Thông tin môi trường làm việc người dùng - /etc/skel/
Trang 1Chương 4
Quản trị tài khoản và nhóm người dùng
Trang 2Nội dung
1. Quản trị tài khoản và nhóm người dùng
2. Quản trị chủ sở hữu và quyền trên file
3. Sử dụng RootSudo
2
Trang 3I Quản trị tài khoản và
Trang 4Các khái niệm
Tài khoản :
Mỗi tài khoản có duy nhất một tên và id (UID)
Mỗi tài khoản có một password
Mỗi tài khoản thuộc về ít nhất một nhóm (gọi là primary hay default group) Các nhóm khác primary group gọi là
secondary groups
Mỗi tài khoản có thể có một thư mục cá nhân trùng
với tên tài khoản (thường nằm trong /home) - là nơi
tài khoản lưu dữ liệu cá nhân
4
Trang 5Các khái niệm
Tài khoản :
Các thông số khởi tạo cho tài khoản mặc định được
khai báo trong các file : /etc/default/useradd,
Thông tin môi trường làm việc người dùng - /etc/skel/
Thư mục /etc/skel/ chứa các tập tin cấu hình môi trường làm việc của người dùng
Các file cấu hình này sẽ được chép vào thư mục cá nhân của tài khoản
Trang 7Các khái niệm
Tài khoản root – tài khoản Superuser
Tài khoản có quyền cao nhất trên hệ thống
Đảm nhiệm việc quản trị và bảo trì hệ thống
Sử dụng: không login trực tiếp
Lệnh sudo
Trang 8Các khái niệm
Nhóm người dùng :
Mỗi nhóm có duy nhất một tên và id (GID)
Mỗi nhóm có thể chứa một hay nhiều thành viên
Thông tin về nhóm lưu tại local trong file
/etc/group
8
Trang 9Các lệnh quản trị người dùng
Tạo tài khoản người dùng
Thay đổi thông số (thuộc tính) của tài khoản
Xem thông tin về tài khoản
Tạm khóa tài khoản
Xóa tài khoản
Trang 10-g primary_group Tên primary group hoặc GID
-G group1[,group2,…] Các suplementary groups của tài khoản
Trang 11useradd user2 //p grp la user2 useradd -g accnt –G sv,frt user2
useradd -u 1500 –e “2013-05-30” user3
Trang 12-S Hiển thị tình trạng của tài khoản
-d Xóa bỏ mật khẩu của tài khoản người dùng (*)
-l Khóa tài khoản người dùng
-u Mở khóa tài khoản người dùng
Trang 13Các lệnh quản trị người dùng
Thay đổi thuộc tính
Lệnh usermod :
usermod [options] login
usermod -c “CNPM” –g studs user1
Một số options
-l loginName Thay đổi tên tài khoản
-g initial_group Thay đổi nhóm primary
-G group1[,…] Thay đổi danh sách nhóm phụ
-d home_dir Thay đổi thư mục cá nhân của tài khoản
-U Mở khóa tài khoản
Trang 14//Xóa tài khoản và xóa data của tài khoản (thư mục cá
nhân và mail spool)
userdel -r user2
14
Trang 17Các lệnh quản trị nhóm người dùng
Tạo nhóm
Lệnh groupadd :
groupadd [options] group
// tạo group students với mã nhóm (gid) mặc định
groupadd students
// tạo group teachers với gid tùy chọn
groupadd –g 2000 teachers
Trang 18Các lệnh quản trị nhóm người dùng
Xem/Thay đổi thuộc tính
Lệnh groupmod :
groupmod [options] group
//Thay đổi tên nhóm
groupmod –n studs students
//Thay đổi mã nhóm (gid)
groupmod –g 2001 teachers
Xem file /etc/group để có thông tin về nhóm
18
Trang 20Các tập tin liên quan
Tập tin /etc/passwd và /etc/shadow
Tập tin /etc/group
Tập tin /etc/login.defs
Tập tin /etc/default/useradd
20
Trang 21Các tập tin liên quan
username:password:uid:gid:gecos:homedir:shell
• Trong đó:
– username tên tài khoản
– password Mật khẩu đã được mã hóa
– uid User ID
– gid Group ID
– gecos Thông tin thêm về user (ghi chú)
– homedir Thư mục home của user
– shell Shell đăng nhập của người dùng
• Ví dụ :
root:x:0:0:root::/bin/bash
Trang 22Các tập tin liên quan
username:passwd:d1:d2:d3:d4:d5:d6:reserved
• Trong đó
– username Tương ứng username trong /etc/passwd
– passwd Mật khẩu đã được mã hoá
– d1 Số ngày kể từ lần cuối thay đổi mật khẩu
– d2 Số ngày trước khi có thể thay đổi mật khẩu
– d3 Số ngày mật khẩu có giá trị
– d4 Số ngày cảnh báo user trước khi mật khẩu hết hạn
– d5 Số ngày sau khi mật khẩu hết hạn tài khoản sẽ bị khoá
– d6 Số ngày kể từ khi tài khoản bị khoá
• Lưu ý : các giá trị số ngày tính theo mốc từ 1/1/1970
22
Trang 23Các tập tin liên quan
Tập tin /etc/shadow (tt)
• Tài khoản bị khóa nếu có ký tự ! đứng trước passwd
thống nếu có giá trị ! ở trường passwd
Trang 24Các tập tin liên quan
groupname:password:gid:members
• Trong đó :
– groupname tên group
– password mật khẩu (tùy chọn)
– gid group id
– members danh sách thành viên (đây là
secondary group của thành viên)
Trang 25Các tập tin liên quan
Trang 26Các tập tin liên quan
HOME=/home Thư mục chứa thư mục cá nhân
INACTIVE=-1 Số ngày tối đa được thay đổi mật
khẩu sau khi mật khẩu hết hạn sử dụng
EXPIRE= Ngày hết hạn sử dụng tài khoản
SHELL=/bin/bash Shell mặc định của tài khoản
SKEL=/etc/skel Thư mục chứa thông tin môi trường
làm việc
26
Trang 27II.Quản trị chủ sở hữu và quyền
Quản trị chủ sở hữu (ownership)
Xem thông tin
Thay đổi chủ sở hữu
Quản trị quyền truy cập file/thư mục
Trang 28Các khái niệm
Chủ sở hữu : là tài khoản tạo ra file/thư mục
Nhóm sở hữu : là nhóm các user cùng có quyền nhất định trên file/thư mục
Khi file/thư mục được tạo, nhóm sở hữu là primary group của tài khoản tạo file/thư mục
Sử dụng lệnh ls –l để xem thông tin về sở hữu
và quyền trên file/thư mục
28
Trang 29Các khái niệm
Quyền truy cập file/thư mục gồm các quyền : read, write, execute (đọc, ghi, thực thi)
Quyền read, write
Đối với file : có quyền đọc và chỉnh sửa dữ liệu trong file
Đối với thư mục : có quyền đọc và thay đổi nội dung thư mục
Quyền execute
Đối với file script/binary : có quyền thực thi
Đối với thư mục : có quyền vào thư mục bằng lệnh cd
Có 3 quyền đặc biệt có thể áp dụng cho file/thư
mục : SUID, SGID, Sticky bit
Trang 31Các khái niệm
ls –l /home/ti
total 4
drwxr-xr-x 2 ti users 4096 Mar 27 09:36 bin
drwxr-xr-x 2 ti users 4096 Mar 27 09:36 public_html-rw-r r 1 ti users 4096 Mar 27 09:36 bashrc
-rw-r—-r 1 ti users 19 Apr 06 11:29 vd.txt
Owner’s permissions group’s permissions
owner group
Trang 32Các lệnh quản trị
Xem thông tin về sở hữu, quyền
Xem thông tin file: /tmp/vd.txt
Trang 34Các lệnh quản trị
Thay đổi quyền truy cập
Lệnh chmod
chmod [options] mode[,mode] file …
Biểu diễn mode, bằng 2 cách
Trang 35Các lệnh quản trị
Thay đổi quyền truy cập - một số ví dụ
Vd1 : thay đổi bộ quyền của file contacts.odt thành rw–rw–r– –
chmod u=rw,g=rw,o=r contacts.odt
chmod 664 contacts.odt
Vd2 : tắt quyền write của Group
chmod g–w contacts.odt
chmod 644 contacts.odt
Vd3: thay đổi bộ quyền cho tất cả có quyền read
chmod a=r contacts.odt
chmod 444 contacts.odt
Trang 36Các lệnh quản trị
Thay đổi quyền truy cập - một số ví dụ
Vd4 : loại quyền x với mọi user
chmod -x *.php
Vd5 : thay đổi bộ quyền của thư mục và tất cả các file/thư
mục con trong nhánh cây thư mục
chmod -R ug+rw lecture
Vd6 : thay đổi bộ quyền của owner và group
chmod u=rwx,ug=r desktop.jpg
36
Trang 37Các lệnh quản trị
Thay đổi quyền truy cập - một số ví dụ
Vd7: Thay đổi bộ quyền trên thư mục mydir
thành bộ quyền mới là rwx r-x r-x
chmod u=rwx,g=rx,o=rx mydir
chmod a=rx,u+w mydir
chmod 755 mydir
• …
Trang 38Các lệnh quản trị
Thay đổi bộ quyền default
Sử dụng lệnh umask (mặt nạ) để thay đổi bộ
Thay đổi bộ quyền default bằng lệnh umask chỉ
có giá trị trong phiên làm việc hiện hành
Đưa lệnh umask vào file cấu hình để thiết lập bộ quyền default được duy trì cho mọi phiên làm việc sau đó Vd : file /etc/profile
38
Trang 39Các lệnh quản trị
Các quyền đặc biệt
Set UserID (SUID) : chỉ áp dụng cho các file binary
chmod u+s /path/to/command/binary
Set GroupID (SGID) : áp dụng cho các file binary và các thư mục
chmod g+s /path/to/command/binary
chmod g+s /path/to/directory
Sticky Bit : chỉ áp dụng cho các thư mục
Trang 40 SGID : Khi bit SGID được gán cho lệnh, lệnh sẽ chạy với Group
ID của group là chủ nhân của lệnh thay vì là GID của user gọi thực thi lệnh Ví dụ : lệnh write
Khi bit SGID được gán cho thư mục, tất cả các file tạo đặt trong thư mục sẽ có cùng group owner là group owner của thư mục
Sticky Bit : Các file được tạo trong thư mục có Sticky Bit sẽ chỉ được xóa bởi root hoặc user là chủ nhân tạo ra file _ các user khác không thể xóa file, thậm chí kể cả khi user có quyền write trên thư mục cha Ví dụ : thư mục /tmp 40
Trang 41su -c “mkdir /home/user1/test” user1
Để thoát và quay lại tài khoản trước đó : dùng lệnh exit
Trang 42Sử dụng RootSudo
Sử dụng sudo :
Cho phép một user chạy các lệnh/chương trình
bằng quyền của root (or user khác) mà không cần biết password của root (or user khác)
Sử dụng sudo :
sudo chown bob:bob /home/bob/*
sudo /usr/sbin/useradd -m john
Thay đổi cấu hình sudo trong file /etc/sudoers :
sử dụng visudo
User_Alias Host_Alias = (Runas_Alias) Cmnd_Alias
42
Trang 43Sử dụng RootSudo
Ví dụ cấu hình file /etc/sudoers
Xem hướng dẫn: man sudo , man sudoers
Defaults:user1 timestamp_timeout=0
root ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) ALL
user1 host1 = (operator) /bin/ls, /bin/kill, /usr/bin/lprm
user2 host1 = (operator:operator) /bin/ls, (root) /bin/kill,
/usr/bin/lprm