ssh với cụm mật khẩu, dự phòng cho Google Authenticator


8

Với sự ra mắt của Google Authenticator và khả năng sử dụng nó với ssh, tôi đã tự hỏi liệu có ai đó đã trải qua một thiết lập sshd_config sẽ

  • đầu tiên mong đợi một chìa khóa
  • nếu điều này không thành công, hãy quay lại xác thực với Google Authenticator

Ý tưởng là thường kết nối liền mạch với một phím và, thường trong môi trường kém thân thiện hơn, kết nối với cơ chế hai yếu tố.

Câu trả lời:


16

Có, tôi có một thiết lập nơi tôi có thể sshđến máy chủ của mình bằng xác thực khóa chung, với dự phòng xác thực hai yếu tố với mật khẩu Google Authenticator + khi khóa riêng của tôi không khả dụng. Đây là các bước bạn có thể sử dụng để thiết lập nó.

Cài đặt Google Authenticator

Máy chủ của tôi đang chạy Ubuntu Bionic Beaver (18.04.1). Bạn có thể cài đặt Google Authenticator bằng cách sử dụng apt:

$ sudo apt install libpam-google-authenticator

Cấu hình sshd

Mở /etc/pam.d/sshdvà thêm dòng sau ở trên cùng:

auth optional pam_google_authenticator.so

Mở /etc/ssh/sshd_configvà thay đổi một dòng. Dòng hiện tại là

ChallengeResponseAuthentication no

và bạn nên đổi nó thành

ChallengeResponseAuthentication yes

Định cấu hình Google Authenticator cho Tài khoản của bạn

Bước tiếp theo là bật Google Authenticator cho tài khoản của bạn. Bạn làm điều này bằng cách đơn giản là chạy:

$ google-authenticator

Hãy chắc chắn rằng bạn chạy nó với tư cách là người dùng sẽ tạo kết nối ssh chứ không phải root. Ghi lại mã khóa bí mật mới và mã số khẩn cấp của bạn. Trình hướng dẫn sẽ hỏi bạn một số câu hỏi để định cấu hình cài đặt bảo mật cho tài khoản của bạn.

Định cấu hình ứng dụng di động của bạn

Tôi sử dụng ứng dụng Google Authenticator cho iPhone. Ứng dụng này có nút [+] cho phép tôi thêm Mã thông báo dựa trên thời gian mới bằng khóa bí mật tôi nhận được từ google-authenticatorlệnh trên máy chủ của mình. Nó là tầm thường để thiết lập. Tôi không thể giúp bạn với các ứng dụng trên bất kỳ nền tảng nào khác, nhưng tôi tưởng tượng quá trình này cũng đơn giản không kém.

Kéo kích hoạt

Điều cuối cùng bạn cần làm là khởi động lại sshd.

$ sudo /etc/init.d/ssh restart

Tại thời điểm này, khi bạn cố gắng kết nối với máy chủ khi khóa riêng của bạn khả dụng, xác thực chỉ hoạt động. Khi khóa riêng của bạn không có sẵn, bạn sẽ nhận được lời nhắc về mã xác minh, sau đó là mật khẩu tài khoản của bạn.

Bingo, xác thực hai yếu tố.


Cảm ơn rất nhiều - điều này rất đầy đủ và chính xác những gì tôi đang tìm kiếm.
WoJ

Trông thật tuyệt, chính xác là những gì tôi cần. Tôi sẽ làm theo hướng dẫn của bạn và đưa ra phản hồi sau đó.
peipst9lker
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.