Cách liệt kê người dùng Linux thông qua dòng lệnh

Quản trị viên sử dụng nhiều phương pháp khác nhau để tăng cường bảo mật quyền riêng tư của người dùng kết nối với hệ thống Linux. Và liệt kê người dùng trong Linux thông qua dòng lệnh là một trong những phương pháp hiệu quả nhất. Bạn có thể sử dụng tính năng này trong giao diện người dùng đồ họa hoặc môi trường đầu cuối tùy theo hệ điều hành mà bạn có. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách liệt kê người dùng Linux trong dòng lệnh theo nhiều cách. Hãy cùng theo dõi!

Lý do bạn cần liệt kê người dùng trong Linux

Với sự tiến bộ của công nghệ, một số người dùng có thể kết nối với một hệ thống Linux duy nhất và thực hiện các tác vụ của họ bằng cách sử dụng thông tin có sẵn trong hệ thống đó. Đặc điểm này đã góp phần quan trọng vào hiệu quả, tốc độ thực hiện các dự án và công việc quản trị. Nhưng mặt khác, tính bảo mật đã bị suy yếu do nhiều người dùng truy cập vào một hệ thống duy nhất. Để thực hiện nhiệm vụ quan trọng này, ngoài việc xác định người dùng có quyền truy cập hệ thống, người quản trị hệ thống Linux có thể chặn quyền truy cập của người dùng vào một số phần nhất định hoặc xóa người dùng và tạo người dùng mới với các đặc quyền mới để kết nối với hệ thống Linux.

Một trong những giải pháp để bảo vệ quyền riêng tư của những người dùng sẽ có quyền truy cập vào một hệ thống Linux duy nhất là liệt kê những người dùng Linux, điều này cũng hiệu quả trong việc tăng cường bảo mật. Đôi khi quản trị viên hệ thống Linux thực hiện các thay đổi về đặc quyền của người dùng để truy cập và kiểm soát hệ thống. Bằng cách này, quản trị viên có thể mở rộng hoặc chỉ định đặc quyền cho người dùng phụ trách một nhiệm vụ cụ thể và cũng có thể vi phạm đặc quyền của người dùng khác khi truy cập hệ thống. Bằng cách này, quản trị viên có thể kiểm soát quyền truy cập của người dùng và cải thiện bảo mật.

=>> Đọc thêm:Cách cài đặt và thiết lập VNC trên Linux

Cách liệt kê người dùng Linux thông qua dòng lệnh

Điều kiện tiên quyết

Để có thể liệt kê những người dùng đã kết nối với hệ thống Linux bằng các lệnh mà chúng tôi sẽ giải thích bên dưới, trước tiên bạn phải có một hệ thống chạy hệ điều hành Linux hoặc bạn nên mua VPS Linux rồi quản lý người dùng thông qua các lệnh mà chúng tôi sẽ hướng dẫn:

  • Hệ thống Linux.
  • Truy cập vào dòng lệnh.

Có hai loại người dùng trong hệ thống Linux: người dùng thông thường và người dùng hệ thống.

  • Người dùng hệ thống: Một số người dùng được tạo bởi hệ thống để chạy các tiến trình cần chạy ngầm. Những người dùng này không tương tác và không cần giao tiếp với những người dùng khác để thực hiện nhiệm vụ của họ. Ví dụ: người dùng root có quyền quản trị được gọi là người dùng hệ thống.
  • Người dùng thông thường: là người dùng mà người dùng root đã tạo bằng cách cấp các quyền cần thiết. Người dùng thông thường có một thư mục chính và trình đăng nhập để lưu trữ các tệp của họ.

Trong Linux, tệp /etc/passwd chứa thông tin người dùng, bao gồm UID người dùng, tên người dùng và thông tin về trình bao đăng nhập và thư mục chính. Để quản lý người dùng, tệp này phải được truy cập và sau đó quản trị viên có thể liệt kê người dùng dựa trên thông tin trong tệp /etc/passwd.

Chúng tôi sẽ hướng dẫn bạn qua các lệnh khác nhau để liệt kê những người dùng được kết nối với hệ thống Linux. Trong hướng dẫn này, chúng tôi sẽ sử dụng các lệnh sau:

  • Lệnh “cat
  • Lệnh “awk
  • Lệnh “compgen
  • Lệnh “less” và “more
  • Lệnh “getent
  • Lệnh “grep

=>> Đọc thêm: Cách Ping địa chỉ IP trong các hệ điều hành

Cách 1: Sử dụng lệnh “cat”

Phương pháp này là cách dễ nhất để truy cập nội dung của tệp/etc/passwd và liệt kê người dùng.

Trước tiên, hãy vào môi trường đầu cuối của hệ thống Linux của bạn và thực hiện lệnh “cat” để truy cập thông tin toàn diện về mật khẩu và tên người dùng được lưu trữ trong tệp /etc/passwd.

$ cat /etc/passwd

Bằng cách thực hiện lệnh này, bạn sẽ nhận được danh sách mật khẩu và tên người dùng cùng với thông tin đầy đủ.

Danh sách mật khẩu và tên người dùng khi dùng lệnh cat

Bạn có thể sử dụng lệnh sau để xem số lượng người dùng:

cat /etc/passwd | wc –l

Lệnh wc cung cấp cho bạn số liệu thống kê về số lượng người dùng và bạn có thể tìm ra số lượng người dùng bằng cách đếm các dòng bạn nhận được trong đầu ra.

Cách 2: Sử dụng lệnh “awk”

