Errors configuring DKIM for Central

I'm running on AWS EC2 and using FreeDNS for my URL. Password emails used to go to junk folder. Now they don't even show up there. So I was following the instructions for Configuring DKIM. I set my hostname so that if I type hostname it prints mySub.selectedFreeDnsDomain.org, and then moving to the next step after a server reboot.

~/central/files/dkim$ openssl genrsa -out rsa.private 1024

> rsa.private: Is a directory
> 140224708642456:error:02001015:system library:fopen:Is a directory:bss_file.c:398:fopen('rsa.private','w')
> 140224708642456:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:

~/central/files/dkim$ openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM

> unable to load Private Key
> 140404466472600:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: ANY PRIVATE KEY

I'm not sure if I did something wrong. If I can't configure DKIM given my other settings. Etc. Any help or pointers appreciated.

Central version:

versions:
836112b5bf39de826e1bf141d21db7f7b8d54ecf
 4732f7112a286165241aaf7f971f2c2e38d6bb8a client (v1.0.0)
 e9ffd2c0c3aa1a9475852e1397b8259e2b03165a server (v1.0.3)

Even with DKIM, most IP ranges from cloud providers will run into deliverability issues. Your best option is to use Mailgun, or if you are on AWS, you can also try SES.

We have documentation at https://docs.getodk.org/central-troubleshooting with more information.

cp files/service/config.json.template files/service/config.json.template.default
vim files/service/config.json.template

edited according to https://docs.getodk.org/central-install-digital-ocean/#using-a-custom-mail-server and ran docker-compose build service, docker-compose stop service, docker-compose up -d service
tried to login on the web and got a "Something went wrong: the server returned an invalid error."
decided to try and reverse what i'd done

# replaced the original config file
rm files/service/config.json.template
cp files/service/config.json.template.default files/service/config.json.template

and ran docker-compose build service, docker-compose stop service, docker-compose up -d service again
tried to login on the web and again got a "Something went wrong: the server returned an invalid error."

ran docker-compose ps

       Name                     Command                  State                        Ports                  
-------------------------------------------------------------------------------------------------------------
central_postgres_1   docker-entrypoint.sh postgres    Up             5432/tcp                                
enketo               docker-entrypoint.sh /bin/ ...   Up             8005/tcp                                
enketo_redis_cache   docker-entrypoint.sh redis ...   Up             6379/tcp                                
enketo_redis_main    docker-entrypoint.sh redis ...   Up             6379/tcp                                
mail                 /bin/entrypoint.sh exim -b ...   Up             25/tcp                                  
nginx                /bin/bash /scripts/odk-set ...   Up (healthy)   0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
pyxform              waitress-serve --port=80 - ...   Up                                                     
secrets              docker-entrypoint.sh ./gen ...   Exit 0                                                 
service              docker-entrypoint.sh ./wai ...   Up             8383/tcp                                

secrets showing Exit 0 is a problem i'm guessing?

never mind, a server reboot and/or waiting a little bit seems to have resolved the issue.

1 Like

A post was split to a new topic: Security of mail delivery services