Email Doanh NghiệpSSLFirewall Anti DDoS

NỘI DUNG

Banner blog lễ 30.4 và 1.5

Hướng dẫn tạo khóa SSH mới và thêm vào ssh-agent đơn giản dành cho người mới

Hưng Nguyễn

Đã kiểm duyệt nội dung

Ngày đăng:03/12/2025
Lượt xem

Quy trình sản xuất nội dung

Đánh giá

[esi kkstarratings cache="private" ttl="3"]
Speed optimizer 2

Khóa SSH (Secure Shell Key) là cặp mã hóa giúp xác thực kết nối an toàn giữa máy tính cá nhân và máy chủ mà không cần dùng mật khẩu. Việc tạo và thêm khóa SSH vào ssh-agent giúp bạn quản lý đăng nhập tự động, bảo mật và tiện lợi hơn khi thao tác với Git hoặc server. Bài viết này sẽ hướng dẫn chi tiết cách tạo khóa SSH mới và thêm vào ssh-agent một cách đơn giản, phù hợp cho cả người mới bắt đầu.

Những điểm chính

  1. Khái niệm: Hiểu rõ SSH Keygen là công cụ dùng để tạo SSH key và tại sao SSH Key an toàn hơn mật khẩu.
  2. Cơ chế hoạt động: Nắm được nguyên tắc xác thực bằng cặp khóa, giúp bạn hiểu cách SSH Key bảo vệ kết nối.
  3. Chuẩn bị môi trường: Biết các bước cần thiết để chuẩn bị môi trường dòng lệnh trước khi tạo SSH Key.
  4. Hướng dẫn tạo SSH Key: Nắm vững quy trình các bước để tạo một cặp khóa RSA, sao chép khóa công khai lên máy chủ và vô hiệu hóa đăng nhập bằng mật khẩu.
  5. Tạo SSH Key trên Windows (OpenSSH): Biết cách tạo SSH Key trên Windows 10 bằng công cụ OpenSSH Client tích hợp sẵn.
  6. Tạo SSH Key trên Windows (PuTTY): Nắm vững các bước tạo SSH Key bằng công cụ PuTTYgen, một lựa chọn phổ biến khác cho người dùng Windows.
  7. Biết thêm Vietnix là nhà cung cấp dịch vụ lưu trữ uy tín, chất lượng, support nhiệt tình.
  8. Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến tạo SSH Key.
những điểm chính

SSH Keygen là gì?

SSH Keygen là công cụ dùng để tạo SSH key, một cặp khóa mã hóa được sử dụng để xác thực danh tính người dùng trong giao thức SSH. Cặp khóa này cho phép đăng nhập vào máy chủ từ xa mà không cần mật khẩu, giúp tăng cường đáng kể tính an toàn cho kết nối. Một SSH Keygen luôn bao gồm hai thành phần:

  • Khóa công khai (Public Key): Là một tệp văn bản chứa thông tin mã hóa được thiết kế để chia sẻ và lưu trữ an toàn trên máy chủ SSH. Nhiệm vụ của khóa này là kiểm tra và xác nhận tính hợp lệ của khóa riêng tư tương ứng khi người dùng thực hiện kết nối.
  • Khóa riêng tư (Private Key): Ngược lại, khóa riêng tư là thành phần tuyệt mật, chứa thông tin mã hóa duy nhất và phải được lưu trữ cẩn thận trên máy tính cá nhân của người dùng.

Khi triển khai phương thức xác thực này, người dùng sẽ không cần phải nhập mật khẩu mỗi khi thực hiện kết nối. Việc này giúp loại bỏ hoàn toàn các rủi ro liên quan đến mật khẩu yếu, bị đánh cắp hoặc bị tấn công dò mật khẩu, mang lại một lớp bảo vệ vượt trội so với phương pháp xác thực thông thường.

SSH Keygen là một cặp khóa mã hóa
SSH Keygen là một cặp khóa mã hóa

Việc sở hữu SSH Key là bước đầu tiên để quản lý máy chủ một cách an toàn. Bước tiếp theo là bạn cần lựa chọn một nền tảng phù hợp để có thể khai thác tối đa tiềm năng của các dự án đòi hỏi hiệu năng cao. Dịch vụ VPS AMD của Vietnix có nền tảng được xây dựng trên sức mạnh xử lý của CPU AMD EPYC 7773X và tốc độ truy xuất từ ổ cứng NVMe Enterprise, đảm bảo hiệu suất vượt trội. Bên cạnh đó người dùng còn được hỗ trợ kỹ thuật 24/7 và chính sách hoàn tiền trong 30 ngày. Liên hệ ngay để được tư vấn chi tiết!

img sp vps premium 2

Khám phá dịch vụ vps amd tại vietnix ngay!

Máy chủ luôn ổn định, kiểm soát và quản trị hoàn toàn VPS!

Cơ chế hoạt động của xác thực bằng cặp khóa

1. Nguyên tắc xác thực

Cơ chế xác thực bằng SSH Key vận hành dựa trên nguyên tắc mật mã hóa bất đối xứng. Theo đó, một thông điệp được mã hóa bằng khóa công khai chỉ có thể được giải mã bởi khóa riêng tư tương ứng và ngược lại.

2. Quá trình kiểm tra

Khi người dùng (client) muốn kết nối đến máy chủ, máy khách sẽ gửi yêu cầu kèm theo chữ ký số được tạo ra từ Khóa riêng tư. Máy chủ, vốn đã lưu trữ sẵn khóa công khai tương ứng, sẽ sử dụng khóa này để giải mã và xác thực chữ ký. Nếu hai khóa khớp với nhau một cách hoàn hảo, kết nối sẽ được cấp phép mà không cần mật khẩu.

Cơ chế hoạt động của xác thực bằng cặp khóa
Cơ chế hoạt động của xác thực bằng cặp khóa (Nguồn: Internet)

iconLưu ý

Bất kỳ ai có được tệp khóa này đều sẽ có toàn quyền truy cập vào máy chủ. Do đó, việc lưu trữ và bảo mật tệp khóa riêng tư là yêu cầu bắt buộc đối với người dùng.

Chuẩn bị môi trường trước khi tạo SSH Key

  1. Kiểm tra khóa hiện có: Trước khi tạo SSH key, bạn nên kiểm tra xem trên máy đã tồn tại cặp khóa SSH nào chưa. Việc này giúp tránh ghi đè lên các khóa đang được sử dụng cho các dịch vụ khác.
  2. Mở giao diện dòng lệnh: Để bắt đầu, bạn hãy mở ứng dụng dòng lệnh phù hợp với hệ điều hành của bạn:
Mở giao diện dòng lệnh
Mở giao diện dòng lệnh (Nguồn: Internet)

1. Tạo một RSA Key Pair

Đầu tiên, bạn hãy tạo một key pair trên máy client (có thể là máy tính riêng):

ssh-keygen -t rsa

2. Lưu trữ key và passphrase

Khi nhập lệnh Gen Key, bạn sẽ nhận được một số câu hỏi:

Enter file in which to save the key (/home/demo/.ssh/id_rsa):

Bạn nhấn Enter, lưu file vào user home (trong bài viết này sẽ sử dụng tên của user là demo để làm mẫu).

Enter passphrase (empty for no passphrase):

Passphrase được sử dụng hay không thì tùy thuộc vào người dùng. Việc sử dụng passphrase mang lại lợi ích là tính bảo mật của key không bao giờ được hiển thị với bất kỳ ai khác, cho dù nó được mã hóa như thế nào. Nếu private key được bảo vệ bằng passphrase rơi vào tay user trái phép, họ sẽ không thể đăng nhập vào các tài khoản cho đến khi tìm ra được passphrase. Tất nhiên, nhược điểm duy nhất của passphrase là phải nhập nó mỗi khi sử dụng key pair. Toàn bộ quá trình tạo key sẽ như sau:

ssh-keygen -t rsa
Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/demo/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/demo/.ssh/id_rsa.
Your public key has been saved in /home/demo/.ssh/id_rsa.pub.
The key fingerprint is:
4a:dd:0a:c6:35:4e:3f:ed:27:38:8c:74:44:4d:93:67 @a
The key's randomart image is:
+--[ RSA 2048]----+
|          .oo.   |
|         .  o.E  |
|        + .  o   |
|     . = = .     |
|      = S = .    |
|     o + = +     |
|      . o + o .  |
|           . o   |
|                 |
+-----------------+

