diff --git a/group_vars/all/vault.yml b/group_vars/all/vault.yml index f3e9bc7..a5426fc 100644 --- a/group_vars/all/vault.yml +++ b/group_vars/all/vault.yml @@ -1,70 +1,77 @@ $ANSIBLE_VAULT;1.1;AES256 -34303237313431646264363034353637613836633432633638333963363037663435626166663630 -6338393164366434386334313664386166373031326538350a396639373163646666376462373662 -36623863356436356635303263643239666162333863613831326630303363346137653234323838 -3639623464303131350a653162336338626665393534623063623330323162373935353939303631 -64333363373563343336643764306563376461393430643631366133353836646363363166653233 -38323331386165366334656630626138383131323664333266353164323164373364303161653365 -30333339646139626434636365653666636534346266636262613938656665343634363563663366 -32306663653930613762663534613635616663613130613933626331663861643439323664353739 -31316531653562646363376233636464396262313132343234303933343066373862633235383333 -31313431336464663163343835646430323664373166363465343037333130343636646363393231 -34613162386637306539663431636137353039383037333937613035393332353933333134346335 -31616561636533383639366634316164343466613634643130353437393664336332316132363934 -61333961613530333536613034386332646136313939356339633334353333326661393231343261 -62653463316662376134663965383030636639356637393237653362616561616238653637623039 -65653139373633323766356362613239316165393966623932346561363363393138653032366439 -64303463306132363261333936653763353833386337303763316362666134306264306464306362 -30343364393539636565633861386261373661623061333733353635336133373162636465376137 -61316465306534623337383631663538336632383832343132333862316336323961623637383838 -65363832646138376233653264373535633437376162326361313863333839343236343966393839 -32323361666264373466396130666465303032393364633134343264643731323438646562333361 -63376266616430643135326430366266633332633333646134313736316139386232333965346331 -61663964653931333730643435303637666563316133373831336566303361383736666139626562 -38623031303533396632613361323533313334333631316434646232383136393433323466383330 -65666530616466623933393936613963663766653361643733326330643162346635613835633736 -64393064326233313035316130353563623639303665623064303831376332353264633930363364 -33623137353130353962323964396130646230393335386434346130663064613434643136656466 -63623666376165653961666539383335356163316131353966613036643530663835313766366533 -31656633633331636535316234653561326465623562393632623062383935336530383133626236 -66323366306366623631373861346635303063376264613734643039363137613837333534616362 -37633462373538313562666639613031343866383234633438373936623437333666343731633735 -33386666313531613734643431333332346439386465303531306365386537613933623636643237 -35653434303433633533356662623965383133383838613361303832326130343938393561393935 -38313533643830633432303464306561643233303866316130616531623230393366323264626165 -33653230366138376533376166393466656233353061343338393433386332333361353063323634 -66366561646466616566336265363037616433616231353739613538633765343235323637303535 -34373739306130313536633338353130656632666536356535636265333335303730333031323436 -39633466353139663361646265656334633461346564616633643030383662353762643237333761 -31326435313361366163353836633535303462623533373363376433613139373135393566333937 -64313838373366383432376430643236633030623736643435363038616261333364366139666435 -66623661643032633931623539383136373138636333323737323165333831333764363137393562 -62663335353265353535643666356632663736343039333965653639653764646261323736313430 -39656366356130326363363133383062333530316165643430383161306135346663623861313030 -65346430353230363561633239623330623265666336616133326263323063333132323764343735 -63346230373339343062393035356565376265643463326366326535313130663163366435323339 -62363339313332663333653336633331343161363432393639316630633365643037653739613132 -63316662336630626366363662333061353539333133653732646330643065333430316333316131 -33363662653465306531666435363932663432373932353466383364383634643634313736303931 -63353632353836663263616137353031643238663632363563656137313961656534663137613061 -37636530306334613639326363383665373061383634326630653366386632636634653638653330 -32366438623635363833343566353365373762646162393637326433656438663066663766333761 -65363136666238623439663764363266363731613261326566653035303265623736353331376562 -36646435353134613363316236383938613032626562646237366337376433326334386330646266 -66333365323133616466646164353262653830313764376562636164326163623463373863373630 -31623264373330386136396130626133323762363262336337396562613166646132386362383635 -61333637373462316463303962396162383039373265303939306132323533393236343965613835 -32646361383938383337653264323766363130613264613463386432306238316531653437323939 -39353866313834393933623630303539633334663239343865313264616664656464646631623934 -33623230643633353361343965396236393939343765653161643530626133663236383135343934 -37353231626339323866613237663463656239326335643035313730363133616538613866386162 -65623335393462633130353965343533616261636261656162626639323231623934663765386166 -37353665643363386662646538306530326161653461393236616531343935393639386432633437 -63643561646337616138633063646261323937333262333535626235373561336339346661353365 -30396365376566616538353866383266666436636131656535363062633237313266366639373536 -64316435316234313365306332383637636263376563393464303566313566636238626434393364 -62316263353733636136393034616362643764346536373533363937633938383037376261656330 -30333738616232616566643335353161636466643830393464643263653633373662623437643332 -61396430636631396134393064633131636233653664373363386638366138343435613438303330 -61366234663461333331623961393834643233623862323861346163343934303838666232626639 -6139 +38326239386336656435393633616231336463623565306664336237363264653632363964303666 +3838636566356234623436656132653833326564363732330a343636633734633639363637303265 +62363130633033353131623039323430643632346663616662633636643235353862653431643863 +3633313732306462310a643863353765313233653435363163653466623062306337666131623437 +33326538386264306130376533323437616432623831303139336335336366326463666161623332 +35343166633231636231613265366466616232613066643636383338633832323631373461663662 +66336139643863643732383439343961656331353864613164653037643533333332623639376264 +63313233636236636130353865623630396233633865343737663662353139626261306630646430 +61353134303538393162636264383539323035343931643364633333376334666463356338343565 +64326331313530626130376437356436656237666138643931613234643631333238376532623530 +61366362373737323037373666613039353636316365313036633833623439616239623964303566 +38353834633836613930353134303866633064626232386561336661303838363837393664356362 +34663561613734396533653538313638393563306530373165306133616565373465363531346235 +34386130646564313063303434363533366238346135616165383531653962356364623133386637 +61393939373361373131636366346364386136343635383362633166376362656361313131613137 +36363461656239666131356437613035353837323138336662633133373339613764623434366261 +37333565363532363230306535346439616433663838656333376631616531666638656665346133 +38646463323463386338393733316439616138313065636334336539656132376331353463343637 +63633566303533633137323935343463626133396363333462356364653738346431303738643131 +31633564313938626430616262373935356332333335373066353865383030663066663835343466 +31376361343832356236306565643433373032343766653166353835393966323263626563646133 +33346434353531633839376332383131343364613361393433393064636631383865303935633165 +31303633636536653064613164316638653730613965646233666665663938396234356664326338 +30393930636161653332613431666265643763633234323065363237333235353136643236656632 +64393162363639323464353363393731343132613531356364653330663235336165353166373030 +38633638616437366232326238366461303264323631613564386235616466346133323265316237 +64346132376135326363313764616434646137373832363562393532323665303562316162316637 +35333261353030653435323563373935376637636334633966366437663161366430666334383663 +38306461623730643934343632353034646539386363303535633738666463396462653131653032 +32616566656539323266313637616135353131313230646630653636316333616265653739653964 +65343262366637333366323931383163613435386639663765623066626539646330343164643538 +62653165623965383961363963383536663630323336376430373136316635303934363766303035 +65323164663437623765303765396363663631626536623265353538363966363538386134313664 +37323639356134633863613166666536633533343533646138663035666135333562363539643639 +36616238636636373264616162646433303064336138643137623965616230346332613238326631 +36356465643937376662656536306431303663653039626634393231663433656466616231353731 +35353537313036306263616364346437393066663863346363353463376437356563353937616139 +64303164656136666564383962316666616665636237623832306162616661613331383539326238 +61373263323866643863636362386231643637613232623232393633633761346262636536656566 +63333136336333306435326436326666306432623563666165613732353961373331343138333365 +66306435613066656439323339633363343937353533343463393330323638643863303133633763 +35636466386132656633646238353638373031326138613838363266336533653465323831373336 +35653039656663613964343566383738653137633136656633623532616265613566373264323731 +33353638333265323633386561333531636166376362656164623235326530303334643163303361 +39633732666436393933383164653138376165313864383832633536373132303132643033626465 +34393833306633663462326637376337306166393733383930643639616163643233393763663963 +66363365393864623064643439373135656338303634343262653231363134613330303530336135 +33653564336333663266383063656563333566643935333662303132346537306432373561353438 +35313236623962306361306365306232656363363538326531336332656530663639623766393736 +35326335613563356138656435306432643033376531396232653363373934356539613138303731 +65633331316232313939633930653835376436616463636561373666346537333434333135333866 +34613538333331363136326464633564656632323763643466383533656161396630316535306338 +30383964663561393639376131633262353537656663626133383664616431363631633837613037 +63306632623239326336313831363165626562323233643639356662383730643138353032303661 +63363233346330323164656439323734653032356231353238653662396532633436333566653565 +38346630383965353162306231366339623764396634343338613563656536363337613565373162 +30643334336238303232386264363238323930646265643731656566623237326234616532656338 +38653231353130633562346532346265613133616135383335653234393138623538313362353032 +61326537303463303836666634363831323935383631383430303263333430653131633362333139 +38383764653437343431356530336564626164373931333939393861326537636363363862356639 +36323732313531303035366136366438623861636231323962343862346465393064383630323462 +61636663356434636461646664373662383564643136623661616435613361323638646131643966 +31376130383132313065316137373737616530653330373366396161663635616262316632373063 +63316638313163633363633435326131646262396166666531323439616131323634313932333330 +61653933306331643433343564353164376663316237353439383361303331626630383264316230 +32356237326661353565313663613665323661303535663032396530653464323939376132386566 +61343737303762373062303862623062343434653632653364633163623763343061343330656463 +66313030336139356533313131656362636163323733653737633035366263383736643233633134 +38636536656532313165383364383230363635613230656134393639666530316338633835633761 +61323263623532376430623636356234656561333835326439633764373939376530636465653365 +36363465333135386462323365623162383230643737666437333631303639363937653931343862 +64633564656666376534376232623337343033666636316232363462393362373638326466383635 +30313438333661313936313238343931633861633965343038626664616130633736333135633831 +65366163343133303261393038376338663135356364316662386566313562373566383263646464 +38353236353238623135336163303635363031653564323866333235626366396261626138633633 +62353931663561623830 diff --git a/roles/mail/defaults/main.yml b/roles/mail/defaults/main.yml index 497eca6..e270e8b 100644 --- a/roles/mail/defaults/main.yml +++ b/roles/mail/defaults/main.yml @@ -1,3 +1,9 @@ --- mail_srs_domain: "srs.{{ mail_domain }}" + +mailman3_site_owner: "mailman3@binary-kitchen.de" +mailman3_dbname: "mailman3" +mailman3_dbuser: "mailman3" +mailman3_dbpass: "{{ vault_mail_mailman3_dbpass }}" +mailman3_restadminpass: "{{ vault_mail_mailman3_restadminpass }}" diff --git a/roles/mail/handlers/main.yml b/roles/mail/handlers/main.yml index 37887f3..466418f 100644 --- a/roles/mail/handlers/main.yml +++ b/roles/mail/handlers/main.yml @@ -17,6 +17,9 @@ - name: Restart rspamd service: name=rspamd state=restarted +- name: Restart mailman3 + service: name=mailman3 state=restarted + - name: Run acertmgr command: /usr/bin/acertmgr diff --git a/roles/mail/tasks/main.yml b/roles/mail/tasks/main.yml index 1714959..d440b6b 100644 --- a/roles/mail/tasks/main.yml +++ b/roles/mail/tasks/main.yml @@ -19,6 +19,7 @@ - fcgiwrap - mailman - mailman3-full + - python3-psycopg2 - postgresql - postfix - postsrsd @@ -122,6 +123,20 @@ file: path=/etc/nginx/ssl/{{ mailman_domain }}.key owner=root mode=0400 notify: Restart nginx +- name: Configure PostgreSQL database + postgresql_db: name={{ mailman3_dbname }} + become: true + become_user: postgres + +- name: Configure PostgreSQL user + postgresql_user: db={{ mailman3_dbname }} name={{ mailman3_dbuser }} password={{ mailman3_dbpass }} priv=ALL state=present + become: true + become_user: postgres + +- name: Configure mailman3 + template: src=mailman/mailman.cfg.j2 dest=/etc/mailman3/mailman.cfg + notify: Restart mailman3 + - name: Create postfix ssl directory file: path=/etc/postfix/ssl state=directory mode=0750 owner=postfix group=postfix @@ -183,3 +198,6 @@ - name: Start rspamd service: name=rspamd state=started enabled=yes + +- name: Start mailman3 + service: name=mailman3 state=started enabled=yes diff --git a/roles/mail/templates/mailman/mailman.cfg.j2 b/roles/mail/templates/mailman/mailman.cfg.j2 new file mode 100644 index 0000000..39e864d --- /dev/null +++ b/roles/mail/templates/mailman/mailman.cfg.j2 @@ -0,0 +1,68 @@ +[mailman] +site_owner: {{ mailman3_site_owner }} +noreply_address: noreply +default_language: en +sender_headers: from from_ reply-to sender +email_commands_max_lines: 10 +pending_request_life: 3d +cache_life: 7d +pre_hook: +post_hook: +layout: debian +filtered_messages_are_preservable: no +html_to_plain_text_command: /usr/bin/lynx -dump $filename +listname_chars: [-_.0-9a-z] + +[shell] +prompt: >>> +banner: Welcome to the GNU Mailman shell +use_ipython: no +history_file: + +[paths.debian] +var_dir: /var/lib/mailman3 +queue_dir: $var_dir/queue +bin_dir: /usr/lib/mailman3/bin +list_data_dir: $var_dir/lists +log_dir: /var/log/mailman3 +lock_dir: $var_dir/locks +data_dir: $var_dir/data +cache_dir: $var_dir/cache +etc_dir: /etc/mailman3 +ext_dir: $var_dir/ext +messages_dir: $var_dir/messages +archive_dir: $var_dir/archives +template_dir: $var_dir/templates +pid_file: /run/mailman3/master.pid +lock_file: $lock_dir/master.lck + +[database] +class: mailman.database.postgresql.PostgreSQLDatabase +url: postgres://{{ mailman3_dbuser }}:{{ mailman3_dbpass }}@localhost/{{ mailman3_dbname }} +debug: no + +[logging.debian] +format: %(asctime)s (%(process)d) %(message)s +datefmt: %b %d %H:%M:%S %Y +propagate: no +level: info +path: mailman.log +[webservice] +hostname: localhost +port: 8001 +use_https: no +show_tracebacks: yes +api_version: 3.1 +admin_user: restadmin +admin_pass: {{ mailman3_restadminpass }} + +[mta] +incoming: mailman.mta.postfix.LMTP +outgoing: mailman.mta.deliver.deliver +smtp_host: localhost +smtp_port: 25 +smtp_user: +smtp_pass: +lmtp_host: 127.0.0.1 +lmtp_port: 8024 +configuration: python:mailman.config.postfix