What are virtual users for email servers?

I'm currently trying to understand the process of creating a mail server by following this guide, among others.

I currently have a website of the form example.tk by way of a Digital Ocean droplet on Ubuntu 20.04 and am attempting to have my mail server operate on mail.example.tk.

We are going to introduce the email address and passwords associated for each domain. Make sure you change all the info with your specific information.

INSERT INTO `servermail`.`virtual_users`
(`id`, `domain_id`, `password` , `email`)
VALUES
('1', '1', ENCRYPT('firstpassword', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[email protected]'),
('2', '1', ENCRYPT('secondpassword', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[email protected]');

I haven't the slightest clue of what to put for '[email protected]' and '[email protected]'. I have a domain for my website, and the mail subdomain I want to use, but I have no clue which email addresses to put here. I am a complete beginner, and the only email address I have access to is my personal email address. Am I meant to make up email addresses or something? My example.tk website has no email addresses associated with it.


Solution 1:

If you don't use virtual users, it means you need create a normal user (by adduser command), then use the user directly in mail server MTA (e.g Postfix). In this case, the normal user can even use ssh logins and other normal actions for a Linux user.

But when you use a virtual user (recommended), that user is just for mail server and normally don't have ability for other actions.

Also, there are some other differences. for example when you use a database instead of Linux normal user, you can backup and easily manage (import, export) them with database advantages.

Also, instead of using database commands to create tables and users, you can use some applications like Postfix.Admin .