Làm thế nào để đăng nhập vào máy tính để bàn Linux của bạn với Google Authenticator

Mục lục:

Làm thế nào để đăng nhập vào máy tính để bàn Linux của bạn với Google Authenticator
Làm thế nào để đăng nhập vào máy tính để bàn Linux của bạn với Google Authenticator

Video: Làm thế nào để đăng nhập vào máy tính để bàn Linux của bạn với Google Authenticator

Video: Làm thế nào để đăng nhập vào máy tính để bàn Linux của bạn với Google Authenticator
Video: Google Chrome OS -- First Look - YouTube 2024, Tháng mười một
Anonim
Để bảo mật hơn, bạn có thể yêu cầu mã thông báo xác thực dựa trên thời gian cũng như mật khẩu để đăng nhập vào máy tính Linux của bạn. Giải pháp này sử dụng Google Authenticator và các ứng dụng TOTP khác.
Để bảo mật hơn, bạn có thể yêu cầu mã thông báo xác thực dựa trên thời gian cũng như mật khẩu để đăng nhập vào máy tính Linux của bạn. Giải pháp này sử dụng Google Authenticator và các ứng dụng TOTP khác.

Quá trình này được thực hiện trên Ubuntu 14.04 với máy tính để bàn Unity tiêu chuẩn và trình quản lý đăng nhập LightDM, nhưng các nguyên tắc này giống nhau trên hầu hết các bản phân phối Linux và máy tính để bàn.

Trước đây chúng tôi đã chỉ cho bạn cách yêu cầu Google Authenticator để truy cập từ xa qua SSH và quy trình này tương tự. Điều này không yêu cầu ứng dụng Google Authenticator nhưng hoạt động với bất kỳ ứng dụng tương thích nào triển khai thực hiện chương trình xác thực TOTP, bao gồm cả Authy.

Cài đặt Google Authenticator PAM

Khi thiết lập quyền truy cập SSH này, trước tiên chúng tôi sẽ cần cài đặt phần mềm PAM (“mô-đun xác thực có thể cắm được)” thích hợp. PAM là một hệ thống cho phép chúng tôi cắm các loại phương thức xác thực khác nhau vào một hệ thống Linux và yêu cầu chúng.

Trên Ubuntu, lệnh sau sẽ cài đặt Google Authenticator PAM. Mở một cửa sổ Terminal, gõ lệnh sau, nhấn Enter, và cung cấp mật khẩu của bạn. Hệ thống sẽ tải xuống PAM từ kho phần mềm phân phối Linux của bạn và cài đặt nó:

sudo apt-get install libpam-google-authenticator

Các bản phân phối Linux khác hy vọng sẽ có sẵn gói này để cài đặt dễ dàng - mở các kho phần mềm phân phối Linux của bạn và thực hiện tìm kiếm nó. Trong trường hợp xấu nhất, bạn có thể tìm mã nguồn cho mô-đun PAM trên GitHub và tự biên dịch nó.
Các bản phân phối Linux khác hy vọng sẽ có sẵn gói này để cài đặt dễ dàng - mở các kho phần mềm phân phối Linux của bạn và thực hiện tìm kiếm nó. Trong trường hợp xấu nhất, bạn có thể tìm mã nguồn cho mô-đun PAM trên GitHub và tự biên dịch nó.

Như chúng tôi đã chỉ ra trước đây, giải pháp này không phụ thuộc vào “gọi điện về nhà” cho máy chủ của Google. Nó thực hiện thuật toán chuẩn TOTP và có thể được sử dụng ngay cả khi máy tính của bạn không có quyền truy cập Internet.

Tạo khóa xác thực của bạn

Bây giờ bạn sẽ cần tạo khóa xác thực bí mật và nhập mã đó vào ứng dụng Google Authenticator (hoặc một ứng dụng tương tự) trên điện thoại của bạn. Trước tiên, hãy đăng nhập bằng tài khoản người dùng của bạn trên hệ thống Linux của bạn. Mở cửa sổ đầu cuối và chạy trình xác thực google chỉ huy. Kiểu y và làm theo lời nhắc ở đây. Điều này sẽ tạo một tệp đặc biệt trong thư mục của tài khoản người dùng hiện tại với thông tin Google Authenticator.

