Home Máy chủ LinuxLinux căn bản Kiểm tra lịch sử bằng lệnh lastb, last trong Linux

Kiểm tra lịch sử bằng lệnh lastb, last trong Linux

by Hoàng Nam
A+A-
Reset

I. Giới Thiệu

Linux là một hệ điều hành đa người dùng và nhiều người dùng có thể đăng nhập vào một hệ thống cùng một lúc.Vì một lý do nào đó, bạn có thể cần kiểm tra lịch sử đăng nhập để xác định những người đã đăng nhập vào hệ thống gần đây hoặc trong một khoảng thời gian nhất định.

Việc này có thể được thực hiện theo nhiều cách và sẽ hướng dẫn bạn cách kiểm tra lịch sử đăng nhập của người dùng một cách chi tiết bằng lệnh “last” trong bài viết này. Tuy nhiên, chúng tôi cũng sẽ cung cấp cho bạn một bản tóm tắt về các lệnh khác.

Nó chứa một loạt thông tin hữu ích về người dùng như tên người dùng, tên terminal được kết nối, địa chỉ IP nguồn (từ địa chỉ IP nào người dùng đã truy cập vào hệ thống), ngày, giờ và thời gian người dùng đã đăng nhập vào hệ thống. Nó sẽ giúp chúng ta phân tích một số loại vấn đề cụ thể. Ví dụ, nếu một số tệp bị xóa vào một thời điểm cụ thể và chúng tôi có thể điều tra xem những người dùng nào đã đăng nhập vào hệ thống trong thời gian đó để khắc phục sự cố cấp độ đầu tiên.

Tất cả các tệp nguồn được đặt ở vị trí sau đây và đây là các tệp nhị phân không thể xem trong bất kỳ trình soạn thảo văn bản nào.

  • /var/run/utmp: Chứa thông tin về những người dùng hiện đang đăng nhập vào hệ thống. Lệnh “who” được sử dụng để truy xuất thông tin từ tệp này.
  • /var/log/wtmp: Chứa lịch sử utmp. Nó lưu trữ lịch sử đăng nhập và đăng xuất của người dùng. Lệnh “last” sử dụng tệp này để hiển thị thông tin.
  • /var/log/btmp: Chứa các lần thử đăng nhập không thành công.

Tùy chọn, thông tin đăng nhập của người dùng cũng có thể được xác minh bằng cách sử dụng công cụ “aureport”, tạo ra các báo cáo tóm tắt về lịch sử đăng nhập của người dùng.

II. Cách Sử dụng lastb, last

Lệnh “lastb” giống như lệnh “last”, mặc định nó hiển thị nhật ký từ tệp ‘/var/log/btmp’, chứa tất cả các lần thử đăng nhập không thành công.

1. Sự khác biệt giữa pts và tty

Bạn có thể đã thấy các giá trị pts và tty trong đầu ra lệnh “who” và phần giải thích dưới đây sẽ chỉ ra sự khác biệt giữa chúng.

  • Một tty, viết tắt của TeleTYpe, là một thiết bị terminal nguyên bản (Có thể là bảng điều khiển máy chủ/hệ thống).
  • Một pty (thiết bị terminal giả mạo) là một thiết bị terminal được mô phỏng bởi một chương trình khác như putty, xterm hoặc screen, v.v.

2. Kiểm tra lịch sử đăng nhập của tất cả người dùng đang đăng nhập trong Linux

Lệnh last -F trong Linux sẽ hiển thị thông tin về các sự kiện đăng nhập và đăng xuất dưới dạng “full date format”, tức là hiển thị thời gian cụ thể của sự kiện đó thay vì cách hiển thị mặc định.

CleanShot 2023 12 31 at 15.56.58

Chạy lệnh last mà không có bất kỳ đối số nào để xem lịch sử đăng nhập thành công của tất cả người dùng trên hệ thống. Nếu có quá nhiều giá trị, sử dụng lệnh less hoặc more để xem chúng theo từng trang.

