This allows Keycloak to send emails. Using naked TLS fails with: ``` Mar 23 00:10:50 public01 keycloak-start[875412]: Caused by: jakarta.mail.MessagingException: Could not connect to SMTP host: smtp.postmarkapp.com, port: 2525; Mar 23 00:10:50 public01 keycloak-start[875412]: nested exception is: Mar 23 00:10:50 public01 keycloak-start[875412]: javax.net.ssl.SSLException: Unsupported or unrecognized SSL message Mar 23 00:10:50 public01 keycloak-start[875412]: at org.eclipse.angus.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2245) Mar 23 00:10:50 public01 keycloak-start[875412]: at org.eclipse.angus.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:729) Mar 23 00:10:50 public01 keycloak-start[875412]: at jakarta.mail.Service.connect(Service.java:342) Mar 23 00:10:50 public01 keycloak-start[875412]: at jakarta.mail.Service.connect(Service.java:222) Mar 23 00:10:50 public01 keycloak-start[875412]: at jakarta.mail.Service.connect(Service.java:243) Mar 23 00:10:50 public01 keycloak-start[875412]: at org.keycloak.email.DefaultEmailSenderProvider.send(DefaultEmailSenderProvider.java:161) Mar 23 00:10:50 public01 keycloak-start[875412]: ... 17 more Mar 23 00:10:50 public01 keycloak-start[875412]: Caused by: javax.net.ssl.SSLException: Unsupported or unrecognized SSL message ``` With starttls, we can send emails, so use that. Change-Id: I5898bec4f9413a8714c9adb1654d9e964022d183 Reviewed-on: https://cl.snix.dev/c/snix/+/30249 Tested-by: besadii Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Autosubmit: Florian Klink <flokli@flokli.de> |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| clients.tf | ||
| default.nix | ||
| identity_providers.tf | ||
| main.tf | ||
| permissions.tf | ||
| README.md | ||
Terraform for Keycloak
This contains the Terraform configuration for deploying TVL's Keycloak
instance (which lives at auth.tvl.fyi).
Secrets are needed for applying this. The encrypted file
//ops/secrets/tf-keycloak.age contains export calls which should
be sourced, for example via direnv, by users with the appropriate
credentials.
An example direnv configuration used by tazjin is this:
# //ops/keycloak/.envrc
source_up
eval $(age --decrypt -i ~/.ssh/id_ed25519 $(git rev-parse --show-toplevel)/ops/secrets/tf-keycloak.age)