Tạo Key (.ppk key và OpenSSH key) cho Windows và Macos truy cập Server

Mình thật sự rất bực khi chuyển từ Windows qua Macos nên phải viết bài này. Trước nay quen dùng Windows nên dùng Putty chỉ nhận file .ppk. Giờ qua Macos thì nó lại dùng Openssh key nên bài này sẽ hướng dẫn các bạn tạo 1 key vào được bằng cả 2 thằng.

Có nhiều hướng dẫn ở trên mạng là tạo Keygen bằng OpenSSH rồi chuyển đổi bằng lệnh putty, nhưng khổ là mình cũng không cài đặt được Putty lên Terminal của Macos nên phải vọc vạch thành cái hướng dẫn này.

Thay vì việc tạo key trên Macos rồi phải chuyển đổi về Putty Key thì tốt nhất chúng ta sẽ làm những bước như sau chắc chắn được.

Bước 1: Dùng máy Windows của bạn, cài đặt PuttyGen lên rồi tạo PublicKey và PrivateKey.

Link tải Puttygen: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Puttygen để tạo key
Nhấn Generate để tạo key của bạn

Sau khi tạo Key xong, bây giờ

Bước 2: Bạn nhấn vào Conversions và chọn Export Open SSH key (force new file format)

Xuất ra file OpenSSH key
Xuất Private Key của bạn ra chuẩn OpenSSH Key

Bước 3: Nhấn Save public key và Save Private key để sử dụng cho máy tính Windows của bạn.

Bước 4: Bạn copy nội dung public_key trong Puttygen ra cho vào 1 file .txt. Cái này nó giống cái public_key bạn save bước 3, nhưng mà khi add server thì chỉ dùng cái đoạn text này thôi, copy lưu lại sau đỡ phải sửa lại cái file public_key mà bạn đã lưu.

Xong rồi, bây giờ lên server (VPS) của bạn để thử xem máy Windows đã kết nối được chưa (nếu mà quên cách kết nối kiểu gì thì đọc lại cái này tạo key cho synology – làm tương tự nhé)

Bước 5: Quay trở lại chiếc máy chạy Macos của bạn. Bạn mở cái Terminal của MacOS lên, login với quyền root.

  • Gõ: login root
  • Mật khẩu: Nếu nó hỏi thì nhập mật khẩu của máy tính.

Bây giờ thì tạo file OpenSSH Key bằng lệnh này

ssh-keygen -t rsa

Thực tế mình gõ lệnh kia để Macos nó tạo ra id_rsa (Private key) và id_rsa.pub (Public key) của cái OpenSSH này thôi. Chúng ta sẽ sửa nó chữ đỡ phải gõ lại lệnh, làm như này nếu mà máy bạn lưu cái id_rsa ở đâu nó cũng show ra cho bạn luôn đó.

Bạn sẽ nhận được kết quả trông nó giống kiểu này

root:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
52:1a:75:17:9f:14:88:25:eb:97:00:90:8f:3d:cd:9d
The key's randomart image is:
+--[ RSA 4096]----+
|      .oo oo+oo. |
|      .. o.+.o . |
|      .+.oo. .o  |
|      .++.o.E.   |
|      o S.. o    |
|       .   .     |
|        tucao :D |
|                 |
|                 |
+-----------------+

Chú ý cái /root/.ssh/id_rsa ấy. Đó chính là được dẫn của id_rsa và id_rsa.pub của bạn.

Bước 6: Bạn thay nội dung của cái id_rsa bằng file bạn xuất ở bước 2. Còn cái id_rsa.pub bây giờ bạn lấy từ file .txt của bạn xuất ở bước 4.

Vậy là hoàn tất, bây giờ thử đăng nhập vào VPS như trên máy Windows. Với Macos thì private_key bạn đã khai báo sẵn rồi, nên không như putty mỗi lần vào lại phải chọn lại. Macos bây giờ cứ mở Terminal lên gõ ssh root@ip là nó vào bình thường luôn.

Tú không chuyên về Server, thực tế là mình không được học về cái này. Công việc của mình có các anh chị phụ trách họ rất giỏi. Do mình thích học để sau này có kiến thức nên hay tìm tòi cho thỏa đam mê. Mục tiêu chính là note lại để sau này mình làm nhanh hơn, Tú hy vọng có thể giúp được bạn nào đó và nếu có gì sai cũng hy vọng được góp ý để học hỏi thêm.

Chúc bạn thành công!

Leave a Reply