一次性邮箱搭建教程(临时邮箱)

热门标签

, , , , , , , , , , , , , , , , , , , , , , ,
admin

发表文章数:3125

首页 » 网络资源 » Linux » 正文

在gayhub上发现了两个玩具,可以自建的一次性邮箱:

https://github.com/synox/disposable-mailbox
https://github.com/synox/void-mail

本身这两个程序是很好部署的,但是都需要一个支持catch-all的imap。。这就有点蛋疼了,现在的邮箱很少有提供这种功能的。。

突然灵机一动,发现以前部署过的poste是支持catch-all的,并且poste还支持smtp/imap,美滋滋~

因为端口方面有冲突,所以这里准备两台VPS,系统均是Debian10,一台用来部署poste,另外一台用来部署disposable-mailbox以及void-mail。需要注意的是poste这台机器内存至少要2GB。

部署Poste前需要先把DNS解析记录配置好,参考:

这里补充一下关于RDNS的设置,也就是常说的PTR记录,这个记录只能在你的VPS服务商设置,有的商家提供此服务,有的不提供,不提供的话就没办法了,我演示的这个环境是在DigitalOcean上的,直接修改你这个实例的名字就等于是设置RDNS了:

一次性邮箱搭建教程(临时邮箱)

验证是否生效,可以用BestTrace跟踪一下路由得知,如果主机名这里有显示就说明OK了:

一次性邮箱搭建教程(临时邮箱)

小声bb:即便你的DNS解析记录/PTR记录设置的再规范,该进垃圾箱还是一样进垃圾箱,并没有什么卵用。

现在开始部署Poste,首先安装Docker:

apt -y update
apt -y install curl
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

设置时区为东八区:

timedatectl set-timezone Asia/Shanghai

然后一条命令启动即可:

docker run \
    -p 25:25 \
    -p 80:80 \
    -p 110:110 \
    -p 143:143 \
    -p 443:443 \
    -p 465:465 \
    -p 587:587 \
    -p 993:993 \
    -p 995:995 \
    -p 4190:4190 \
    -v /etc/localtime:/etc/localtime:ro \
    -v /opt/poste/data:/data \
    --name "poste" \
    -h "mail.koko.cat" \
    -t analogic/poste.io

注:-h参数里面的域名改成你自己的。

现在登录到Poste内创建一个新的邮箱:

一次性邮箱搭建教程(临时邮箱)

然后编辑你的域名设置:

一次性邮箱搭建教程(临时邮箱)

勾选Domain bin,然后在下面选择刚创建的邮箱账号:

一次性邮箱搭建教程(临时邮箱)

这样一个具有catch-all功能的邮箱就设置好了。

接下来我们就可以在另外一台VPS内部署临时邮箱服务了,disposable-mailbox以及void-mail的安装方法我都会写在这里,但实际上你只需要选择其中一种即可,因为这两个东西实际上是一个玩意,只是实现的语言不一样,一个是PHP一个是Nodejs。

部署disposable-mailbox,安装所需的软件:

apt -y install git nginx php7.3-common php7.3-fpm php7.3-cli php7.3-gd php7.3-imap

拉取项目代码/复制一份配置文件:

git clone https://github.com/synox/disposable-mailbox.git
cd disposable-mailbox
mv src /var/www/disposable-mailbox
cp /var/www/disposable-mailbox/config.sample.php /var/www/disposable-mailbox/config.php

编辑配置文件:

nano /var/www/disposable-mailbox/config.php

需要改动的地方如下图红框内的:

一次性邮箱搭建教程(临时邮箱)

新建Nginx站点配置文件:

nano /etc/nginx/conf.d/mailbox.conf

写入:

server {
    listen       80;
    server_name  disposable.koko.cat;
    index        index.html index.htm index.php;
    root         /var/www/disposable-mailbox;
    client_max_body_size 50m;

    location ~ \.php$ {
        fastcgi_pass   unix:/run/php/php7.3-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

重启Nginx完成disposable-mailbox的部署:

systemctl restart nginx

接下来部署void-mail,安装所需软件:

apt -y install build-essential supervisor curl git nginx
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt -y install nodejs

拉取项目文件/安装依赖:

cd /opt
git clone https://github.com/synox/void-mail.git
cd void-mail
npm install

新建一个环境变量配置文件:

nano /etc/profile.d/void-mail.sh

写入如下配置:

export DOMAIN=koko.cat
export IMAP_SERVER=mail.koko.cat 
export IMAP_USER=disposable@koko.cat
export IMAP_PASSWORD=你的IMAP服务密码

使其生效:

chmod  x /etc/profile.d/void-mail.sh
source /etc/profile.d/void-mail.sh

测试运行(没报错的话就键盘组合键ctrl x退出来):

npm run start

启动supervisor:

systemctl enable supervisor
systemctl start supervisor

新建supervisor配置文件:

nano /etc/supervisor/conf.d/void-mail.conf

使用下面的配置守护void-mail进程:

[program:void-mail]
priority=1
environment=DOMAIN="koko.cat",IMAP_SERVER="mail.koko.cat",IMAP_USER="disposable@koko.cat",IMAP_PASSWORD="你的IMAP服务密码"
directory=/opt/void-mail
command=/usr/bin/npm run start
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/supervisor/void-mail.log

更新配置:

supervisorctl update

管理命令:

supervisorctl status void-mail
supervisorctl start void-mail
supervisorctl stop void-mail
supervisorctl restart void-mail

新建Nginx站点配置文件:

nano /etc/nginx/conf.d/voidmail.conf

写入下面的配置反代void-mail:

server {
    listen       80;
    server_name  voidmail.koko.cat;
    client_max_body_size 50M;

    location / {
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:3000;
    }
}

重启Nginx完成配置:

systemctl restart nginx

最后来测试一下是否可以正常工作。

disposable-mailbox:

一次性邮箱搭建教程(临时邮箱)

void-mail:

一次性邮箱搭建教程(临时邮箱)

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《一次性邮箱搭建教程(临时邮箱)》 发布于2020-01-07

分享到:
赞(0) 打赏

评论 抢沙发

7 + 6 =


撰写不易~如果您觉得文章对您有帮助的话可以打赏我哦~谢谢亲亲~

支付宝扫一扫打赏

微信扫一扫打赏

外服网游加速器破解版
包含腾讯网游加速器、海豚网游加速器等八款知名加速器,可加速外服游戏,永久包售后包更新,不定时添加新款破解版加速器!
切换注册

登录

忘记密码 ?

切换登录

注册