mailcow-dockerized-docs/docs/post_installation/firststeps-disable_ipv6.en.md

122 Zeilen
2,9 KiB
Markdown

This is **ONLY** recommended if you do not have an IPv6 enabled network on your host!
If you really need to, you can disable the usage of IPv6 in the compose file.
Additionally, you can also disable the startup of container "ipv6nat-mailcow", as it's not needed if you won't use IPv6.
2022-09-01 09:33:47 +02:00
Instead of editing docker-compose.yml directly, it is preferable to create an override file for it
and implement your changes to the service there. Unfortunately, this right now only seems to work for services, not for network settings.
2022-09-01 09:33:47 +02:00
To disable IPv6 on the mailcow network, open docker-compose.yml with your favourite text editor and search for the network section (it's near the bottom of the file).
2022-09-01 09:33:47 +02:00
**1.** Modify docker-compose.yml
Change `enable_ipv6: true` to `enable_ipv6: false`:
```
networks:
mailcow-network:
[...]
enable_ipv6: true # <<< set to false
[...]
```
**2.** Disable ipv6nat-mailcow
2022-09-01 09:33:47 +02:00
To disable the ipv6nat-mailcow container as well, go to your mailcow directory and create a new file called "docker-compose.override.yml":
**NOTE:** If you already have an override file, of course don't recreate it, but merge the lines below into your existing one accordingly!
```
# cd /opt/mailcow-dockerized
2022-09-01 09:33:47 +02:00
# touch docker-compose.override.yml
```
Open the file in your favourite text editor and fill in the following:
```
version: '2.1'
services:
ipv6nat-mailcow:
image: bash:latest
restart: "no"
entrypoint: ["echo", "ipv6nat disabled in compose.override.yml"]
```
For these changes to be effective, you need to fully stop and then restart the stack, so containers and networks are recreated:
2023-01-09 15:44:30 +01:00
=== "docker compose (Plugin)"
``` bash
docker compose down
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose down
docker-compose up -d
```
**3.** Disable IPv6 in unbound-mailcow
Edit `data/conf/unbound/unbound.conf` and set `do-ip6` to "no":
```
server:
[...]
do-ip6: no
[...]
```
Restart Unbound:
2023-01-09 15:44:30 +01:00
=== "docker compose (Plugin)"
``` bash
docker compose restart unbound-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart unbound-mailcow
```
**4.** Disable IPv6 in postfix-mailcow
Create `data/conf/postfix/extra.cf` and set `smtp_address_preference` to `ipv4`:
```
smtp_address_preference = ipv4
inet_protocols = ipv4
```
Restart Postfix:
2023-01-09 15:44:30 +01:00
=== "docker compose (Plugin)"
``` bash
docker compose restart postfix-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart postfix-mailcow
```
**5.** If your docker daemon completly disabled IPv6:
Fix the following NGINX, Dovecot and php-fpm config files
```
sed -i '/::/d' data/conf/nginx/listen_*
sed -i '/::/d' data/conf/nginx/templates/listen*
sed -i '/::/d' data/conf/nginx/dynmaps.conf
sed -i 's/,\[::\]//g' data/conf/dovecot/dovecot.conf
sed -i 's/\[::\]://g' data/conf/phpfpm/php-fpm.d/pools.conf
```