Phần này đi qua các bước 3 đến 9 theo đúng thứ tự, cộng bảng xử lý sự cố ở cuối. Các <PLACEHOLDER> trong lệnh và ảnh được giải thích ở bảng placeholder của Phần 1; điều kiện cần (VPS, zone Cloudflare, gói ChatGPT, Developer mode) nằm ở Phần 1, mục 2.
Ảnh trong bài là ảnh chụp thật từ instance đang chạy. Ảnh và đường đi menu theo giao diện ChatGPT, Cloudflare và GitHub ngày 16/09/2026; các giao diện này đổi khá thường xuyên, nên nếu không thấy đúng nút, hãy tìm theo tên mục. Mọi giá trị nhận dạng đã được làm mờ và ứng với một placeholder ở Phần 1. Lệnh và tên biến đã được đối chiếu với repo bestagentkits/cloud-harness-mcp của Duy Nguyen (@mrgoonie), bản v0.79.1 ngày 29/10/2026.
3. DNS và SSL/TLS
Mục này trỏ hostname về VPS qua proxy của Cloudflare, rồi chọn chế độ mã hóa.
Lưu lượng tới https://<MCP_HOST> phải đi qua Cloudflare ở chế độ Proxied để Access chặn và xác thực trước khi tới máy chủ gốc. Proxied (đám mây màu cam) nghĩa là đi qua Cloudflare, qua Access rồi mới tới máy chủ gốc, đúng cho Managed OAuth. DNS only (màu xám) đi thẳng tới VPS, và OAuth của ChatGPT thường không chạy đúng.
Đường vào: https://dash.cloudflare.com/, chọn zone <ROOT_DOMAIN>, vào DNS → Records, bấm Add record.
- Type
A, Name<MCP_SUBDOMAIN>, Content<VPS_PUBLIC_IP>, Proxy Proxied.

Trong ảnh: bản ghi mcp, Type A, Content (IP) đã làm mờ, Proxy status: Proxied, TTL Auto.
Chọn chế độ mã hóa SSL/TLS
Đường vào: trong zone, vào SSL/TLS → Overview (.../ssl-tls/configuration), bấm Configure encryption mode.

Cloudflare mặc định gợi ý Automatic SSL/TLS (recommended), và khi đó chế độ có hiệu lực có thể là Full, tức không kiểm chứng chỉ của máy chủ gốc.
Chọn Full (strict) nếu muốn chặt hơn: chế độ này bắt máy chủ gốc có chứng chỉ hợp lệ do CA tin cậy hoặc Cloudflare ký, và từ chối chứng chỉ tự ký.
| Chế độ | Kiểm chứng chỉ máy chủ gốc? | Ghi chú |
|---|---|---|
| Automatic SSL/TLS | Cloudflare tự quyết định | Có thể hạ xuống Full |
| Full (strict) | Có | Khuyến nghị |
| Full | Không | Chấp nhận chứng chỉ tự ký |
| Flexible | Không (và không mã hóa đoạn từ Cloudflare tới máy chủ gốc) | Không nên dùng |
Mở khi tài khoản có quyền subscriber
Bài này dành cho subscriber
Khi tài khoản có quyền, toàn bộ bài, bản visual tương tác và lệnh gọi từ agent đều mở.
- Đăng nhập hoặc tạo tài khoản modernEngineerQuyền đọc gắn với email tài khoản.
- Chọn gói trên trang Bảng giáGói 1, 3 hoặc 12 tháng, trả bằng chuyển khoản VietQR. Quyền đọc mở khoảng một phút sau khi tiền về.
- Hoặc nhập mã Facebook subscriberNgười ủng hộ trang qua Facebook nhận mã kích hoạt qua tin nhắn mỗi tháng.
Đã là subscriber? Đăng nhập để đọc.
Dùng bài này trong agent của bạn
Lấy API keyChép đoạn dưới, dán vào Claude Code, Codex hay agent bạn đang dùng. Agent đọc bài rồi đối chiếu với repo đang mở.
Đọc bài "Tự host Cloud Harness MCP cho ChatGPT (2/3): Deploy, Cloudflare Access và nối ChatGPT" trên modernEngineer rồi áp dụng vào repo này.
1. Gọi tool content_get của MCP server modernengineer với locale "vi", slug "cloud-harness-mcp-chatgpt-setup-2-deploy". Nếu chưa nối MCP server modernengineer, dừng lại và hướng dẫn tôi nối theo https://modernengineer.dev/vi/mcp.
2. Tóm tắt các bước chính của bài, chỉ ra bước nào áp dụng được cho repo này.
3. Đề xuất thay đổi cụ thể và hỏi tôi trước khi sửa file.Nối MCP cho Claude Code (một lần)
claude mcp add --transport http modernengineer \
https://api.modernengineer.dev/mcp \
--header "Authorization: Bearer <API key>"Đọc trọn bài qua MCP cần API key của tài khoản subscriber hoặc đã mua guide này. Không có quyền, agent sẽ chỉ đọc được phần mở đầu.
- Phiên bản
- v1.0.0
- Cập nhật
- 16/09/2026
- Giấy phép
- Subscriber-only; redistribution prohibited
- Slug
- cloud-harness-mcp-chatgpt-setup-2-deploy


