ToiVietBlog - Thiết lập mail SMTP cho Gitlab CE. Sau khi bạn thiết lập user xác thực bằng LDAP xong, bạn sẽ cần thiết lập hệ thống có thể gửi mail tới user.

Thiết lập mail SMTP cho Gitlab CE
Về tài liệu thiết lập email cho máy chủ gitlab, bạn có thể xem tại đây.
Đầu tiên, bạn mở file cấu hình của gitlab.
# nano /etc/gitlab/gitlab.rb
Sau đó bạn tìm và sửa các dòng thành nội dung như sau.
gitlab_rails['smtp_enable'] = true # Kích hoạt SMTP gửi mail gitlab_rails['smtp_address'] = "mail.yourdomain.com" # Địa chỉ máy chủ SMTP, bạn có thể sử dụng cho gmail gitlab_rails['smtp_port'] = 465 # Cổng kết nối 465 gitlab_rails['smtp_user_name'] = "[email protected]" # Địa chỉ email sử dụng để gửi mail từ máy chủ gitlab_rails['smtp_password'] = "abc123" # Mật khẩu tương ứng với email ở trên. Phần mật khẩu này tránh các kí tự giới hạn sử dụng trong Ruby hoặc YAML (ví dụ như kí tự '). gitlab_rails['smtp_domain'] = "yourdomain.com" # Tên miền SMTP đang thiết lập, ví dụ: yourdomain.com, gmail.com gitlab_rails['smtp_authentication'] = "login" # Chọn hình thức login smtp với username, password khai báo ở bên trên gitlab_rails['smtp_enable_starttls_auto'] = true # Tự động kết nối TLS gitlab_rails['smtp_tls'] = true # Chọn phương thức mã hóa TLS gitlab_rails['gitlab_email_from'] = '[email protected]' # Tương tự địa chỉ mail bên trên sử dụng gitlab_rails['gitlab_email_display_name'] = 'Gitlab System' # Chỉ định display name sử dụng cho mail gitlab_rails['gitlab_email_reply_to'] = '[email protected]' # Thiết lập địa chỉ email reply to
Bạn lưu file thay đổi và apply cấu hình mới cho máy chủ gitlab.
# gitlab-ctl reconfigure
Test gửi mail
Đối với bản Gitlab EE (bản enterprise) thì sẽ có nút bấm gửi mail test trong giao diện quản trị.
Với bản Gitlab CE thì bị hạn chế tính năng đó. Vì thế, ta sẽ phải kiểm tra việc gửi mail thông qua console.
Trước tiên, bạn vào giao diện console bằng lệnh sau.
# gitlab-rails console
Nó sẽ hiện trên cửa sổ lệnh trông như thế này.
-------------------------------------------------------------------------------- GitLab: 13.2.2 (64fc0138d55) FOSS GitLab Shell: 13.3.0 PostgreSQL: 11.7 -------------------------------------------------------------------------------- Loading production environment (Rails 6.0.3.1) irb(main):001:0>
Tiếp theo, bạn gõ lệnh sau để thực hiện việc test gửi mail.
Notify.test_email('[email protected]', 'Send test mail gitlab', 'send mail from console').deliver_now
Trong đó:
- [email protected]: địa chỉ email của người nhận mail test
- Send test mail gitlab: tiêu đề mail
- send mail from console: nội dung mail
Nếu mail gửi test thành công, console sẽ trả về kết quả trông như thế này.

Kết luận
Với bài viết này, bạn đã thiết lập thành công tính năng gửi mail cho máy chủ Gitlab CE nội bộ.
Lưu ý port tường lửa: bạn cần mở OUTBOUND các port: 25, 465, 587.
If you appreciate what we share in this blog, you can support us by:
- Stay connected to: Facebook | Twitter | Google Plus | YouTube
- Subscribe email to recieve new posts from us: Sign up now.
- Start your own blog with SSD VPS - Free Let's Encrypt SSL ($2.5/month).
- Become a Supporter - Make a contribution via PayPal.
- Support us by purchasing Ribbon Lite Child theme being using on this website.
We are thankful for your support.