Nội dung
Cấu hình SSH Two Factor Authentication trên Ubuntu 22.04 với 3 bước vô cùng đơn giản..
Giới thiệu
SSH Two Factor Authentication hay còn gọi là Xác thực 2 bước cho dịch vụ SSH, với tính năng này người dùng có thể gia tăng tính bảo mật cho máy chủ của mình khỏi các nguy cơ tấn công thông qua giao thức SSH. Và ở bài viết này AZDIGI sẽ hướng dẫn bạn cách cài đặt Google Authenticator và cấu hình Two Factor Authentication khi SSH vào hệ thống sử dụng Ubuntu 22.04.
Hướng dẫn cài đặt
Bước 1: Cài đặt và cấu hình Google Authenticator
- Để cài đặt Google Authenticator, các bạn hãy truy cập vào máy chủ Ubuntu 22.04 của mình, và chạy lệnh:
sudo apt install libpam-google-authenticator -y
- Tạo mã bảo mật
Để tạo mã khóa bảo mật, các bạn gõ lệnh
google-authenticator
Sau khi gõ lệnh trên, kết quả sẽ xuất hiện một đường link và mã QR như hình bên dưới.
Nếu hình to quá, thì các bạn có thể copy link đó và dán ra trình duyệt để hiển thị mã QR dễ nhìn hơn như bên dưới
Bây giờ, bạn hãy lấy điện thoại hoặc thiết bị đã được cài đặt sẵn App Google Authenticator và scan mã QR trên. Sau khi scan xong bạn sẽ nhận được một mã code gồm 6 chữ số tương tự như hình, và 6 số này sẽ liên tục được thay đổi sau mỗi 30s. Và số chỉ có hiệu lực khi nó hiện màu xanh như hình, ngược lại nếu là màu đỏ thì sẽ không có hiệu lực.
Sau khi đã có 6 số trên , bạn tiến hành 6 số đó vào phần thiết lập máy chủ để hoàn tất cài đặt.
Sau khi nhập code thành công, bạn sẽ nhận được một số code khẩn cấp và cần xác thực một số thông tin bên dưới.
Code confirmed
Your emergency scratch codes are:
32788307
11480031
78992160
60171886
58985147
Do you want me to update your "/root/.google_authenticator" file? (y/n) y
Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) y
By default, a new token is generated every 30 seconds by the mobile app.
In order to compensate for possible time-skew between the client and the server,
we allow an extra token before and after the current time. This allows for a
time skew of up to 30 seconds between authentication server and client. If you
experience problems with poor time synchronization, you can increase the window
from its default size of 3 permitted codes (one previous code, the current
code, the next code) to 17 permitted codes (the 8 previous codes, the current
code, and the 8 next codes). This will permit for a time skew of up to 4 minutes
between client and server.
Do you want to do so? (y/n) y
If the computer that you are logging into isn't hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting? (y/n) y
Bước 2: Cấu hình OpenSSH sử dụng 2FA
- Chỉnh sửa file cấu hình tại /etc/pam.d/sshd
Trước tiên bạn hãy backup file với lệnh
sudo cp /etc/pam.d/sshd /etc/pam.d/sshd.bak
Tiếp đó bạn chỉnh sửa file với lệnh
sudo nano /etc/pam.d/sshd
Thêm nội dung bên dưới vào cuối file và save lại.
auth required pam_google_authenticator.so nullok
auth required pam_permit.so
- Chỉnh sửa file cấu hình tại /etc/ssh/sshd_config
Trước tiên bạn hãy backup file với lệnh
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
Tiếp đó bạn chỉnh sửa file với lệnh
sudo nano /etc/ssh/sshd_config
Tiếp đó bạn tìm đến giá trị ChallengeResponseAuthentication và set nó thành yes, nếu chưa có bạn có thể thêm vào thủ công.
Khởi động lại dịch vụ
sudo systemctl restart sshd.service
Bước 3: SSH vào máy chủ kiểm tra
Sau khi cấu hình hoàn tất các bước, bây giờ bạn tiến hành SSH vào máy chủ Ubuntu 22.04 của mình để xem kết quả. Và như hình bên dưới, các bạn có thể thấy sau khi mình nhập Passwd root của VPS, hệ thống sẽ yêu cầu nhập tiếp Code xác thực 2 lớp. Bây giờ bạn chỉ cần kiểm tra App Google Authenticator để lấy Code và nhập vào là có thể SSH thành công.
Các bạn có thể tham khảo thêm các hướng dẫn sử dụng khác tại link bên dưới:
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline 247: 028 888 24768 (Ext 0)
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@azdigi.com.