haraka 0.0.33 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/.claude/settings.local.json +28 -0
  2. package/.githooks/pre-commit +41 -0
  3. package/.prettierignore +6 -0
  4. package/.qlty/.gitignore +7 -0
  5. package/.qlty/configs/.shellcheckrc +1 -0
  6. package/.qlty/qlty.toml +15 -0
  7. package/CHANGELOG.md +1894 -0
  8. package/CLAUDE.md +40 -0
  9. package/CONTRIBUTORS.md +34 -0
  10. package/Dockerfile +50 -0
  11. package/GEMINI.md +38 -0
  12. package/LICENSE +22 -0
  13. package/Plugins.md +227 -0
  14. package/README.md +119 -4
  15. package/SECURITY.md +178 -0
  16. package/TODO +22 -0
  17. package/address.js +53 -0
  18. package/bin/haraka +593 -0
  19. package/bin/haraka_grep +32 -0
  20. package/config/aliases +2 -0
  21. package/config/auth_flat_file.ini +7 -0
  22. package/config/auth_vpopmaild.ini +9 -0
  23. package/config/connection.ini +79 -0
  24. package/config/delay_deny.ini +7 -0
  25. package/config/dhparams.pem +8 -0
  26. package/config/host_list +3 -0
  27. package/config/host_list_regex +6 -0
  28. package/config/http.ini +11 -0
  29. package/config/lmtp.ini +7 -0
  30. package/config/log.ini +11 -0
  31. package/config/me +1 -0
  32. package/config/outbound.bounce_message +18 -0
  33. package/config/outbound.bounce_message_html +36 -0
  34. package/config/outbound.bounce_message_image +106 -0
  35. package/config/outbound.ini +24 -0
  36. package/config/plugins +67 -0
  37. package/config/smtp.ini +37 -0
  38. package/config/smtp_bridge.ini +4 -0
  39. package/config/smtp_forward.ini +31 -0
  40. package/config/smtp_proxy.ini +27 -0
  41. package/config/tarpit.timeout +1 -0
  42. package/config/tls.ini +83 -0
  43. package/config/tls_cert.pem +23 -0
  44. package/config/tls_key.pem +28 -0
  45. package/config/watch.ini +12 -0
  46. package/config/xclient.hosts +2 -0
  47. package/connection.js +1863 -0
  48. package/contrib/Haraka.cf +6 -0
  49. package/contrib/Haraka.pm +35 -0
  50. package/contrib/bad_smtp_server.pl +25 -0
  51. package/contrib/bsd-rc.d/haraka +61 -0
  52. package/contrib/debian-init.d/haraka +87 -0
  53. package/contrib/haraka.init +96 -0
  54. package/contrib/haraka.service +23 -0
  55. package/contrib/plugin2npm.sh +81 -0
  56. package/contrib/ubuntu-upstart/haraka.conf +27 -0
  57. package/coverage/coverage-final.json +2 -0
  58. package/coverage/coverage-summary.json +33 -0
  59. package/coverage/tmp/coverage-79131-1779241025146-0.json +1 -0
  60. package/coverage/tmp/coverage-79132-1779240999690-0.json +1 -0
  61. package/coverage/tmp/coverage-79172-1779241000095-0.json +1 -0
  62. package/coverage/tmp/coverage-79210-1779241000156-0.json +1 -0
  63. package/coverage/tmp/coverage-79211-1779241000209-0.json +1 -0
  64. package/coverage/tmp/coverage-79212-1779241000266-0.json +1 -0
  65. package/coverage/tmp/coverage-79213-1779241000441-0.json +1 -0
  66. package/coverage/tmp/coverage-79214-1779241000626-0.json +1 -0
  67. package/coverage/tmp/coverage-79215-1779241000795-0.json +1 -0
  68. package/coverage/tmp/coverage-79216-1779241000965-0.json +1 -0
  69. package/coverage/tmp/coverage-79218-1779241001013-0.json +1 -0
  70. package/coverage/tmp/coverage-79219-1779241001179-0.json +1 -0
  71. package/coverage/tmp/coverage-79220-1779241006249-0.json +1 -0
  72. package/coverage/tmp/coverage-79227-1779241011453-0.json +1 -0
  73. package/coverage/tmp/coverage-79229-1779241011537-0.json +1 -0
  74. package/coverage/tmp/coverage-79230-1779241011647-0.json +1 -0
  75. package/coverage/tmp/coverage-79231-1779241011765-0.json +1 -0
  76. package/coverage/tmp/coverage-79232-1779241011841-0.json +1 -0
  77. package/coverage/tmp/coverage-79233-1779241011909-0.json +1 -0
  78. package/coverage/tmp/coverage-79234-1779241011984-0.json +1 -0
  79. package/coverage/tmp/coverage-79235-1779241012055-0.json +1 -0
  80. package/coverage/tmp/coverage-79236-1779241012230-0.json +1 -0
  81. package/coverage/tmp/coverage-79237-1779241012300-0.json +1 -0
  82. package/coverage/tmp/coverage-79238-1779241012368-0.json +1 -0
  83. package/coverage/tmp/coverage-79239-1779241012438-0.json +1 -0
  84. package/coverage/tmp/coverage-79240-1779241012511-0.json +1 -0
  85. package/coverage/tmp/coverage-79241-1779241012582-0.json +1 -0
  86. package/coverage/tmp/coverage-79242-1779241012652-0.json +1 -0
  87. package/coverage/tmp/coverage-79243-1779241012814-0.json +1 -0
  88. package/coverage/tmp/coverage-79244-1779241012931-0.json +1 -0
  89. package/coverage/tmp/coverage-79245-1779241013007-0.json +1 -0
  90. package/coverage/tmp/coverage-79246-1779241013106-0.json +1 -0
  91. package/coverage/tmp/coverage-79247-1779241013178-0.json +1 -0
  92. package/coverage/tmp/coverage-79248-1779241013244-0.json +1 -0
  93. package/coverage/tmp/coverage-79249-1779241013409-0.json +1 -0
  94. package/coverage/tmp/coverage-79250-1779241013697-0.json +1 -0
  95. package/coverage/tmp/coverage-79251-1779241013847-0.json +1 -0
  96. package/coverage/tmp/coverage-79252-1779241014288-0.json +1 -0
  97. package/coverage/tmp/coverage-79253-1779241014378-0.json +1 -0
  98. package/coverage/tmp/coverage-79254-1779241014428-0.json +1 -0
  99. package/coverage/tmp/coverage-79255-1779241021774-0.json +1 -0
  100. package/coverage/tmp/coverage-80382-1779241021949-0.json +1 -0
  101. package/coverage/tmp/coverage-80383-1779241025019-0.json +1 -0
  102. package/coverage/tmp/coverage-80384-1779241025133-0.json +1 -0
  103. package/docs/Body.md +1 -0
  104. package/docs/Config.md +1 -0
  105. package/docs/Connection.md +153 -0
  106. package/docs/CoreConfig.md +96 -0
  107. package/docs/CustomReturnCodes.md +3 -0
  108. package/docs/HAProxy.md +62 -0
  109. package/docs/Header.md +1 -0
  110. package/docs/Logging.md +129 -0
  111. package/docs/Outbound.md +210 -0
  112. package/docs/Plugins.md +372 -0
  113. package/docs/Results.md +7 -0
  114. package/docs/Transaction.md +135 -0
  115. package/docs/Tutorial.md +183 -0
  116. package/docs/deprecated/access.md +3 -0
  117. package/docs/deprecated/backscatterer.md +9 -0
  118. package/docs/deprecated/connect.rdns_access.md +53 -0
  119. package/docs/deprecated/data.headers.md +3 -0
  120. package/docs/deprecated/data.nomsgid.md +7 -0
  121. package/docs/deprecated/data.noreceived.md +11 -0
  122. package/docs/deprecated/data.rfc5322_header_checks.md +11 -0
  123. package/docs/deprecated/dkim_sign.md +97 -0
  124. package/docs/deprecated/dkim_verify.md +28 -0
  125. package/docs/deprecated/dnsbl.md +80 -0
  126. package/docs/deprecated/dnswl.md +73 -0
  127. package/docs/deprecated/lookup_rdns.strict.md +67 -0
  128. package/docs/deprecated/mail_from.access.md +52 -0
  129. package/docs/deprecated/mail_from.blocklist.md +18 -0
  130. package/docs/deprecated/mail_from.nobounces.md +8 -0
  131. package/docs/deprecated/rcpt_to.access.md +53 -0
  132. package/docs/deprecated/rcpt_to.blocklist.md +18 -0
  133. package/docs/deprecated/rcpt_to.routes.md +3 -0
  134. package/docs/deprecated/rdns.regexp.md +30 -0
  135. package/docs/plugins/aliases.md +3 -0
  136. package/docs/plugins/auth/auth_bridge.md +34 -0
  137. package/docs/plugins/auth/auth_ldap.md +4 -0
  138. package/docs/plugins/auth/auth_proxy.md +36 -0
  139. package/docs/plugins/auth/auth_vpopmaild.md +33 -0
  140. package/docs/plugins/auth/flat_file.md +40 -0
  141. package/docs/plugins/block_me.md +18 -0
  142. package/docs/plugins/data.signatures.md +11 -0
  143. package/docs/plugins/delay_deny.md +23 -0
  144. package/docs/plugins/max_unrecognized_commands.md +6 -0
  145. package/docs/plugins/prevent_credential_leaks.md +22 -0
  146. package/docs/plugins/process_title.md +42 -0
  147. package/docs/plugins/queue/deliver.md +3 -0
  148. package/docs/plugins/queue/discard.md +32 -0
  149. package/docs/plugins/queue/lmtp.md +24 -0
  150. package/docs/plugins/queue/qmail-queue.md +16 -0
  151. package/docs/plugins/queue/quarantine.md +87 -0
  152. package/docs/plugins/queue/smtp_bridge.md +32 -0
  153. package/docs/plugins/queue/smtp_forward.md +127 -0
  154. package/docs/plugins/queue/smtp_proxy.md +68 -0
  155. package/docs/plugins/queue/test.md +7 -0
  156. package/docs/plugins/rcpt_to.in_host_list.md +34 -0
  157. package/docs/plugins/rcpt_to.max_count.md +3 -0
  158. package/docs/plugins/record_envelope_addresses.md +20 -0
  159. package/docs/plugins/relay.md +3 -0
  160. package/docs/plugins/reseed_rng.md +16 -0
  161. package/docs/plugins/status.md +41 -0
  162. package/docs/plugins/tarpit.md +50 -0
  163. package/docs/plugins/tls.md +235 -0
  164. package/docs/plugins/toobusy.md +27 -0
  165. package/docs/plugins/xclient.md +10 -0
  166. package/docs/tutorials/Migrating_from_v1_to_v2.md +96 -0
  167. package/docs/tutorials/SettingUpOutbound.md +62 -0
  168. package/eslint.config.mjs +2 -0
  169. package/haraka.js +74 -0
  170. package/haraka.sh +2 -0
  171. package/http/html/404.html +58 -0
  172. package/http/html/index.html +47 -0
  173. package/http/package.json +21 -0
  174. package/line_socket.js +24 -0
  175. package/logger.js +322 -0
  176. package/outbound/client_pool.js +59 -0
  177. package/outbound/config.js +134 -0
  178. package/outbound/hmail.js +1504 -0
  179. package/outbound/index.js +349 -0
  180. package/outbound/qfile.js +93 -0
  181. package/outbound/queue.js +399 -0
  182. package/outbound/tls.js +85 -0
  183. package/outbound/todo.js +17 -0
  184. package/package.json +99 -4
  185. package/plugins/.eslintrc.yaml +3 -0
  186. package/plugins/auth/auth_base.js +261 -0
  187. package/plugins/auth/auth_bridge.js +20 -0
  188. package/plugins/auth/auth_proxy.js +227 -0
  189. package/plugins/auth/auth_vpopmaild.js +162 -0
  190. package/plugins/auth/flat_file.js +44 -0
  191. package/plugins/block_me.js +88 -0
  192. package/plugins/data.signatures.js +30 -0
  193. package/plugins/delay_deny.js +153 -0
  194. package/plugins/prevent_credential_leaks.js +61 -0
  195. package/plugins/process_title.js +197 -0
  196. package/plugins/profile.js +11 -0
  197. package/plugins/queue/deliver.js +12 -0
  198. package/plugins/queue/discard.js +27 -0
  199. package/plugins/queue/lmtp.js +45 -0
  200. package/plugins/queue/qmail-queue.js +93 -0
  201. package/plugins/queue/quarantine.js +133 -0
  202. package/plugins/queue/smtp_bridge.js +45 -0
  203. package/plugins/queue/smtp_forward.js +371 -0
  204. package/plugins/queue/smtp_proxy.js +142 -0
  205. package/plugins/queue/test.js +15 -0
  206. package/plugins/rcpt_to.host_list_base.js +65 -0
  207. package/plugins/rcpt_to.in_host_list.js +56 -0
  208. package/plugins/record_envelope_addresses.js +17 -0
  209. package/plugins/reseed_rng.js +7 -0
  210. package/plugins/status.js +274 -0
  211. package/plugins/tarpit.js +45 -0
  212. package/plugins/tls.js +164 -0
  213. package/plugins/toobusy.js +47 -0
  214. package/plugins/xclient.js +124 -0
  215. package/plugins.js +604 -0
  216. package/queue/1772642154987_1775581346001_4_82235_TGwgfd_2_mattbook-m3.home.simerson.net +0 -0
  217. package/run_tests +11 -0
  218. package/server.js +827 -0
  219. package/smtp_client.js +504 -0
  220. package/test/.eslintrc.yaml +11 -0
  221. package/test/config/auth_flat_file.ini +5 -0
  222. package/test/config/block_me.recipient +1 -0
  223. package/test/config/block_me.senders +1 -0
  224. package/test/config/dhparams.pem +8 -0
  225. package/test/config/host_list +2 -0
  226. package/test/config/outbound_tls_cert.pem +1 -0
  227. package/test/config/outbound_tls_key.pem +1 -0
  228. package/test/config/plugins +7 -0
  229. package/test/config/smtp.ini +11 -0
  230. package/test/config/smtp_forward.ini +30 -0
  231. package/test/config/tls/example.com/_.example.com.key +28 -0
  232. package/test/config/tls/example.com/example.com.crt +25 -0
  233. package/test/config/tls/haraka.local.pem +51 -0
  234. package/test/config/tls.ini +45 -0
  235. package/test/config/tls_cert.pem +21 -0
  236. package/test/config/tls_key.pem +28 -0
  237. package/test/connection.js +817 -0
  238. package/test/fixtures/haproxy_allowed/config/connection.ini +3 -0
  239. package/test/fixtures/haproxy_disabled/config/connection.ini +3 -0
  240. package/test/fixtures/haproxy_untrusted/config/connection.ini +3 -0
  241. package/test/fixtures/line_socket.js +21 -0
  242. package/test/fixtures/todo_qfile.txt +0 -0
  243. package/test/fixtures/util_hmailitem.js +156 -0
  244. package/test/installation/config/test-plugin-flat +1 -0
  245. package/test/installation/config/test-plugin.ini +10 -0
  246. package/test/installation/config/tls.ini +1 -0
  247. package/test/installation/node_modules/load_first/index.js +5 -0
  248. package/test/installation/node_modules/load_first/package.json +11 -0
  249. package/test/installation/node_modules/test-plugin/config/test-plugin-flat +1 -0
  250. package/test/installation/node_modules/test-plugin/config/test-plugin.ini +9 -0
  251. package/test/installation/node_modules/test-plugin/package.json +5 -0
  252. package/test/installation/node_modules/test-plugin/test-plugin.js +5 -0
  253. package/test/installation/plugins/base_plugin.js +3 -0
  254. package/test/installation/plugins/folder_plugin/index.js +3 -0
  255. package/test/installation/plugins/folder_plugin/package.json +11 -0
  256. package/test/installation/plugins/inherits.js +7 -0
  257. package/test/installation/plugins/load_first.js +3 -0
  258. package/test/installation/plugins/plugin.js +1 -0
  259. package/test/installation/plugins/tls.js +3 -0
  260. package/test/logger.js +217 -0
  261. package/test/loud/config/dhparams.pem +0 -0
  262. package/test/loud/config/tls/goobered.pem +45 -0
  263. package/test/loud/config/tls.ini +43 -0
  264. package/test/mail_specimen/base64-root-part.txt +23 -0
  265. package/test/mail_specimen/varied-fold-lengths-preserve-data.txt +283 -0
  266. package/test/outbound/bounce_net_errors.js +133 -0
  267. package/test/outbound/bounce_rfc3464.js +226 -0
  268. package/test/outbound/hmail.js +210 -0
  269. package/test/outbound/index.js +385 -0
  270. package/test/outbound/qfile.js +124 -0
  271. package/test/outbound/queue.js +325 -0
  272. package/test/plugins/auth/auth_base.js +620 -0
  273. package/test/plugins/auth/auth_bridge.js +80 -0
  274. package/test/plugins/auth/auth_vpopmaild.js +81 -0
  275. package/test/plugins/auth/flat_file.js +123 -0
  276. package/test/plugins/block_me.js +141 -0
  277. package/test/plugins/data.signatures.js +111 -0
  278. package/test/plugins/delay_deny.js +262 -0
  279. package/test/plugins/prevent_credential_leaks.js +174 -0
  280. package/test/plugins/process_title.js +141 -0
  281. package/test/plugins/queue/deliver.js +98 -0
  282. package/test/plugins/queue/discard.js +78 -0
  283. package/test/plugins/queue/lmtp.js +137 -0
  284. package/test/plugins/queue/qmail-queue.js +98 -0
  285. package/test/plugins/queue/quarantine.js +80 -0
  286. package/test/plugins/queue/smtp_bridge.js +152 -0
  287. package/test/plugins/queue/smtp_forward.js +1023 -0
  288. package/test/plugins/queue/smtp_proxy.js +138 -0
  289. package/test/plugins/rcpt_to.host_list_base.js +102 -0
  290. package/test/plugins/rcpt_to.in_host_list.js +186 -0
  291. package/test/plugins/record_envelope_addresses.js +66 -0
  292. package/test/plugins/reseed_rng.js +34 -0
  293. package/test/plugins/status.js +207 -0
  294. package/test/plugins/tarpit.js +90 -0
  295. package/test/plugins/tls.js +86 -0
  296. package/test/plugins/toobusy.js +21 -0
  297. package/test/plugins/xclient.js +119 -0
  298. package/test/plugins.js +230 -0
  299. package/test/queue/1507509981169_1507509981169_0_61403_e0Y0Ym_1_fixed +0 -0
  300. package/test/queue/1507509981169_1507509981169_0_61403_e0Y0Ym_1_haraka +0 -0
  301. package/test/queue/1508269674999_1508269674999_0_34002_socVUF_1_haraka +0 -0
  302. package/test/queue/1508455115683_1508455115683_0_90253_9Q4o4V_1_haraka +0 -0
  303. package/test/queue/zero-length +0 -0
  304. package/test/server.js +1012 -0
  305. package/test/smtp_client.js +1303 -0
  306. package/test/tls_socket.js +321 -0
  307. package/test/transaction.js +554 -0
  308. package/tls_socket.js +771 -0
  309. package/transaction.js +267 -0