last -15
CleanShot 2023 12 31 at 15.45.51

Lệnh last -15 sẽ hiển thị lịch sử đăng nhập cho 15 phiên đăng nhập gần nhất trên hệ thống.

2. Kiểm tra lịch sử đăng nhập của một người dùng cụ thể

Nếu bạn muốn xem lịch sử của một người dùng cụ thể, hãy sử dụng lệnh bên dưới. Thay thế ‘user_name’ bằng tên người dùng mong muốn mà bạn muốn tìm kiếm

last root
CleanShot 2023 12 31 at 15.48.20

3. Kiểm tra lịch sử đăng nhập trong một khoảng thời gian cụ thể

Nếu bạn muốn xác minh ai đã đăng nhập vào hệ thống trong một khoảng thời gian cụ thể, hãy sử dụng định dạng sau.

last -F | grep -E 'Mar ([ 1-9]|1[0-9]|2[0-9]|30)' | grep 2023
CleanShot 2023 12 31 at 15.51.55

Nếu bạn muốn xác minh rằng một người dùng nhất định đã đăng nhập vào hệ thống trong một khoảng thời gian, hãy sử dụng định dạng sau.

CleanShot 2023 12 31 at 15.53.48

4. Kiểm tra lịch sử đăng nhập dựa trên pty và pts được kết nối

last pts/0
CleanShot 2023 12 31 at 16.02.58
last tty1
CleanShot 2023 12 31 at 16.03.47

5. Kiểm tra lịch sử đăng nhập trong Linux?

Lệnh lastb trong Linux được sử dụng để hiển thị thông tin về các lần đăng nhập không thành công trên hệ thống từ tệp nhật ký /var/log/btmp. Khi một người dùng cố gắng đăng nhập vào hệ thống nhưng không thành công (do nhập sai mật khẩu, tên người dùng không tồn tại, v.v.), một bản ghi sẽ được ghi vào tệp btmp. Lệnh lastb cho phép bạn kiểm tra và phân tích các sự cố đăng nhập không thành công này, giúp quản trị viên theo dõi và phát hiện các hoạt động đáng ngờ hoặc cố gắng xâm nhập.

Lưu ý rằng để chạy lệnh lastb, bạn cần quyền root hoặc quyền truy cập vào tệp /var/log/btmp.

Tuy nhiên hệ thống sẽ lưu lại thành các file btmp khác nhau theo thời gian.

ll /var/log/btmp*
CleanShot 2023 12 31 at 16.16.04

/var/log/btmp-20231201, thì phần “-20231201” thường biểu thị ngày tháng. Có nghĩa là tệp btmp cho ngày 1 tháng 12 năm 2023.

Lệnh Lastb được sử dụng để kiểm tra lịch sử đăng nhập của người dùng. Để có thể được sử dụng để xem chi tiết hơn.

lastb -f /var/log/btmp-20231201
lastb -f /var/log/btmp
CleanShot 2023 12 31 at 16.19.30
CleanShot 2023 12 31 at 16.20.13

Lệnh last -10 -R trong Linux sẽ hiển thị 10 lần đăng nhập gần đây nhất và cũng sẽ hiển thị nguyên nhân (reason) cho mỗi sự kiện đăng nhập. Tùy thuộc vào cấu hình và phiên bản Linux cụ thể, nguyên nhân này có thể là một số lỗi hoặc thông tin khác liên quan đến sự kiện đăng nhập.
Để chạy lệnh này, bạn cần có quyền root hoặc quyền truy cập vào tệp nhật ký liên quan.

last -10 -R
CleanShot 2023 12 31 at 16.23.32

Hiển thị thông tin tên người dùng đầy đủ.

last -10 -w
CleanShot 2023 12 31 at 16.25.33

6. Kiểm tra lịch sử đăng nhập bằng tệp nhật ký log

Người dùng có thể xem lịch sử đăng nhập theo cách thủ công từ các tệp nhật ký sau chứa thông tin đăng nhập thành công, thất bại và lỗi.

  • /var/log/secure: Đây là tệp nhật ký chính trên các hệ thống Red Hat-based như CentOS và Fedora. Nó chứa thông tin về các sự kiện liên quan đến bảo mật, bao gồm cả quá trình xác thực (ví dụ: đăng nhập, thay đổi mật khẩu, v.v.) và các thông báo bảo mật khác.
  • /var/log/auth.log: Đây là tệp nhật ký trên các hệ thống Debian-based như Debian và Ubuntu. Tương tự như /var/log/secure, nó cũng chứa thông tin về các sự kiện xác thực và bảo mật.

Cả hai tệp nhật ký này đều rất hữu ích cho việc giám sát và phân tích bảo mật của hệ thống.

File secure cũng lưu lại theo khoảng thời gian nhất định, để tiện kiểm tra hơn

6.1 Sử dụng lệnh bên dưới để kiểm tra chi tiết đăng nhập thành công và thất bại trên các hệ thống RHEL, CentOS, Oracle Linux và Fedora.

cat /var/log/secure-20231217 | grep Accepted | awk '{print $1,$2,$3,$9}'
  • Kiểm tra đang nhập thành công.
CleanShot 2023 12 31 at 16.33.39
  • Kiểm tra đăng nhập thất bại.
cat /var/log/secure-20231217 | grep Failed | awk '{print $1,$2,$3,$9}'
CleanShot 2023 12 31 at 16.38.09
  • Sử dụng định dạng bên dưới để kiểm tra chi tiết đăng nhập thành công và thất bại trên hệ thống Debian và Ubuntu.
cat /var/log/auth.log | grep Accepted | awk '{print $1,$2,$3,$9}' 
cat /var/log/auth.log | grep Failed | awk '{print $1,$2,$3,$9}'

III. Lời kết

Mỗi hệ thống Linux có những vị trí nhật ký đặc trưng, như /var/log/secure trên các hệ thống Red Hat-based và /var/log/auth.log trên các hệ thống Debian-based. Việc biết và hiểu rõ cách truy cập và phân tích các tệp này không chỉ giúp người quản trị hiểu rõ về trạng thái và hoạt động của hệ thống mình mà còn giúp tăng cường bảo mật, phát hiện và ứng phó nhanh chóng với các mối đe dọa tiềm ẩn.

Trong bối cảnh ngày nay, khi mối đe dọa an ninh mạng ngày càng phức tạp và nguy hiểm, việc duy trì và sử dụng nhật ký hệ thống một cách hiệu quả là vô cùng quan trọng. Đối với mọi người quản trị hệ thống và chuyên gia bảo mật, việc này không chỉ là một nhiệm vụ mà còn là trách nhiệm của họ đối với sự an toàn và bảo mật của dữ liệu và thông tin trên hệ thống.

Hãy luôn cập nhật kiến thức và công cụ cần thiết, đồng thời đảm bảo rằng bạn luôn nắm bắt và giám sát những thay đổi trong tệp nhật ký của hệ thống. Bảo vệ thông tin và dữ liệu là một trong những yếu tố quan trọng nhất để đảm bảo sự tin cậy và hiệu suất của hệ thống.

Chúc bạn thực hiện thành công.

Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:

Đánh giá

Tham gia nhóm hỗ trợ Server - Hosting

Tham gia nhóm Hỗ trợ Server - Hosting & WordPress để cùng nhau hỏi đáp và hỗ trợ các vấn đề về WordPress, tối ưu máy chủ/server.

Tham gia ngay

Bài viết cùng chuyên mục

AZDIGI – Không chỉ là đơn vị hàng đầu trong lĩnh vực Web Hosting và Máy chủ, chúng tôi mong muốn mang lại những kiến thức bổ ích nhất và luôn cập nhật thường xuyên cho cộng đồng người đam mê thiết kế website, công nghệ,…

Vui lòng không sao chép nội dung nếu chưa xin phép. Designed and Developed by PenciDesign