Những điểm chính
-
Hiểu quy trình cài đặt SSH Keys trên Ubuntu 20.04 chỉ với 4 bước: tạo khóa, sao chép khóa công khai, xác thực bằng SSH Key và vô hiệu hóa đăng nhập bằng mật khẩu.
-
Biết cách sao chép SSH Key bằng nhiều phương pháp khác nhau như
ssh-copy-id, SSH hoặc thủ công.
-
Tăng cường bảo mật máy chủ bằng cách chỉ cho phép đăng nhập thông qua SSH Key.
-
Kiểm tra và xác nhận quá trình cấu hình đã hoàn tất thành công.
Bước 1: Tạo SSH Key trên máy tính
Trước tiên, bạn cần tạo một cặp khóa SSH trên máy tính (client). Thực hiện lệnh:
Nếu muốn kiểm tra phiên bản OpenSSH đang sử dụng, chạy:
Mặc định, các phiên bản OpenSSH mới sẽ tạo khóa ed25519. Nếu muốn sử dụng RSA với độ dài khóa lớn hơn, bạn có thể tạo bằng lệnh:
Sau khi thực hiện, hệ thống sẽ yêu cầu bạn chọn vị trí lưu khóa:
Nhấn Enter để lưu vào thư mục mặc định hoặc nhập đường dẫn khác nếu muốn.
Nếu khóa đã tồn tại, hệ thống sẽ hỏi có ghi đè hay không:
Chỉ chọn y nếu bạn không còn sử dụng cặp khóa cũ.
Tiếp theo, bạn có thể thiết lập passphrase để tăng thêm một lớp bảo mật cho khóa riêng tư.
Sau khi hoàn tất, hệ thống sẽ tạo hai tệp:
-
id_rsa hoặc id_ed25519: khóa riêng tư (Private Key).
-
id_rsa.pub hoặc id_ed25519.pub: khóa công khai (Public Key).
Đến đây, bạn đã tạo thành công cặp SSH Keys và có thể chuyển khóa công khai lên máy chủ.
Bước 2: Sao chép Public Key lên Ubuntu Server
Có nhiều cách để đưa khóa công khai lên máy chủ Ubuntu, trong đó ssh-copy-id là phương pháp nhanh và đơn giản nhất.
Sử dụng ssh-copy-id
Chạy lệnh:
Nếu đây là lần đầu kết nối tới máy chủ, bạn sẽ nhận được thông báo xác thực host. Chỉ cần nhập:
Sau đó nhập mật khẩu tài khoản trên server. Công cụ sẽ tự động thêm khóa công khai vào file authorized_keys.
Khi xuất hiện thông báo:
nghĩa là quá trình sao chép đã thành công.
Sao chép bằng SSH
Nếu máy không có ssh-copy-id, bạn có thể dùng lệnh:
Lệnh này sẽ tự động tạo thư mục .ssh (nếu chưa có) và thêm khóa công khai vào file authorized_keys.
Sao chép thủ công
Trong trường hợp không thể sử dụng hai cách trên, bạn có thể hiển thị nội dung khóa công khai:
Sau đó đăng nhập vào máy chủ và thêm nội dung này vào cuối file:
Nếu thư mục .ssh chưa tồn tại, hãy tạo trước:
Sau đó chỉnh lại quyền truy cập:
Nếu đang cấu hình cho một tài khoản khác, hãy đảm bảo thư mục thuộc đúng chủ sở hữu bằng lệnh:
Sau khi hoàn thành bước này, máy chủ đã có khóa công khai và sẵn sàng xác thực bằng SSH Key.
Bước 3: Đăng nhập bằng SSH Key
Bây giờ bạn chỉ cần kết nối tới máy chủ bằng lệnh:
Nếu đây là lần đầu kết nối, hệ thống sẽ yêu cầu xác nhận fingerprint của máy chủ. Nhập yes để tiếp tục.
Nếu khóa riêng tư không đặt passphrase, bạn sẽ đăng nhập ngay lập tức. Ngược lại, hệ thống sẽ yêu cầu nhập passphrase trước khi mở phiên làm việc.
Việc đăng nhập thành công mà không cần nhập mật khẩu tài khoản chứng tỏ SSH Key đã được cấu hình chính xác. Trong bước tiếp theo, bạn nên tắt xác thực bằng mật khẩu để tăng cường bảo mật cho máy chủ.