Bộ tài liệu Hermes Agent · Phần 8 · Bảo mật & xử lý lỗi

Hermes Agent: bảo mật, sao lưu và xử lý lỗi

Agent có quyền chạy lệnh, đọc dữ liệu và tiêu tiền thay bạn. Tài liệu này giúp bạn khoá chặt từng cửa, có đường lui khi sự cố và tự sửa lỗi thường gặp. Tài liệu nội bộ Aduca, chia sẻ cho học viên.

Cập nhật 02/10/2026⏱ 45 phútChecklistNgười mới → Nâng cao

8 lớp bảo vệ có sẵn trong Hermes

Hermes thiết kế 8 lớp bảo vệ. Hiểu chúng giúp bạn biết lớp nào đã tự chạy, lớp nào cần bạn bật:

LớpNói dễ hiểuBạn cần làm
1. Phân quyền người dùngChỉ người trong danh sách được ra lệnh cho botĐặt danh sách ID (Phần 1, Bước 5)
2. Duyệt lệnh nguy hiểmLệnh xoá, sửa hệ thống… phải được bạn đồng ýGiữ mặc định hoặc chặt hơn (mục dưới)
3. An toàn ghi fileChặn ghi vào thư mục khoá SSH, file mã bí mật…Tự chạy
4. Cách ly trong containerLệnh chạy trong "hộp" riêng, không đụng máy thậtTuỳ chọn nâng cao
5. Lọc mã bí mật cho MCPCông cụ bên ngoài không thấy mã bí mật không liên quanTự chạy
6. Quét file ngữ cảnhPhát hiện câu lệnh độc hại cài trong file dự ánTự chạy
7. Cách ly phiênCuộc trò chuyện này không đọc được dữ liệu cuộc khácTự chạy
8. Làm sạch đầu vàoChặn chèn lệnh qua tham số thư mụcTự chạy
Profile không phải hộp cát. Các agent (profile) trên cùng VPS dùng chung quyền của tài khoản hermes. Agent nói chuyện với người lạ (khách hàng) phải bị tắt công cụ chạy lệnh — xem mục "Agent tiếp khách".

Nguồn: Security – Overview · Profiles

Ai được ra lệnh cho bot

Thứ tự Hermes kiểm tra: cho phép tất cả (nếu bật) → người đã duyệt ghép đôi → danh sách của từng nền tảng (TELEGRAM_ALLOWED_USERS) → danh sách chung → mặc định từ chối.

Cài đặtAduca khuyên
TELEGRAM_ALLOWED_USERSChỉ ID của chủ và người tin cậy
GATEWAY_ALLOW_ALL_USERSKhông bao giờ bật trên bot có quyền chạy lệnh
unauthorized_dm_behaviorignore cho bot nội bộ (người lạ nhắn không được trả lời); pair nếu muốn thêm người bằng mã

Khi để chế độ pair: người lạ nhắn bot sẽ nhận mã 8 ký tự; bạn tự quyết duyệt hay không trên VPS. Mã hết hạn sau 1 giờ.

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes pairing list                          # người đang chờ và đã được duyệt
hermes pairing approve telegram <MÃ 8 KÝ TỰ>  # duyệt (chỉ khi bạn biết người đó)
hermes pairing revoke telegram <ID>           # thu hồi quyền

Nguồn: Security – User Authorization · Security – DM Pairing

Duyệt lệnh nguy hiểm

Chế độCách hoạt độngDùng khi
smart (mặc định)Một AI phụ tự cho qua lệnh rủi ro thấp, tự chặn lệnh rõ ràng nguy hiểm, hỏi bạn khi không chắcHầu hết doanh nghiệp
manualLệnh thuộc nhóm nguy hiểm đều hỏi bạnMới dùng, muốn kiểm soát chặt; agent có quyền với tiền
offKhông hỏi gì (giống /yolo)Không dùng trên máy chủ thật
Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes config set approvals.mode manual   # chuyển sang hỏi mọi lệnh nguy hiểm

