gitlab服务器发送邮件配置

1.修改gitlab的配置文件:

vim /etc/gitlab/gitlab.rb

这里具体的gitlab.rb文件所在路径需要根据实际的来

找到如下图所示的部分,放开注释,修改配置,此处我用的发件邮箱是QQ邮箱,所以域名配置都是qq.com,如果用的是163或者gmail邮箱等等,更改对应配置即可;建议使用企业邮箱

#vim /etc/gitlab/gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"		//修改为对应的邮件服务域名 
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxxxx@qq.com"			//修改为对应的邮箱 
gitlab_rails['smtp_password'] = "password"				//授权码,从QQ设置里获取,参考文字部分后的图片
gitlab_rails['smtp_authentication'] = "login"			
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'xxxxx@qq.com'		//gitlab发送人,修改为对应的邮箱
gitlab_rails['smtp_domain'] = "exmail.qq.com"			//修改为对应的邮件

网易163的配置项还可参考如下

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "xxuser@163.com"
gitlab_rails['smtp_password'] = "xxpassword"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true

gitlab_rails['gitlab_email_from'] = "xxuser@163.com"
user["git_user_email"] = "xxuser@163.com"

2.授权码获取方式,以QQ邮箱为例参考下图

 3.重新加载配置 gitlab-ctl reconfigure 重启生效

4.测试配置是否成功
待测试
执行 gitlab-rails console -e production进入控制台。 然后在控制台提示符后输入下面的命令 发送一封测试邮件:Notify.test_email('收件人邮箱', '邮件标题', '邮件正文').deliver_now

5.验证,gitlab登录页面忘记密码输入你的邮箱

待测试

测试SMTP配置
您可以使用Rails控制台验证GitLab能够正确发送电子邮件。在GitLab服务器上,执行 gitlab-rails console以进入控制台。然后,您可以在控制台提示符下输入以下命令,以使GitLab发送测试电子邮件:

##登入控制台
gitlab-rails console -e production	
##测试邮件发送		
Notify.test_email('destination_email@address.com', 'Message Subject', 'Message Body').deliver_now

对SSL / TLS进行故障排除
配置SMTP后,许多用户遇到以下错误:

OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=error: wrong version number)

此错误通常是由于设置错误所致:

如果您的SMTP提供程序使用端口25或587,则SMTP连接开始时 未加密,但可以通过STARTTLS进行升级 。确保设置了以下设置:

gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false # This is the default and can be omitted
gitlab_rails['smtp_ssl'] = false # This is the default and can be omitted

如果您的SMTP提供程序正在使用端口465,则SMTP连接开始 通过TLS加密。确保存在以下行:

gitlab_rails['smtp_tls'] = true

有关更多详细信息,请阅读有关SMTP端口,TLS和STARTTLS的混淆。

禁用所有外发电子邮件
注意: 这将禁用您的GitLab实例中的所有传出电子邮件,包括但不限于通知电子邮件,直接提及和密码重置电子邮件。
为了禁用所有外发电子邮件,您可以编辑以下行或将其添加到/etc/gitlab/gitlab.rb:
 

gitlab_rails['gitlab_email_enabled'] = false

运行sudo gitlab-ctl reconfigure以使更改生效。

若在安装Gitlab之前未安装postfix,则需运行以下命令安装并启动postfix服务

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tristan Tsai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值