sites.template.sh 1020 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. echo '
  2. server {
  3. listen 127.0.0.1:65510;
  4. include /etc/nginx/conf.d/listen_plain.active;
  5. include /etc/nginx/conf.d/listen_ssl.active;
  6. ssl_certificate /etc/ssl/mail/cert.pem;
  7. ssl_certificate_key /etc/ssl/mail/key.pem;
  8. include /etc/nginx/conf.d/server_name.active;
  9. include /etc/nginx/conf.d/includes/site-defaults.conf;
  10. }
  11. ';
  12. for cert_dir in /etc/ssl/mail/*/ ; do
  13. if [[ ! -f ${cert_dir}domains ]] || [[ ! -f ${cert_dir}cert.pem ]] || [[ ! -f ${cert_dir}key.pem ]]; then
  14. continue
  15. fi
  16. # do not create vhost for default-certificate. the cert is already in the default server listen
  17. domains="$(cat ${cert_dir}domains | sed -e 's/^[[:space:]]*//')"
  18. case "${domains}" in
  19. "") continue;;
  20. "${MAILCOW_HOSTNAME}"*) continue;;
  21. esac
  22. echo -n '
  23. server {
  24. include /etc/nginx/conf.d/listen_ssl.active;
  25. ssl_certificate '${cert_dir}'cert.pem;
  26. ssl_certificate_key '${cert_dir}'key.pem;
  27. ';
  28. echo -n '
  29. server_name '${domains}';
  30. include /etc/nginx/conf.d/includes/site-defaults.conf;
  31. }
  32. ';
  33. done