Configuring vSMTP

vSMTP, by default, stores it’s configuration in the /etc/vsmtp directory. Lets look at how files are organized.

Overview

A typical vSMTP configuration looks like the following.

/etc/vsmtp
┣ vsmtp.vsl
┣ filter.vsl
┣ conf.d/
┃     ┣ config.vsl
┃     ┣ interfaces.vsl
┃     β”— app.vsl
┣ domain-available/
┃     β”— example.com/
┃           ┣ config.vsl
┃           ┣ incoming.vsl
┃           ┣ outgoing.vsl
┃           β”— internal.vsl
┣ domain-enabled/
┃     β”— example.com -> /etc/vsmtp/domain-available/example.com
┣ objects/
┃     β”— net.vsl
┣ services/
┃     β”— mysql-service.vsl
β”— plugins/
      β”— vsmtp-plugin-mysql.so -> /usr/lib/vsmtp/libvsmtp-plugin-mysql-1.0.0.so

typical vSMTP configuration placed in the `/etc/vsmtp` directory

Lets break it down step by step, by building a configuration from scratch.