Mỗi tháng xem lại danh sách lệnh đã cho phép vĩnh viễn (mục command_allowlist):

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes config show | grep -A20 command_allowlist   # xoá dòng nào không còn cần bằng: hermes config edit
Đọc lệnh trước khi duyệt. Lệnh có rm, curl … | bash, gửi file ra địa chỉ lạ, đọc file .env → hỏi lại agent vì sao cần. Nội dung agent đọc từ web, email, bình luận có thể chứa "mệnh lệnh cài cắm".

Nguồn: Security – Dangerous Command Approval · Security – Hardline Blocklist · Security – Approval Timeout

Agent tiếp khách: tắt quyền chạy lệnh

Agent trả lời khách (Fanpage, Zalo, website) đọc tin nhắn của người lạ — kẻ xấu có thể cố "dụ" agent làm việc ngoài vai trò. Nguyên tắc: agent tiếp khách chỉ được nói chuyện, không chạy lệnh, không đọc–ghi file, không duyệt web tự do.

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes profile create cskh --clone    # agent riêng cho khách
hermes -p cskh tools                  # TẮT: terminal, file, code_execution, browser — giữ lại memory, skills

Cách nối agent cskh với Fanpage, Zalo: Phần 5, Phần 6.

Nguồn: Tools & Toolsets · Profiles

Giữ mã bí mật

Khi nghi lộ mã bí mật — làm ngay

  1. Thu hồi ở nơi cấp: bot Telegram → @BotFather /revoke; khoá AI → xoá khoá trong trang nhà cung cấp; token Meta/Google → thu hồi trong trang quản lý.
  2. Tạo mã mới và nhập lại bằng khung đỏ (Phần 1).
  3. hermes gateway restart, rồi kiểm tra hermes logs gateway --since 24h xem có truy cập lạ.
  4. Đổi mật khẩu tài khoản liên quan, rà lại danh sách người được ra lệnh.
Nhập mã bí mậtChạy riêng dòng này trên VPS → dán mã → Enter. Không gửi mã qua Telegram
read -rsp "Dán TELEGRAM_BOT_TOKEN rồi Enter (chữ sẽ không hiện): " V; echo; hermes config set TELEGRAM_BOT_TOKEN "$V"; unset V   # ví dụ nhập lại token mới sau khi /revoke

Nguồn: Security – Securing API Keys · Security – Credential Redaction · Telegram – BotFather

Cập nhật an toàn

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes update --check          # xem bản mới có gì, chưa cài
hermes update --backup         # sao lưu đầy đủ rồi mới cập nhật
hermes doctor && hermes --version && hermes gateway status   # kiểm tra sau cập nhật
hermes security audit          # kiểm tra lỗ hổng đã công bố trong thư viện đi kèm (mỗi tháng)

Nguồn: Updating · CLI – hermes update · CLI – security audit

Sao lưu và khôi phục

LệnhDùng khi
hermes backupSao lưu đầy đủ (cấu hình, mã bí mật, trí nhớ, kỹ năng, lịch, lịch sử) ra file zip; chạy được khi Hermes đang hoạt động
hermes backup --quick --label truoc-suaChụp nhanh các file quan trọng trước khi sửa cài đặt lớn
hermes import <file.zip>Khôi phục / chuyển sang VPS mới
hermes profile export <tên>Đóng gói một agent (đã bỏ mã bí mật) để dùng lại làm mẫu hoặc chia sẻ

Lịch sao lưu tự động mỗi đêm, tải về máy tính mỗi tuần: Phần 1, Bước 7. Mỗi quý thử khôi phục một lần trên VPS thử nghiệm — sao lưu chưa từng khôi phục thử thì chưa chắc dùng được.

File sao lưu đầy đủ chứa mã bí mật. Cất ở nơi có mật khẩu/mã hoá, không gửi qua chat.

Nguồn: CLI – hermes backup · CLI – hermes import · Profile Commands – export

Báo cáo "còn sống" mỗi sáng và nút dừng khẩn cấp

Nhắn bot một lần để có lịch kiểm tra sức khoẻ hằng ngày:

Tin nhắn TelegramCopy rồi dán vào khung chat với bot
Tạo lịch tự động mỗi ngày 7h30: kiểm tra dung lượng ổ đĩa (df -h), RAM (free -h), trạng thái cổng nhắn tin, số lịch tự động bị lỗi hôm qua (hermes cron status). Gửi tôi 5 dòng tóm tắt, dòng đầu ghi ỔN hoặc CẦN XỬ LÝ.

Sáng nào không nhận được tin = có sự cố → vào VPS kiểm tra ngay. Lịch tự động chỉ chạy khi cổng nhắn tin đang chạy.

Dừng khẩn cấp

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes pause      # dừng mọi việc mới: lịch tự động, việc nhận qua tin nhắn (việc đang chạy dở không bị cắt ngang)
hermes resume     # chạy lại bình thường

Dùng khi agent làm sai hàng loạt (đăng nhầm, gửi nhầm). Trong chat có thể gõ /stop để dừng việc đang làm.

Nguồn: Cron · CLI – hermes pause / resume

Bảng xử lý lỗi thường gặp

Gặp lỗi bất kỳ, chạy trước 2 lệnh này — phần lớn nguyên nhân hiện ra ngay:

Lệnh TermiusCopy cả khối → dán vào Termius → Enter
hermes doctor                  # tự chẩn đoán; thêm --fix để tự sửa lỗi đơn giản
hermes logs errors --since 1h  # lỗi trong 1 giờ qua
Hiện tượngNguyên nhân hay gặpCách xử lý
hermes: command not foundPhiên chưa nạp đường dẫnsource ~/.bashrc; kiểm tra đang ở tài khoản hermes
Bot Telegram im lặngCổng nhắn tin không chạy; ID chưa có trong danh sáchhermes gateway status → start; xem hermes logs gateway -n 50; kiểm tra TELEGRAM_ALLOWED_USERS
Bot không đọc tin trong nhómGroup Privacy của bot đang bật@BotFather → Group Privacy → Off, xoá bot khỏi nhóm rồi thêm lại
Agent chết sau khi thoát SSHChưa bật lingerTài khoản quản trị: sudo loginctl enable-linger hermes
Lỗi 401 / khoá API saiKhoá bị xoá hoặc nhập saiNhập lại bằng khung đỏ, hermes model
Lỗi 429 / hết hạn mứcHết tiền hoặc gọi quá nhanhNạp tiền, chờ, thêm nhà cung cấp dự phòng hermes fallback add
Lỗi 400 khi chạy lần đầuSai tên model hoặc nhà cung cấphermes model chọn lại
"Context length exceeded"Cuộc trò chuyện quá dài/compress hoặc /new
/model chỉ thấy 1 nhà cung cấp/model chỉ đổi giữa nhà cung cấp đã càiThoát chat, chạy hermes model trên VPS
Agent "quên"Ghi nhớ chỉ có hiệu lực từ phiên mới; sổ nhớ đầy; sai profile/new; xem /memory; kiểm tra đang nhắn đúng bot
Lịch tự động không chạyCổng nhắn tin tắt; cấu hình lịch lỗihermes cron status, hermes cron doctor
Agent khác báo bị từ chối khi … gateway startTừ v0.21 chỉ có 1 cổng nhắn tin chunghermes gateway restart ở agent chính
Hai nơi dùng chung 1 botMột token bot gắn 2 agentMỗi agent một bot riêng; tắt bản chạy thử gateway run còn mở
Tốn token bất thườngBật quá nhiều công cụ, kỹ nănghermes prompt-size; tắt bớt bằng hermes tools
Telegram hiện quá nhiều dòng "đang làm"Hiển thị tiến trình công cụhermes config set display.tool_progress off
Lỗi sau khi cập nhậtCấu hình cũhermes config check → hermes config migrate → hermes doctor
VPS chậm, agent bị tắtHết RAMfree -h; thêm swap hoặc nâng RAM

Cần người hỗ trợ? hermes dump in bản tóm tắt cấu hình để gửi kỹ thuật viên (mặc định chỉ ghi "đã đặt/chưa đặt" cho khoá — không thêm --show-keys). Kiểm tra lại nội dung trước khi gửi.

Nguồn: FAQ & Troubleshooting · CLI – doctor · CLI – dump · Cron troubleshooting · Multi-profile gateways

Checklist định kỳ

Mỗi tuần

Mỗi tháng

Mỗi quý

Tài liệu liên quan

Xem tất cả tài liệu hướng dẫn →

Học trực tiếp cùng Aduca

Muốn có đội AI Agent chạy thật cho doanh nghiệp?

Khóa Meta Ads AI Automation do Nguyễn Đức – Chủ tịch Aduca Group đào tạo trực tiếp 3 ngày: dựng AI Agent quảng cáo, nội dung, chăm sóc khách trên chính tài khoản của bạn, chọn công cụ (OpenClaw hoặc Hermes) phù hợp với đội của bạn.

Nguồn tham khảo

Thông tin kỹ thuật trong bài lấy từ các tài liệu dưới đây (đã ghi nguồn ngay dưới từng mục). Phần diễn giải, ví dụ và quy trình là của Aduca.

Lịch sử cập nhật

Miễn trừ trách nhiệm

Tài liệu này thuộc bộ tài liệu nội bộ Aduca dùng để triển khai AI Agent và giảng dạy, được chia sẻ công khai miễn phí cho mục đích học tập. Nội dung do Aduca viết mới, đối chiếu với tài liệu chính thức của Hermes Agent (Hermes v0.21.5 (24/09/2026)) và của các nền tảng liên quan tại ngày cập nhật; những chỗ là nhận định riêng của Aduca được ghi rõ.

  • Phần mềm của bên thứ ba: Hermes Agent là phần mềm mã nguồn mở (giấy phép MIT) do Nous Research phát triển. Aduca không phải đơn vị phát triển, đối tác hay đại diện của Nous Research. Telegram, Meta, Google, Zalo, TikTok, nhà cung cấp VPS và nhà cung cấp model AI là dịch vụ của bên thứ ba; lệnh, giao diện, giá và chính sách có thể thay đổi so với tài liệu.
  • Trách nhiệm của người áp dụng: bạn tự chịu trách nhiệm về VPS, tài khoản, mã bí mật, dữ liệu, chi phí phát sinh (VPS, API AI, ngân sách quảng cáo) và mọi hành động do Agent của bạn thực hiện. Đọc kỹ từng lệnh trước khi chạy, sao lưu trước khi thay đổi lớn.
  • Tuân thủ: khi Agent xử lý dữ liệu khách hàng, bạn có trách nhiệm tuân thủ điều khoản của từng nền tảng và pháp luật Việt Nam, bao gồm quy định về bảo vệ dữ liệu cá nhân. Các cách kết nối không chính thức (ví dụ Zalo cá nhân) có thể khiến tài khoản bị khoá.
  • Giới hạn trách nhiệm: trong phạm vi pháp luật cho phép, Aduca không chịu trách nhiệm cho thiệt hại trực tiếp hay gián tiếp (mất dữ liệu, lộ thông tin, khoá tài khoản, chi phí quảng cáo, gián đoạn kinh doanh…) phát sinh từ việc sử dụng tài liệu.
  • Không phải tư vấn chuyên sâu: tài liệu không thay thế đánh giá bảo mật chuyên nghiệp. Hệ thống quan trọng nên được chuyên gia rà soát riêng.
  • Không thu thập thông tin bí mật: Aduca không bao giờ yêu cầu bạn gửi token, mật khẩu, mã OTP hay file bí mật.
  • Bản quyền: © 2026 Công ty Cổ phần Giáo dục Aduca. Được trích dẫn khi ghi rõ nguồn aduca.vn. Hermes Agent, Nous Research và các nhãn hiệu nêu trên thuộc về chủ sở hữu tương ứng.