Làm sao để sử dụng SSH Key với người dùng không phải root?

su dung ssh key voi nguoi dung khong phai root 1

DataOnline cung cấp tính năng cho phép bạn cài đặt trước SSH Key khi tạo một máy chủ mới, để bạn có thể kết nối SSH đến máy chủ với tư cách người dùng root bằng Key. Tuy nhiên, Key này không hoạt động đối với người dùng không phải root. Hướng dẫn này mô tả ba phương pháp để sử dụng SSH Key với người dùng không phải root.

Yêu cầu

  • Một máy chủ Linux hoặc BSD từ DataOnline
  • Một tài khoản người dùng không phải root (trong hướng dẫn này là example_user)

Phương pháp 1: Tạo SSH Key mới

1. Kết nối SSH đến máy chủ với tư cách root.

2. Tạo SSH Key cho example_user.

# sudo -u example_user ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/example_user/.ssh/id_rsa):
Created directory '/home/example_user/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/example_user/.ssh/id_rsa
Your public key has been saved in /home/example_user/.ssh/id_rsa.pub

3. Lưu Private Key, /home/example_user/.ssh/id_rsa, vào máy tính của bạn. Ví dụ, bạn có thể sao chép nó vào thư mục .ssh cục bộ dưới dạng ~/.ssh/example_user_id_rsa.

4. Xóa Private Key khỏi máy chủ của bạn.

# rm /home/example_user/.ssh/id_rsa

5. Đổi tên Public Key thành authorized_keys.

# mv /home/example_user/.ssh/id_rsa.pub /home/example_user/.ssh/authorized_keys

Nếu bạn đã lưu Private Key dưới dạng ~/.ssh/example_user_id_rsa, bạn có thể kết nối SSH đến máy chủ với tư cách người dùng không phải root example_user:

$ ssh -i ~/.ssh/example_user_id_rsa example_user@192.0.2.123

ssh key

Phương pháp 2: Di chuyển SSH Key của root đến người dùng không phải root

Trong trường hợp này, chúng ta sẽ di chuyển Key của root đến example_user, đồng thời vô hiệu hóa quyền truy cập SSH Key của người dùng root.

  1. Kết nối SSH đến máy chủ với tư cách root.
  2. Tạo thư mục .ssh cho example_user.
# mkdir /home/example_user/.ssh
  1. Di chuyển Key của root đến thư mục SSH của example_user.
# mv /root/.ssh/authorized_keys /home/example_user/.ssh/
  1. Thay đổi quyền sở hữu của thư mục .ssh từ root sang example_user để OpenSSH có thể đọc nó.
# chown -R example_user:example_user /home/example_user/.ssh

Phương pháp 3: Sử dụng Startup Scripts

Nếu bạn đang triển khai nhiều máy chủ, bạn có thể sử dụng tính năng Startup Scripts của DataOnline để tự động tạo người dùng không phải root và di chuyển SSH Key.

Tạo Startup Script

  1. Chọn Scripts trong Cổng thông tin Khách hàng.
  2. Nhấp vào nút dấu cộng để tạo script mới.
  3. Dán script sau đây.
#!/bin/sh

useradd -m -s /bin/bash example_user
mv /root/.ssh /home/example_user/
chown -R example_user:example_user /home/example_user/.ssh

Bạn có thể triển khai các instance bằng script này cùng với một hoặc nhiều khóa SSH. Khi instance được triển khai, script sẽ tạo ra user example_user, sau đó chuyển các khóa SSH công khai từ root sang example_user. Bây giờ, bạn có thể SSH vào instance mới dưới quyền example_user với các khóa mà bạn đã cung cấp.

Thông tin thêm

Để biết thêm thông tin về quản lý SSH Key, xem các hướng dẫn khác:

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *