I.TÀI KHOẢN ROOT
Khi cài đặt các Linux Distro nói chung và cụ thể Ubuntu tôi đang dùng, người cài đặt sẽ được tạo một tài khoản để đăng nhập lúc này bạn đã có sẵn 1 user với password đăng nhập để truy nhập hệ thống và user này thuộc nhóm admin.
Khi đăng nhập với tài khoản này, quyền hạn của bạn không phải lớn nhất do đó khi thao tác với hệ thống bạn cần sự hỗ trợ của sudoer một cách rời dạc bằng cách gõ thêm sudo ở đầu mỗi dòng lệnh.
Sudoer có quyền hạn rất lớn và root là user có quyền lực tối đa. Vì vậy với mỗi tài khoản thuộc nhóm admin sẽ có thể thực hiện thi mọi hành động can thiệp vào hệ thống bằng cách dùng đặc quyền root khi thêm sudo ở đầu mỗi dòng lệnh.
Ví dụ: Đăng nhập với tài khoản sa tôi tạo khi cài đặt thuộc nhóm admin. Bạn không thể chỉnh sửa hoặc xóa các file trong thư mục /etc. Nhưng để chỉnh sửa xóa các file hãy dùng lệnh trong terminal thêm sudo như sau:
sa@ten_he_thong:~$sudo rm /etc/filename.example
Hoặc mở gọi một chương trình với quyền hạn root. Ở đây tôi gọi mở cửa sổ nautilus với quyền hạn root nên có thể thao tác với các file, folder bằng giao diện:
sa@sa-machine:~$sudo nautilus
Bạn hãy so sách 2 cách, một là gõ
sa@ten_he_thong:~$nautilus
và gõ
sa@ten_he_thong:~$sudo nautilus
để hiện lên cửa sổ nautilus và vào /etc click chuột phải vào file bất kì để thấy sự quyền hạn khác nhau.
Ví dụ 2:
Bạn mở một cửa sổ nautilus với quyền root :
Lệnh :
sa@ten_he_thong:~$gksu nautilus
Hay :
sa@ten_he_thong:~$sudo nautilus
Với gksudo hoặc kdesudo với menu đồ hoạ trên GNOME hoặc KDE. Chú ý:
Không nên sử dụng sudo để khởi chạy cho các chương trình với đồ hoạ vì có nhiều ứng dụng đồ hoạ không chạy đúng khi được khởi động với sudo. Thay vào đó người sử dụng được khuyến cáo dùng gksudo trong GNOME hoặc XFCE và kdesudo trong KDE. (Giải thích cho việc gây nên lỗi trên là lệnh sudo không thay đổi giá trị của biến môi trường HOME, qua đó lệnh trên sẽ tạo ra một hay nhiều tệp tin hoặc thư mục với quyền hạn của root trong thư mục nhà của người sử dụng khiến người sử dụng sau này không thể thay đổi hoặc làm việc với những tệp tin hoặc thư mục đó nếu không chạy với sudo).
Tóm lại:
Ubuntu chỉ kích hoạt tài khoản của người cài đặt và cung cấp quyền superuser cho tài khoản đó. Tất cả các tài khoản khác sẽ phải tạo sau khi đăng nhập bởi tài khoản của người cài đặt. Riêng tài khoản root bị khóa đăng nhập. Thậm chí bạn cũng không biết được password của tài khoản root.
Thay đổi mật khẩu cho tài khoản root:
Lệnh :
sa@sten_he_thong:~$sudo passwd root
Sau bước này bạn nhập password của bạn vào (Hãy chắc chắn tài khoản đang sử dụng của bạn là superuser) và sẽ được hỏi :
Enter new UNIX password: Hãy nhập password mới cho root vào đây
Retype new UNIX password: Hãy nhập lại password cho root mà bạn vừa gõ
Thông báo sau cùng: password updated successfully là thành công
Hãy thử sử dụng tài khoản này trong terminal:
sa@ten_he_thong:~$su
Nhập password của root mà bạn vừa tạo.Sẽ thành thế này:
root@ten_he_thong:/home/username#
Với username là tài khoản hiện thời của bạn.
Hoặc bằng cách logout và chọn tài khoản root khi đăng nhập ở màn hình đăng nhập để sử dụng quyền cao nhất với giao diện GUI.
II. QUẢN LÝ USER NGAY TỪ LÚC KHỞI TẠO
Linux chia tài khoản người dùng thành các nhóm (group) như các nhóm cơ bản là root, admin, users, …. có thể thêm nhóm tùy thích (số lượng nhóm lên đến hàng chục nghìn). Một cài đặt nào đó lên hệ thống cũng có thể tạo ra nhóm (ví dụ samba, print,..), các gói cài đặt cũng có nhóm.
Một tài khoản nhất định phải thuộc một nhóm nào đó. Nhóm có thể chứa một hoặc nhiều tài khoản (có thể tạo ra hàng chục nghìn tài khoản). Nhóm root chỉ chứa duy nhất tài khoản root. Các nhóm khác như admin, users thì mặc định chứa được vô số tài khoản.
Như vậy câu lệnh :
sudo useradd -m -G root newuser
sẽ tạo ra một tài khoản newuser nằm trong nhóm mặc định (users group).
1. Sử dụng useradd
Có 2 cách để thêm một tài khoản mới. Đó là sử dụng lệnh useradd hoặc adduser
Nếu bạn đang dùng ubuntu (debian) tôi khuyên bạn nên dùng lệnh adduser.
a. Tổng quan
Cú pháp:
useradd [tham số] [username_new]
Trợ giúp :
man useradd
Trong quá trình sử dụng lệnh. Một số file như /etc/default/useradd, /etc/default/ ,… sẽ được tham chiếu đến. Nếu bạn sử dụng trị số cho các tham số lệnh thì các giá trị mặc định sẽ không được áp dụng.
b. Tham số, tham chiếu, các giá trị mặc định và tùy biến
-c : comment : Ý kiến phản hồi. Thực ra nó được dùng như fullname của tài khoản sắp tạo
-b : BASE_DIR : Thư mục cơ sở. Sẽ dùng tham số này để sử dụng các giá trị mặc định cho tài khoản sắp tạo. Nếu các tham số D, m không được sử dụng thì nhất thiết phải sử dụng tham số b
-D : Defaults : Các giá trị mặc định. Lưu lại các giá trị sẽ được thay đổi khác với mặc định
-d : HOME_DIR : Nếu các tham số khác không được sử dụng, tham số d sẽ mặc định /home/username_new là thư mục người dùng mới.
-e : EXPIRE_DATE : Ngày mà tài khoản sắp tạo sẽ bị vô hiệu hóa. Cấu trúc là YYYY-MM-DD
-f : INACTIVE : Số ngày mà password của tài khoản mới sẽ bị vô hiệu hóa khi tài khoản hết hạn. Giá trị 0 là disables ngay khi tài khoản hết hạn, giá trị mặc định -1 chỉ disables tính năng
-G : GROUP : Nhóm. Một danh sách các nhóm mà bạn biết sẽ được bổ xung sau tham số này, các nhóm cách nhau chỉ bởi dấu “,”
-m: Tham số quan trọng. Sẽ tạo ra thư mục người dùng (~/)nếu nó không có. Các dữ liệu từ thư mục /etc/skel sẽ được sao chép vào ~/ khi sử dụng tham số m
-k : KEY=VALUE. Một số khóa nếu bạn thêm vào với các giá trị của nó sẽ được áp dụng cho tài khoản sắp tạo. Tham khảo về các khóa này trong /etc/ .Ví dụ : Số ngày mà password tài khoản mới còn hiệu lưc, số user được phép trong một nhóm,…
-p : PASSWORD. Mã hóa tài khoản sắp tạo bằng password
-s : SHELL: SHELL mà người sử dụng sẽ đăng nhập. Trong ubuntu mặc định là /bin/sh . Tuy nhiên tôi thường dùng /bin/bash
-u : UID: User ID : Trị số này phải là duy nhất, lớn hơn 999 và lớn hơn mọi người dùng khác. Trong ubuntu 1000 là tài khoản của người cài đặt ubuntu. Vậy nên nếu bạn tạo thêm tài khoản mới thì UID của tài khoản mới phải lớn hơn 1000
c. Ví dụ, giải thích, sudoers và normal user
Các tham số còn nhiều nữa mà tôi không liệt kê được. Cũng như các ví dụ dưới đây không mô tả hết tham chiếu, value của mọi tham số. Nếu bạn nào còn thắc mắc có thể comment trực tiếp ở đây. Tôi sẽ cố gắng giải đáp nếu biết.
Ví dụ tổng quát :
Hãy sử dụng tài khoản sudoer để thực hiên câu lệnh dưới đây !
sudo useradd -m -c TenLaNam -G users,sambashare -e 2018-02-11 -f 365 -s /bin/bash usernew2
Ngay sau câu lênh này một tài khoản là usernew2 sẽ được tạo ra, tên là TenLaNam, thuộc nhóm users (nhóm thường) và nhóm sambashare (có quyền chia sẻ file trên mạng LAN), ngày hết hạn là 11/02/2018. Sau khi hết hạn, password sẽ bị vô hiệu hóa hoàn toàn sau 365 ngày, hệ vỏ sử dụng là /bin/bash
Các câu hỏi thường găp:
-Tạo tài khoản đơn giản :
sudo useradd -m usernew2
Câu lệnh này sẽ tạo ra tài khoản usernew2, nằm trong nhóm users, hệ vỏ là /bin/sh. Đây là câu lệnh thường dùng nhất.
-Đặt password cho tài khoản mới.
Tôi ví dụ ngay sau câu lệnh:
sudo useradd -m usernew3
Lệnh tạo password :
sudo passwd usernew3
Bạn cần nhập password cho tài khoản mới và nhập lại 1 lần nữa để xác nhận.
–Tạo tài khoản sudoer (Tài khoản có quyền sử dụng lệnh sudo)
sudo useradd -m -G admin admin1
(Chỉ cần thêm nhóm admin)
–Add một user vào nhóm
sudo addgroup usernew2 sambashare
Sau câu lệnh này. tài khoản usernew2 sẽ được add vào nhóm sambashare
-Chuyển tài khoản sudoer sang root :
Để có thể có quyền hạn của root “lâu hơn” (nhập vào nhiều lệnh và làm nhiều tác vụ liên tục mà không cần sử dụng sudo hay bị hỏi đến mật khẩu) thì người sử dụng có thể tạo cho mình một “Fake”-Rootshell với lệnh: sudo -i , sudo -s , sudo bash , su. Điểm khác biệt duy nhất của hai lệnh trên là lệnh sudo -i sẽ thay đổi các biến môi trường $HOME, $PATH etc… trước khi tạo cho người sử dụng một môi trường Rootshell còn lệnh sudo -s vẫn giữ nguyên các biến môi trường được thiết lập trước đó và tạo cho bạn một Rootshell. Với Rootshell được tạo ra, người sử dụng có thể chạy các lệnh hay ứng dụng với quyền root cho đến khi lệnh exit được nhập vào khung cửa sổ lệnh hoặc bạn tắt khung cửa sổ đó đi.
-Chuyển sang một user khác :
su – user_other
-Tắt tài khoản mượn trong terminal, tắt terminal
exit
-Có thể chỉnh sửa các file useradd, ,… để mặc định lại việc tạo tài khoản trên ubuntu. Khi đó chỉ cần dùng một câu lệnh đơn giản là có thể tạo được tài khoản đúng ý bạn.
VD : Đổi group mặc định thành admin, đổi shell mặc định thành bash (nếu bạn muốn sử dụng hệ vỏ khác như jsh, csh thì bạn phải cài thêm những hệ vỏ này. Vì ubuntu mặc định không có)
2. Sử dụng lệnh adduser
Lệnh thường được dùng nhất trong các hệ thống debian
Cú pháp:
adduser [tham số] [username_new]
Hầu hết các tham số là tương tự như trên. Tuy nhiên các giá trị mặc định được sử dụng hơi khác với lệnh useradd.
Lệnh adduser sẽ cho phép tạo password, fullname, và mô tả chi tiết các thao tác lên hệ thống. Tôi thấy nó rất thú vị.
II. XÓA MỘT TÀI KHOẢN
Cú pháp :
userdel [tham số][tài khoản cần xóa]
Một số ví dụ cơ bản :
-Xóa nhưng giữ lại mọi thông tin người dùng, bao gồm cả nhóm, thư mục người dùng, mail dir,…
sudo userdel userold1
-Xóa hết mọi thông tin về người dùng trong hệ thống
sudo userdel -r userold1
Rate this:
Share this:
Like this:
Like
Loading…