Hướng dẫn tạo SSH Key để đăng nhập server an toàn

shape
shape

1. Giới thiệu

Trong thế giới công nghệ thông tin ngày nay, việc bảo vệ dữ liệu và thông tin cá nhân trở nên quan trọng hơn bao giờ hết. Truy cập vào một server thông qua phương tiện mạng Internet không chỉ yêu cầu tính xác thực mà còn đòi hỏi tính bảo mật cao. Trong bài viết này, chúng ta sẽ tìm hiểu về SSH Key - một phương tiện xác thực và bảo mật thông tin được sử dụng phổ biến cho việc truy cập vào các server từ xa.

2. SSH Key là gì?

SSH Key (Secure Shell Key) là một cặp khóa mật mã được sử dụng trong giao thức truyền tải dữ liệu SSH để xác thực người dùng và mã hóa thông tin truyền đi. Cặp khóa bao gồm Private Key (khóa riêng) và Public Key (khóa công khai), và chúng giúp tăng cường bảo mật khi truy cập vào các hệ thống từ xa.

3. Chuẩn bị trước khi tạo SSH Key

Trước khi tạo SSH Key, bạn cần chuẩn bị một số điều sau:

  • Một máy tính hoặc máy chủ đang chạy hệ điều hành hỗ trợ SSH.
  • Một quyền truy cập đủ để tạo và quản lý SSH Key trên máy tính hoặc máy chủ.
  • Kiến thức cơ bản về việc sử dụng SSH và quản lý khóa SSH.

Hãy đảm bảo rằng bạn đã thực hiện các bước chuẩn bị này trước khi bắt đầu tạo SSH Key.

Ở phần tiếp theo, chúng ta sẽ tìm hiểu cách tạo SSH Key trên máy local.

4. Tạo SSH Key trên máy local

Để tạo SSH Key trên máy local, bạn có thể thực hiện các bước sau:

  1. Mở terminal trên máy tính của bạn.
  2. Sử dụng lệnh ssh-keygen để tạo cặp khóa SSH. Lệnh này sẽ tạo ra cả Private Key và Public Key.
  3. Khi được yêu cầu, bạn có thể chọn đường dẫn lưu trữ khóa và cấu hình mật khẩu cho Private Key.

Việc tạo SSH Key sẽ tạo ra hai tập tin: id_rsa (Private Key) và id_rsa.pub (Public Key) được lưu trong thư mục ~/.ssh trên máy tính của bạn.

5. Các file SSH Key sau khi tạo

Sau khi tạo thành công, các file SSH Key trên máy local sẽ có các đặc điểm sau:

  • id_rsa: Đây là Private Key, nó chứa thông tin mật mã cần thực hiện xác thực.
  • id_rsa.pub: Đây là Public Key, nó dùng để xác thực người dùng trên server.

Lưu ý rằng bạn không bao giờ nên chia sẻ hoặc tiết lộ Private Key của mình với bất kỳ ai khác, và chỉ cần chia sẻ Public Key khi cần.

6. Copy Public Key lên Server

Để sao chép Public Key lên server, bạn có thể sử dụng lệnh ssh-copy-id. Cách thực hiện như sau:

  1. Mở terminal trên máy tính của bạn.
  2. Sử dụng lệnh ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_server để sao chép Public Key lên server.

Sau khi Public Key được sao chép thành công, bạn sẽ có thể đăng nhập vào server bằng SSH Key mà không cần nhập mật khẩu.

7. Đăng nhập server bằng SSH Key

Sau khi Public Key đã được sao chép lên server, bạn có thể đăng nhập vào server bằng SSH Key bằng cách thực hiện các bước sau:

  1. Mở terminal trên máy tính của bạn.
  2. Sử dụng lệnh ssh username@remote_server để kết nối đến server.
  3. Hệ thống sẽ yêu cầu xác thực bằng Private Key của bạn, sau đó bạn sẽ được đăng nhập vào server mà không cần mật khẩu.

Việc đăng nhập bằng SSH Key giúp tăng cường bảo mật và tiện lợi khi truy cập vào server từ xa.

8. Cấu hình SSH an toàn hơn (khuyến nghị)

Để cấu hình SSH an toàn hơn, bạn có thể áp dụng các biện pháp sau:

  • Đảm bảo rằng máy chủ SSH của bạn được cập nhật đầy đủ các bản vá bảo mật mới nhất.
  • Sử dụng cổng SSH không phải mặc định để tránh các cuộc tấn công từ brute-force.
  • Thực hiện kiểm tra và cấu hình các file cấu hình SSH (sshd_config) để hạn chế quyền truy cập và tăng cường bảo mật.
  • Sử dụng công nghệ 2-factor authentication để bảo vệ tài khoản SSH của bạn.

9. Quản lý nhiều SSH Key

Để quản lý nhiều SSH Key, bạn có thể thực hiện các phương pháp sau:

  • Lưu trữ các file khóa SSH ở các thư mục riêng biệt và đặt tên sao cho dễ nhận biết.
  • Sử dụng SSH Agent để quản lý và tự động xác thực khi đăng nhập vào các server.
  • Sử dụng ~/.ssh/config để cấu hình danh sách các khóa SSH và server tương ứng.

10. Kết luận

Trong bài viết này, chúng ta đã tìm hiểu về cách tạo và sử dụng SSH Key để đăng nhập vào server một cách bảo mật và tiện lợi. Việc sử dụng SSH Key không chỉ giúp tăng cường bảo mật mà còn nâng cao tính linh hoạt và hiệu quả trong việc quản lý truy cập vào các hệ thống từ xa. Hy vọng rằng những thông tin mà chúng ta đã trao đổi sẽ giúp bạn hiểu rõ hơn về cách thức hoạt động và ứng dụng của SSH Key vào thực tế.

Bài viết liên quan

Hướng dẫn kiểm tra băng thông trên Linux bằng Speedtest-cli

Hướng dẫn kiểm tra băng thông trên Linux bằng Speedtest-cli, đo tốc độ download, upload và ping nhằm đánh giá hiệu suất server chính xác, nhanh chóng

Hướng dẫn cài đặt CloudPanel trên Ubuntu

Hướng dẫn cấu hình CloudPanel trên Ubuntu 22.04

Hướng dẫn cài đặt và cấu hình kết nối mysql từ xa

Hướng dẫn cài đặt và cấu hình kết nối MySQL từ xa giúp quản lý cơ sở dữ liệu thuận tiện, giúp đảm bảo khả năng truy cập linh hoạt, duy trì mức độ bảo mật cần thiết

Hướng dẫn scan virus bằng ClamAV trên Linux

Hướng dẫn scan virus bằng ClamAV trên Linux giúp phát hiện malware, kiểm tra hệ thống và tăng cường bảo mật hiệu quả.