Trong phương pháp này, lệnh “awk” hiển thị tên người dùng mà không cần giải thích thêm và biết thêm chi tiết. Lệnh này hữu ích cho những quản trị viên không cần thêm thông tin về người dùng được cung cấp trong đầu ra của lệnh “cat”. Cú pháp của “awk” yêu cầu trường đầu tiên trong mỗi dòng đầu ra trong tệp /etc/passwd vì các trường dữ liệu trong tệp /etc/passwd được phân tách với nhau bằng ký hiệu dấu hai chấm.

Do đó, hãy nhập môi trường đầu cuối và chạy lệnh sau để xem tên người dùng:

$ awk –F: ‘{ print $1}’ /etc/passwd
Sử dụng lệnh awk để liệt kê người dùng Linux

Ngoài ra, dùng lệnh sau để xem từng trang kết quả có thể hữu ích để quản lý tốt hơn:

awk -F':' '{ print $1}' /etc/passwd | less

Cách 3: Sử dụng lệnh “compgen”

Đầu ra của lệnh này giống như lệnh “awk” và bạn chỉ có thể truy cập tên người dùng được lưu trong tệp /etc/passwd bằng cách thực hiện lệnh này. Do đó, để xem tên người dùng, hãy nhập lệnh sau vào dòng lệnh:

$ compgen –u

Cách 4: Sử dụng lệnh “less” và “more”

Phương pháp này được sử dụng cho các trường hợp quản trị viên phải kiểm soát nhiều người dùng và giới hạn đầu ra của tệp /etc/passwd và xem xét nội dung của tệp /etc/passwd tốt hơn. Trong tình huống này, các lệnh lessmore là cách hiệu quả nhất để quản lý một số lượng lớn người dùng.

Nếu bạn muốn sử dụng lệnh less để xem lại nội dung của tệp /etc/passwd, bạn phải nhập lệnh sau:

less /etc/passwd

Đầu ra sẽ chứa trang đầu tiên của tệp mà bạn có thể điều hướng trong tệp bằng bàn phím và xem dữ liệu có sẵn.

Lệnh more cũng hiển thị kết quả tương tự như lệnh trên nhưng lệnh này có nhiều hạn chế hơn về chức năng:

more /etc/passwd

Cách 5: Sử dụng lệnh “getent”

Bằng cách thực hiện lệnh “getent”, giống như lệnh “cat”, bạn có thể truy cập thêm thông tin chi tiết. Nó thường kiểm tra các mục cơ sở dữ liệu hệ thống và hiển thị thông tin đầy đủ về các mục cơ sở dữ liệu hệ thống bằng cách tra cứu cơ sở dữ liệu được lưu trữ trong tệp /etc/nsswitch.conf.

Nhập lệnh sau để liệt kê thông tin trong cơ sở dữ liệu passwd:

getent passwd

Đầu ra của lệnh trên gần giống với đầu ra của lệnh “cat”, cung cấp đầy đủ thông tin chi tiết về người dùng trên hệ thống Linux của bạn.

Lệnh getent giúp kiểm tra các mục cơ sở dữ liệu hệ thống

Lệnh “getent” cũng có thể giúp bạn tìm những người dùng cụ thể. Với mục đích này, gõ lệnh sau:

getent passwd [username]

Việc hiển thị dòng lệnh nhập passwd tương ứng cho biết sự tồn tại của người dùng mong muốn.

Ngoài ra, trong cơ sở dữ liệu passwd, bạn có thể tìm kiếm UID bằng cách thực hiện lệnh getent:

getent passwd [UID]

Ở đầu ra, đầu vào của người dùng với UID đã chỉ định được hiển thị.

Nếu bạn muốn tìm kiếm người dùng trong một phạm vi cụ thể bằng lệnh getent, hãy nhập lệnh sau:

getent passwd {[first-UID]..[last-UID]}

Đầu ra của lệnh trên hiển thị những người dùng có UID nằm trong phạm vi đã xác định.

Cách 6: Sử dụng lệnh “grep”

Mỗi người dùng thông thường và người dùng hệ thống đều có UID riêng để bạn có thể phân biệt họ với nhau. UID của người dùng hệ thống nằm trong khoảng từ 0 (người dùng root) đến 999. Và từ 1000 trở đi là người dùng thông thường và người dùng mới được cấp UID nhỏ nhất chưa sử dụng.

Nếu bạn muốn truy cập vào tệp /etc/login.defs để kiểm tra UID của người dùng thông thường, hãy nhập lệnh grep:

grep -E '^UID_MIN|^UID_MAX' /etc/login.defs

Với sự trợ giúp của đầu ra của lệnh trên, bạn có thể tìm ra phạm vi UID cho người dùng thông thường vì nó hiển thị UID nhỏ nhất và lớn nhất mà người dùng thông thường có thể nhận được.

Trong hướng dẫn này, chúng tôi đã cung cấp một số phương pháp để liệt kê người dùng Linux trong dòng lệnh để bạn có thể sử dụng chúng theo nhu cầu của mình. Ngoài việc liệt kê những người dùng hệ thống Linux, các lệnh còn cung cấp thêm thông tin hỗ trợ quản trị viên thực hiện nhiệm vụ. Truy cập zingserver.com nếu có bất kì câu hỏi nào cần giải đáp hoặc muốn đăng ký sử dụng dịch vụ VPS Linux/Windows. Cảm ơn đã theo dõi bài viết!

Chia sẻ bài viết:

Đánh giá

0/5 - (0 Bình chọn)

Chưa có đánh giá.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *