Thêm public key cho các người dùng khác có thể truy cập vào server

Các user bình thường (không cần quyền quản lý) có thể thêm public key cho một người dùng khác để họ có thể truy cập được vào server đó (dưới danh nghĩa là cùng 1 tên user đó).

Cách làm.

  • Login ssh bằng tài khoản user thường (đã có quyền access).
  • Đánh lệnh vi ~/.ssh/authorized_keys để soạn thảo file chứa các public keys của user được quyền access.
  • Copy public key của người dùng muốn thêm vào cuối file này (nhớ ấn chữ [i] để vào mode soạn thảo file trước khi soạn thảo và ấn [ESC] để thoát khỏi mode soạn thảo (vào mode command) sau khi soạn thảo).
  • lưu ý:
    • Mode command ấn chữ o để thêm một dòng trống sau dòng hiện tại để paste key mới vào.
    • Mode command ấn dd để xóa dòng hiện tại.
    • Mode command, ấn ZZ để lưu file và thoát.
  • lưu ý:
    • Có vẻ là lệnh :q nó không lưu đè được, hoặc là nếu cuối file không có dòng trống thì cái key cuối cùng cũng không được đọc thành công. Tốt nhất là

      • Tạo một dòng trống cuối file (đang ở dòng cuối cùng, ấn chữ o )
      • Soạn thảo xong thì vô mode command và ấn ZZ

 

Lưu ý:

Một số server đôi khi yêu cầu phải set chmod cho thư mục .ssh và file authorized_keys cho phù hợp thì mới chạy.

Ví dụ server centos chỗ mình thì cấu hình như sau là chạy (cấu hình dành cho user trieu_hh nhé).

drwx—— 2 trieu_hh trieu_hh 4096 Dec 3 2019 .ssh    (700)

VD Lệnh: [trieu_hh@xxx-xx-xx-xxx ~]$ sudo chmod 700 .ssh

-rw——- 1 trieu_hh trieu_hh 402 Dec 3 2019 authorized_keys  (600)

VD Lệnh: [trieu_hh@xxx-xx-xx-xxx .ssh]$ sudo chmod 600 authorized_keys

hoặc

.drwxr-xr-x 2 root root 4096 Dec 3 2019 .ssh

-rw-r–r– 1 root root 402 Dec 3 2019 authorized_keys

Nhớ là owner và group đều là root nhé. Còn cấu hình chmod khác thì mình không rõ, nhưng đã nhiều lần không chạy.

  • Để thay đổi owner và group thì dùng lệnh chown (hoặc sudo chown … )
  • Để thay đổi chmod thì dùng lệnh chmod hoặc sudo chmod
Bài viết liên quan