Haraka
高性能 Node.js 邮件服务器,模块化插件架构,用于可扩展的邮件过滤和投递。
스마트 다운로드
프로젝트 홈페이지 방문
아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요
基于 Node.js 的邮件服务器,插件丰富,高并发,专注过滤与转发。
주요 기능
- 模块化插件架构,轻松扩展功能
- 高性能:数千并发连接,每秒数千封投递
- 内置出站投递引擎,支持中继
- 丰富的官方插件:反垃圾邮件、DKIM、DNSBL 等
- 轻量级,不存储邮件,专为过滤和转发设计
할 수 없는 것
- •Haraka 不是完整邮件系统,需要搭配邮件存储(如 Dovecot、Exchange)使用;运行需要 root 权限绑定 25/587 端口;插件配置较灵活但需熟悉文档。
사용 사례
- 作为公司邮件系统的前置过滤网关
- 与 Exchange 或 Postfix 配合,处理邮件过滤与路由
- 构建自定义邮件处理流水线(如地址重写、内容扫描)
- 替代 Qpsmtpd 或作为高性能 MSA
상세 설명
Haraka 是一个基于 Node.js 的高度可扩展的邮件服务器,可同时处理数千个并发连接,每秒投递数千封邮件。其模块化的插件架构让扩展和定制变得非常容易,提供了强大的垃圾邮件过滤能力。与专注于邮件存储的传统 MTA 不同,Haraka 适合作为过滤 MTA 或邮件提交代理(MSA),与 Exchange、Postfix 等存储系统配合使用。它内置出站投递引擎,支持中继邮件。插件涵盖 DNS 黑名单、SpamAssassin、HELO 校验、DKIM 签名等。适用于需要灵活、高性能邮件处理的开发者和运维人员。
문제 해결 & FAQ (2)
문제 해결서명이 비활성화된 dkim 플러그인을 사용할 때 Haraka 'Cannot pipe while currently piping' 오류를 수정하는 방법?
이 오류는 Haraka 3.1.4+에서 dkim 플러그인이 활성화되었지만 서명이 비활성화된 경우 발생합니다. 해결하려면 config 디렉토리에 dkim.ini 파일을 생성하여 [sign]로 DKIM 서명을 활성화하거나, outbound/index.js에 다음 패치를 적용하여 전송 전에 setImmediate 지연을 추가하세요:
enabled = trueawait new Promise((resolve) => setImmediate(resolve)). 이렇게 하면 dkim 검증 스트림과 아웃바운드 큐 간의 파이프 충돌을 방지합니다. 이 문제는 이후 Haraka 릴리스에서 수정되었습니다.
문제 해결Haraka에서 대기열 tmp 파일 이름을 변경할 때 'ENOENT: no such file or directory' 오류를 수정하는 방법?
일시적인 이 오류는 FsyncWriteStream의 문제로 인해 발생하며, Haraka 3.3.0에서 수정되었습니다. 문제를 해결하려면 Haraka 3.3.0 이상으로 업그레이드하세요. 업그레이드 후에도 오류가 지속되면 큐 디렉토리의 파일 시스템 권한이나 I/O 병목 현상을 확인하고, 상세 로그와 함께 Haraka 프로젝트에 문제를 보고하는 것을 고려하십시오.
태그
시작하기
소프트웨어 설치
다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요
步骤1:确保已安装 Node.js,然后执行 npm install -g Haraka
步骤2:创建服务目录:haraka -i /path/to/haraka_test
步骤3:编辑 config/host_list 添加你的域名,编辑 config/plugins 启用所需插件
- 步骤1:确保已安装 Node.js,然后执行 npm install -g Haraka
- 步骤2:创建服务目录:haraka -i /path/to/haraka_test
- 步骤3:编辑 config/host_list 添加你的域名,编辑 config/plugins 启用所需插件
체크섬 없음
이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다
SHA256 체크섬
체크섬 없음
GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요
이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.
오픈소스 투명성
GitHub 소스 보기제거 정보
执行 npm uninstall -g Haraka 卸载全局包,然后删除服务目录。
추가 의존성 없음
다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.
문제 발생? 아래 FAQ 확인
2 FAQs