More mail SQL

This commit is contained in:
Jeff Moe 2024-09-01 10:34:12 -06:00
parent 41301a0554
commit 42000fd748
2 changed files with 40 additions and 18 deletions

View file

@ -30,8 +30,8 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:6 #: ../../../_source/mail-libre-is.rst:6
msgid "" msgid ""
"Setting up Internet mail servers is a pain. It's nothing like just " "Setting up Internet mail servers is a pain. It's nothing like just setting "
"setting up a web server... This install is based on this guide:" "up a web server... This install is based on this guide:"
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:10 #: ../../../_source/mail-libre-is.rst:10
@ -88,9 +88,9 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:41 #: ../../../_source/mail-libre-is.rst:41
msgid "" msgid ""
"The Apache webserver is used out of laziness as it allows easy " "The Apache webserver is used out of laziness as it allows easy certificate "
"certificate updates with certbot. A webmail server won't be running on " "updates with certbot. A webmail server won't be running on the main mail "
"the main mail server." "server."
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:50 #: ../../../_source/mail-libre-is.rst:50
@ -115,8 +115,8 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:91 #: ../../../_source/mail-libre-is.rst:91
msgid "" msgid ""
"Note, the licensing of Redis has gone bad. The version in Debian is OK. " "Note, the licensing of Redis has gone bad. The version in Debian is OK. But "
"But in the future, probably replace with a fork." "in the future, probably replace with a fork."
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:100 #: ../../../_source/mail-libre-is.rst:100
@ -133,8 +133,8 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:110 #: ../../../_source/mail-libre-is.rst:110
msgid "" msgid ""
"Encryption certificates with Let's Encrypt. Not using an Apache webserver" "Encryption certificates with Let's Encrypt. Not using an Apache webserver on "
" on the mail server makes getting new certificates a bit more complex." "the mail server makes getting new certificates a bit more complex."
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:125 #: ../../../_source/mail-libre-is.rst:125
@ -143,15 +143,15 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:132 #: ../../../_source/mail-libre-is.rst:132
msgid "" msgid ""
"Note, since IPv6 isn't being used, the dovecot install barfs. Edit " "Note, since IPv6 isn't being used, the dovecot install barfs. Edit /etc/"
"/etc/dovecot/dovecot.conf and add this line, where appropriate:" "dovecot/dovecot.conf and add this line, where appropriate:"
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:139 #: ../../../_source/mail-libre-is.rst:139
msgid "" msgid ""
"Note, this is removing the \"::\" from listen, which using IPv6. Then re-" "Note, this is removing the \"::\" from listen, which using IPv6. Then re-run "
"run the install so the packages are happy. Note, the re-install won't " "the install so the packages are happy. Note, the re-install won't overwrite "
"overwrite the \"listen\" change." "the \"listen\" change."
msgstr "" msgstr ""
#: ../../../_source/mail-libre-is.rst:159 #: ../../../_source/mail-libre-is.rst:159
@ -181,7 +181,3 @@ msgstr ""
#: ../../../_source/mail-libre-is.rst:179 #: ../../../_source/mail-libre-is.rst:179
msgid "Perhaps these too." msgid "Perhaps these too."
msgstr "" msgstr ""
#~ msgid "Just usingi encrypted IMAPS, not POP."
#~ msgstr ""

View file

@ -66,13 +66,39 @@ Change password to something secure.
.. code-block:: sql .. code-block:: sql
CREATE DATABASE mailserver; CREATE DATABASE mailserver;
GRANT ALL ON mailserver.* TO 'mailadmin'@'localhost' IDENTIFIED BY 'password'; GRANT ALL ON mailserver.* TO 'mailadmin'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT ON mailserver.* TO 'mailserver'@'127.0.0.1' IDENTIFIED BY 'password'; GRANT SELECT ON mailserver.* TO 'mailserver'@'127.0.0.1' IDENTIFIED BY 'password';
USE mailserver;
CREATE TABLE IF NOT EXISTS `virtual_domains` ( CREATE TABLE IF NOT EXISTS `virtual_domains` (
`id` int(11) NOT NULL auto_increment, `id` int(11) NOT NULL auto_increment,
`name` varchar(50) NOT NULL, `name` varchar(50) NOT NULL,
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8; ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `virtual_users` (
`id` int(11) NOT NULL auto_increment,
`domain_id` int(11) NOT NULL,
`email` varchar(100) NOT NULL,
`password` varchar(150) NOT NULL,
`quota` bigint(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `email` (`email`),
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `virtual_aliases` (
`id` int(11) NOT NULL auto_increment,
`domain_id` int(11) NOT NULL,
`source` varchar(100) NOT NULL,
`destination` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
EXIT EXIT