Bạn cũng sẽ được hướng dẫn quy trình nhận mã xác minh hai yếu tố đó vào Google Authenticator hoặc ứng dụng TOTP tương tự trên điện thoại thông minh của bạn. Hệ thống của bạn có thể tạo mã QR mà bạn có thể quét hoặc bạn có thể nhập mã theo cách thủ công.
Bạn cũng sẽ được hướng dẫn quy trình nhận mã xác minh hai yếu tố đó vào Google Authenticator hoặc ứng dụng TOTP tương tự trên điện thoại thông minh của bạn. Hệ thống của bạn có thể tạo mã QR mà bạn có thể quét hoặc bạn có thể nhập mã theo cách thủ công.

Đảm bảo ghi lại mã cào khẩn cấp, bạn có thể sử dụng để đăng nhập nếu bạn mất điện thoại.

Đi qua quy trình này cho mỗi tài khoản người dùng sử dụng máy tính của bạn. Ví dụ: nếu bạn là người duy nhất sử dụng máy tính của mình, bạn chỉ có thể thực hiện một lần trên tài khoản người dùng thông thường của mình. Nếu bạn có người khác sử dụng máy tính của mình, bạn sẽ muốn họ đăng nhập vào tài khoản của riêng mình và tạo mã hai yếu tố thích hợp cho tài khoản của riêng họ để họ có thể đăng nhập.
Đi qua quy trình này cho mỗi tài khoản người dùng sử dụng máy tính của bạn. Ví dụ: nếu bạn là người duy nhất sử dụng máy tính của mình, bạn chỉ có thể thực hiện một lần trên tài khoản người dùng thông thường của mình. Nếu bạn có người khác sử dụng máy tính của mình, bạn sẽ muốn họ đăng nhập vào tài khoản của riêng mình và tạo mã hai yếu tố thích hợp cho tài khoản của riêng họ để họ có thể đăng nhập.
Image
Image

Kích hoạt xác thực

Đây là nơi mọi thứ trở nên hơi khó chịu. Khi chúng tôi giải thích cách bật hai yếu tố cho thông tin đăng nhập SSH, chúng tôi yêu cầu nó chỉ dành cho thông tin đăng nhập SSH. Điều này đảm bảo bạn vẫn có thể đăng nhập cục bộ nếu bạn bị mất ứng dụng xác thực hoặc nếu xảy ra sự cố.

Vì chúng tôi sẽ bật xác thực hai yếu tố cho thông tin đăng nhập cục bộ, có các vấn đề tiềm ẩn ở đây. Nếu xảy ra sự cố, bạn có thể không đăng nhập được. Hãy lưu ý rằng, chúng tôi sẽ hướng dẫn bạn cách bật tính năng này cho chỉ đăng nhập đồ họa. Điều này cho bạn một lối thoát hiểm nếu bạn cần.

Bật Google Authenticator cho bản ghi đồ họa trên Ubuntu

Bạn luôn có thể bật xác thực hai bước cho chỉ đăng nhập đồ họa, bỏ qua yêu cầu khi bạn đăng nhập từ lời nhắc văn bản. Điều này có nghĩa là bạn có thể dễ dàng chuyển sang một thiết bị đầu cuối ảo, đăng nhập ở đó và hoàn nguyên các thay đổi của mình để Gogole Authenciator không cần thiết nếu bạn gặp sự cố.

Chắc chắn, điều này sẽ mở ra một lỗ hổng trong hệ thống xác thực của bạn, nhưng kẻ tấn công có quyền truy cập vật lý vào hệ thống của bạn vẫn có thể khai thác nó. Đó là lý do tại sao xác thực hai yếu tố đặc biệt hiệu quả đối với việc đăng nhập từ xa thông qua SSH.

Dưới đây là cách thực hiện việc này cho Ubuntu, sử dụng trình quản lý đăng nhập LightDM. Mở tệp LightDM để chỉnh sửa bằng một lệnh như sau:

sudo gedit /etc/pam.d/lightdm

(Hãy nhớ rằng, các bước cụ thể này sẽ chỉ hoạt động nếu phân phối Linux và máy tính để bàn của bạn sử dụng trình quản lý đăng nhập LightDM.)

Thêm dòng sau vào cuối tập tin, và sau đó lưu nó:
Thêm dòng sau vào cuối tập tin, và sau đó lưu nó:

auth required pam_google_authenticator.so nullok

Bit “nullok” ở cuối cho phép hệ thống cho phép người dùng đăng nhập ngay cả khi họ chưa chạy lệnh xác thực google để thiết lập xác thực hai yếu tố. Nếu họ đã thiết lập, họ sẽ phải nhập mã thời gian ba lần - nếu không thì sẽ không. Xóa "nullok" và tài khoản người dùng chưa thiết lập mã Google Authenticator sẽ không thể đăng nhập bằng đồ họa.

