Đặng Thanh Bình
Quản trị người dùng
Nội dung
• Giới thiệu về hệ thống người dùng trên Linux
• Các lệnh quản trị người dùng
2
NGƯỜI DÙNG
Người dùng trên Linux
• Linux cung cấp 5 loại người dùng:
– Super user, còn gọi là Root user
– System user
– Normal user
– Network user
– Pseudo user
4
Root user
• User ID (UID) = 0
• Là người dùng tối cao và có quyền tuyệt đối
trên máy tính cài Linux
• ID của user này có thể được đổi nếu can
thiệp vào file cấu hình
• Thường được sử dụng cho mục đích quản trị
• Root user trên Ubuntu thường được mặc
định ở trạng thái ‘lock’. Người dùng được
khuyến khích làm các công việc cần quyền
root bằng cách dùng lệnh sudo
5
System user
• Được tạo mặc định bởi OS
• UID mặc định từ 1 – 499
– Đây chỉ là range mặc định, Linux hỗ trợ nhiều
hơn con số 500 system user
• Tương tự normal user nhưng có thêm 1 số
quyền và quyền truy cập vào 1 số chương
trình mà người dùng thông thường không
được phép truy cập
6
Normal user
• UID mặc định từ >500 đến <6000
• Được tạo bởi root
• Có quyền truy cập giới hạn vào các tài
nguyên
• Phải được root cấp quyền mới được truy cập
vào các dịch vụ và tài nguyên quan trọng
trên hệ thống
7
Network user
• UID mặc định từ >6000
• Các tài khoản user thuộc loại này thường
được sử dụng bởi quản trị viên để
– Kiểm tra các hoạt động trên mạng
– Kết nối đến các dịch vụ trên mạng, vd MySQL,
NNTP, …
8
Pseudo user
• Là bản sao của người dung root
• Được sử dụng khi một user cần được phân
quyền như root
• Chỉ root mới có quyền cung cấp quyền truy
cập đến loại tài khoản này cho các user khác
9
Các lệnh cơ bản
• Kiểm tra xem mình là ai
– whoami
– id
– id <username>
• Chuyển người dùng:
– su <username>
– su -
10
QUẢN TRỊ NGƯỜI DÙNG
Vấn đề
• Làm thế nào để thêm/xóa user … ?
• Có thể cấp quyền limited access cho user
không?
• Làm thế nào để thêm vào 1 group và
them user vào group đó?
• Làm thế nào để phân quyền cho những
người dùng trong 1 nhóm cụ thể nào đó?
• Việc phân quyền có thể được thay đổi sau
này không?
• Có phải ai cũng có quyền phân quyền
không?
12
Một số quy định cơ bản
• Chỉ người dùng root có quyền tạo user
• Chỉ người dùng root và người sở hữu tập tin
có quyền thay đổi phân quyền trên tập tin
13
Quản lý user bằng GUI
• Cài đặt công cụ quản trị user và group
(gnome-system-tools)
• Hoặc dùng command line
sudo apt-get install gnome-system-tools
14
Quản lý user bằng GUI
• Tìm kiếm trên Dash và chạy chương trình quản lý
15
Lệnh quản trị user và group
• Enable user root
– sudo passwd
• Lock và unlock user
– sudo passwd -l username
– sudo passwd -u username
16
Thêm người dùng
• useradd
– useradd [options] USERNAME
– -c: comment thông tin về user
– -d: directory cá nhân của user
– -g group
• adduser
– Cú pháp tương tự useradd
– Thường chỉ được khai báo username, các
thông tin khác sẽ được hệ thống hỏi sau
– Một lệnh rất thú vị trên Ubuntu/Debian
17
Xóa người dùng
• userdel [tham số]
xóa>
– Xóa user nhưng giữ lại các thông tin người
dùng, bao gồm cả group, thư mục người
dùng, mail dir
• sudo userdel <username>
– Xóa hết mọi thông tin về người dùng trong
hệ thống
• sudo userdel –r <username>
• sudo deluser <username>
18
Sửa thông tin người dùng
• usermod [options] <username>
– Chỉ super user mới được thực thi lệnh này
– Các option cơ bản:
• -c = We can add comment field for the useraccount.
• -d = To modify the directory for any existing user
account.
• -e = Using this option we can make the account expiry in
specific period.
• -g = Change the primary group for a User.
• -G = To add a supplementary groups.
• -a = To add anyone of the group to a secondary group.
• -l = To change the login name from tecmint to
tecmint_admin.
• -L = To lock the user account. This will lock the password
so we can’t use the account.
19
Sửa thông tin người dùng
• usermod [options] <username>
– Chỉ super user mới được thực thi lệnh này
– Các option cơ bản:
• -m = moving the contents of the home directory
from existing home dir to new dir.
• -p = To Use un-encrypted password for the new
password. (NOT Secured).
• -s = Create a Specified shell for new accounts.
• -u = Used to Assigned UID for the user account
between 0 to 999.
• -U = To unlock the user accounts. This will
remove the password lock and allow us to use
the user account.
20
Sửa thông tin người dùng
• usermod [options] <username>
– Các file sau sẽ bị ảnh hưởng
•
•
•
•
/etc/passwd – User account information.
/etc/shadow – Secure account information.
/etc/group – Group account information.
/etc/gshadow
–
Secure
group
account
information.
• /etc/login.defs – Shadow password suite
configuration..
21
User Profile Security
• Kiểm tra phân quyền trên thư mục
home của user
– ls -ld /home/username
– Dùng lệnh chmod để chỉnh lại phân quyền
22
Password Policy
• Chiều dài tối thiểu
– Lưu trong file /etc/pam.d/common-password
– password
[success=1
default=ignore]
pam_unix.so
obscure sha512 minlen=8
• Thời điểm hết hiệu lực
– Xem thông tin: sudo chage -l username
– Thiết lập: sudo chage username
•
•
•
•
•
sudo chage -E 01/31/2011 -m 5 -M 90 -I 30 -W 14 username
Ngày hết hạn: explicit expiration date (-E)
Số ngày tồn tại tối thiểu: minimum password age (-m)
Số ngày tồn tại tối đa: maximum password age (-M)
Số ngày không hoạt động sau khi mật khẩu hết hiệu lực:
inactivity period (-I)
• Thời gian cảnh báo trước lúc hết hạn: warning time period (-W)
23
Các vấn đề bảo mật khác
• Truy cập SSH đối với các tài khoản đã bị vô
hiệu
– Việc khóa/vô hiệu hóa tài khoản không ngăn
được người dùng dùng tài khoản đó để truy cập
thông qua SSH nếu họ đã thiết lập RSA public
key authentication
– Họ vẫn có thể truy cập SSH vào server mà không
cần mật khẩu
– Kiểm tra xem có tồn tại thiết lập đó không bằng
cách
xem
thư
mục
/home/username/.ssh/authorized_keys
24
Các vấn đề bảo mật khác
• Truy cập SSH đối với các tài khoản đã bị vô hiệu
– Cách xử lý:
• Đổi tên thư mục .ssh
• Kiểm tra xem người dung đó đang có kết nối SSH nào
không, nếu có ==> kill kết nối đó
– who |grep username (to get the pts/# terminal)
– sudo pkill -f pts/#
• Giới hạn quyền truy cập SSH cho một nhóm người dùng
cụ thể
– Mở file /etc/ssh/sshd_config
– Thiết lập biến: AllowGroups sshlogin
– Thêm người dung vào nhóm sshlogin và khởi động lại dịch vụ
» sudo adduser username sshlogin
» sudo service ssh restart
25