Added requested script for Alias Domains #5, as well as corresponding deletion script.
This commit is contained in:
parent
5f05452dc7
commit
cac5ad19a1
|
@ -38,6 +38,8 @@ There are scripts so far to do the following administrative functions:
|
||||||
| | set-alias-active.sh | Set an alias as active |
|
| | set-alias-active.sh | Set an alias as active |
|
||||||
| | set-alias-inactive.sh | Set an alias as inactive |
|
| | set-alias-inactive.sh | Set an alias as inactive |
|
||||||
| | is-address-an-alias.sh | Check if a given email address is an alias |
|
| | is-address-an-alias.sh | Check if a given email address is an alias |
|
||||||
|
| | add-alias-domain.sh | Add an alias domain |
|
||||||
|
| | remove-alias-domain.sh | Remove an alias domain |
|
||||||
| Forwarding | | |
|
| Forwarding | | |
|
||||||
| | list-forwarding.sh | List any configured forwards |
|
| | list-forwarding.sh | List any configured forwards |
|
||||||
| | remove-forwarding.sh | Deletes mail forwarding from a given address to another entered address |
|
| | remove-forwarding.sh | Deletes mail forwarding from a given address to another entered address |
|
||||||
|
|
37
Scripts/add-alias-domain.sh
Executable file
37
Scripts/add-alias-domain.sh
Executable file
|
@ -0,0 +1,37 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Author: Daulton
|
||||||
|
# Website: daulton.ca
|
||||||
|
# Purpose: Add an alias domain in iRedMail.
|
||||||
|
# License: 2-clause BSD license
|
||||||
|
#
|
||||||
|
# Let's say you have a mail domain example.com hosted on your iRedMail server, if you add domain name domain.ltd as an alias domain of example.com, all emails sent to username@domain.ltd will be delivered to user username@example.com's mailbox.
|
||||||
|
#
|
||||||
|
# bash add-alias-domain.sh example.com domain.ltd
|
||||||
|
#
|
||||||
|
# This will print SQL commands on the console directly, you can redirect the
|
||||||
|
# output to a file for further use like this:
|
||||||
|
#
|
||||||
|
# bash add-alias-domain.sh example.com domain.ltd > output.sql
|
||||||
|
#
|
||||||
|
# Import output.sql into SQL database like below:
|
||||||
|
#
|
||||||
|
# mysql -uroot -p
|
||||||
|
# mysql> USE vmail;
|
||||||
|
# mysql> SOURCE /path/to/output.sql;
|
||||||
|
#
|
||||||
|
# psql -U vmailadmin -d vmail
|
||||||
|
# sql> \i /path/to/output.sql;
|
||||||
|
|
||||||
|
# Read input
|
||||||
|
domain="$1"
|
||||||
|
domainAlias="$2"
|
||||||
|
|
||||||
|
if [ "$1" == "-h" ] || [ "$1" == "--h" ] || [ "$1" == "/h" ] || [ $# -ne 2 ]; then
|
||||||
|
printf "Purpose: Add an alias domain in iRedMail. \n"
|
||||||
|
printf "Note: Let's say you have a mail domain example.com hosted on your iRedMail server, if you add domain name domain.ltd as an alias domain of example.com, all emails sent to username@domain.ltd will be delivered to user username@example.com's mailbox. \n"
|
||||||
|
printf "Usage: bash add-alias-domain.sh example.com domain.ltd \n"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "INSERT INTO alias_domain (alias_domain, target_domain) VALUES ('${domainAlias}', '${domain}'); \n"
|
35
Scripts/remove-alias-domain.sh
Executable file
35
Scripts/remove-alias-domain.sh
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Author: Daulton
|
||||||
|
# Website: daulton.ca
|
||||||
|
# Purpose: Remove an alias domain in iRedMail.
|
||||||
|
# License: 2-clause BSD license
|
||||||
|
#
|
||||||
|
# bash remove-alias-domain.sh example.com domain.ltd
|
||||||
|
#
|
||||||
|
# This will print SQL commands on the console directly, you can redirect the
|
||||||
|
# output to a file for further use like this:
|
||||||
|
#
|
||||||
|
# bash remove-alias-domain.sh example.com domain.ltd > output.sql
|
||||||
|
#
|
||||||
|
# Import output.sql into SQL database like below:
|
||||||
|
#
|
||||||
|
# mysql -uroot -p
|
||||||
|
# mysql> USE vmail;
|
||||||
|
# mysql> SOURCE /path/to/output.sql;
|
||||||
|
#
|
||||||
|
# psql -U vmailadmin -d vmail
|
||||||
|
# sql> \i /path/to/output.sql;
|
||||||
|
|
||||||
|
# Read input
|
||||||
|
domain="$1"
|
||||||
|
domainAlias="$2"
|
||||||
|
|
||||||
|
if [ "$1" == "-h" ] || [ "$1" == "--h" ] || [ "$1" == "/h" ] || [ $# -ne 2 ]; then
|
||||||
|
printf "Purpose: Remove an alias domain in iRedMail. \n"
|
||||||
|
printf "Note: In the below example command the domain name domain.ltd is an alias domain of example.com. Adjust your command accordingly. \n"
|
||||||
|
printf "Usage: bash remove-alias-domain.sh example.com domain.ltd \n"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "DELETE FROM alias_domain WHERE alias_domain = '$domainAlias' AND target_domain = '$domain'; \n"
|
Loading…
Reference in a new issue