GNU/Linux >> Belajar Linux >  >> Debian

Cara mengatur server surat dengan Exim4 dan DBMail di Debian 7 VPS

Pada artikel ini kami akan memandu Anda melalui langkah-langkah di cara menyiapkan server surat dengan Exim4 dan DBMail pada VPS Linux Debian 7 (Wheezy) .

Apa itu Exim4?

Ini adalah agen transfer surat (MTA) yang digunakan pada sistem operasi mirip Unix yang bertanggung jawab untuk menerima, merutekan, dan mengirimkan pesan email.

Apa itu DBMail?

Ini adalah layanan email berbasis sql yang cepat dan terukur yang menyimpan pesan email dalam database relasional. Ini mendukung beberapa front-end seperti IMAP4 , POP3 , ManageSieve , LMTP dll. dan beberapa back-end seperti MySQL , PostgreSQL , Oracle dan SQLite .

keuntungan utama DBMail adalah:

  • Skalabilitas
  • Kemampuan pengelolaan
  • Kecepatan
  • Keamanan
  • Fleksibilitas

Persyaratan Sistem?

  • Hosting VPS Linux Debian 7
  • Server basis data
  • Keluar MTA

PERBARUI SISTEM

Hal pertama yang harus dilakukan adalah SSH ke VPS Debian Anda, jalankan screen session dan perbarui vps linux Anda menggunakan perintah berikut:

## screen -U -S exim-dbmail
## apt-get update
## apt-get upgrade

TAMBAHKAN SUMBER DBMAIL

Lanjutkan dengan menambahkan sumber DBMail ke sources.list Anda sehingga Anda dapat menginstal paket-paket yang diperlukan pada langkah berikutnya. Anda dapat menambahkan sumber menggunakan perintah berikut:

## cp /etc/apt/sources.list{,.orig}
## echo "deb http://debian.nfgd.net/debian stable main" >> /etc/apt/sources.list
## echo "deb-src http://debian.nfgd.net/debian stable main" >> /etc/apt/sources.list

INSTAL PAKET YANG DIPERLUKAN

Perbarui sumber menggunakan apt dan instal paket yang diperlukan dengan menjalankan perintah berikut di terminal Anda sebagai root:

## apt-get update
## apt-get install exim4 exim4-daemon-heavy mysql-server mysql-client dbmail
## apt-get purge sendmail*

BUAT DATABASE DBMAIL

Selanjutnya, DBMail membutuhkan database sebagai back-endnya dan karena dalam artikel ini kita menggunakan server database MySQL, lanjutkan dengan membuat user dan database baru dengan menjalankan perintah berikut:

## mysql -u root -p

CREATE DATABASE dbmail;
GRANT ALL ON dbmail.* TO dbmail@localhost IDENTIFIED BY 'DATABASE_PASSWORD';
\q

ISI TABEL DATABASE DBMAIL

Ok, selanjutnya yang harus dilakukan adalah mengisi database yang baru dibuat dengan tabel database yang dibutuhkan yang disediakan oleh DBMail. Anda dapat melakukannya dengan menggunakan perintah berikut:

## zcat /usr/share/doc/dbmail/examples/create_tables.mysql.gz > /tmp/dbmail_create_tables.sql
## mysql -u dbmail -p dbmail < /tmp/dbmail_create_tables.sql

KONFIGURASI DBMAIL

Edit /etc/dbmail/dbmail.conf dan atur back-end DBMail dengan mengatur yang berikut:

## vim /etc/dbmail/dbmail.conf

dburi = mysql://dbmail:DATABASE_PASSWORD@localhost:3306/dbmail
authdriver = sql

jangan lupa untuk mengganti DATABASE_PASSWORD dengan sandi sebenarnya yang Anda gunakan saat membuat database

Selanjutnya, edit /etc/default/dbmail dan atur yang berikut:

## vim /etc/default/dbmail

START_IMAPD=true
START_LMTPD=true

MULAI ULANG LAYANAN DBMAIL

Dengan konfigurasi DBMail, lanjutkan dengan memulai layanan menggunakan:

## service dbmail restart

TAMBAHKAN DBMAIL KE STARTUP SISTEM

Tambahkan layanan DBMail ke startup VPS Debain Anda sehingga layanan dimulai secara otomatis saat Anda me-reboot server Anda:

## update-rc.d -f dbmail enable

KONFIGURASI EXIM

Selanjutnya, Anda harus mengkonfigurasi Exim dengan DBMail dengan tepat. Ini termasuk menyiapkan pencarian basis data pengguna, otentikasi, perutean, dan transportasi. Pertama, siapkan file konfigurasi utama Exim dan lanjutkan dengan pencarian pengguna, jadi:

## vim /etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype='internet'
dc_other_hostnames='mydomain.com'
dc_local_interfaces=''
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets='127.0.0.0/8'
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='maildir_home'

ganti mydomain.com dengan nama domain Anda yang sebenarnya

## vim /etc/exim4/conf.d/main/05_exim4-config_dbmail_user_lookup

hide mysql_servers = localhost/dbmail/dbmail/DATABASE_PASSWORD

Siapkan spanduk MTA dengan menambahkan yang berikut ini:

## vim /etc/exim4/conf.d/main/06_exim4-config_smtp_banner

smtp_banner = $smtp_active_hostname MTA

Sekarang, setup DBMail lmtp dengan mengkonfigurasi berikut ini:

## vim /etc/exim4/conf.d/transport/30_exim4-config_dbmail_lmtp

dbmail_lmtp:
driver = smtp
protocol = lmtp
hosts = 127.0.0.1
allow_localhost
return_path_add

Selanjutnya, atur pencarian pengguna:

## vim /etc/exim4/conf.d/router/750_exim4-config_dbmail_user

dbmail_user:
debug_print = "R: dbmail_user for $local_part@$domain"
driver = accept
condition = ${lookup mysql{\
SELECT alias_idnr FROM dbmail_aliases WHERE \
alias='${quote_mysql:$local_part@$domain}' OR \
alias='${quote_mysql:@$domain}'}{yes}{no}}
transport = dbmail_lmtp
cannot_route_message = Unknown user

dan lanjutkan dengan menyiapkan otentikasi pengguna:

## vim /etc/exim4/conf.d/auth/10_exim4_config_dbmail_auth_plain

auth_plain:
driver = plaintext
public_name = PLAIN
server_condition = ${lookup mysql{\
SELECT user_idnr FROM dbmail_users WHERE \
userid='${quote_mysql:$2}' AND \
passwd='${quote_mysql:$3}'}{yes}{no}}
server_prompts =:
server_set_id = $2
## vim /etc/exim4/conf.d/auth/15_exim4-config_dbmail_auth_login

auth_login:
driver = plaintext
public_name = LOGIN
server_condition = ${lookup mysql{\
SELECT user_idnr FROM dbmail_users WHERE \
userid='${quote_mysql:$1}' AND \
passwd='${quote_mysql:$2}'}{yes}{no}}
server_prompts = Username::: Password::
server_set_id = $1
## vim /etc/exim4/conf.d/auth/20_exim4-config_dbmail_auth_cram_md5

auth_cram_md5:
driver = cram_md5
public_name = CRAM-MD5
server_secret = ${lookup mysql{\
SELECT passwd FROM dbmail_users WHERE \
userid='${quote_mysql:$1}'}{$value}fail}
server_set_id = $1

Tambahkan lmtp ke /etc/services

## vim /etc/services

lmtp            24/tcp

dan terakhir perbarui konfigurasi Exim dan mulai ulang MTA menggunakan:

## update-exim4.conf
## service exim4 restart

BUAT AKUN EMAIL BARU

DBMail menyediakan beberapa utilitas baris perintah yang bagus untuk mengelola akun. Misalnya, untuk membuat akun baru, Anda akan menggunakan:

## dbmail-users -a USERNAME -w PASSWORD -s [email protected]

Informasi lebih lanjut tentang ini dapat Anda temukan di http://www.dbmail.org/dokuwiki/doku.php/manage_users

MENAMBAHKAN DOMAIN LAIN

Untuk menambahkan domain lain ke server email, Anda perlu mengedit /etc/exim4/update-exim4.conf.conf dan tambahkan domain Anda di dc_other_hostnames dipisahkan dengan titik koma seperti pada:

## vim /etc/exim4/update-exim4.conf.conf

dc_other_hostnames='mydomain.com;myotherdomain.org'

simpan dan tutup file, perbarui file konfigurasi Exim dan mulai ulang MTA menggunakan:

## update-exim4.conf
## service exim4 restart

Gunakan perintah berikut:

## tail -f /var/log/exim4/mainlog  /var/log/dbmail/dbmail.* /var/log/mail.log

untuk membaca file log server email Anda.

Itu dia. Buka http://www.dbmail.org/dokuwiki/doku.php untuk mempelajari lebih lanjut tentang DBMail dan cara menggunakannya.

Tentu saja Anda tidak perlu melakukan semua ini jika Anda menggunakan salah satu layanan Hosting VPS Linux kami, dalam hal ini Anda dapat meminta admin Linux ahli kami untuk menginstal Exim dengan DBMail . Mereka tersedia 24×7 dan akan segera memenuhi permintaan Anda.

PS. Jika Anda menyukai posting ini, silakan bagikan dengan teman-teman Anda di jejaring sosial menggunakan tombol di sebelah kiri atau cukup tinggalkan balasan di bawah. Terima kasih.


Debian
  1. Cara menginstal dan mengatur Debian 8 Docker Host minimalis

  2. Cara mengatur Replikasi Streaming PostgreSQL dengan Slot Replikasi di Debian 10

  3. Setup Apache dan Php dengan mod_fcgid di Ubuntu/Debian

  1. Cara Setup NTP Server dan Client di Debian 9 Stretch Linux

  2. Cara Mengatur LogAnalyzer dengan Rsyslog dan MySQL

  3. Cara mengatur server surat dengan Exim4 dan DBMail di Debian 7 VPS

  1. Cara Setup IP Failover dengan KeepAlived di Ubuntu &Debian

  2. Cara Setup Opencart dengan LAMP (PHP, Apache, Mariadb) di Debian 11

  3. Cara menginstal Drupal dengan PostgreSQL di VPS Debian 8