Both sides previous revision Previous revision Next revision | Previous revision |
home_server:email_server [2022-01-15 Sat wk02 09:34] – [Setup NFS Client] baumkp | home_server:email_server [2024-03-24 Sun wk12 16:01] (current) – [Email Client Setup Hint] baumkp |
---|
{{tag>Linux mail server email postfix dovecot emailserver ubuntu horde postfixadmin admin clamav apache roundcube webmail certbot certificate}} | {{tag>Linux mail server email postfix dovecot emailserver debian ubuntu horde postfixadmin admin clamav apache roundcube webmail certbot certificate}} |
======KPTree - Email Server Setup====== | ======KPTree - Email Server Setup====== |
======Email Server Notes====== | =====Email Server Notes===== |
| |
Setting up the email server on my home server was probably the most difficult task. Email server setup is intricate, risky and involves significant commitment and effort to setup reliably and maintain. | Setting up the email server on my home server was probably the most difficult task. Email server setup is intricate, risky and involves significant commitment and effort to setup reliably and maintain. |
| |
My current email server is based upon [[https://workaround.org/ispmail|workaround.org]] ISPmail tutorials for a Debian based server. I first got this up and running in later 2020 on Debian 10 (Buster). The most current is [[https://workaround.org/ispmail/bullseye/|ISPmail guide for Debian 11 “Bullseye”]] that was release late 2021 a couple of months after the Bullseye release. | My current email server is based upon [[https://workaround.org/ispmail|workaround.org]] ISPmail tutorials for a Debian based server. I first got this up and running in later 2020 on Debian 10 (Buster). The most current is [[https://workaround.org/ispmail/bullseye/|ISPmail guide for Debian 12 “Bookworm”]] that was release in 2023 shortly after the Bookworm release. |
| |
=====VM Setup===== | ====VM Setup==== |
====Set network IP address, static IP==== | I setup my email server on a separate virtual machine (VM) on my home server that also acts as a NAS. The main mail files are stored on a drive outside the VM.\\ |
| As the home server has only one external static IPv4 address the mail server subdomain needs to be shared on the common IP address with other subdomains and applications. We can use the web server's "virtual host" feature to differentiate between different subdomains. |
| |
| ===Set network IP address, static IP=== |
| The mail server need to have a static IP address on the local area network. |
++++I actually like to use netplan| | ++++I actually like to use netplan| |
* ''sudo apt install netplan.io'' | * ''sudo apt install netplan.io'' |
addresses: [192.168.1.1, 1.1.1.1]</code> | addresses: [192.168.1.1, 1.1.1.1]</code> |
++++ | ++++ |
====Change Hostname==== | |
| ===Change Hostname=== |
Change host name: ''sudo hostnamectl set-hostname hostname'', may also need to change ''/etc/hosts'' to suit | Change host name: ''sudo hostnamectl set-hostname hostname'', may also need to change ''/etc/hosts'' to suit |
====Setup NFS Client==== | |
| ===Setup NFS Client=== |
I store my main mail directory (''/var/vmail'') off the VM and on a shared server drives. ++++NFS Client setup details| | I store my main mail directory (''/var/vmail'') off the VM and on a shared server drives. ++++NFS Client setup details| |
* ''sudo apt install nfs-common'' | * ''sudo apt install nfs-common'' |
* To allow automatic boot of nfs clients: sudo vim /etc/fstab | * To allow automatic boot of nfs clients: sudo vim /etc/fstab |
* ''192.168.1.10:/export /mnt nfs4 bg 0 0'' this will mount all the drive defined on the server as sub-directories under | * ''192.168.1.10:/export /mnt nfs4 bg 0 0'' this will mount all the drive defined on the server as sub-directories under |
* ''192.168.1.10:/export/shared /mnt/shared nfs4 bg 0 0'' to mount a single sub-directory ++++ | * ''192.168.1.10:/export/shared /mnt/shared nfs4 bg 0 0'' to mount a single sub-directory |
| ++++ |
| |
=====Old Email Setup Notes===== | =====Old Email Setup Notes===== |
* ''sudo apachectl configtest'' to test an apach2 configuration | * ''sudo apachectl configtest'' to test an apach2 configuration |
* ''sudo systemctl reload apache2'' to restart apache2 and enable any configuration changes, could also use ''restart'' instead of ''reload'' to test (dry) run the certbot renewal process. Cerbot only allow 5 new certificates for a domain per week. | * ''sudo systemctl reload apache2'' to restart apache2 and enable any configuration changes, could also use ''restart'' instead of ''reload'' to test (dry) run the certbot renewal process. Cerbot only allow 5 new certificates for a domain per week. |
| * ''sudo certbot renew --dry-run'' for certificate renewal test |
| * ''sudo certbot renew'' for certificate renewal run |
| |
Use ''sudo apache2 -S'' to get current status | Use ''sudo apache2 -S'' to get current status |
SMTP Client Settings | SMTP Client Settings |
Server: mail.example.com | Server: mail.example.com |
Port: 567 | Port: 587 |
TICK, Server requires authentication | TICK, Server requires authentication |
Encryption Method: TLS (start after connecting) (or STARTTLS) | Encryption Method: TLS (start after connecting) (or STARTTLS) |