OpenSource-Hub

cloudflare_temp_email

애플리케이션

dreamhunter2333/cloudflare_temp_email

Cloudflare 기반 무료 임시 이메일 서비스로, IMAP/SMTP 및 Telegram Bot을 지원합니다.

개요

Cloudflare 무료 티어를 기반으로 구축된 풀 기능 임시 이메일 시스템. Rust WASM으로 이메일을 빠르게 파싱하며, 첨부 파일, AI 이메일 인식, SMTP/IMAP 프록시 및 Telegram Bot 알림을 지원합니다. 개인 또는 소규모 배포에 적합합니다.

README 미리보기

\n# Cloudflare 临时邮箱 - 免费搭建临时邮件服务\n\n\n  \n    \n  \n  \n    \n  \n  \n    \n  \n  \n   \n  \n  \n    \n  \n  \n    \n  \n\n\n\n  \n    \n  \n\n\n\n  中文文档 |\n  English Document\n\n\n> 本项目仅供学习和个人用途,请勿将其用于任何违法行为,否则后果自负。\n\n**一个功能完整的临时邮箱服务!**\n\n- **完全免费** - 基于 Cloudflare 免费服务构建,零成本运行\n- **高性能** - Rust WASM 邮件解析,响应速度极快\n- **现代化界面** - 响应式设计,支持多语言,操作简便\n- **地址密码** - 支持为邮箱地址设置独立密码,增强安全性\n- **Agent 友好** - 内置邮箱 [`skill`](skills/cf-temp-mail-agent-mail/SKILL.md),方便 AI agent 使用邮箱\n- **移动端管理** - 社区客户端 [CloudMail](https://github.com/Lur1N77777/CloudMail),支持 Android 管理后台和邮箱管理\n\n## 部署文档 - 快速开始\n\n[部署文档](https://temp-mail-docs.awsl.uk) | [Github Action 部署文档](https://temp-mail-docs.awsl.uk/zh/guide/actions/github-action.html)\n\n\n  \n\n\n## 更新日志\n\n查看 [CHANGELOG](CHANGELOG.md) 了解最新更新内容。\n\n## 在线体验\n\n立即体验 → [https://mail.awsl.uk/](https://mail.awsl.uk/)\n\n\n服务状态监控(点击收缩/展开)\n\n|                                            |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |\n| ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

FAQ (3)

문제 해결
관리자 사서함의 created_at 및 updated_at 타임스탬프가 로컬 시간대가 아닌 UTC로 표시되는 이유는 무엇인가요?

이 문제는 PR #1146에서 수정되었습니다. 해당 PR이 포함된 릴리스로 프론트엔드를 업데이트한 후 다시 빌드/배포하세요. frontend/src/views/admin/Account.vue의 원시 D1 타임스탬프 컬럼은 이제 utcToLocalDate(row.created_at, useUTCDate.value)와 utcToLocalDate(row.updated_at, useUTCDate.value)를 사용합니다. 동일한 수정이 frontend/src/views/admin/UserManagement.vue와 frontend/src/views/admin/SenderAccess.vue의 created_at에도 적용되었습니다. 수동으로 패치하려면 해당 템플릿에서 타임스탬프를 직접 렌더링하는 부분을 utcToLocalDate(...)로 교체하고, 헬퍼 함수와 useUTCDate 설정이 임포트되어 있는지 확인한 후, 프론트엔드 빌드를 실행하고 다시 배포하세요.

원본 Issue #1145
문제 해결
JUNK_MAIL_CHECK_LIST가 활성화된 상태에서 DMARC/DKIM/SPF 결과가 none 또는 neutral일 때 정크 메일이 잘못 거부되는 문제를 해결하는 방법

이 잘못된 거부는 정크 메일 검사 로직 버그로 인해 발생합니다: Cloudflare Email Worker가 SPF/DKIM/DMARC none/neutral 상태를 명시적인 실패로 잘못 처리합니다. 이메일 인증 표준에 따르면, 이러한 상태는 게시된 SPF 레코드가 없거나, 서명되지 않은 메일이거나, 적용 가능한 DMARC 정책이 없음을 의미하며 거부를 유발해서는 안 됩니다. 버그가 있는 코드는 인증 헤더(예: dmarc=)의 존재 여부만 확인하고 pass가 아닌 모든 결과를 거부하는데, 이는 문서화된 JUNK_MAIL_CHECK_LIST 규칙, 즉 활성화된 검사가 존재하고 명시적으로 실패하는 경우에만 거부한다는 규칙과 일치하지 않습니다.

임시 해결 방법:
1. worker/wrangler.toml 구성 파일을 엽니다.
2. JUNK_MAIL_CHECK_LIST 배열에서 none/neutral 상태를 반환하는 항목(예: dkim, dmarc)을 제거하고, 명시적인 pass/fail 결과를 반환하는 필요한 검사만 남겨둡니다.
3. Wrangler CLI를 통해 Worker를 다시 배포합니다.

정상 작동하는 구성 예시:

ENABLE_CHECK_JUNK_MAIL = true
JUNK_MAIL_CHECK_LIST = ["spf"]
JUNK_MAIL_FORCE_PASS_LIST = ["spf"]

공식적으로 수정되면 로직은 표준을 따르게 됩니다: none/neutral 상태는 거부를 유발하지 않으며, 명시적인 인증 실패만 정크로 표시되고, JUNK_MAIL_FORCE_PASS_LIST는 명시적인 pass 결과만 허용합니다.

원본 Issue #1084
문제 해결
Cloudflare 임시 메일에서 관리자 주소는 작동하는데 무작위 메일함이 이메일을 수신하지 못하고, Email Routing에 메시지가 삭제된 것으로 표시되는 문제를 어떻게 해결하나요?

관리자 주소는 명시적인 Email Routing 규칙과 일치할 가능성이 높은 반면, 임의 생성 주소는 catch-all 규칙에 의존합니다. catch-all이 비활성화되어 있거나 Delete/Drop으로 설정된 경우, Cloudflare는 메시지가 Worker에 도달하기 전에 이를 삭제합니다.

Cloudflare에서 수정하기:
1. Cloudflare Dashboard → 도메인 선택 → Email → Email Routing → Routing Rules로 이동합니다.
2. Catch-all address 규칙을 편집합니다.
3. 활성화하고 작업을 Send to a Worker로 설정합니다.
4. 배포된 temporary-mail Worker를 선택하고 저장합니다.
5. 여러 도메인을 사용하는 경우, 임의 메일박스에 할당된 모든 도메인에 대해 이 과정을 반복하고 해당 도메인도 Worker에 구성되어 있는지 확인합니다.
6. Email Routing MX/SPF DNS 레코드가 활성 상태로 표시되는지 확인한 다음 새 테스트 이메일을 보냅니다.

Delete, Drop을 사용하거나 catch-all 주소를 관리자 메일박스로 전달하지 마세요. 반드시 Worker로 직접 라우팅되어야 합니다.

원본 Issue #1044