@@ -0,0 +1,51 @@
1
+ -----BEGIN PRIVATE KEY-----
2
+ MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDCdI9wQHH4zJzr
3
+ Kjd4/a4AV8uPnvZwOHC/mhFnAS2V4+oPLgBZYG/yiktsmTcsYl3Cgf3n8X1eMsRl
4
+ i91kdC1+2txMsn/Y6DDAxW+qbYWIvWWPQlCr+eweGAYf3HkWAd3nAiKB1qfnUvL5
5
+ y0werjQFV9cAeK9xqtC7HqaTOYtNnAmipIGLK7y4RQfnzf20Qqu9yv3uC2Gaj3Vk
6
+ EhGFRaIvKxVmnvCmRYa8UM3HKtF4q+ApkoeslJjqK68vSXtDQFZ6qHatotWeYVzt
7
+ luX66f925pKBTU6AVJJQxrCWjQ/KLLLW7qbytaMjagz4IBpRNpb3Wfc7c7/51nDm
8
+ TyECGKMnAgMBAAECggEAFbpmiLl6wr1CT3ixKCDYf4tP4KV3jgSQfKhfh233RQdp
9
+ kPan7VS8TZKsaN8Z7iizp1dVIsS2KH9tuJcPTvk4WDNmaF+Nr5QKVo/5MUb5o9Td
10
+ 80sKrpzHiHlQveCp2w6sV/LCHlX4/v0iz0yrHcaDY5F0IcZafE4E8tOy80J70VkL
11
+ NmWb9bP5CKFs7bAknGzXSGonhOVH1Yf7WTE7OYGi5XfBoLWLozTzL19YKez6Je4m
12
+ KHlSzVSmXqmYgZ/48U+RIRp0m31zswAdvmkg6qGNr8F4kXcySDzhQjdeojIj8sho
13
+ MVy9dl+qjSxIBGDjmZz/MfySyEfJABJVf6anx3JE4QKBgQDuQi3x3w/utdtmfI4l
14
+ 9n1SsgB3uu/eNl/5LuWyQBKoKO1iyR86LfGo9nqbsiFtg72IfuCy1QSklm5ZVFqL
15
+ vyRb77YH1fbah0BM4JCj2JhKgJMPJTWJ3woC5tJu67nKO3W6yB9TjMOFFl1y41tl
16
+ NJuvoVUNZO1dYMtDJynLJ0GI8QKBgQDQ72EMozJTvS3VDGemXDimkyJyYGKyqV/f
17
+ KzCfW66lLUREPEYN6NaG49jwR/dQfPqBPtTQqLy/HA1ZYNeQR5QdeklQiRVWs0tn
18
+ /Nfbb1DkSPZWebX2o+hPVPUH5XVVZXOR89v8oKvajVE37hKhYK7fHxKgC8gY1zkP
19
+ H6kUD0atlwKBgG9RhF3ptmv1k9jCgTfDfrJQcF+Ae+n6xcSK4M7zmMPwu1jYVzq7
20
+ lJk47/gmte+RCdDoVtu3I0Ay+MPL4bJBUB+UVBw9H+TiJGzGz01+OUk14X/GBsmv
21
+ 5+GLLu6cPGX8efkW32wN7JwV4vt2tpEGj2bzneVwLmbefpmVhrVgVgJBAoGAD/WZ
22
+ BiwZFghnTdTKvgxhT2gBw5bVMyx45EUaS7HnHzrb8hJgj4Nvj5Ir6f61R3Kkd+bi
23
+ vqWE9VwhMOiSzrSI/c9vdjViaeL8KY9ItbxFA4sHNgfJ/HL8tcKZjObcFY/QSh/E
24
+ eAGV3vXYdFs9FRKbiPOIqqz7tdoKw7r5YUzhazUCgYBYWwvYgeccNBPeamROwt73
25
+ C1hWbjcrHhMRrB84vcM0j6EHIk689HJu7VobwJooQOALvyh7VSlD1b5V2DstsBiX
26
+ cD2uKAwdLlRJuThTxgq81qW4h8KnDpdFYrwFsevaA+r4c7ihy/2oeASY6SMqUC89
27
+ jAJOkfhhCdoj6D85HLIMNw==
28
+ -----END PRIVATE KEY-----
29
+ -----BEGIN CERTIFICATE-----
30
+ MIID3TCCAsWgAwIBAgIUaYxDRJxsA5vqHEHzLkRzYlYJhGwwDQYJKoZIhvcNAQEL
31
+ BQAwfjELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcM
32
+ B1NlYXR0bGUxDzANBgNVBAoMBkhhcmFrYTEVMBMGA1UEAwwMaGFyYWthLmxvY2Fs
33
+ MSAwHgYJKoZIhvcNAQkBFhFtYXR0QGhhcmFrYS5sb2NhbDAeFw0yNjAzMjUwNDI1
34
+ MzJaFw0yOTAzMjQwNDI1MzJaMH4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApXYXNo
35
+ aW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMQ8wDQYDVQQKDAZIYXJha2ExFTATBgNV
36
+ BAMMDGhhcmFrYS5sb2NhbDEgMB4GCSqGSIb3DQEJARYRbWF0dEBoYXJha2EubG9j
37
+ YWwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDCdI9wQHH4zJzrKjd4
38
+ /a4AV8uPnvZwOHC/mhFnAS2V4+oPLgBZYG/yiktsmTcsYl3Cgf3n8X1eMsRli91k
39
+ dC1+2txMsn/Y6DDAxW+qbYWIvWWPQlCr+eweGAYf3HkWAd3nAiKB1qfnUvL5y0we
40
+ rjQFV9cAeK9xqtC7HqaTOYtNnAmipIGLK7y4RQfnzf20Qqu9yv3uC2Gaj3VkEhGF
41
+ RaIvKxVmnvCmRYa8UM3HKtF4q+ApkoeslJjqK68vSXtDQFZ6qHatotWeYVztluX6
42
+ 6f925pKBTU6AVJJQxrCWjQ/KLLLW7qbytaMjagz4IBpRNpb3Wfc7c7/51nDmTyEC
43
+ GKMnAgMBAAGjUzBRMB0GA1UdDgQWBBSzcvDenCZgIgox2IXTubXgLv/6xTAfBgNV
44
+ HSMEGDAWgBSzcvDenCZgIgox2IXTubXgLv/6xTAPBgNVHRMBAf8EBTADAQH/MA0G
45
+ CSqGSIb3DQEBCwUAA4IBAQAQK28lJKzpDm7LZHPPxGczn4jaBYtSYZ2aM1SP+fRv
46
+ TMyl6QEm4atyQCETWngVEHw9zM2uVH9lUvqxRQVLxQL0Hdi05l+PGc5c/UNGsOa6
47
+ 4LJSP8f0OPvvWiMc1coWAxM9UCtAByTiMWyqbdhm9huZ8XWCBWjZ6HJswMxrFFs8
48
+ WE0Zrdh+lutDilL9af6FF0vI1PW7dyo8a5tKZ13tYI3C4feyQoao0xZZZSvw+v50
49
+ Pq/HLEre2zfxy11QbKVTco8ipwxRVsF3XfKKco6Vh3APp03v3QhlRovbxJsV2ZE0
50
+ F8a2QrvoPLEBqyDPFyRc5+EgJFJcNBzrbBYbGLGA7sJ+
51
+ -----END CERTIFICATE-----
@@ -0,0 +1,45 @@
1
+
2
+ key = tls_key.pem
3
+ cert = tls_cert.pem
4
+ dhparam = dhparams.pem
5
+
6
+ ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384
7
+ minVersion = TLSv1
8
+ rejectUnauthorized=false
9
+ requestCert=true
10
+ honorCipherOrder=true
11
+ requireAuthorized[]=2465
12
+ requireAuthorized[]=2587
13
+
14
+ no_starttls_ports[]=2525
15
+
16
+ [redis]
17
+ ; options in this block require redis to be available.
18
+
19
+ ; remember when a remote fails STARTTLS. The next time they connect,
20
+ ; don't offer STARTTLS option (so message gets delivered).
21
+ ; pro: increases mail reliability
22
+ ; con: reduces security
23
+ ; default: false
24
+ ; disable_for_failed_hosts=true
25
+
26
+
27
+ ; no_tls_hosts - disable TLS for servers with broken TLS.
28
+ [no_tls_hosts]
29
+ 192.168.1.1
30
+ 172.16.0.0/16
31
+ ; 172.16.0.0/16
32
+
33
+ [outbound]
34
+ key = outbound_tls_key.pem
35
+ cert = outbound_tls_cert.pem
36
+ dhparam = dhparams.pem
37
+ ciphers = ECDHE-RSA-AES256-GCM-SHA384
38
+ minVersion = TLSv1
39
+ rejectUnauthorized=false
40
+ requestCert=false
41
+ honorCipherOrder=false
42
+ force_tls_hosts[]=first.example.com
43
+ force_tls_hosts[]=second.example.net
44
+ no_tls_hosts[]=127.0.0.2
45
+ no_tls_hosts[]=192.168.31.1/24
@@ -0,0 +1,21 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDXTCCAkWgAwIBAgIJAIloeq99SSuwMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV
3
+ BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
4
+ aWRnaXRzIFB0eSBMdGQwHhcNMTcwMTMxMDQyNTIwWhcNMjMwMTMwMDQyNTIwWjBF
5
+ MQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50
6
+ ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
7
+ CgKCAQEAyMYkzD7HnZ29d83Hi2cTOVRsNJX/oTwwq7SiZwm8cwt/bMj4pK2XFxHK
8
+ 0UDHSTgERKLSTCZJRvvGnWyBGRfTkdYui605gxlcmUkvHY5ZJ658iLnFCyrKkTj6
9
+ hZOCtD2Y4P0WUItt4LsU+5smluZoJeeNfJG3os77LHb2G7j2U8UbKyH5uYRGecmt
10
+ cuFfIPUxny2Mom+3BySb1QDOcMO1JtI2IzbuRKUlWicIjhqGyYTm5ceZoGt18hSC
11
+ xilH2dT59rB2XKZ2gR1oA/Zj7EXCxzUvw48JuPZgbayuhRgDIPJVh26PDR5atYkq
12
+ /RUtMaeurPTL++BUrGYTObLw86h1FwIDAQABo1AwTjAdBgNVHQ4EFgQUsW4yJbIS
13
+ kLw2Q3V2a2vjWkzGo3owHwYDVR0jBBgwFoAUsW4yJbISkLw2Q3V2a2vjWkzGo3ow
14
+ DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAjom2PQHtX0hCpMZovIoA
15
+ JHeGMffuoP2N1445SMkxvxfcawK4LP/eeTvHGsBukBsVqa206orqooYVd3UWtcSQ
16
+ rKfkwM0fQ1j7vCswJfCE3HIGtPyUTrtQHLAbu0vNeIlAH2v/wJZ+rhjIc3DrN8dt
17
+ u2dnErb4V/KM5f3vlyZQgLvwJisx/vzvTYD0GC0XteHwxkJ6mpnH3ORDVyLaBZA3
18
+ bFkuB7iwp4frwdvdcIDYVcuFBaLcu1zoJuSdEYNXo5d4Ji6hnSTyZsXz4jkGoH7n
19
+ 5OLoHzF0lY9EpyLMdINWOyodxTEXjKUWggSUKsFRWkb8cTUjp+0lfvFiJ6gs3H+a
20
+ sQ==
21
+ -----END CERTIFICATE-----
@@ -0,0 +1,28 @@
1
+ -----BEGIN PRIVATE KEY-----
2
+ MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDIxiTMPsednb13
3
+ zceLZxM5VGw0lf+hPDCrtKJnCbxzC39syPikrZcXEcrRQMdJOAREotJMJklG+8ad
4
+ bIEZF9OR1i6LrTmDGVyZSS8djlknrnyIucULKsqROPqFk4K0PZjg/RZQi23guxT7
5
+ myaW5mgl5418kbeizvssdvYbuPZTxRsrIfm5hEZ5ya1y4V8g9TGfLYyib7cHJJvV
6
+ AM5ww7Um0jYjNu5EpSVaJwiOGobJhOblx5mga3XyFILGKUfZ1Pn2sHZcpnaBHWgD
7
+ 9mPsRcLHNS/Djwm49mBtrK6FGAMg8lWHbo8NHlq1iSr9FS0xp66s9Mv74FSsZhM5
8
+ svDzqHUXAgMBAAECggEAP2WBvRSdx4FFkIzj03rqsRGdUUWEAI+W9sEE/vAuF02s
9
+ INec27MMoHY3yrdfthkAEAQxz2XPgaCC6LaYVSoW3lf5PpWmMWVSvfxD6ltGf6cz
10
+ H6E5PPt4Fz8crA0WGn/QxEpmP2ynd2zbhU9Kch+zBzUEki8ZA0nEOhgeQka3UV++
11
+ p4Z8Nd5k/7plf/PiP6uvpVG2y7GgP07XI6GZQ1X1eoaKdWCP8MwiNoSoZImJRuRt
12
+ k09N7FUFCr/RVk1YiqyBZJvJ/70GxniNSDUbooszGTlhciqb7AxHtAVnnSL0JpRU
13
+ FuVOBv7nq33nAyv/DV4eVWCQvuYCcB5fFrNinNOWoQKBgQDpEomiFKNv7WzXfbbk
14
+ JtnxZc3VyVw/E+zYiNafWchYcKSiC7F7GchlfmkYLK1xg++Ac1832lZmabUMs4Cu
15
+ M073T0nGp5n+sF6kI+ZKtwx5mkg5v2Bsd5MLdiDfNn2QHu52V5z62UNnc86lhT9G
16
+ 5LcoxxpJGBAWPvuDg21KBsjTnwKBgQDchjw1WRZxLlPp5R3JF2BcvRSlr0hRKytp
17
+ TpSPqz4OGhvNS5CRNiS8EJqMI1nDJkoOfoUqbnxdMvRnX/3ypTMAfNTHRFavo21Y
18
+ ETgoJ/O3nb2lowvgS/M7O2xLLk8FdVqbbfO18jq3Wk1bEpsPxm4wTHIAdaFd8krt
19
+ RV7yQqyriQKBgFLiXsOe50hEfLJdaI7WKicodvyR8RYVdeLDNt/QQ+j/lexykBkg
20
+ 4B0HyUPpj3yQ2LkrTi9Em/krmlD7/MT2Rhy4u5nDvIXQHrfsdFcZpXwRG6I9poKs
21
+ O0SWK7Z1YE3CUjcPjSm/3bKKgnBmZExHxcLgmz5nKkFfAH6SXGk45G4tAoGBAMhx
22
+ Vu6isExl8K4LrFwo3FTPJKJIxXHJzGamn1BLNVd6EcUzpw7maNNsQB2a0C8acXvl
23
+ MkNUM8Q+2XnQ/bF8yPPrgzgwfJ6e7Hd9B08wqU0/mq6gmd3hCw/OvmtDh14NwjK+
24
+ 6SN7LjWUZfWe3sSi92r9QS37vZX38nTidh+7zNkJAoGAdIEKoW24NwaDExxRrUM8
25
+ vtj0y6DNA4qGCJByMrVlBp735ymF2JzMpckhKZC6p1/zalMpkRymVncaYwSSqmKp
26
+ rkDgLuOLlrGV/db3br8hEi01g4AM6UsLm7xqflWg++c5TUe7Mv23yLRI2XFkOy1i
27
+ fvm/08IjqdAV5mg/r+iggkg=
28
+ -----END PRIVATE KEY-----