gitlab设置邮件找回密码
因为考虑到代码的安全,公司直接在内网搭建了一个Gitlab代码仓库。这样对于内网开发提交、更新代码非常快;
但是最近有个开发说密码忘记了,叫帮忙修改,虽然用管理员登陆去修改用户密码是个很简单的事,但是这毕竟不应该,原本gitlab就有通过邮件地址修改密码的功能,为何不使用呢?
为了考虑到以后可能会有更多个XXX说密码忘记了,免得改完一次又一次,所以就有了以下的操作;
邮件找回密码
1、因为gitlab一直都在运行着,所以要修改前记录备份一下配置文件;
- cp /etc/gitlab/gitlab.rb{,.bak}
2、修改配置文件:/etc/gitlab/gitlab.rb 这里使用163的来发邮件;
[root@gitlab ~]# egrep -v "^$|^#" /etc/gitlab/gitlab.rb external_url 'http://10.0.10.78' gitlab_rails['time_zone'] = 'Asia/Shanghai' gitlab_rails['gitlab_email_enabled'] = true gitlab_rails['gitlab_email_from'] = '邮件用户名@163.com' gitlab_rails['gitlab_email_display_name'] = 'Gitlab CE' gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.163.com" gitlab_rails['smtp_port'] = 25 gitlab_rails['smtp_user_name'] = "邮件用户名@163.com" gitlab_rails['smtp_password'] = "邮件帐号的密码" gitlab_rails['smtp_domain'] = "163.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = false user['git_user_email'] = "邮件用户名@163.com"
3、保存修改,更新配置;
gitlab-ctl reconfigure
#这里不用担心影响代码,只是把修改过的配置文件信息,刷新到配置文件中;其实上面修改一个配置文件gitlab.rb 它里面的配置会被此命令调用编写成多个配置文件到安装目录下:/var/opt/gitlab/gitlab-rails/etc/
就上面的修改其实也可以直接修改此目录下的:smtp_settings.rb
如果直接修改smtp_settings.rb文件就只要重启一下gitlab-ctl restart即可。
完成上面操作后,回到登陆页面,选择Forgot your password? 输入你帐号的邮箱地址即可收到邮件,根据邮件地址修改新密码即可;
如果邮件地址也忘记了,那就该拖出去砍了。
补充:2018-01-13日
最近在阿里云的ECS专有网络主机上配置了一个gitlab仓库,因为默认这些专有网络的ECS主机都是禁用了25端口的,所以这个gitlab.rb的配置就有做相应的改变,使用465协议。
只修改以下两行即可,修改完要更新配置:gitlab-ctl reconfigure
gitlab_rails['smtp_port'] = 25 gitlab_rails['smtp_tls'] = true
文章来源:
https://www.58jb.com/html/158.html