Lần tiếp theo người dùng đăng nhập bằng đồ họa, họ sẽ được yêu cầu nhập mật khẩu của họ và sau đó được nhắc nhập mã xác minh hiện tại được hiển thị trên điện thoại của họ. Nếu họ không nhập mã xác minh, họ sẽ không được phép đăng nhập.
Lần tiếp theo người dùng đăng nhập bằng đồ họa, họ sẽ được yêu cầu nhập mật khẩu của họ và sau đó được nhắc nhập mã xác minh hiện tại được hiển thị trên điện thoại của họ. Nếu họ không nhập mã xác minh, họ sẽ không được phép đăng nhập.
Quá trình này khá giống với các bản phân phối và máy tính để bàn Linux khác, vì hầu hết các trình quản lý phiên Linux phổ biến sử dụng PAM. Bạn có thể chỉ cần chỉnh sửa một tệp khác với một cái gì đó tương tự để kích hoạt mô-đun PAM thích hợp.
Quá trình này khá giống với các bản phân phối và máy tính để bàn Linux khác, vì hầu hết các trình quản lý phiên Linux phổ biến sử dụng PAM. Bạn có thể chỉ cần chỉnh sửa một tệp khác với một cái gì đó tương tự để kích hoạt mô-đun PAM thích hợp.

Nếu bạn sử dụng mã hóa thư mục chính

Các phiên bản cũ hơn của Ubuntu cung cấp một tùy chọn “mã hóa thư mục gốc” dễ dàng đã mã hóa toàn bộ thư mục chính của bạn cho đến khi bạn nhập mật khẩu của mình. Cụ thể, điều này sử dụng ecryptfs. Tuy nhiên, vì phần mềm PAM tùy thuộc vào tệp Google Authenticator được lưu trữ trong thư mục chính của bạn theo mặc định, mã hóa sẽ cản trở PAM đọc tệp trừ khi bạn đảm bảo tệp có sẵn ở dạng không được mã hóa cho hệ thống trước khi bạn đăng nhập. thông tin về việc tránh sự cố này nếu bạn vẫn đang sử dụng các tùy chọn mã hóa thư mục gốc không được chấp nhận.

Các phiên bản Ubuntu hiện đại cung cấp mã hóa toàn bộ đĩa, thay vào đó, nó sẽ hoạt động tốt với các tùy chọn ở trên. Bạn không phải làm bất cứ điều gì đặc biệt

Trợ giúp, nó Broke!

Bởi vì chúng tôi chỉ kích hoạt tính năng này cho đăng nhập đồ họa, nên dễ dàng vô hiệu hóa nếu nó gây ra sự cố. Nhấn tổ hợp phím như Ctrl + Alt + F2 để truy cập thiết bị đầu cuối ảo và đăng nhập bằng tên người dùng và mật khẩu của bạn. Sau đó, bạn có thể sử dụng lệnh như sudo nano /etc/pam.d/lightdm để mở tệp để chỉnh sửa trong trình chỉnh sửa văn bản đầu cuối. Sử dụng hướng dẫn của chúng tôi về Nano để xóa dòng và lưu tệp và bạn sẽ có thể đăng nhập lại bình thường.

Bạn cũng có thể buộc Google Authenticator được yêu cầu cho các loại đăng nhập khác - thậm chí có thể là tất cả các lần đăng nhập hệ thống - bằng cách thêm dòng “auth required pam google authenticator.so” vào các tệp cấu hình PAM khác. Hãy cẩn thận nếu bạn làm điều này. Và hãy nhớ rằng, bạn có thể muốn thêm "nullok" để người dùng chưa trải qua quá trình thiết lập vẫn có thể đăng nhập.
Bạn cũng có thể buộc Google Authenticator được yêu cầu cho các loại đăng nhập khác - thậm chí có thể là tất cả các lần đăng nhập hệ thống - bằng cách thêm dòng “auth required pam google authenticator.so” vào các tệp cấu hình PAM khác. Hãy cẩn thận nếu bạn làm điều này. Và hãy nhớ rằng, bạn có thể muốn thêm "nullok" để người dùng chưa trải qua quá trình thiết lập vẫn có thể đăng nhập.

Bạn có thể tìm thấy thêm tài liệu về cách sử dụng và thiết lập mô-đun PAM này trong tệp README của phần mềm trên GitHub.

Đề xuất: