Hướng dẫn sử dụng SSH Key

Tác giả: 28/07/2022

1. SSH key là gì ?

SSH key có thể hiểu đơn giản là một kiểu xác thực đối chiếu giữa người dùng (Private Key) và Server/VPS (Public key).

Ta có thể coi Private Key như là chìa khóa, còn Public Key đóng vai trò là ổ khóa.

2. Lợi ích của việc sử dụng SSH Key ?

Thông thường một người dùng đăng nhập VPS thông qua username root và password của user đó. Người dùng có thể mất quyền truy cập vào VPS nếu bị quên hoặc để lộ mật khẩu hay bị dò tìm mật khẩu bởi Brute Force Attack. Do đó việc sử dụng SSH key đem lại khả năng bảo mật hơn rất nhiều so với việc sử dụng mật khẩu truyền thống.

3. Các thành phần của SSH Key ?

SSH Key gồm 3 thành phần sau:

  • Public Key: Lưu trữ tại Server đóng vai trò làm ổ khóa. Lưu tại file /root/.ssh/authorized_keys trên Server
  • Private Key: Lưu trữ tại máy tính cá nhận, đóng vai trò làm chìa khóa
  • Keypharse: Mật khẩu để mở Private Key. Nếu ta đặt mật khẩu cho Private Key thì khi SSH vào Server sẽ cần nhập Keypharse để có thể kết nối

4. Nguyên tắc hoạt động của SSH Key ?

Private Key và Public Key luôn có liên hệ chặt chẽ với nhau để có thể nhận diện lẫn nhau. Khi tạo một SSH Key, người dùng sẽ có 1 cặp Key này. Sau đó người dùng tiến hành tải Public Key lên máy chủ của mình. Còn Private Key sẽ lưu ở máy tính cá nhân.

Khi đăng nhập vào Server, người dùng sẽ gửi yêu cầu đăng nhập kèm theo Private Key lưu tại máy tính cá nhân đến Server. Server sẽ kiểm tra xem Private Key của người dùng có khớp với Public Key có trên Server hay không, nếu khớp thì bạn sẽ đăng nhập thành công.

5. Cách tạo SSH Key

5.1 Đối với Windows

Bước 1: Tạo SSH key bằng phần mềm MobaXterm

Bạn có thể sử dụng phần mềm MobaXterm để tạo SSH Key. Sau khi download và cài đặt phần mềm MobaXterm (Tại đây), ta làm theo hướng dẫn như hình bên dưới để tạo SSH Key.

anh1

 

Sau khi click vào generate như hình dưới, bạn di chuột quanh màn hình để tạo key.

anh2

 

 

Bước 2: Lưu lại Private Key.

Sau khi tạo xong ta click chuột vào Save private key như hình bên dưới để lưu lại Private key vừa được tạo ra. Trong bước này bạn có thể đặt mật khẩu cho Private Key (Key passphrase) nếu cần.

anh3

Bước 3: Copy Public Key và lưu vào một file tại máy tính.

Sau đó ta lưu lại đoạn Public Key với nội dung copy đoạn mã như ảnh bên dưới. Sau đó tiến hành upload Public Key lên server theo đường dẫn /root/.ssh/authorized_keys như hình mô tả.

anh4

5.2 Đối với Linux

Trên máy cài hệ điều hành Linux chạy lệnh ssh-keygen -t rsa

Sau khi bạn chạy lệnh trên màn hình sẽ hiện ra thông báo hiển thị đường dẫn lưu key được tạo ra, mặc đinh Public Key và Private Key sẽ được lưu trong đường dẫn /root/.ssh (Trong bước này bạn cũng có thể đặt mật khẩu cho Private Key nếu cần).

anh5

6. Cách upload Public Key lên Server

Ở bài viết này mình hướng dẫn các bạn SSH sử dụng Private Key từ máy tính Windows sang Server Linux.

Bước 1: Upload Public Key trực tiếp thông qua phần mềm MobaXterm.

anh6

Sau khi truy cập vào Server Linux bằng phần mềm MobaXterm. Ở khung bên trái ta tìm tới đường dẫn /root/.ssh và upload file Public key ở máy lên sau đó rename file Public key thành authorized_keys.

anh7

Tại thư mục /root/.ssh. Ta click vào biểu tượng mũi tên lên (Upload) để tải Public Key lên Server.

anh8

Chọn file Public Key cần upload từ máy tính cá nhân.

anh9

Bước 2: Rename file Public key thành authorized_keys.

Tiếp đến ta cần đổi tên Public key thành authorized_keys bằng cách click chuột phải vào file Public Key và chọn rename.

anh10

anh11

Bước 3: SSH tới Server bằng phần mềm MobaXterm kết hợp với Private Key.

Sau khi upload thành công Public key. Ta tiến hành kết nối SSH tới Server bằng phần mềm MobaXterm kết hợp với Private Key lưu trên máy tính. Trong ảnh bạn cần nhập địa chỉ IP của Server để có thể kết nối.

anh12

Chọn Private Key trên máy tính chọn Open sau đó chọn OK để kết nối đến server thông qua Private Key

anh13

Vậy là bạn đã truy cập server thành công thông qua Private Key mà không cần nhập mật khẩu.

7. Lời kết

Như vậy Nhân Hòa đã hướng dẫn các bạn tạo SSH Key và sử dụng SSH Key để truy cập vào Server/VPS.

Nếu trong quá trình thực hiện cài SSH Key theo hướng dẫn mà gặp phải vấn đề hoặc có điều gì thắc mắc thì bạn cứ để lại phản hồi ở bên dưới. Xin chào các bạn và hẹn gặp lại các bạn trong các bài viết sau tại wiki.nhanhoa.com.

 

Trả lời