Cách tạo khóa SSH trên Windows, Mac và Linux

Nếu bạn đang muốn kết nối từ xa với máy tính, một trong những phương pháp tốt nhất và an toàn nhất là sử dụng kết nối Secure Shell ( SSH ). Điều này tạo ra một kết nối được mã hóa giữa bạn và máy chủ từ xa, đảm bảo rằng dữ liệu đang được gửi đi không thể bị chặn hoặc giám sát theo bất kỳ cách nào. 

Bạn cũng có thể sử dụng SSH làm đường hầm cho các lưu lượng khác, chẳng hạn như kết nối VNC an toàn qua SSH(secure VNC connection over SSH) . Một cách bạn có thể làm cho các kết nối SSH của mình an toàn hơn nữa là sử dụng khóa (SSH)SSH , khóa này thay thế mật khẩu dễ bẻ khóa bằng khóa mã hóa 617 chữ số. Đây là cách tạo khóa SSH mới trên máy tính (SSH)Windows , MacLinux .

Phím SSH là gì?(What Are SSH Keys?)

Khóa SSH(SSH) cho phép bạn tạo kết nối an toàn đến máy chủ hoặc PC từ xa mà không cần sử dụng mật khẩu bằng giao thức Secure Shell . Các khóa SSH(SSH) được tạo theo cặp, với một khóa riêng tư và một khóa công khai vẫn được kết nối và không thể sử dụng một khóa mà không sử dụng khóa còn lại.

Trong hầu hết các trường hợp, khóa công khai vẫn nằm trên PC hoặc máy chủ từ xa để mã hóa kết nối. Sau đó, khóa riêng tư được sử dụng để xác thực với thiết bị từ xa đó, cho phép bạn kết nối và sử dụng nó mà không cần cung cấp mật khẩu. 

(Public)Khóa SSH (SSH)công khai và riêng tư là hai phần của cùng một toàn bộ, không có khóa riêng tư, bạn không thể xác thực bằng khóa công khai và thiết lập kết nối, và nếu không có khóa công khai, khóa riêng sẽ vô dụng. Bạn có thể tạo khóa SSH mới trên Windows , MacLinux , sau đó chuyển khóa công khai(public ) sang thiết bị từ xa.

Sau đó, khóa riêng tư(private) được lưu trữ an toàn trên PC hoặc Mac của bạn . Điều quan trọng là phải lưu bản sao của khóa này một cách an toàn (ví dụ: sử dụng trình quản lý mật khẩu(password manager) ). Nếu bạn làm mất nó, bạn có thể không thiết lập lại được các kết nối từ xa của mình. 

Điều quan trọng nữa là không chia sẻ khóa công khai hoặc khóa riêng tư của bạn với người khác, mà đặc biệt là khóa cá nhân của bạn (hoặc cụm mật khẩu có thể giải mã nó). Với khóa cá nhân theo ý của họ, người dùng giả mạo sẽ có thể thiết lập kết nối với thiết bị từ xa của bạn mà không yêu cầu bất kỳ xác thực bổ sung nào.

Cách sử dụng Windows để tạo khóa SSH(How to Use Windows to Generate SSH Keys)

Bạn có thể sử dụng Windows để tạo khóa SSH bằng ứng dụng khách (SSH)OpenSSH tích hợp sẵn hoặc ứng dụng khách (OpenSSH)PuTTY của bên thứ ba, phổ biến . Nếu bạn muốn sử dụng giao diện người dùng đồ họa ( GUI ) để tạo các khóa SSH mới, thì (SSH)PuTTY là lựa chọn tốt nhất. Nếu bạn muốn sử dụng phần mềm tích hợp sẵn, thì hãy sử dụng OpenSSH (thông qua Windows PowerShell ) để thay thế.

