Cách thêm bảo mật MFA thông qua thiết bị đầu cuối Raspberry Pi của bạn
Raspberry Pi là một máy tính bảng đơn phổ biến đã trở thành cơn sốt trong những năm gần đây. Do sự phổ biến ngày càng tăng và được sử dụng phổ biến trong các lập trình viên mới và những người đam mê công nghệ, nó đã trở thành mục tiêu của tội phạm mạng để làm những gì chúng thích làm nhất: trộm cắp mạng. Cũng giống như với các thiết bị PC thông thường mà chúng tôi bảo vệ bằng nhiều tường lửa và mật khẩu, việc bảo vệ thiết bị Raspberry Pi của bạn bằng khả năng bảo vệ nhiều mặt tương tự ngày càng trở nên quan trọng.
Xác thực đa yếu tố hoạt động bằng cách kết hợp hai hoặc nhiều yếu tố sau để cấp cho bạn quyền truy cập vào tài khoản hoặc thiết bị của mình. Ba danh mục lớn để cung cấp thông tin cấp quyền truy cập là: thứ bạn biết, thứ bạn có và thứ bạn đang có. Danh mục đầu tiên có thể là mật khẩu hoặc mã pin mà bạn đã thiết lập cho tài khoản hoặc thiết bị của mình. Là một lớp bảo vệ bổ sung, bạn có thể được yêu cầu cung cấp thứ gì đó từ danh mục thứ hai, chẳng hạn như mã pin do hệ thống tạo được gửi đến điện thoại thông minh của bạn hoặc được tạo trên một thiết bị khác mà bạn sở hữu. Là một giải pháp thay thế thứ ba, bạn cũng có thể kết hợp một số thứ từ danh mục thứ ba, bao gồm các phím vật lý như nhận dạng sinh trắc học, bao gồm nhận dạng khuôn mặt, vân tay và quét võng mạc tùy thuộc vào khả năng thiết bị của bạn thực hiện các lần quét này.
Với mục đích thiết lập này, chúng tôi sẽ sử dụng hai phương thức xác thực phổ biến nhất: mật khẩu đã đặt của bạn và mã thông báo một lần được tạo thông qua điện thoại thông minh của bạn. Chúng tôi sẽ tích hợp cả hai bước với google và nhận mật khẩu của bạn thông qua ứng dụng xác thực của Google (ứng dụng này thay thế nhu cầu nhận mã SMS trên điện thoại di động của bạn).
Bước 1: Tải ứng dụng Google Authenticator
Trước khi chúng tôi bắt đầu thiết lập thiết bị của bạn, hãy tải xuống và cài đặt ứng dụng google authenticator trên điện thoại thông minh của bạn. Đi vào cửa hàng Apple App, cửa hàng Google Play hoặc cửa hàng tương ứng của bất kỳ thiết bị nào bạn đang sử dụng. Tải xuống ứng dụng xác thực google và đợi nó cài đặt xong. Các ứng dụng xác thực khác như trình xác thực của Microsoft cũng có thể được sử dụng, nhưng đối với hướng dẫn của chúng tôi, chúng tôi sẽ sử dụng ứng dụng trình xác thực của Google.
Bước 2: Thiết lập kết nối SSH của bạn
Các thiết bị Raspberry Pi thường hoạt động trên SSH và chúng tôi cũng sẽ làm việc để định cấu hình xác thực đa yếu tố của chúng tôi qua SSH. Chúng tôi sẽ tạo hai kết nối SSH để thực hiện việc này vì lý do sau: chúng tôi không muốn bạn bị khóa thiết bị của mình và trong trường hợp bạn bị khóa khỏi một luồng, luồng thứ hai sẽ cho phép bạn có cơ hội khác để đăng nhập lại Đây chỉ là một mạng lưới an toàn mà chúng tôi đang thiết lập vì lợi ích của bạn: người dùng sở hữu thiết bị. Chúng tôi sẽ giữ cho luồng thứ hai của mạng an toàn này tiếp tục trong suốt quá trình thiết lập cho đến khi toàn bộ quá trình thiết lập hoàn tất và chúng tôi đã đảm bảo rằng xác thực đa yếu tố của bạn đang hoạt động bình thường. Nếu bạn thực hiện các bước sau một cách chu đáo và cẩn thận, sẽ không có bất kỳ sự cố nào khi thiết lập xác thực của bạn.
Khởi chạy hai cửa sổ đầu cuối và nhập lệnh sau vào mỗi cửa sổ. Điều này là để thiết lập hai luồng song song.
Thay vì tên người dùng, hãy nhập tên người dùng của thiết bị của bạn. Thay vì tên pi, hãy nhập tên thiết bị pi của bạn.
Sau khi nhấn enter, bạn sẽ nhận được thông báo chào mừng trong cả hai cửa sổ đầu cuối hiển thị tên thiết bị và tên người dùng của bạn.
Tiếp theo, chúng tôi sẽ chỉnh sửa tệp sshd_config. Để thực hiện việc này, hãy nhập lệnh sau vào mỗi cửa sổ. Hãy nhớ thực hiện song song tất cả các bước trong phần này trong cả hai cửa sổ.
sudo nano / etc / ssh / sshd_config
Cuộn xuống và tìm nơi nó cho biết: ChallengeResponseAuthentication không
Thay đổi “không” thành “có” bằng cách nhập từ này vào vị trí của nó. Lưu các thay đổi của bạn bằng cách nhấn [Ctrl] + [O] rồi thoát khỏi cửa sổ bằng cách nhấn [Ctrl] + [X]. Một lần nữa, làm điều này cho cả hai cửa sổ.
Khởi động lại các thiết bị đầu cuối và nhập lệnh sau vào từng thiết bị để khởi động lại daemon SSH:
Cuối cùng. Cài đặt Google Authenticator trong thiết lập của bạn để tích hợp hệ thống của bạn với nó. Để thực hiện việc này, hãy nhập lệnh sau:
Luồng của bạn hiện đã được thiết lập và bạn đã định cấu hình trình xác thực google của mình với cả thiết bị và điện thoại thông minh của bạn cho đến thời điểm này.
Bước 3: Tích hợp xác thực đa yếu tố của bạn với Google Authenticator
- Khởi chạy tài khoản của bạn và nhập lệnh sau: google-authenticator
- Nhập "Y" cho các mã thông báo dựa trên thời gian
- Mở rộng cửa sổ của bạn để xem toàn bộ mã QR đã được tạo và quét nó trên thiết bị điện thoại thông minh của bạn. Điều này sẽ cho phép bạn ghép nối dịch vụ xác thực của Raspberry Pi với ứng dụng điện thoại thông minh của bạn.
- Sẽ có một số mã dự phòng được hiển thị dưới mã QR. Ghi lại những điều này hoặc chụp ảnh chúng để dự phòng trong trường hợp bạn không thể xác minh xác thực đa yếu tố của mình thông qua ứng dụng Google Authenticator và kết thúc bằng cách cần một mã dự phòng để truy cập. Hãy giữ những điều này an toàn và đừng mất chúng.
- Bạn sẽ được nhắc với bốn câu hỏi ngay bây giờ và đây là cách bạn cần trả lời chúng bằng cách nhập “Y” cho có hoặc “N” cho không. (Lưu ý: Các câu hỏi dưới đây được trích dẫn trực tiếp từ thiết bị đầu cuối kỹ thuật số Raspberry Pi để bạn biết chính xác những câu hỏi nào bạn sẽ phải đối mặt và cách trả lời chúng.)
- “Bạn có muốn tôi cập nhật tệp“ /home/pi/.google_authenticator ”của bạn không?” (y / n): Nhập “Y”
- “Bạn có muốn không cho phép sử dụng nhiều lần cùng một mã thông báo xác thực không? Điều này hạn chế bạn chỉ có một lần đăng nhập cứ sau 30 giây nhưng tăng cơ hội để bạn nhận thấy hoặc thậm chí ngăn chặn các cuộc tấn công man-in-the-middle (y / n): ” Nhập “Y”
- “Theo mặc định, một mã thông báo mới được tạo sau mỗi 30 giây bởi ứng dụng dành cho thiết bị di động. Để bù đắp cho sự lệch thời gian có thể xảy ra giữa máy khách và máy chủ, chúng tôi cho phép thêm một mã thông báo trước và sau thời điểm hiện tại. Điều này cho phép chênh lệch thời gian lên đến 30 giây giữa máy chủ xác thực và máy khách. Nếu bạn gặp sự cố với đồng bộ hóa thời gian kém, bạn có thể tăng cửa sổ từ kích thước mặc định của 3 mã được phép (một mã trước, một mã hiện tại, mã tiếp theo) thành 17 mã được phép (8 mã trước, một mã hiện tại, 8 mã tiếp theo). Điều này sẽ cho phép khoảng thời gian chênh lệch tối đa 4 phút giữa máy khách và máy chủ. Bạn có muốn làm như vậy không? (y / n): ” Nhập “N”
- “Nếu máy tính bạn đang đăng nhập không cứng trước các nỗ lực đăng nhập thô bạo, bạn có thể bật giới hạn tốc độ cho mô-đun xác thực. Theo mặc định, điều này giới hạn những kẻ tấn công không quá 3 lần đăng nhập cứ sau 30 giây. Bạn có muốn bật giới hạn tỷ lệ không? (y / n): ” Nhập “Y”
- Bây giờ, khởi chạy ứng dụng Google Authenticator trên điện thoại thông minh của bạn và nhấn vào biểu tượng dấu cộng trên đầu màn hình. Quét mã QR đang được hiển thị trên thiết bị Pi của bạn để ghép nối hai thiết bị. Bây giờ bạn sẽ được hiển thị với mã xác thực suốt ngày đêm bất cứ khi nào bạn cần chúng để đăng nhập. Bạn sẽ không cần tạo mã. Bạn chỉ cần khởi chạy ứng dụng và nhập ứng dụng đang được hiển thị tại thời điểm đó.
Bước 4: Định cấu hình mô-đun xác thực PAM bằng SSH của bạn
Khởi chạy thiết bị đầu cuối của bạn và nhập lệnh sau: sudo nano /etc/pam.d/sshd
Gõ lệnh sau như được hiển thị:
Nếu bạn muốn được yêu cầu cung cấp mã khóa thông qua ứng dụng Google Authenticator trước khi nhập mật khẩu, hãy nhập lệnh sau trước khi lệnh đã nhập trước đó:
Nếu bạn muốn được yêu cầu cung cấp mã khóa sau khi nhập mật khẩu, hãy nhập cùng một lệnh này, ngoại trừ đặt nó sau bộ lệnh # 2FA trước đó. Lưu các thay đổi của bạn bằng cách nhấn [Ctrl] + [O] rồi thoát khỏi cửa sổ bằng cách nhấn [Ctrl] + [X].
Bước 5: Đóng Luồng SSH song song
Bây giờ bạn đã hoàn tất việc thiết lập xác thực đa yếu tố, bạn có thể đóng một trong các luồng song song mà chúng ta đã thực hiện. Để thực hiện việc này, hãy nhập lệnh sau:
Luồng mạng an toàn dự phòng thứ hai của bạn vẫn đang chạy. Bạn sẽ tiếp tục hoạt động này cho đến khi bạn đã xác minh rằng xác thực đa yếu tố của bạn đang hoạt động bình thường. Để thực hiện việc này, hãy khởi chạy kết nối SSH mới bằng cách nhập:
Thay vì tên người dùng, hãy nhập tên người dùng của thiết bị của bạn. Thay vì tên pi, hãy nhập tên thiết bị pi của bạn.
Thủ tục đăng nhập bây giờ sẽ được thực hiện. Nhập mật khẩu của bạn và sau đó nhập mã được hiển thị trên ứng dụng Google Authenticator của bạn tại thời điểm này. Hãy cẩn thận để hoàn thành cả hai bước trong ba mươi giây. Nếu bạn có thể đăng nhập thành công, bạn có thể quay lại và lặp lại bước trước đó để đóng luồng mạng lưới an toàn song song mà chúng tôi đã chạy tại chỗ. Nếu bạn đã làm theo tất cả các bước một cách chính xác, bạn sẽ có thể tiếp tục với xác thực đa yếu tố trên thiết bị Raspberry Pi của mình ngay bây giờ.
Từ cuối cùng
Như với bất kỳ quy trình xác thực nào bạn thực hiện trên bất kỳ thiết bị hoặc tài khoản nào, những yếu tố bổ sung này giúp an toàn hơn trước nhưng không làm cho nó an toàn tuyệt đối. Hãy cẩn thận khi sử dụng thiết bị của bạn. Hãy cảnh giác với những trò gian lận tiềm ẩn, các cuộc tấn công lừa đảo và trộm cắp mạng mà thiết bị của bạn có thể trở thành đối tượng. Bảo vệ thiết bị thứ hai mà bạn đã thiết lập quy trình truy xuất mã và giữ an toàn cho thiết bị. Bạn sẽ cần thiết bị này mọi lúc để vào lại hệ thống của mình. Giữ mã sao lưu của bạn ở một vị trí đã biết và an toàn trong trường hợp bạn đang ở một vị trí mà bạn không có quyền truy cập vào thiết bị điện thoại thông minh sao lưu của mình.