Dấu vân tay là một trong những hình thức xác thực phổ biến. Việc sử dụng dữ liệu sinh trắc học để xác nhận sự tồn tại vật lý của các cá nhân bằng cách sử dụng một yếu tố tương đối không thể tách rời khỏi cá nhân đó.
Ngoài ra, dữ liệu sinh trắc học cung cấp khả năng bảo mật cho người đó bằng cách sử dụng dữ liệu dành riêng cho hầu hết mọi cá nhân. Bỏ qua các giới hạn sử dụng hợp pháp của dữ liệu sinh trắc học, các tính năng này làm nổi bật việc sử dụng dấu vân tay so với các công cụ yếu tố thứ hai khác.
Đây là cách bạn có thể thiết lập tính năng quét vân tay trên Linux bằng PAM (Pluggable Authentication Modules).
Những điều cần lưu ý khi xác thực bằng vân tay
Phương pháp sử dụng dấu vân tay không phải là lựa chọn an toàn nhất của bạn. Có một số lý do cho việc này:
- Bạn không thể thay đổi dấu vân tay của mình. Do đó, tầm quan trọng của việc đảm bảo tính bảo mật của dữ liệu này tăng lên.
- Mọi người để lại dấu vân tay ở nhiều nơi nên vân tay rất dễ lấy.
- Có thể thực hiện gian lận trên hệ thống quét vân tay. Mặc dù thiết bị tiên tiến khiến việc này trở nên khó khăn hơn, nhưng không hoàn toàn là không thể.
- Quét vân tay có thể không xác định được người đó. Đặc biệt, những thay đổi về thể chất như chấn thương có thể khiến việc quét không thể thực hiện được.
Vì những lý do trên, sẽ rất hữu ích nếu sử dụng dấu vân tay như một yếu tố thứ ba hoặc chỉ coi đó là bằng chứng yếu để chứng minh sự tồn tại vật chất của con người.
Thêm xác thực dấu vân tay vào hệ thống được bảo vệ bằng mật khẩu duy nhất sẽ cung cấp thêm một số khả năng bảo mật. Thật hợp lý khi sử dụng dấu vân tay, đặc biệt là trên các thiết bị có đầu quét vân tay tích hợp, vì chi phí cho việc này gần như bằng không.
Thiết lập các yêu cầu
Tất nhiên, bạn cần một trình quét vân tay để thêm tính năng này vào thiết bị của mình với hệ điều hành GNU/Linux. Hầu hết các thiết bị ngày nay đều có tính năng quét vân tay.
Nếu bạn có máy quét vân tay, bước tiếp theo là cài đặt gói fprintd trên hệ thống của bạn.
Trên các hệ thống dựa trên Debian (Ubuntu, Mint, v.v.):
sudo apt-get install fprintd
Người dùng Arch Linux có thể cài đặt fprintd bằng Pacman:
sudo pacman -S fprintd
Trên các hệ thống dựa trên Red Hat (Fedora, CentOS, v.v…):
sudo yum install fprintd
Sau khi quá trình kết thúc, fprintd và mô-đun PAM bên trong sẽ được cài đặt. Nhập lệnh sau để bắt đầu quét vân tay:
fprintd-enroll -f [tên_ngón_tay]
Bạn cần cho fprintd biết bạn đang quét bằng ngón tay nào. Bằng cách này, bạn có thể biết ngón tay nào đang được yêu cầu trong khi quét. Tên ngón tay hợp lệ là:
Lệnh | Tên ngón tay |
left-thumb | Ngón cái bên trái |
left-index-finger | Ngón trỏ trái |
left-middle-finger | Ngón giữa trái |
left-ring-finger | Ngón nhẫn trái |
left-little-finger | Ngón út trái |
right-thumb | Ngón cái bên phải |
right-index-finger | Ngón trỏ phải |
right-middle-finger | Ngón giữa bên phải |
right-ring-finger | Ngón nhẫn phải |
right-little-finger | Ngón út phải |
Theo đó, lệnh ví dụ để giới thiệu ngón út trái của bạn sẽ như sau:
fprintd-enroll -f left-little-finger
Sau đó, bạn sẽ cần quét ngón tay của mình 4 lần và nếu thành công, dấu vân tay sẽ được thêm thành công.
Using device /net/reactivated/Fprint/Device/0
Enrolling left-little-finger finger.
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-completed
Để kiểm tra sự thành công của quy trình, bạn có thể chạy lệnh bên dưới và đọc ngón tay của mình:
fprintd-verify -f left-little-finger
Dấu vân tay đã đăng ký của bạn sẽ được liệt kê và bạn sẽ nhận được xác nhận khi quét ngón tay đã chỉ định.
Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
- #0: left-little-finger
Verify result: verify-match (done)
Cài đặt PAM bạn cần thực hiện
Liên quan đến tính toàn vẹn của dữ liệu và bảo vệ quyền cá nhân, PAM ngày càng có tầm quan trọng hơn trong thế giới an ninh mạng. Khi những kẻ xấu tấn công một thiết bị, chúng sẽ lợi dụng các cuộc tấn công như Privilege Escalation để khai thác thiết bị. Do đó, PAM là một biện pháp phòng ngừa chống lại các cuộc tấn công như vậy.
PAM là phần mềm chịu trách nhiệm cấp quyền cho người dùng trên các hệ thống GNU/Linux. Bạn có thể điều chỉnh hành vi của PAM bằng các file cấu hình nằm trong thư mục /etc/pam.d. Nếu muốn, bạn có thể tùy chỉnh cài đặt PAM theo nhu cầu của mình.
Để thêm xác thực dấu vân tay vào tất cả thông tin đăng nhập do PAM kiểm soát trên thiết bị của bạn, hãy mở file sau bằng trình soạn thảo văn bản bạn chọn:
sudo vim /etc/pam.d/common-auth
Bạn sẽ thấy văn bản tương tự như sau:
Xin lưu ý rằng nếu có sự cố ở giai đoạn này và bạn bật khóa màn hình, bạn có thể không đăng nhập lại được vào thiết bị của mình.
Thêm dòng sau vào cuối file:
auth required pam_fprintd.so
Nếu bạn sử dụng Vim, hãy nhập :wq sau khi nhấn Escape. Nhấn Enter sau khi nhập, lưu file và thoát.
Sau thời điểm này, hệ thống sẽ yêu cầu bạn cung cấp dấu vân tay cho tất cả các quy trình ủy quyền trên thiết bị của mình.
Để đảm bảo mọi thứ đều ổn và để khắc phục dễ dàng nếu có sự cố, hãy mở một terminal khác từ terminal được ủy quyền sudo mà bạn vẫn mở. Làm theo lời khuyên ở trên, nhập:
sudo ls ~
Hệ thống sẽ yêu cầu bạn nhập mật khẩu và dấu vân tay để ủy quyền sudo. Nếu điều này không xảy ra hoặc các file trong thư mục chính không được liệt kê thành công, hãy quay lại và kiểm tra xem bạn có thực hiện sai các bước không.
Nếu gặp sự cố, bạn có thể ngăn thiết bị của mình khóa bằng cách hoàn tác và lưu các thay đổi bạn đã thực hiện trong file /etc/pam.d/common-auth từ terminal được ủy quyền sudo.
Nếu vượt qua bài kiểm tra thành công, bây giờ bạn có thể bắt đầu sử dụng thiết bị an toàn hơn một chút thông qua chính dấu vân tay của mình.
Cân nhắc cho người dùng không phải admin
Dấu vân tay là một phương pháp nghiêm túc để bảo vệ thiết bị cá nhân của bạn
Nếu có nhiều người dùng trên thiết bị và chỉ một người dùng sử dụng dấu vân tay, bạn có thể thay đổi cấu hình /etc/pam.d/common-auth thành cấu hình sau để chỉ những người dùng có thiết lập dấu vân tay mới cần yếu tố thứ hai. Tuy nhiên, đây là một bước mà bạn nên cân nhắc cẩn thận, vì nó sẽ loại trừ người dùng root khỏi 2FA:
auth required pam_fprintd.so nullok
Nếu muốn đăng nhập với tư cách người dùng root bằng dấu vân tay, bạn cần lặp lại các bước trên với người dùng root.