Sử dụng OpenSSH qua Windows PowerShell(Using OpenSSH via Windows PowerShell)

  1. Nếu bạn muốn sử dụng OpenSSH , trước tiên bạn cần kiểm tra xem nó đã được bật chưa. Để thực hiện việc này, hãy nhấp chuột phải vào menu Bắt đầu(Start) và chọn Cài đặt(Settings) .

  1. Trong menu Cài đặt(Settings) , chọn Ứng dụng(Apps ) > Ứng dụng & tính năng(Apps & features ) > Tính năng tùy chọn(Optional features) .

  1. Xem qua menu Các tính năng tùy chọn(Optional features) cho mục nhập OpenSSH Client . Nếu nó không có ở đó, hãy chọn Thêm tính năng(Add a feature) .

  1. Chọn tùy chọn OpenSSH Client , sau đó chọn Install để cài đặt nó. Chờ một chút để Windows cài đặt phần mềm cần thiết. Nếu bạn muốn sử dụng SSH để kết nối với PC Windows của mình, hãy nhớ chọn tùy chọn (Windows)OpenSSH Server .

  1. Với OpenSSH được cài đặt, nhấp chuột phải vào menu Bắt đầu(Start) và chọn Windows PowerShell (Quản trị viên)(Windows PowerShell (Admin)) .

  1. Trong cửa sổ Windows PowerShell mới , nhập ssh-keygen và chọn phím enter . Bạn có thể nhập vị trí lưu mới và tên tệp cho khóa của mình tại thời điểm này hoặc chỉ cần nhấn enter lần thứ hai để lưu tệp của bạn trong thư mục C:\Users\user\.ssh\ (thay thế người dùng(user) bằng thư mục người dùng của riêng bạn).

    Công cụ ssh-keygen sẽ sử dụng mã hóa RSA theo mặc định, nhưng bạn có thể chuyển sang hình thức mã hóa khác bằng cách nhập phương thức (method )ssh-keygen -t , thay thế phương pháp(method) bằng một trong các tùy chọn mã hóa có sẵn ( dsa, ecdsa, ed25519, rsa ).

  1. Tiếp theo, bạn sẽ được yêu cầu nhập cụm mật khẩu. Thao tác này mã hóa khóa riêng tư của bạn trên PC và thường được khuyến nghị, mặc dù không bắt buộc. Bạn có thể sử dụng một từ hoặc cụm từ dễ nhớ, nhưng bạn cũng có thể sử dụng mật khẩu an toàn(use a secure password) tại đây. Nhập(Type) cụm mật khẩu của bạn và chọn enter để xác nhận hoặc chỉ cần để trống và chọn enter để trống.

  1. Sau khi bạn đã thêm cụm mật khẩu của mình, Windows sẽ tạo các khóa cần thiết trong thư mục C:\Users\user\.ssh\ (thay thế người dùng(user) bằng tên thư mục người dùng của riêng bạn). Nếu bạn chọn sử dụng tên tệp mặc định, thì tệp id_rsa.pub là khóa công khai của bạn, trong khi id_rsa (không có phần mở rộng) là khóa riêng tư của bạn. Khi bạn đã tạo khóa của mình, bạn sẽ cần phải di chuyển khóa công khai của mình key ( id_rsa.pub ) vào thư mục .ssh(.ssh) trên PC, Mac hoặc máy chủ từ xa của bạn.

Sử dụng PuTTY(Using PuTTY)

Ứng dụng khách PuTTY SSH(PuTTY SSH) nổi tiếng là ứng dụng khách mặc định cho hầu hết người dùng Windows . Nó bao gồm một số công cụ khác để thiết lập kết nối SSH , bao gồm (SSH)PuTTYgen , một công cụ để tạo khóa SSH mới .

  1. Để sử dụng PuTTY để tạo khóa SSH của bạn, hãy (SSH)tải xuống PuTTY cho PC của bạn(download PuTTY for your PC) và cài đặt nó. Sau khi cài đặt, khởi chạy PuTTYgen ( công cụ tạo SSH đi kèm ) từ menu Bắt đầu(Start) , chọn RSA từ Loại khóa để tạo(Type of key to generate) tùy chọn, sau đó chọn Tạo(Generate) . Bạn cũng có thể chọn một trong các tùy chọn mã hóa thay thế, nhưng các bước bên dưới có thể khác nhau.

  1. Một phần của quá trình tạo phím của bạn là di chuyển chuột của bạn một cách ngẫu nhiên. Sử dụng chuột hoặc bàn di chuột của bạn để thực hiện việc này trong khu vực ngay bên dưới thanh tiến trình cho đến khi cặp phím được tạo.

  1. Nếu bạn muốn thêm cụm mật khẩu vào các khóa của mình, hãy nhập cụm mật khẩu này vào các hộp Cụm mật khẩu khóa(Key passphrase )Xác nhận cụm mật khẩu(Confirm passphrase) , sau đó chọn Lưu khóa công khai(Save public key)Lưu khóa cá nhân(Save private key) để lưu khóa của bạn. Bạn cũng có thể chọn văn bản trong Khóa công khai để dán vào hộp OpenSSH allow_keys(Public key for pasting into OpenSSH authorized_keys ) , sau đó nhấp chuột phải và chọn Sao chép(Copy) để sao chép và dán vào tệp theo cách thủ công.

  1. Với các khóa của bạn đã được lưu, sau đó bạn có thể di chuyển khóa công khai(public key ) sang PC, Mac hoặc máy chủ từ xa của mình. Đối với khóa riêng tư(private key) của bạn , bạn có thể cần phải chuyển khóa này vào thư mục C:\Users\user\.ssh\ (thay thế người dùng bằng thư mục người dùng chính xác của bạn) để sử dụng nó với ứng dụng khách (user )SSH ưa thích của bạn .

Cách tạo khóa SSH trên Linux hoặc Mac(How to Generate SSH Keys on Linux or Mac)

OpenSSH là bộ công cụ tiêu chuẩn vàng để quản lý SSH và cũng giống như phiên bản Windows , công cụ ssh-keygen vẫn là cách tốt nhất để tạo khóa SSH mới trên máy tính Mac hoặc Linux .

Do đó, các công cụ GUI để tạo khóa SSH rất hiếm và thường không được khuyến nghị. Vì các công cụ OpenSSH được bao gồm với tất cả các máy tính Mac và với hầu hết tất cả các bản phân phối Linux(all Linux distributions) , các bước dưới đây sẽ hoạt động cho cả hai nền tảng.

  1. Để bắt đầu, hãy mở một cửa sổ đầu cuối mới trên PC hoặc Mac chạy Linux của bạn . Nếu bạn muốn sử dụng máy Mac(Mac) của mình để tạo khóa SSH , bạn có thể khởi chạy ứng dụng Terminal bằng (Terminal)Launchpad . Các bước để mở một thiết bị đầu cuối mới trên PC Linux sẽ khác nhau, tùy thuộc vào bản phân phối của bạn.(Linux)

  1. Trong cửa sổ đầu cuối mới trên PC hoặc Mac Linux của bạn , hãy nhập ssh-keygen và chọn phím enter . Như với ssh-keygen trên Windows , phiên bản LinuxMac mặc định sử dụng mã hóa RSA . Nếu bạn muốn sử dụng hình thức mã hóa khác, hãy nhập phương thức ssh-keygen -t,(ssh-keygen -t method, ) thay thế phương thức(method) bằng hình thức mã hóa bạn muốn sử dụng (ví dụ: dsa, ecdsa, ed25519, rsa ).

  1. Tiếp theo, bạn cần xác định nơi bạn muốn lưu các khóa SSH mới - tên và vị trí tệp mặc định sẽ được hiển thị trong dấu ngoặc tròn trong cửa sổ đầu cuối. Nếu bạn muốn lưu khóa của mình ở một nơi khác và với một tên tệp khác, hãy nhập vị trí mới và tên tệp tại đây, sau đó chọn phím enter .

  1. Tiếp theo, bạn cần nhập cụm mật khẩu để mã hóa khóa cá nhân của mình (nếu bạn muốn sử dụng). Nhập cụm mật khẩu của bạn hai lần hoặc chọn enter hai lần để để trống cụm mật khẩu (mặc dù điều này không được khuyến nghị).

  1. Tại thời điểm này, các khóa SSH của bạn sẽ được tạo ở vị trí lưu mà bạn đã chỉ định và sử dụng tên tệp id_rsa mặc định cho mã hóa RSA ( id_rsa.pub cho khóa công khai và id_rsa cho khóa cá nhân). Bạn cần phải di chuyển khóa công khai ( id_rsa.pub ) sang PC, Mac hoặc máy chủ từ xa của mình để có thể thiết lập kết nối bằng SSH .

Tạo kết nối an toàn bằng SSH(Making Secure Connections Using SSH)

Sau khi bạn đã tạo khóa SSH , bạn cần đảm bảo sao chép khóa công khai vào PC, (SSH)Mac hoặc máy chủ từ xa của mình. Khóa này liên kết với khóa cá nhân của bạn, cho phép máy khách SSH ưa thích của bạn thiết lập các kết nối SSH an toàn mà không cần mật khẩu thông thường. Ví dụ: bạn có thể sử dụng SSH để kết nối từ xa với máy Mac khác(use SSH to connect to another Mac remotely) .

Kết nối SSH an toàn(Secure SSH) cũng có thể giúp bạn đi qua tường lửa của trường học hoặc nơi làm việc(get around a school or workplace firewall) bằng cách sử dụng đường hầm SSH . Bạn cũng có thể sử dụng SSH để kết nối với (và cập nhật) Raspberry Pi(connect to (and update) a Raspberry Pi) hoặc các PC và máy chủ dựa trên Linux khác. Tuy nhiên, bạn cần đảm bảo rằng bạn đã bật máy chủ OpenSSH nếu bạn muốn thực hiện việc này trên Windows 10 .



About the author

Tôi là một kỹ sư phần cứng với hơn 10 năm kinh nghiệm trong lĩnh vực này. Tôi chuyên về bộ điều khiển và cáp USB, cũng như nâng cấp BIOS và hỗ trợ ACPI. Trong thời gian rảnh rỗi, tôi cũng thích viết blog về các chủ đề khác nhau liên quan đến công nghệ và kỹ thuật.



Related posts