thường thì trên windows chúng ta sẽ sử dụng 1 phần mềm ví dụ putty để remote lên server hoặc vps. Nhưng nếu bạn sử dụng mac thì bạn có thể sử dụng trực tiếp terminal để remote. chi tiết sẽ được trình bày trong bài viết dưới đây.

cách thêm ssh vào máy mac để remote lên vps

2020-12-30 2166 lượt xem

SSH là gì?

ssh là 1 trong nhiều phương thức chứng thực người dùng truy cập bằng cách đối chiếu giữa một key cá nhân (Private Key) và key công khai (Public Key). Private key và Public key luôn có liên hệ chặt chẽ với nhau để nó có thể nhận diện lẫn nhau. nhờ đó server khi sử dụng public key lưu trên máy chủ, thì bạn sử dụng private key ở client để xác thực thay vì sử dụng password.

Khi tạo ra một SSH Key, bạn cần biết sẽ có 3 thành phần quan trọng như sau:

  • Public Key (dạng file và string) – Bạn sẽ copy ký tự key này sẽ bỏ vào file ~/.ssh/authorized_keys trên server của bạn.

  • Private Key (dạng file và string) – Bạn sẽ lưu file này vào máy tính, sau đó sẽ thiết lập cho PuTTY, WinSCP, MobaXterm,..để có thể login.

  • Keypharse (dạng string, cần ghi nhớ) – Mật khẩu để mở private key, khi đăng nhập vào server nó sẽ hỏi cái này.

Tạo SSH key trong máy mac

kiểm tra bạn đã tạo ssh chưa

ls -al ~/.ssh

tạo public/private ssh trong mac - Generating public/private rsa key pair.

ssh-keygen -t rsa

kết quả: 

Sau đó nó sẽ hỏi có muốn tạo keyphare không? (keyphare là mật khẩu để mở private key, khi đăng nhập vào server sẽ hỏi). Bạn nên nhập passphrase vào. 

Như vậy là thành công. 

Nếu bạn muốn Copy SSH key vào Clipborad nhập lệnh sau: 

pbcopy < ~/.ssh/id_rsa.pub

Sau khi tạo xong bạn lấy file public key đưa lên server hoặc vps.

Muốn login truy cập server chỉ cần gõ ssh root@(địa chỉ ip hoăc địa chỉ server) ví dụ của mình ip là 108.61.126.160

trường hợp bạn có sẵn ssh private và muốn remote bằng mac

khi bạn luân chuyển máy và máy mac của bạn cần add thêm ssh vào để remote lên server thì bạn cần add private key vào SSH agent

Thêm private-key vào SSH-agent

Trên máy local:

ssh-add /PATH/TO/YOUR/PRIVATE/KEY

ssh-add là câu lệnh để thêm SSH private-keys vào SSH authentication agent, gọi là ssh-agent để quản lý việc truy cập vào các máy tính sử dụng các khóa private.

Khi bạn đã thêm khóa vào ssh-agent thì lúc truy cập bạn không cần phải khai báo thêm khóa này.

chú ý: nếu bạn dính lỗi này : 

Permissions 0664 for '/Users/hero/.ssh/id_rsa__old.ppk' are too open.

It is required that your private key files are NOT accessible by others.

This private key will be ignored.

bạn thay đổi quyền thành 600 như sau: 

chmod 600 /PATH/TO/YOUR/PRIVATE/KEY

Phần public của khóa private được lưu vào ssh-agent phải được đặt trong file : ~/.ssh/authorized_keys .

Thêm public-key vào server

Bạn có thể sử dụng một trong hai câu lệnh sau:

Cách 1 (Thêm public-key vào server):

cat ~/.ssh/your-key.pub | ssh username@host "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys"

Cách 2 (Thêm public-key vào server):

ssh-copy-id -i ~/.ssh/your-key.pub username@host

 Cách 3 là bạn có thể truy cập trực tiếp vào máy bằng password trước và sau đó thêm key.

Vậy là bạn đã có thể truy cập vào server thành công sử dụng xác thực khóa trên SSH !

bài viết trong chủ đề