Public key hiện nằm trong /home/demo/.ssh/id_rsa.pub. Private key (identification) hiện nằm trong /home/demo/.ssh/id_rsa.

3. Sao chép Public Key

Khi key pair đã được tạo, bạn hãy đặt public key trên server mà mình muốn sử dụng. Tiếp theo, bạn sao chép public key vào file authorized_keys của máy bằng lệnh ssh-copy-id và đảm bảo thay thế username và địa chỉ IP như mẫu bên dưới.

ssh-copy-id demo@198.51.100.0

Nếu sử dụng Mac, ssh-copy-id sẽ không được cài đặt trên hệ thống. Tuy nhiên bạn có thể cài đặt bằng Homebrew:

brew install ssh-copy-id

Ngoài ra, bạn có thể dán các key bằng SSH:

cat ~/.ssh/id_rsa.pub | ssh demo@198.51.100.0 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >>  ~/.ssh/authorized_keys"

Cho dù chọn sử dụng lệnh nào thì các dòng sau sẽ vẫn hiển thị:

The authenticity of host '198.51.100.0 (198.51.100.0)' can't be established.
RSA key fingerprint is b1:2d:33:67:ce:35:4d:5f:f3:a8:cd:c0:c4:48:86:12.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '198.51.100.0' (RSA) to the list of known hosts.
user@198.51.100.0's password:

Thông báo này đảm bảo rằng không có extra key nào được thêm vô. Bây giờ bạn hãy tiếp tục và đăng nhập vào user profile mà không cần phải nhập mật khẩu. Tuy nhiên, nếu bạn đặt passphrase khi tạo SSH key, sẽ có yêu cầu nhập passphrase tại thời điểm đó (cũng như cho mọi lần đăng nhập kế tiếp).

4. Vô hiệu hóa mật khẩu cho root login

Khi đã sao chép các SSH Key vào server của mình và đảm bảo rằng có thể đăng nhập bằng SSH Key, bạn hãy hạn chế root login thành chỉ có thể đăng nhập thông qua SSH Key. Để thực hiện việc này, bạn mở file SSH config:

sudo nano /etc/ssh/sshd_config

Trong file đó, bạn hãy tìm dòng PermitRootLogin và sửa đổi nó như bên dưới để đảm bảo rằng user chỉ có thể sử dụng SSH Key:

/etc/ssh/sshd_config
PermitRootLogin without-password

Bạn lưu và đóng file khi đã hoàn tất. Để lưu những thay đổi này, bạn dùng lệnh sau:

sudo systemctl reload sshd.service

1. Kiểm tra OpenSSH Client được cài đặt chưa

Đầu tiên, bạn kiểm tra xem bạn đã cài đặt OpenSSH client chưa:

1. Bạn tiến hành mở panel Settings, nhấp vào Apps.

2. Dưới heading Apps and Features, bạn click vào Optional Features.

Bạn click vào Optional Features
Bạn click vào Optional Features

3. Bạn lướt xuống list để tìm xem OpenSSH Client được liệt kê chưa:

  • Nếu chưa, bạn click vào dấu + bên cạnh Add a feature.
  • Tiếp theo, bạn trượt xuống dưới danh sách để tìm và chọn OpenSSH Client.
  • Cuối cùng, bạn nhấp vào Install.
Sau đó bạn tìm và chọn OpenSSH Client
Sau đó bạn tìm và chọn OpenSSH Client

2. Mở Command Prompt

Bạn nhấp vào Windows key > Nhập cmd. Dưới phần Best Match, bạn nhấn chuột phải vào Command Prompt. Sau đó bạn tiến hành nhấn vào Run as Administrator.

Bạn nnhấn vào Run as Administrator
Bạn nhấn vào Run as Administrator

Nếu được thông báo, bạn chọn Yes ở trong phần pop-up Do you want to allow this app to make changes to your device?

3. Sử dụng OpenSSH để tạo SSH Key Pair

1. Trong command prompt, bạn nhập:

ssh-keygen

2. Theo mặc định, hệ thống sẽ lưu key vào C:\Users\your_username\.ssh\id_rsa. Bạn có thể sử dụng tên mặc định, hoặc chọn các tên khác theo ý mình. Việc này có thể giúp phân biệt các key khác nhau, nếu bạn dùng nhiều key pair. Để lựa chọn các tùy chọn mặc định, bạn chọn Enter:

Kích hoạt SSH Key Pair
Kích hoạt SSH Key Pair

iconLưu ý

Nếu file có tên tương tự đã tồn tại, bạn sẽ được hỏi xem có muốn ghi đè file đó không.

3. Sau đó bạn sẽ được yêu cầu enter a passphrase, bạn nhấn Enter để bỏ qua bước này. Hệ thống sẽ kích hoạt key pair, rồi hiển thị key fingerprint và một randomart image. Bạn mở file browser của mình. Tiếp theo, bạn điều hướng đến C:\Users\your_username\.ssh. Bạn sẽ thấy có hai file, nhận dạng sẽ được lưu trong file id_rsa và public key được gắn nhãn id_rsa.pub. Đây chính là SSH key pair của bạn.

Đây chính là SSH key pair của bạn.
Đây chính là SSH key pair của bạn.

iconLưu ý

Thông thường, public key sẽ được xác định bằng phần mở rộng .pub. Bạn có thể sử dụng Notepad để xem nội dung của private và public key.

1. Cài đặt PuTTY

1. Bạn đi đến trang của developer, download trình cài đặt PuTTY tại:

  • https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

2. Tiếp theo, bạn nháy đúp chuột vào file đã download, rồi làm theo trình cài đặt wizard để cấu hình, trừ khi bạn có nhu cầu cụ thể để thay đổi. Sau đó bạn click vào Next rồi đi đến màn hình tiếp theo.

Tạo SSH Key Windows 10 bằng PuTTY
Tạo SSH Key Windows 10 bằng PuTTY

3. Bạn chọn cài đặt product features PuTTY, sau đó chọn các cài đặt mặc định nếu bạn không có nhu cầu khác. Tiếp đến, bạn click vào Next để sang màn hình tiếp theo.

Hướng dẫn kích hoạt SSH key
Hướng dẫn kích hoạt SSH key

4. Khi quá trình hoàn tất, bạn chọn Finish để thoát trình cài đặt wizard.

2. Chạy PuTTY SSH Key Generator

  1. Bạn nhấp vào Windows key.
  2. Tiếp theo, bạn nhập vào puttygen.
  3. Dưới phần Best Match, bạn nhấp chuột phải vào PuTTYgen.
  4. Sau đó bạn click Run as administrator.
  5. Nếu được thông báo, bạn click Yes trên pop-up Do you want to allow this app to make changes to your device? 

3. Sử dụng PuTTY để tạo SSH Key Pair

Quá trình dưới đây sẽ kích hoạt key RSA, một loại thuật toán mã hoá cổ điển và được sử dụng rộng rãi. Ngoài ra, công cụ keygen PuTTY cũng cung cấp một số thuật toán khác như – DSA, ECDSA, Ed22519, SSH-1 (RSA). Nếu bạn yêu cầu một thuật toán mã hóa khác, hãy tùy chọn thuật toán mong muốn trong heading Parameters trước khi kích hoạt key pair.

1. Trong cửa sổ PuTTY Key Generator, bạn click vào Generate. Tiếp theo, bạn di chuyển con chuột quanh các box xám để lấp đầy thanh màu xanh.

sử dụng puTTy để tạo SSH Key Pair
Sử dụng puTTy để tạo SSH Key Pair

2. Bạn tiến hành lưu lại public key:

  • Bạn click vào nút có nhãn Save public key.
  • Tiếp theo, bạn chọn một địa điểm để lưu key.
  • Cuối cùng, bạn đặt tên key (ví dụ như putty_key.pub)
public key generator
Public key generator

3. Cuối cùng, bạn lưu lại private key:

  • Bạn nhấp vào menu Conversions ở phía trên > Chọn Export OpenSSH Key
  • Bạn sẽ được yêu cầu xem có muốn lưu key mà không có passphrase không, lúc này bạn chọn Yes.
  • Bạn chọn địa điểm lưu key (thường là cùng folder với public key). Cuối cùng, bạn đặt tên key (ví dụ: putty_key).

Vietnix – Nhà cung cấp dịch vụ hosting, VPS tốc độ cao, bảo mật tốt

Vietnix là một trong những nhà cung cấp hạ tầng lưu trữ hàng đầu tại Việt Nam, mang đến hệ sinh thái dịch vụ toàn diện gồm premium hosting, thuê máy chủ ảoEnterprise Cloud đáp ứng nhu cầu từ cá nhân đến doanh nghiệp. Với nền tảng phần cứng hiện đại sử dụng CPU AMD EPYC và ổ cứng NVMe Enterprise, Vietnix đảm bảo hiệu năng vượt trội, tốc độ truy xuất dữ liệu nhanh và độ ổn định cao. Bên cạnh đó, đội ngũ kỹ thuật hỗ trợ 24/7 giúp khách hàng yên tâm vận hành hệ thống. Liên hệ ngay để được tư vấn dịch vụ phù hợp!

Thông tin liên hệ:

  • Website: https://vietnix.vn/
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh

Câu hỏi thường gặp

Cơ chế xác thực bằng SSH Key hoạt động như thế nào?

Cơ chế xác thực bằng SSH Key dựa trên mã hóa bất đối xứng. Khi bạn tạo SSH key trên máy tính (hoặc tạo SSH key trên Windows), hệ thống sẽ sinh ra hai tệp: Private Key và Public Key. Khi người dùng gửi yêu cầu truy cập, máy khách sẽ dùng Private Key để tạo chữ ký số và gửi đến máy chủ. Máy chủ sử dụng Public Key đã lưu sẵn để kiểm tra.
Nếu hai khóa trùng khớp, người dùng được cấp phép truy cập mà không cần mật khẩu. Đây là cách tạo SSH key và xác thực bảo mật phổ biến nhất, giúp ngăn chặn rủi ro dò mật khẩu hay xâm nhập trái phép.

Làm thế nào để sao chép Public Key lên máy chủ?

Sau khi tạo SSH key thành công, người dùng có thể sử dụng lệnh ssh-copy-id hoặc mở file .pub để sao chép nội dung khóa công khai vào file authorized_keys trên server.
Đây là bước quan trọng trong quá trình add SSH key, tức là thêm khóa công khai vào máy chủ để thiết lập quyền truy cập an toàn. Khi hoàn tất, bạn có thể đăng nhập mà không cần mật khẩu, chỉ bằng SSH key vừa tạo.

Vì sao cần vô hiệu hóa đăng nhập bằng mật khẩu cho root?

Việc vô hiệu hóa đăng nhập root bằng mật khẩu và chỉ cho phép xác thực qua SSH Key giúp tránh mọi nguy cơ bị dò mật khẩu, bảo vệ tuyệt đối quyền truy cập quan trọng nhất trên máy chủ. Người dùng cần chỉnh sửa cấu hình SSH, áp dụng thay đổi để tăng mức độ an toàn tổng thể.

Qua những giải đáp chi tiết về SSH Key, hy vọng bạn đã hiểu rõ vai trò quan trọng của việc xác thực bảo mật khi quản lý máy chủ từ xa, nắm vững cơ chế hoạt động của SSH Key, cũng như các bước triển khai và lưu ý bảo mật cần thiết. Việc sử dụng SSH Key không chỉ tăng cường an toàn mà còn đơn giản hóa quy trình truy cập, giúp chủ động phòng ngừa nguy cơ bị tấn công, đảm bảo hệ thống VPS của bạn luôn được bảo vệ tối ưu trong môi trường số hiện đại.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
1 Comment
Mới nhất
Cũ nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận
ABC
Khách
ABC
1 năm trước

vậy vô hiệu hóa ssh keys sao nhỉ

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Icon tab

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

Vector

PHẦN CỨNG MẠNH MẼ

Vector

HỖ TRỢ 24/7

Vector
ĐĂNG KÝ NGAYGroup icon
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

icon popup single post

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG