Chuyển đến nội dung chính
Kết nối máy chủ của bạn qua SSH để Alex (Cloud Engineer) có thể chạy lệnh shell trên host: kiểm tra dung lượng đĩa, theo dõi log, kiểm tra service và chẩn đoán sự cố trực tiếp trên máy chủ.

Điều kiện tiên quyết

Yêu cầuChi tiết
Host có thể tiếp cậnMáy chủ phải chấp nhận kết nối SSH đến từ CloudThinker trên cổng SSH
Người dùng đăng nhậpMột tài khoản người dùng có quyền truy cập shell
Authorized keyPhần khóa công khai của bạn phải có trong file ~/.ssh/authorized_keys của người dùng đó
Xác thực key được bậtsshd phải cho phép xác thực khóa công khai cho người dùng

Thiết lập

1

Chuẩn bị cặp khóa

Sử dụng cặp khóa hiện có hoặc tạo một cặp riêng cho CloudThinker:
ssh-keygen -t ed25519 -C "cloudthinker" -f ./cloudthinker_key
Lệnh này tạo ra cloudthinker_key (khóa riêng tư) và cloudthinker_key.pub (khóa công khai). Cả hai định dạng OpenSSH (-----BEGIN OPENSSH PRIVATE KEY-----) và PEM (-----BEGIN RSA/EC PRIVATE KEY-----) đều được chấp nhận, bao gồm các khóa ed25519, rsaecdsa.
2

Ủy quyền khóa công khai

Thêm khóa công khai vào authorized keys của người dùng đăng nhập trên máy chủ:
ssh-copy-id -i ./cloudthinker_key.pub user@server.example.com
# or append cloudthinker_key.pub manually to ~/.ssh/authorized_keys
3

Thêm kết nối trong CloudThinker

Điều hướng đến Connections → SSH và nhập:
  • Host: hostname hoặc IP, ví dụ: server.example.com hoặc 10.0.0.5
  • User: người dùng đăng nhập, ví dụ: ubuntu
  • Port: cổng SSH (tùy chọn, mặc định là 22)
  • Private key: toàn bộ khóa riêng tư, bao gồm các dòng BEGIN/END
  • Passphrase: tùy chọn, chỉ cần nếu khóa riêng tư có passphrase
CloudThinker kiểm tra kết nối và hiển thị trạng thái Connected khi thành công.

Xác minh host key

Lần đầu kết nối, CloudThinker ghi lại host key của máy chủ. Ở mỗi lần kết nối sau, hệ thống kiểm tra xem key có còn khớp không, để cảnh báo nếu danh tính máy chủ thay đổi bất ngờ. Nếu key thay đổi, kết nối dừng lại và CloudThinker hiển thị cả fingerprint đã tin cậy trước đó lẫn fingerprint mới. Điều này thường xảy ra sau khi rebuild máy chủ hoặc xoay vòng SSH key. Sau khi xác nhận thay đổi là dự kiến, chọn Trust new host key để tiếp tục.
Nếu bạn không dự kiến danh tính máy chủ thay đổi, đừng tin cậy key mới ngay. Thay đổi bất ngờ có thể là dấu hiệu kết nối đang bị chặn. Hãy xác minh fingerprint mới với máy chủ trước.

Chi tiết kết nối

TrườngMô tảVí dụ
HostHostname hoặc địa chỉ IP của máy chủ đíchserver.example.com
UserNgười dùng đăng nhập có quyền truy cập shellubuntu
PortCổng SSH22
Private keyToàn bộ khóa riêng tư bao gồm header BEGIN/END-----BEGIN OPENSSH PRIVATE KEY-----...
PassphrasePassphrase nếu khóa được mã hóa

Quyền bắt buộc

Alex chạy lệnh với quyền của người dùng đăng nhập. Không cần quyền root trừ khi agent cần chạy lệnh có đặc quyền.
Giới hạn người dùng đăng nhập chỉ với các lệnh và đường dẫn mà agent thực sự cần. Sử dụng tùy chọn command=from= trong authorized_keys để hạn chế những gì key có thể làm và từ đâu.

Khả năng của agent

Sau khi kết nối, Alex chạy lệnh shell trên máy chủ của bạn qua SSH.
Khả năngMô tả
Kiểm tra hệ thốngĐĩa, bộ nhớ, CPU, tiến trình và trạng thái service
Phân tích logĐọc và tìm kiếm log ứng dụng và hệ thống
Chẩn đoánĐiều tra lỗi, kết nối mạng và cấu hình trên host
Kiểm tra vận hànhChạy lệnh chỉ đọc để báo cáo trạng thái máy chủ

Xác minh kết nối

@alex #report show system uptime, disk usage, and top memory processes on the server

Ví dụ prompt

@alex #report check disk usage on all filesystems and flag anything above 80%
@alex #report tail /var/log/app/error.log and summarize the last 100 error lines
@alex #report show which processes are using the most CPU and memory right now
Các lệnh chạy với quyền của người dùng đăng nhập. Hãy giới hạn người dùng đó chỉ với những gì agent thực sự cần.

Khắc phục sự cố

  • Xác nhận khóa công khai có trong file ~/.ssh/authorized_keys của người dùng đăng nhập
  • Xác minh User khớp với tài khoản được ủy quyền cho key đó
  • Đảm bảo khóa riêng tư được dán đầy đủ, bao gồm các dòng BEGIN/END
  • Nếu key có passphrase, hãy cung cấp Passphrase
  • Xác minh HostPort chính xác
  • Xác nhận máy chủ chấp nhận SSH từ CloudThinker (firewall, security group hoặc allowlist)
  • Kiểm tra SSH daemon đang chạy và lắng nghe trên cổng đó
  • Thường xảy ra sau khi rebuild máy chủ hoặc xoay vòng SSH key: xem xét fingerprint mới và chọn Trust new host key
  • Nếu thay đổi là bất ngờ, hãy điều tra trước khi tin cậy lại
  • Kết nối hoạt động bình thường nhưng lệnh trả về exit code khác 0
  • Kiểm tra lệnh, quyền của người dùng và đường dẫn trên host từ xa

Bảo mật

  • Quyền tối thiểu — chỉ cấp các quyền mà agent cần cho trường hợp sử dụng của bạn; bắt đầu với quyền chỉ đọc và mở rộng sau.
  • Chỉ đọc theo mặc định — sử dụng thông tin xác thực chỉ đọc trừ khi bạn muốn agent thực hiện thay đổi qua kết nối này.
  • Xoay vòng thông tin xác thực — xoay vòng khóa và token theo lịch trình thông thường của bạn; CloudThinker sẽ lấy giá trị mới khi bạn cập nhật kết nối.
  • Thu hồi khi bàn giao — xóa thông tin xác thực tại nhà cung cấp khi bạn xóa một kết nối hoặc khi đồng nghiệp rời nhóm.
  • Khóa riêng biệt — tạo cặp khóa chỉ dùng cho CloudThinker để có thể thu hồi độc lập.
  • Xoay vòng và xác minh — thay thế khóa định kỳ và luôn xác nhận thay đổi host key trước khi tin cậy lại.

Liên quan

Alex Agent

Vận hành cloud engineering và hạ tầng
https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/kubernetes.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=7c03292954ff635a1994623a5c39971b

Kết nối Kubernetes

Kết nối cluster để phân tích và vận hành workload