openship 0.4.5 → 0.4.7

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 (314) hide show
  1. package/README.md +2 -24
  2. package/dist/bare-2HYDXQEH.js +23 -0
  3. package/dist/{bowser-L6PVH37V.js → bowser-O3AEA6AN.js} +3 -1
  4. package/dist/{chunk-YFLQGDN2.js → chunk-4TJC4JZQ.js} +18 -9
  5. package/dist/{chunk-JXQCFTDV.js → chunk-4Z5QO7N6.js} +4 -2
  6. package/dist/{chunk-JJVSOE4I.js → chunk-5MZ624VX.js} +2 -0
  7. package/dist/{chunk-TDFK6ISF.js → chunk-6APIPIJY.js} +6 -4
  8. package/dist/{chunk-3LCRNQ2C.js → chunk-6APULWSU.js} +151 -133
  9. package/dist/{chunk-FTBXJ2VA.js → chunk-6B5YCFFV.js} +6 -4
  10. package/dist/{chunk-MDFYN2QH.js → chunk-AVIB7CT7.js} +3 -1
  11. package/dist/{chunk-W7KGHYLV.js → chunk-DYPH4HCI.js} +2 -0
  12. package/dist/{chunk-5WI7ZXOC.js → chunk-EI575GHN.js} +4 -2
  13. package/dist/{chunk-Z6EKX6CX.js → chunk-FPRHYBY2.js} +2 -0
  14. package/dist/{chunk-FZJX6XP7.js → chunk-FRNAR33O.js} +4 -2
  15. package/dist/{chunk-XRWV5ZNR.js → chunk-FXTBHTWY.js} +360 -42
  16. package/dist/chunk-ILFETZOM.js +131 -0
  17. package/dist/{chunk-E3ZPCNPU.js → chunk-IMBD5PZ5.js} +251 -105
  18. package/dist/{chunk-VJTXRCTT.js → chunk-IPYPMI3S.js} +10 -6
  19. package/dist/{chunk-PARRPUXN.js → chunk-IXCHURVK.js} +5 -3
  20. package/dist/{chunk-YJAS5RQX.js → chunk-JYGD5WSN.js} +2 -0
  21. package/dist/{chunk-JWBXYO24.js → chunk-KI2EY3WB.js} +2 -0
  22. package/dist/{chunk-YVXF6GGR.js → chunk-L2VOGB2X.js} +5 -104
  23. package/dist/{chunk-K5OH5U7N.js → chunk-MZ2WEHHY.js} +5 -3
  24. package/dist/{chunk-SJBR527P.js → chunk-O6ZZF52V.js} +3 -1
  25. package/dist/{chunk-VLPJLXXB.js → chunk-OWED2GRM.js} +3 -1
  26. package/dist/{chunk-C4FOQJ63.js → chunk-OXWDY22G.js} +4 -2
  27. package/dist/{chunk-NPVJYR7M.js → chunk-Q2CIRAOK.js} +2 -0
  28. package/dist/chunk-R5BHFFAV.js +282 -0
  29. package/dist/{chunk-JYAGTMSJ.js → chunk-RPHRPFEH.js} +2 -0
  30. package/dist/{chunk-R74UB4X4.js → chunk-SJIFLLX4.js} +397 -85
  31. package/dist/{chunk-HYL4QYZM.js → chunk-TGIINPVM.js} +13 -2
  32. package/dist/{chunk-SYCZE6FQ.js → chunk-TYVME3XD.js} +7 -1
  33. package/dist/{chunk-UMYQALBH.js → chunk-UXWAVM4C.js} +1788 -1484
  34. package/dist/{chunk-HDV4NSA3.js → chunk-V6AN6XLZ.js} +16 -6
  35. package/dist/{chunk-3YCMJRDZ.js → chunk-VDMQJHPI.js} +36 -15
  36. package/dist/{chunk-RZPDJC2J.js → chunk-VFINNTUL.js} +20 -1
  37. package/dist/{chunk-65KKUJBR.js → chunk-VWPEKOH6.js} +4 -2
  38. package/dist/{chunk-GHXGCANU.js → chunk-W73X43R7.js} +4 -2
  39. package/dist/{chunk-7EYFCKZX.js → chunk-XFCDYZUQ.js} +8 -6
  40. package/dist/cloud-2KXREXMO.js +30 -0
  41. package/dist/{cloud-7IGG45CF.js → cloud-7QYOGF7F.js} +4 -2
  42. package/dist/detect-2XSCFFTF.js +44 -0
  43. package/dist/{dist-NQB6QGX3.js → dist-IQJ6H6UZ.js} +4 -2
  44. package/dist/{dist-es-DCR6UJMP.js → dist-es-5DY7K32L.js} +7 -5
  45. package/dist/{dist-es-TYYZ5KEF.js → dist-es-JSTDUS7Q.js} +7 -5
  46. package/dist/{dist-es-7EZIM4JU.js → dist-es-OSNJBLXB.js} +6 -4
  47. package/dist/{dist-es-6RSPR56Q.js → dist-es-RYHIPOTN.js} +15 -13
  48. package/dist/{dist-es-33Z3Y6VE.js → dist-es-VNKHQVIB.js} +5 -3
  49. package/dist/{dist-es-D6QQVWRZ.js → dist-es-WV4AMOII.js} +9 -7
  50. package/dist/{dist-es-GMEQINIE.js → dist-es-X3B5QYKB.js} +7 -5
  51. package/dist/docker-LODK5Y2S.js +16 -0
  52. package/dist/docker-edge-executor-VHW3JPJS.js +13 -0
  53. package/dist/edge-import-ZQ4Y5HEA.js +45 -0
  54. package/dist/ensure-container-edge-ED25XL3Z.js +31 -0
  55. package/dist/{event-streams-G7F6Q7QY.js → event-streams-EHRAKL75.js} +5 -3
  56. package/dist/{executor-O5NR7LMP.js → executor-YPT6RH6O.js} +9 -7
  57. package/dist/index.d.ts +2 -1
  58. package/dist/index.js +279 -245
  59. package/dist/{loadSso-LH753OSJ.js → loadSso-46FQRIZS.js} +11 -9
  60. package/dist/local-executor-V7U5VOZW.js +12 -0
  61. package/dist/nginx-XWJAOGS4.js +24 -0
  62. package/dist/{noop-6KC6HRDB.js → noop-FMMFG2EZ.js} +4 -2
  63. package/dist/{openresty-lua-KFCOJAG4.js → openresty-lua-4WLGDSER.js} +11 -3
  64. package/dist/server/engine/ChangeLog +2289 -0
  65. package/dist/server/engine/Documentations +5 -0
  66. package/dist/server/engine/LICENSE +674 -0
  67. package/dist/server/engine/README.md +34 -0
  68. package/dist/server/engine/conf/amavisd +150 -0
  69. package/dist/server/engine/conf/clamav +71 -0
  70. package/dist/server/engine/conf/core +632 -0
  71. package/dist/server/engine/conf/dovecot +151 -0
  72. package/dist/server/engine/conf/fail2ban +72 -0
  73. package/dist/server/engine/conf/global +698 -0
  74. package/dist/server/engine/conf/iredapd +52 -0
  75. package/dist/server/engine/conf/logwatch +28 -0
  76. package/dist/server/engine/conf/postfix +97 -0
  77. package/dist/server/engine/conf/postgresql +93 -0
  78. package/dist/server/engine/conf/spamassassin +39 -0
  79. package/dist/server/engine/dialog/config_via_dialog.sh +258 -0
  80. package/dist/server/engine/dialog/optional_components.sh +122 -0
  81. package/dist/server/engine/dialog/pgsql_config.sh +52 -0
  82. package/dist/server/engine/dialog/virtual_domain_config.sh +94 -0
  83. package/dist/server/engine/functions/amavisd.sh +267 -0
  84. package/dist/server/engine/functions/backend.sh +85 -0
  85. package/dist/server/engine/functions/clamav.sh +100 -0
  86. package/dist/server/engine/functions/cleanup.sh +393 -0
  87. package/dist/server/engine/functions/dovecot.sh +583 -0
  88. package/dist/server/engine/functions/fail2ban.sh +209 -0
  89. package/dist/server/engine/functions/iredapd.sh +356 -0
  90. package/dist/server/engine/functions/optional_components.sh +24 -0
  91. package/dist/server/engine/functions/packages.sh +522 -0
  92. package/dist/server/engine/functions/packages_freebsd.sh +179 -0
  93. package/dist/server/engine/functions/postfix.sh +457 -0
  94. package/dist/server/engine/functions/postgresql.sh +239 -0
  95. package/dist/server/engine/functions/spamassassin.sh +49 -0
  96. package/dist/server/engine/functions/system_accounts.sh +128 -0
  97. package/dist/server/engine/iRedMail.sh +144 -0
  98. package/dist/server/engine/pkgs/get_all.sh +338 -0
  99. package/dist/server/engine/pkgs/pkgs.freebsd.sha256 +3 -0
  100. package/dist/server/engine/pkgs/pkgs.openbsd.sha256 +6 -0
  101. package/dist/server/engine/pkgs/pkgs.sha256 +1 -0
  102. package/dist/server/engine/samples/amavisd/amavisd.conf +677 -0
  103. package/dist/server/engine/samples/amavisd/amavisd.mysql +278 -0
  104. package/dist/server/engine/samples/amavisd/amavisd.pgsql +253 -0
  105. package/dist/server/engine/samples/amavisd/amavisd.schema +942 -0
  106. package/dist/server/engine/samples/amavisd/default_spam_policy.sql +46 -0
  107. package/dist/server/engine/samples/dovecot/dovecot-2.4-mariadb.conf +758 -0
  108. package/dist/server/engine/samples/dovecot/dovecot-2.4-openldap.conf +767 -0
  109. package/dist/server/engine/samples/dovecot/dovecot-2.4-pgsql.conf +762 -0
  110. package/dist/server/engine/samples/dovecot/dovecot-last-login.conf +50 -0
  111. package/dist/server/engine/samples/dovecot/dovecot-ldap.conf +21 -0
  112. package/dist/server/engine/samples/dovecot/dovecot-share-folder.conf +22 -0
  113. package/dist/server/engine/samples/dovecot/dovecot-sql.conf +28 -0
  114. package/dist/server/engine/samples/dovecot/dovecot-used-quota.conf +13 -0
  115. package/dist/server/engine/samples/dovecot/dovecot.conf +484 -0
  116. package/dist/server/engine/samples/dovecot/dovecot.sieve +7 -0
  117. package/dist/server/engine/samples/dovecot/dovecot2-quota-warning.sh +38 -0
  118. package/dist/server/engine/samples/dovecot/sql/imap_share_folder.mysql +16 -0
  119. package/dist/server/engine/samples/dovecot/sql/last_login.mysql +12 -0
  120. package/dist/server/engine/samples/dovecot/sql/used_quota.mysql +26 -0
  121. package/dist/server/engine/samples/dovecot/systemd/override.conf +3 -0
  122. package/dist/server/engine/samples/fail2ban/action.d/banned_db.conf +9 -0
  123. package/dist/server/engine/samples/fail2ban/bin/fail2ban_banned_db +268 -0
  124. package/dist/server/engine/samples/fail2ban/fail2ban.local +17 -0
  125. package/dist/server/engine/samples/fail2ban/filter.d/dovecot.iredmail.conf +5 -0
  126. package/dist/server/engine/samples/fail2ban/filter.d/postfix-pregreet.iredmail.conf +16 -0
  127. package/dist/server/engine/samples/fail2ban/filter.d/postfix.iredmail.conf +18 -0
  128. package/dist/server/engine/samples/fail2ban/filter.d/roundcube.iredmail.conf +9 -0
  129. package/dist/server/engine/samples/fail2ban/jail.d/dovecot.local +8 -0
  130. package/dist/server/engine/samples/fail2ban/jail.d/nginx-http-auth.local +8 -0
  131. package/dist/server/engine/samples/fail2ban/jail.d/postfix-pregreet.local +9 -0
  132. package/dist/server/engine/samples/fail2ban/jail.d/postfix.local +8 -0
  133. package/dist/server/engine/samples/fail2ban/jail.d/roundcube.local +9 -0
  134. package/dist/server/engine/samples/fail2ban/jail.d/sogo.local +8 -0
  135. package/dist/server/engine/samples/fail2ban/jail.d/sshd.local +8 -0
  136. package/dist/server/engine/samples/fail2ban/jail.local +6 -0
  137. package/dist/server/engine/samples/fail2ban/openbsd/rc +27 -0
  138. package/dist/server/engine/samples/fail2ban/sql/fail2ban.mysql +49 -0
  139. package/dist/server/engine/samples/fail2ban/sql/fail2ban.pgsql +48 -0
  140. package/dist/server/engine/samples/firewall/firewalld/services/ssh.xml +6 -0
  141. package/dist/server/engine/samples/firewall/firewalld/zones/iredmail.xml +15 -0
  142. package/dist/server/engine/samples/firewall/iptables/ip6tables.init.debian +362 -0
  143. package/dist/server/engine/samples/firewall/iptables/ip6tables.rules +53 -0
  144. package/dist/server/engine/samples/firewall/iptables/iptables.init.debian +363 -0
  145. package/dist/server/engine/samples/firewall/iptables/iptables.rules +54 -0
  146. package/dist/server/engine/samples/firewall/nftables.conf +58 -0
  147. package/dist/server/engine/samples/freebsd/newsyslog.conf.d/dovecot.conf +3 -0
  148. package/dist/server/engine/samples/freebsd/newsyslog.conf.d/iredapd.conf +1 -0
  149. package/dist/server/engine/samples/freebsd/newsyslog.conf.d/mlmmjadmin.conf +1 -0
  150. package/dist/server/engine/samples/freebsd/newsyslog.conf.d/php-fpm.conf +2 -0
  151. package/dist/server/engine/samples/freebsd/newsyslog.conf.d/slapd.conf +1 -0
  152. package/dist/server/engine/samples/freebsd/syslog.d/dovecot.conf +2 -0
  153. package/dist/server/engine/samples/freebsd/syslog.d/fail2ban.conf +2 -0
  154. package/dist/server/engine/samples/freebsd/syslog.d/iredapd.conf +2 -0
  155. package/dist/server/engine/samples/freebsd/syslog.d/mlmmjadmin.conf +2 -0
  156. package/dist/server/engine/samples/freebsd/syslog.d/php-fpm.conf +2 -0
  157. package/dist/server/engine/samples/freebsd/syslog.d/slapd.conf +2 -0
  158. package/dist/server/engine/samples/iredmail/iredmail.mysql +491 -0
  159. package/dist/server/engine/samples/iredmail/iredmail.pgsql +465 -0
  160. package/dist/server/engine/samples/iredmail/iredmail.schema +456 -0
  161. package/dist/server/engine/samples/iredmail/used_quota_triggers_dovecot_2.3.pgsql +40 -0
  162. package/dist/server/engine/samples/iredmail/used_quota_triggers_dovecot_2.4.pgsql +18 -0
  163. package/dist/server/engine/samples/logrotate/dovecot +13 -0
  164. package/dist/server/engine/samples/logrotate/iredapd +13 -0
  165. package/dist/server/engine/samples/logrotate/mlmmjadmin +13 -0
  166. package/dist/server/engine/samples/logrotate/openldap +19 -0
  167. package/dist/server/engine/samples/logrotate/php-fpm +13 -0
  168. package/dist/server/engine/samples/openbsd/ldapd.conf +58 -0
  169. package/dist/server/engine/samples/openbsd/pf.conf +28 -0
  170. package/dist/server/engine/samples/postfix/command_filter.pcre +3 -0
  171. package/dist/server/engine/samples/postfix/freebsd/mailer.conf +9 -0
  172. package/dist/server/engine/samples/postfix/helo_access.pcre +180 -0
  173. package/dist/server/engine/samples/postfix/ldap/catchall_maps.cf +11 -0
  174. package/dist/server/engine/samples/postfix/ldap/recipient_bcc_maps_domain.cf +11 -0
  175. package/dist/server/engine/samples/postfix/ldap/recipient_bcc_maps_user.cf +11 -0
  176. package/dist/server/engine/samples/postfix/ldap/relay_domains.cf +11 -0
  177. package/dist/server/engine/samples/postfix/ldap/sender_bcc_maps_domain.cf +11 -0
  178. package/dist/server/engine/samples/postfix/ldap/sender_bcc_maps_user.cf +11 -0
  179. package/dist/server/engine/samples/postfix/ldap/sender_dependent_relayhost_maps_domain.cf +11 -0
  180. package/dist/server/engine/samples/postfix/ldap/sender_dependent_relayhost_maps_user.cf +11 -0
  181. package/dist/server/engine/samples/postfix/ldap/sender_login_maps.cf +11 -0
  182. package/dist/server/engine/samples/postfix/ldap/transport_maps_domain.cf +11 -0
  183. package/dist/server/engine/samples/postfix/ldap/transport_maps_user.cf +11 -0
  184. package/dist/server/engine/samples/postfix/ldap/virtual_alias_maps.cf +11 -0
  185. package/dist/server/engine/samples/postfix/ldap/virtual_group_maps.cf +11 -0
  186. package/dist/server/engine/samples/postfix/ldap/virtual_group_members_maps.cf +11 -0
  187. package/dist/server/engine/samples/postfix/ldap/virtual_mailbox_domains.cf +11 -0
  188. package/dist/server/engine/samples/postfix/ldap/virtual_mailbox_maps.cf +12 -0
  189. package/dist/server/engine/samples/postfix/main.cf +282 -0
  190. package/dist/server/engine/samples/postfix/main.cf.amavisd +7 -0
  191. package/dist/server/engine/samples/postfix/main.cf.dovecot +8 -0
  192. package/dist/server/engine/samples/postfix/main.cf.ldap +39 -0
  193. package/dist/server/engine/samples/postfix/main.cf.mlmmj +5 -0
  194. package/dist/server/engine/samples/postfix/main.cf.mysql +39 -0
  195. package/dist/server/engine/samples/postfix/main.cf.pgsql +39 -0
  196. package/dist/server/engine/samples/postfix/main.cf.postscreen +30 -0
  197. package/dist/server/engine/samples/postfix/master.cf +87 -0
  198. package/dist/server/engine/samples/postfix/mysql/catchall_maps.cf +5 -0
  199. package/dist/server/engine/samples/postfix/mysql/domain_alias_catchall_maps.cf +5 -0
  200. package/dist/server/engine/samples/postfix/mysql/domain_alias_maps.cf +5 -0
  201. package/dist/server/engine/samples/postfix/mysql/recipient_bcc_maps_domain.cf +5 -0
  202. package/dist/server/engine/samples/postfix/mysql/recipient_bcc_maps_user.cf +5 -0
  203. package/dist/server/engine/samples/postfix/mysql/relay_domains.cf +5 -0
  204. package/dist/server/engine/samples/postfix/mysql/sender_bcc_maps_domain.cf +5 -0
  205. package/dist/server/engine/samples/postfix/mysql/sender_bcc_maps_user.cf +5 -0
  206. package/dist/server/engine/samples/postfix/mysql/sender_dependent_relayhost_maps.cf +6 -0
  207. package/dist/server/engine/samples/postfix/mysql/sender_login_maps.cf +5 -0
  208. package/dist/server/engine/samples/postfix/mysql/transport_maps_domain.cf +5 -0
  209. package/dist/server/engine/samples/postfix/mysql/transport_maps_maillist.cf +5 -0
  210. package/dist/server/engine/samples/postfix/mysql/transport_maps_user.cf +5 -0
  211. package/dist/server/engine/samples/postfix/mysql/virtual_alias_maps.cf +5 -0
  212. package/dist/server/engine/samples/postfix/mysql/virtual_mailbox_domains.cf +5 -0
  213. package/dist/server/engine/samples/postfix/mysql/virtual_mailbox_maps.cf +5 -0
  214. package/dist/server/engine/samples/postfix/pgsql/catchall_maps.cf +5 -0
  215. package/dist/server/engine/samples/postfix/pgsql/domain_alias_catchall_maps.cf +5 -0
  216. package/dist/server/engine/samples/postfix/pgsql/domain_alias_maps.cf +5 -0
  217. package/dist/server/engine/samples/postfix/pgsql/recipient_bcc_maps_domain.cf +5 -0
  218. package/dist/server/engine/samples/postfix/pgsql/recipient_bcc_maps_user.cf +5 -0
  219. package/dist/server/engine/samples/postfix/pgsql/relay_domains.cf +5 -0
  220. package/dist/server/engine/samples/postfix/pgsql/sender_bcc_maps_domain.cf +5 -0
  221. package/dist/server/engine/samples/postfix/pgsql/sender_bcc_maps_user.cf +5 -0
  222. package/dist/server/engine/samples/postfix/pgsql/sender_dependent_relayhost_maps.cf +6 -0
  223. package/dist/server/engine/samples/postfix/pgsql/sender_login_maps.cf +5 -0
  224. package/dist/server/engine/samples/postfix/pgsql/transport_maps_domain.cf +5 -0
  225. package/dist/server/engine/samples/postfix/pgsql/transport_maps_maillist.cf +5 -0
  226. package/dist/server/engine/samples/postfix/pgsql/transport_maps_user.cf +5 -0
  227. package/dist/server/engine/samples/postfix/pgsql/virtual_alias_maps.cf +5 -0
  228. package/dist/server/engine/samples/postfix/pgsql/virtual_mailbox_domains.cf +5 -0
  229. package/dist/server/engine/samples/postfix/pgsql/virtual_mailbox_maps.cf +5 -0
  230. package/dist/server/engine/samples/postfix/postscreen_access.cidr +6 -0
  231. package/dist/server/engine/samples/postgresql/sql/add_first_domain_and_user.sql +34 -0
  232. package/dist/server/engine/samples/postgresql/sql/grant_permissions.sql +14 -0
  233. package/dist/server/engine/samples/postgresql/sql/init_vmail_db.sql +15 -0
  234. package/dist/server/engine/samples/rsyslog.d/1-iredmail-dovecot.conf +23 -0
  235. package/dist/server/engine/samples/rsyslog.d/1-iredmail-fail2ban.conf +2 -0
  236. package/dist/server/engine/samples/rsyslog.d/1-iredmail-iredapd.conf +12 -0
  237. package/dist/server/engine/samples/rsyslog.d/1-iredmail-mlmmjadmin.conf +12 -0
  238. package/dist/server/engine/samples/rsyslog.d/1-iredmail-openldap.conf +2 -0
  239. package/dist/server/engine/samples/rsyslog.d/1-iredmail-phpfpm.conf +3 -0
  240. package/dist/server/engine/samples/spamassassin/local.cf +186 -0
  241. package/dist/server/engine/samples/spamassassin/razor.conf +1 -0
  242. package/dist/server/engine/samples/systemd/clamd.service.d/override.conf +2 -0
  243. package/dist/server/engine/samples/systemd/mariadb.service.d/override.conf +3 -0
  244. package/dist/server/engine/samples/systemd/slapd.service.d/override.conf +6 -0
  245. package/dist/server/engine/samples/yum/CentOS-Linux-AppStream.repo +6 -0
  246. package/dist/server/engine/samples/yum/CentOS-Linux-PowerTools.repo +6 -0
  247. package/dist/server/engine/samples/yum/CentOS-Stream-AppStream.repo +7 -0
  248. package/dist/server/engine/samples/yum/CentOS-Stream-PowerTools.repo +7 -0
  249. package/dist/server/engine/samples/yum/symas-openldap.repo +6 -0
  250. package/dist/server/engine/tools/add_enabled_service.py +60 -0
  251. package/dist/server/engine/tools/backup_mysql.sh +238 -0
  252. package/dist/server/engine/tools/backup_openldap.sh +230 -0
  253. package/dist/server/engine/tools/backup_pgsql.sh +217 -0
  254. package/dist/server/engine/tools/backup_sogo.sh +156 -0
  255. package/dist/server/engine/tools/create_mail_user_OpenLDAP.py +335 -0
  256. package/dist/server/engine/tools/create_mail_user_OpenLDAP.sh +287 -0
  257. package/dist/server/engine/tools/create_mail_user_SQL.sh +127 -0
  258. package/dist/server/engine/tools/enable_postscreen.sh +144 -0
  259. package/dist/server/engine/tools/fail2ban_unban_ip.sh +39 -0
  260. package/dist/server/engine/tools/find_sasl_login_ip.sh +20 -0
  261. package/dist/server/engine/tools/find_top_sasl_usernames.sh +28 -0
  262. package/dist/server/engine/tools/generate_ssl_keys.sh +85 -0
  263. package/dist/server/engine/tools/kill_high_cpu_sogo_process.sh +32 -0
  264. package/dist/server/engine/tools/ldap_assign_user_to_groups.py +151 -0
  265. package/dist/server/engine/tools/ldap_move_members_to_another_group.py +129 -0
  266. package/dist/server/engine/tools/migrate_sql_alias_table.py +177 -0
  267. package/dist/server/engine/update/0.9.8/amavisd.mysql +29 -0
  268. package/dist/server/engine/update/0.9.8/amavisd.pgsql +39 -0
  269. package/dist/server/engine/update/0.9.8/iredmail.mysql +53 -0
  270. package/dist/server/engine/update/0.9.8/iredmail.pgsql +61 -0
  271. package/dist/server/engine/update/0.9.9/iredmail.mysql +2 -0
  272. package/dist/server/engine/update/0.9.9/iredmail.pgsql +2 -0
  273. package/dist/server/engine/update/1.0/iredmail.mysql +2 -0
  274. package/dist/server/engine/update/1.0/iredmail.pgsql +2 -0
  275. package/dist/server/engine/update/1.2/last_login.mysql +16 -0
  276. package/dist/server/engine/update/1.4.0/iredmail.mysql +22 -0
  277. package/dist/server/engine/update/1.4.0/iredmail.pgsql +20 -0
  278. package/dist/server/engine/update/1.4.1/iredmail.mysql +3 -0
  279. package/dist/server/engine/update/1.4.1/iredmail.pgsql +3 -0
  280. package/dist/server/engine/update/1.4.1/sogo.mysql +11 -0
  281. package/dist/server/engine/update/1.4.1/sogo.pgsql +30 -0
  282. package/dist/server/engine/update/1.4.1/update-ldap.py +66 -0
  283. package/dist/server/engine/update/1.4.2/iredmail.mysql +9 -0
  284. package/dist/server/engine/update/1.4.2/iredmail.pgsql +9 -0
  285. package/dist/server/engine/update/1.4.2/sogo.pgsql +30 -0
  286. package/dist/server/engine/update/1.6.0/sogo_view.pgsql +27 -0
  287. package/dist/server/engine/update/1.6.3/iredmail.mysql +1 -0
  288. package/dist/server/engine/update/1.7.0/fail2ban.mysql +11 -0
  289. package/dist/server/engine/update/1.7.0/fail2ban.pgsql +12 -0
  290. package/dist/server/engine/update/1.7.1/amavisd.mysql +1 -0
  291. package/dist/server/engine/update/1.7.2/vmail.mysql +30 -0
  292. package/dist/server/engine/update/1.7.3/deleted_mailboxes.mysql +43 -0
  293. package/dist/server/engine/update/1.7.3/iredadmin.mysql +26 -0
  294. package/dist/server/engine/update/1.7.3/vmail.mysql +79 -0
  295. package/dist/server/engine/update/1.7.3/vmail.pgsql +9 -0
  296. package/dist/server/engine/update/README.md +1 -0
  297. package/dist/server/engine/update/ldap/README.md +40 -0
  298. package/dist/server/engine/update/ldap/update-ldap-dovecot-2.3.py +69 -0
  299. package/dist/server/index.js +55793 -53701
  300. package/dist/server/migrations/0071_gh_device_token.sql +3 -0
  301. package/dist/server/migrations/0072_gh_device_token_method.sql +1 -0
  302. package/dist/server/migrations/meta/_journal.json +14 -0
  303. package/dist/setup-2DMFIA74.js +20 -0
  304. package/dist/{signin-PVC7MBZJ.js → signin-ITOPKKUB.js} +11 -9
  305. package/dist/{sso-oidc-ZXY77BSL.js → sso-oidc-NON2PD7Y.js} +11 -9
  306. package/dist/{sts-LX5L4UU3.js → sts-HHFFSAY2.js} +10 -8
  307. package/package.json +1 -1
  308. package/dist/bare-CNSFDNSZ.js +0 -20
  309. package/dist/cloud-655YYCEW.js +0 -26
  310. package/dist/docker-UWQPDEGW.js +0 -14
  311. package/dist/docker-edge-executor-ZLAYE5FE.js +0 -11
  312. package/dist/edge-import-AFID2EN3.js +0 -41
  313. package/dist/nginx-M36GDYL7.js +0 -18
  314. package/dist/setup-ZXXB5S22.js +0 -16
@@ -0,0 +1,282 @@
1
+ # --------------------
2
+ # INSTALL-TIME CONFIGURATION INFORMATION
3
+ #
4
+ # location of the Postfix queue. Default is /var/spool/postfix.
5
+ queue_directory = PH_QUEUE_DIRECTORY
6
+
7
+ # location of all postXXX commands. Default is /usr/sbin.
8
+ command_directory = PH_COMMAND_DIRECTORY
9
+
10
+ # location of all Postfix daemon programs (i.e. programs listed in the
11
+ # master.cf file). This directory must be owned by root.
12
+ # Default is /usr/libexec/postfix
13
+ daemon_directory = PH_DAEMON_DIRECTORY
14
+
15
+ # location of Postfix-writable data files (caches, random numbers).
16
+ # This directory must be owned by the mail_owner account (see below).
17
+ # Default is /var/lib/postfix.
18
+ data_directory = PH_DATA_DIRECTORY
19
+
20
+ # owner of the Postfix queue and of most Postfix daemon processes.
21
+ # Specify the name of a user account THAT DOES NOT SHARE ITS USER OR GROUP ID
22
+ # WITH OTHER ACCOUNTS AND THAT OWNS NO OTHER FILES OR PROCESSES ON THE SYSTEM.
23
+ # In particular, don't specify nobody or daemon. PLEASE USE A DEDICATED USER.
24
+ # Default is postfix.
25
+ mail_owner = PH_MAIL_OWNER
26
+
27
+ # The following parameters are used when installing a new Postfix version.
28
+ #
29
+ # sendmail_path: The full pathname of the Postfix sendmail command.
30
+ # This is the Sendmail-compatible mail posting interface.
31
+ #
32
+ sendmail_path = PH_SENDMAIL_PATH
33
+
34
+ # newaliases_path: The full pathname of the Postfix newaliases command.
35
+ # This is the Sendmail-compatible command to build alias databases.
36
+ #
37
+ newaliases_path = PH_NEWALIASES_PATH
38
+
39
+ # full pathname of the Postfix mailq command. This is the Sendmail-compatible
40
+ # mail queue listing command.
41
+ mailq_path = PH_MAILQ_PATH
42
+
43
+ # group for mail submission and queue management commands.
44
+ # This must be a group name with a numerical group ID that is not shared with
45
+ # other accounts, not even with the Postfix account.
46
+ setgid_group = PH_SETGID_GROUP
47
+
48
+ # external command that is executed when a Postfix daemon program is run with
49
+ # the -D option.
50
+ #
51
+ # Use "command .. & sleep 5" so that the debugger can attach before
52
+ # the process marches on. If you use an X-based debugger, be sure to
53
+ # set up your XAUTHORITY environment variable before starting Postfix.
54
+ #
55
+ debugger_command =
56
+ PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
57
+ ddd $daemon_directory/$process_name $process_id & sleep 5
58
+
59
+ debug_peer_level = 2
60
+
61
+ # --------------------
62
+ # CUSTOM SETTINGS
63
+ #
64
+
65
+ # SMTP server response code when recipient or domain not found.
66
+ unknown_local_recipient_reject_code = 550
67
+
68
+ # Do not notify local user.
69
+ biff = no
70
+
71
+ # Disable the rewriting of "site!user" into "user@site".
72
+ swap_bangpath = no
73
+
74
+ # Disable the rewriting of the form "user%domain" to "user@domain".
75
+ allow_percent_hack = no
76
+
77
+ # Allow recipient address start with '-'.
78
+ allow_min_user = no
79
+
80
+ # Disable the SMTP VRFY command. This stops some techniques used to
81
+ # harvest email addresses.
82
+ disable_vrfy_command = yes
83
+
84
+ # Enable both IPv4 and/or IPv6: ipv4, ipv6, all.
85
+ inet_protocols = all
86
+
87
+ # Enable all network interfaces.
88
+ inet_interfaces = all
89
+
90
+ # Disable SMTPUTF8 for IDN Support
91
+ smtputf8_enable = no
92
+
93
+ #
94
+ # TLS settings.
95
+ #
96
+ # SSL key, certificate, CA
97
+ #
98
+ smtpd_tls_key_file = PH_SSL_KEY_FILE
99
+ smtpd_tls_cert_file = PH_SSL_CERT_FILE
100
+ smtpd_tls_CAfile = PH_SSL_CA_FILE
101
+ smtpd_tls_CApath = PH_SSL_CERT_DIR
102
+
103
+ #
104
+ # Disable SSLv2, SSLv3, TLSv1, TLSv1.1.
105
+ #
106
+ smtpd_tls_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
107
+ smtpd_tls_mandatory_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
108
+
109
+ smtp_tls_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
110
+ smtp_tls_mandatory_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
111
+
112
+ lmtp_tls_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
113
+ lmtp_tls_mandatory_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1
114
+
115
+ #
116
+ # Fix 'The Logjam Attack'.
117
+ #
118
+ smtpd_tls_dh512_param_file = PH_SSL_DH512_PARAM_FILE
119
+ smtpd_tls_dh1024_param_file = PH_SSL_DH1024_PARAM_FILE
120
+
121
+ tls_random_source = dev:/dev/urandom
122
+
123
+ # Log only a summary message on TLS handshake completion - no logging of client
124
+ # certificate trust-chain verification errors if client certificate
125
+ # verification is not required. With Postfix 2.8 and earlier, log the summary
126
+ # message, peer certificate summary information and unconditionally log
127
+ # trust-chain verification errors.
128
+ smtp_tls_loglevel = 1
129
+ smtpd_tls_loglevel = 1
130
+
131
+ # Opportunistic TLS: announce STARTTLS support to remote SMTP clients, but do
132
+ # not require that clients use TLS encryption.
133
+ smtpd_tls_security_level = may
134
+
135
+ # Produce `Received:` message headers that include information about the
136
+ # protocol and cipher used, as well as the remote SMTP client CommonName and
137
+ # client certificate issuer CommonName.
138
+ # This is disabled by default, as the information may be modified in transit
139
+ # through other mail servers. Only information that was recorded by the final
140
+ # destination can be trusted.
141
+ #smtpd_tls_received_header = yes
142
+
143
+ # Opportunistic TLS, used when Postfix sends email to remote SMTP server.
144
+ # Use TLS if this is supported by the remote SMTP server, otherwise use
145
+ # plaintext.
146
+ # References:
147
+ # - http://www.postfix.org/TLS_README.html#client_tls_may
148
+ # - http://www.postfix.org/postconf.5.html#smtp_tls_security_level
149
+ smtp_tls_security_level = may
150
+
151
+ # Use the same CA file as smtpd.
152
+ smtp_tls_CApath = PH_SSL_CERT_DIR
153
+ smtp_tls_CAfile = PH_SSL_CA_FILE
154
+ smtp_tls_note_starttls_offer = yes
155
+
156
+ # Enable long, non-repeating, queue IDs (queue file names).
157
+ # The benefit of non-repeating names is simpler logfile analysis and easier
158
+ # queue migration (there is no need to run "postsuper" to change queue file
159
+ # names that don't match their message file inode number).
160
+ enable_long_queue_ids = yes
161
+
162
+ # Reject unlisted sender and recipient
163
+ smtpd_reject_unlisted_recipient = yes
164
+ smtpd_reject_unlisted_sender = yes
165
+
166
+ # Header and body checks with PCRE table
167
+ header_checks = pcre:PH_POSTFIX_FILE_HEADER_CHECKS
168
+ body_checks = pcre:PH_POSTFIX_FILE_BODY_CHECKS
169
+
170
+ # A mechanism to transform commands from remote SMTP clients.
171
+ # This is a last-resort tool to work around client commands that break
172
+ # interoperability with the Postfix SMTP server. Other uses involve fault
173
+ # injection to test Postfix's handling of invalid commands.
174
+ # Requires Postfix-2.7+.
175
+ smtpd_command_filter = pcre:PH_POSTFIX_FILE_SMTPD_COMMAND_FILTER
176
+
177
+ # HELO restriction
178
+ smtpd_helo_required = yes
179
+ smtpd_helo_restrictions =
180
+ permit_mynetworks
181
+ permit_sasl_authenticated
182
+ check_helo_access pcre:PH_POSTFIX_FILE_HELO_ACCESS
183
+ reject_non_fqdn_helo_hostname
184
+ reject_unknown_helo_hostname
185
+
186
+ # Sender restrictions
187
+ smtpd_sender_restrictions =
188
+ reject_non_fqdn_sender
189
+ reject_unlisted_sender
190
+ permit_mynetworks
191
+ permit_sasl_authenticated
192
+ check_sender_access pcre:PH_POSTFIX_FILE_SENDER_ACCESS
193
+ reject_unknown_sender_domain
194
+
195
+ # Recipient restrictions
196
+ smtpd_recipient_restrictions =
197
+ reject_non_fqdn_recipient
198
+ reject_unlisted_recipient
199
+ check_policy_service inet:PH_IREDAPD_SERVER_ADDRESS:PH_IREDAPD_LISTEN_PORT
200
+ permit_mynetworks
201
+ permit_sasl_authenticated
202
+ reject_unauth_destination
203
+ check_policy_service inet:127.0.0.1:PH_DOVECOT_SERVICE_QUOTA_STATUS_PORT
204
+
205
+ # END-OF-MESSAGE restrictions
206
+ smtpd_end_of_data_restrictions =
207
+ check_policy_service inet:PH_IREDAPD_SERVER_ADDRESS:PH_IREDAPD_LISTEN_PORT
208
+
209
+ # Data restrictions
210
+ smtpd_data_restrictions = reject_unauth_pipelining
211
+
212
+ # Mitigate SMTP smuggling attack.
213
+ # https://www.postfix.org/smtp-smuggling.html
214
+ smtpd_discard_ehlo_keywords = chunking
215
+
216
+ # SRS (Sender Rewriting Scheme) support
217
+ #sender_canonical_maps = tcp:PH_IREDAPD_SERVER_ADDRESS:PH_IREDAPD_SRS_FORWARD_PORT
218
+ #sender_canonical_classes = envelope_sender
219
+ #recipient_canonical_maps = tcp:PH_IREDAPD_SERVER_ADDRESS:PH_IREDAPD_SRS_REVERSE_PORT
220
+ #recipient_canonical_classes= envelope_recipient,header_recipient
221
+
222
+ proxy_read_maps = $canonical_maps $lmtp_generic_maps $local_recipient_maps $mydestination $mynetworks $recipient_bcc_maps $recipient_canonical_maps $relay_domains $relay_recipient_maps $relocated_maps $sender_bcc_maps $sender_canonical_maps $smtp_generic_maps $smtpd_sender_login_maps $transport_maps $virtual_alias_domains $virtual_alias_maps $virtual_mailbox_domains $virtual_mailbox_maps $smtpd_sender_restrictions $sender_dependent_relayhost_maps
223
+
224
+ # Avoid duplicate recipient messages. Default is 'yes'.
225
+ enable_original_recipient = no
226
+
227
+ # Virtual support.
228
+ virtual_minimum_uid = PH_SYS_USER_VMAIL_UID
229
+ virtual_uid_maps = static:PH_SYS_USER_VMAIL_UID
230
+ virtual_gid_maps = static:PH_SYS_GROUP_VMAIL_GID
231
+ virtual_mailbox_base = PH_STORAGE_BASE_DIR
232
+
233
+ # Do not set virtual_alias_domains.
234
+ virtual_alias_domains =
235
+
236
+ #
237
+ # Enable SASL authentication on port 25 and force TLS-encrypted SASL authentication.
238
+ # WARNING: NOT RECOMMENDED to enable smtp auth on port 25, all end users should
239
+ # be forced to submit email through port 587 instead.
240
+ #
241
+ #smtpd_sasl_auth_enable = yes
242
+ #smtpd_sasl_security_options = noanonymous
243
+ #smtpd_tls_auth_only = yes
244
+
245
+ # hostname
246
+ myhostname = PH_HOSTNAME
247
+ myorigin = PH_HOSTNAME
248
+ mydomain = PH_HOSTNAME
249
+
250
+ # trusted SMTP clients which are allowed to relay mail through Postfix.
251
+ #
252
+ # Note: additional IP addresses/networks listed in mynetworks should be listed
253
+ # in iRedAPD setting 'MYNETWORKS' (in `/opt/iredapd/settings.py`) too.
254
+ # for example:
255
+ #
256
+ # MYNETWORKS = ['xx.xx.xx.xx', 'xx.xx.xx.0/24', ...]
257
+ #
258
+ mynetworks = 127.0.0.1
259
+
260
+ # Accepted local emails
261
+ mydestination = $myhostname, localhost, localhost.localdomain
262
+
263
+ alias_maps = PH_POSTFIX_DEFAULT_DB_TYPE:PH_POSTFIX_FILE_ALIASES
264
+ alias_database = PH_POSTFIX_DEFAULT_DB_TYPE:PH_POSTFIX_FILE_ALIASES
265
+
266
+ # Default message_size_limit.
267
+ message_size_limit = PH_MESSAGE_SIZE_LIMIT_BYTES
268
+
269
+ # The set of characters that can separate a user name from its extension
270
+ # (example: user+foo), or a .forward file name from its extension (example:
271
+ # .forward+foo).
272
+ # Postfix 2.11 and later supports multiple characters.
273
+ recipient_delimiter = +
274
+
275
+ # The time after which the sender receives a copy of the message headers of
276
+ # mail that is still queued. Default setting is disabled (0h) by Postfix.
277
+ #delay_warning_time = 1h
278
+
279
+ # Do not display the name of the recipient table in the "User unknown" responses.
280
+ # The extra detail makes trouble shooting easier but also reveals information
281
+ # that is nobody elses business.
282
+ show_user_unknown_table_name = no
@@ -0,0 +1,7 @@
1
+ #
2
+ # Amavisd + SpamAssassin + ClamAV
3
+ #
4
+ content_filter = smtp-amavis:[PH_SMTP_SERVER]:10024
5
+
6
+ # Concurrency per recipient limit.
7
+ smtp-amavis_destination_recipient_limit = 1
@@ -0,0 +1,8 @@
1
+ #
2
+ # Dovecot SASL support.
3
+ #
4
+ smtpd_sasl_type = dovecot
5
+ smtpd_sasl_path = PH_DOVECOT_SASL_AUTH_SOCKET
6
+ virtual_transport = PH_TRANSPORT
7
+ dovecot_destination_recipient_limit = 1
8
+
@@ -0,0 +1,39 @@
1
+ #
2
+ # Lookup virtual mail accounts
3
+ #
4
+ transport_maps =
5
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/transport_maps_user.cf
6
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/transport_maps_domain.cf
7
+
8
+ sender_dependent_relayhost_maps =
9
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/sender_dependent_relayhost_maps_user.cf
10
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/sender_dependent_relayhost_maps_domain.cf
11
+
12
+ # Lookup table with the SASL login names that own the sender (MAIL FROM) addresses.
13
+ smtpd_sender_login_maps =
14
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/sender_login_maps.cf
15
+
16
+ virtual_mailbox_domains =
17
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_domains.cf
18
+
19
+ relay_domains =
20
+ $mydestination
21
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/relay_domains.cf
22
+
23
+ virtual_mailbox_maps =
24
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_maps.cf
25
+
26
+ virtual_alias_maps =
27
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/virtual_alias_maps.cf
28
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/virtual_group_maps.cf
29
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/virtual_group_members_maps.cf
30
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/catchall_maps.cf
31
+
32
+ sender_bcc_maps =
33
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_user.cf
34
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_domain.cf
35
+
36
+ recipient_bcc_maps =
37
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_user.cf
38
+ proxy:ldap:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_domain.cf
39
+
@@ -0,0 +1,5 @@
1
+ #
2
+ # mlmmj - mailing list manager
3
+ #
4
+ mlmmj_destination_recipient_limit = 1
5
+
@@ -0,0 +1,39 @@
1
+ #
2
+ # Lookup virtual mail accounts
3
+ #
4
+ transport_maps =
5
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/transport_maps_user.cf
6
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/transport_maps_maillist.cf
7
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/transport_maps_domain.cf
8
+
9
+ sender_dependent_relayhost_maps =
10
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/sender_dependent_relayhost_maps.cf
11
+
12
+ # Lookup table with the SASL login names that own the sender (MAIL FROM) addresses.
13
+ smtpd_sender_login_maps =
14
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/sender_login_maps.cf
15
+
16
+ virtual_mailbox_domains =
17
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_domains.cf
18
+
19
+ relay_domains =
20
+ $mydestination
21
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/relay_domains.cf
22
+
23
+ virtual_mailbox_maps =
24
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_maps.cf
25
+
26
+ virtual_alias_maps =
27
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/virtual_alias_maps.cf
28
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/domain_alias_maps.cf
29
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/catchall_maps.cf
30
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/domain_alias_catchall_maps.cf
31
+
32
+ sender_bcc_maps =
33
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_user.cf
34
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_domain.cf
35
+
36
+ recipient_bcc_maps =
37
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_user.cf
38
+ proxy:mysql:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_domain.cf
39
+
@@ -0,0 +1,39 @@
1
+ #
2
+ # Lookup virtual mail accounts
3
+ #
4
+ transport_maps =
5
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/transport_maps_user.cf
6
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/transport_maps_maillist.cf
7
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/transport_maps_domain.cf
8
+
9
+ sender_dependent_relayhost_maps =
10
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/sender_dependent_relayhost_maps.cf
11
+
12
+ # Lookup table with the SASL login names that own the sender (MAIL FROM) addresses.
13
+ smtpd_sender_login_maps =
14
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/sender_login_maps.cf
15
+
16
+ virtual_mailbox_domains =
17
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_domains.cf
18
+
19
+ relay_domains =
20
+ $mydestination
21
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/relay_domains.cf
22
+
23
+ virtual_mailbox_maps =
24
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/virtual_mailbox_maps.cf
25
+
26
+ virtual_alias_maps =
27
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/virtual_alias_maps.cf
28
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/domain_alias_maps.cf
29
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/catchall_maps.cf
30
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/domain_alias_catchall_maps.cf
31
+
32
+ sender_bcc_maps =
33
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_user.cf
34
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/sender_bcc_maps_domain.cf
35
+
36
+ recipient_bcc_maps =
37
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_user.cf
38
+ proxy:pgsql:PH_POSTFIX_LOOKUP_DIR/recipient_bcc_maps_domain.cf
39
+
@@ -0,0 +1,30 @@
1
+ #
2
+ # Postscreen
3
+ #
4
+ postscreen_greet_action = drop
5
+ postscreen_blacklist_action = drop
6
+ postscreen_dnsbl_action = drop
7
+ postscreen_dnsbl_threshold = 2
8
+
9
+ # Attention:
10
+ # - zen.spamhaus.org free tire has 3 limits
11
+ # (https://www.spamhaus.org/organization/dnsblusage/):
12
+ #
13
+ # 1) Your use of the Spamhaus DNSBLs is non-commercial*, and
14
+ # 2) Your email traffic is less than 100,000 SMTP connections per day, and
15
+ # 3) Your DNSBL query volume is less than 300,000 queries per day.
16
+ #
17
+ # - FAQ: "Your DNSBL blocks nothing at all!"
18
+ # https://www.spamhaus.org/faq/section/DNSBL%20Usage#261
19
+ #
20
+ # It's strongly recommended to use a local DNS server for cache.
21
+ postscreen_dnsbl_sites =
22
+ zen.spamhaus.org=127.0.0.[2..11]*3
23
+ b.barracudacentral.org=127.0.0.2*2
24
+
25
+ postscreen_dnsbl_reply_map = texthash:PH_POSTSCREEN_FILE_DNSBL_REPLY
26
+ postscreen_access_list = permit_mynetworks cidr:PH_POSTSCREEN_FILE_ACCESS_CIDR
27
+
28
+ # Require Postfix-2.11+
29
+ #postscreen_dnsbl_whitelist_threshold = -2
30
+
@@ -0,0 +1,87 @@
1
+ # Submission, port 587, force TLS connection.
2
+ submission inet n - n - - smtpd
3
+ -o syslog_name=postfix/submission
4
+ -o smtpd_tls_security_level=encrypt
5
+ -o smtpd_sasl_auth_enable=yes
6
+ -o smtpd_client_restrictions=permit_sasl_authenticated,reject
7
+ -o content_filter=PH_AMAVISD_CONTENT_FILTER_ORIGINATING
8
+
9
+ # smtps, port 465, force SSL connection.
10
+ 465 inet n - n - - smtpd
11
+ -o syslog_name=postfix/smtps
12
+ -o smtpd_tls_wrappermode=yes
13
+ -o smtpd_sasl_auth_enable=yes
14
+ -o smtpd_client_restrictions=permit_sasl_authenticated,reject
15
+ -o content_filter=PH_AMAVISD_CONTENT_FILTER_ORIGINATING
16
+
17
+ # Use dovecot's `deliver` program as LDA.
18
+ dovecot unix - n n - - pipe
19
+ flags=DRh user=PH_SYS_USER_VMAIL:PH_SYS_GROUP_VMAIL argv=PH_DOVECOT_DELIVER_BIN -f ${sender} -d ${user}@${domain} -m ${extension}
20
+
21
+ # mlmmj - mailing list manager
22
+ # ${nexthop} is '%d/%u' in transport ('mlmmj:%d/%u')
23
+ mlmmj unix - n n - - pipe
24
+ flags=ORhu user=PH_SYS_USER_MLMMJ:PH_SYS_GROUP_MLMMJ argv=PH_CMD_MLMMJ_AMIME_RECEIVE -L PH_MLMMJ_SPOOL_DIR/${nexthop}
25
+
26
+ # Amavisd integration.
27
+ smtp-amavis unix - - n - PH_AMAVISD_MAX_SERVERS smtp
28
+ -o syslog_name=postfix/amavis
29
+ -o local_header_rewrite_clients=
30
+ -o smtp_data_done_timeout=1200
31
+ -o smtp_send_xforward_command=yes
32
+ -o smtp_dns_support_level=disabled
33
+ -o max_use=20
34
+
35
+ # smtp port used by Amavisd to re-inject scanned email back to Postfix
36
+ PH_LOCAL_ADDRESS:PH_POSTFIX_MAIL_REINJECT_PORT inet n - n - - smtpd
37
+ -o syslog_name=postfix/PH_POSTFIX_MAIL_REINJECT_PORT
38
+ -o content_filter=
39
+ -o mynetworks_style=host
40
+ -o mynetworks=PH_AMAVISD_MYNETWORKS
41
+ -o local_header_rewrite_clients=
42
+ -o local_recipient_maps=
43
+ -o relay_recipient_maps=
44
+ -o strict_rfc821_envelopes=yes
45
+ -o smtp_tls_security_level=none
46
+ -o smtpd_tls_security_level=none
47
+ -o smtpd_restriction_classes=
48
+ -o smtpd_delay_reject=no
49
+ -o smtpd_client_restrictions=permit_mynetworks,reject
50
+ -o smtpd_helo_restrictions=
51
+ -o smtpd_sender_restrictions=
52
+ -o smtpd_recipient_restrictions=permit_mynetworks,reject
53
+ -o smtpd_end_of_data_restrictions=
54
+ -o smtpd_error_sleep_time=0
55
+ -o smtpd_soft_error_limit=1001
56
+ -o smtpd_hard_error_limit=1000
57
+ -o smtpd_client_connection_count_limit=0
58
+ -o smtpd_client_connection_rate_limit=0
59
+ -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings
60
+
61
+ # smtp port used by mlmmj to re-inject scanned email back to Postfix, with
62
+ # address mapping support
63
+ PH_LOCAL_ADDRESS:PH_POSTFIX_MLMMJ_REINJECT_PORT inet n - n - - smtpd
64
+ -o syslog_name=postfix/PH_POSTFIX_MLMMJ_REINJECT_PORT
65
+ -o content_filter=
66
+ -o mynetworks_style=host
67
+ -o mynetworks=PH_AMAVISD_MYNETWORKS
68
+ -o local_header_rewrite_clients=
69
+ -o local_recipient_maps=
70
+ -o relay_recipient_maps=
71
+ -o strict_rfc821_envelopes=yes
72
+ -o smtp_tls_security_level=none
73
+ -o smtpd_tls_security_level=none
74
+ -o smtpd_restriction_classes=
75
+ -o smtpd_delay_reject=no
76
+ -o smtpd_client_restrictions=permit_mynetworks,reject
77
+ -o smtpd_helo_restrictions=
78
+ -o smtpd_sender_restrictions=
79
+ -o smtpd_recipient_restrictions=permit_mynetworks,reject
80
+ -o smtpd_end_of_data_restrictions=
81
+ -o smtpd_error_sleep_time=0
82
+ -o smtpd_soft_error_limit=1001
83
+ -o smtpd_hard_error_limit=1000
84
+ -o smtpd_client_connection_count_limit=0
85
+ -o smtpd_client_connection_rate_limit=0
86
+ -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
87
+
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT forwardings.forwarding FROM forwardings,domain WHERE forwardings.address='%d' AND '%u' NOT LIKE '%%+%%' AND forwardings.address=domain.domain AND forwardings.active=1 AND domain.active=1 AND domain.backupmx=0
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT forwardings.forwarding FROM forwardings,alias_domain,domain WHERE alias_domain.alias_domain='%d' AND forwardings.address=alias_domain.target_domain AND alias_domain.target_domain=domain.domain AND forwardings.active=1 AND alias_domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT forwardings.forwarding FROM forwardings,alias_domain,domain WHERE alias_domain.alias_domain='%d' AND forwardings.address=CONCAT('%u', '@', alias_domain.target_domain) AND alias_domain.target_domain=domain.domain AND forwardings.active=1 AND alias_domain.active=1 AND domain.backupmx=0
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT recipient_bcc_domain.bcc_address FROM recipient_bcc_domain, domain WHERE recipient_bcc_domain.domain='%d' AND recipient_bcc_domain.domain=domain.domain AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT recipient_bcc_user.bcc_address FROM recipient_bcc_user,domain WHERE recipient_bcc_user.username='%s' AND recipient_bcc_user.domain='%d' AND recipient_bcc_user.domain=domain.domain AND domain.backupmx=0 AND domain.active=1 AND recipient_bcc_user.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT domain FROM domain WHERE domain='%s' AND backupmx=1 AND active=1 LIMIT 1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT sender_bcc_domain.bcc_address FROM sender_bcc_domain, domain WHERE sender_bcc_domain.domain='%d' AND sender_bcc_domain.domain=domain.domain AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT sender_bcc_user.bcc_address FROM sender_bcc_user,domain WHERE sender_bcc_user.username='%s' AND sender_bcc_user.domain='%d' AND sender_bcc_user.domain=domain.domain AND domain.backupmx=0 AND domain.active=1 AND sender_bcc_user.active=1
@@ -0,0 +1,6 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ # '%s' will be replaced by the envelope sender address or @domain.
6
+ query = SELECT relayhost FROM sender_relayhost WHERE account='%s' LIMIT 1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT mailbox.username FROM mailbox,domain WHERE mailbox.username='%s' AND mailbox.domain='%d' AND mailbox.domain=domain.domain AND mailbox.enablesmtp=1 AND mailbox.active=1 AND domain.backupmx=0 AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT transport FROM domain WHERE domain='%s' AND active=1 LIMIT 1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT maillists.transport FROM maillists,domain WHERE maillists.address='%s' AND maillists.active=1 AND maillists.domain = domain.domain AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT mailbox.transport FROM mailbox,domain WHERE mailbox.username='%s' AND mailbox.domain='%d' AND mailbox.domain=domain.domain AND mailbox.transport<>'' AND mailbox.active=1 AND mailbox.enabledeliver=1 AND domain.backupmx=0 AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT forwardings.forwarding FROM forwardings,domain WHERE forwardings.address='%s' AND forwardings.domain=domain.domain AND forwardings.active=1 AND domain.backupmx=0 AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = (SELECT domain FROM domain WHERE domain='%s' AND backupmx=0 AND active=1 LIMIT 1) UNION (SELECT alias_domain.alias_domain FROM alias_domain,domain WHERE alias_domain.alias_domain='%s' AND alias_domain.active=1 AND alias_domain.target_domain=domain.domain AND domain.active=1 AND domain.backupmx=0 LIMIT 1)
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT CONCAT(mailbox.storagenode, '/', mailbox.maildir, '/Maildir/') FROM mailbox,domain WHERE mailbox.username='%s' AND mailbox.active=1 AND mailbox.enabledeliver=1 AND domain.domain = mailbox.domain AND domain.active=1
@@ -0,0 +1,5 @@
1
+ hosts = PH_SQL_SERVER_ADDRESS:PH_SQL_SERVER_PORT
2
+ user = PH_VMAIL_DB_BIND_USER
3
+ password = PH_VMAIL_DB_BIND_PASSWD
4
+ dbname = PH_VMAIL_DB_NAME
5
+ query = SELECT forwardings.forwarding FROM forwardings,domain WHERE forwardings.address='%d' AND '%u' NOT LIKE '%%+%%' AND forwardings.address=domain.domain AND forwardings.active=1 AND domain.active=1 AND domain.backupmx=0