Tự động mở khóa GPG

20250518 #linux

Mình dùng pass làm trình quản lý mật khẩu. Mỗi lần muốn nhập thông tin đăng nhập, mình phải mở khóa GPG key dùng để mã hóa các file mật khẩu.

Ở máy bàn, nơi rất ít khả năng người khác có thể tiếp cận, mình không khóa key này để thuận tiện hơn. Do đó mình sẽ mở khóa sẵn GPG key khi đăng nhập thay vì nhập mật khẩu mỗi khi cần. Mình dùng pam-gnupg để làm điều này.

Điều kiện

  1. Thư mục .gnupg nên đặt ở ~/.
  2. Mật khẩu người dùng linux phải giống với mật khẩu mở khóa khóa GPG.

Cài đặt

xbps-install -S pam-gnupg

Lấy mã định danh

Bước này chúng ta tìm mã định danh cho key mà bạn muốn mở khóa tự động.

gpg -K --with-keygrip

Thiết lập PAM

auth     optional  pam_gnupg.so store-only
session  optional  pam_gnupg.so

Sau khi thêm vào, /etc/pam.d/login sẽ trông như thế này:


#%PAM-1.0

auth        required    pam_securetty.so
auth        requisite   pam_nologin.so
auth        include     system-local-login
auth        optional    pam_gnupg.so store-only
account     include     system-local-login
session     include     system-local-login
session     optional    pam_gnupg.so

Thành quả

Sau khi thực hiện xong các bước trên, hãy khởi động lại máy và đăng nhập như bình thường. Nếu đã làm đúng, bạn sẽ thấy một tiến trình tên là gpg-agent đang chạy ngay sau khi đăng nhập.

Gỡ bỏ

xbps-remove -R pam-gnupg

Hơn thế nữa

Tìm hiểu tự động đăng nhập Linux để tối giản hóa thao tác đăng nhập.


Bài viết liên quan