diff --git a/ansible/host_vars/infra.unruhig.eu/vault.yaml b/ansible/host_vars/infra.unruhig.eu/vault.yaml index f36c00a..cec353c 100644 --- a/ansible/host_vars/infra.unruhig.eu/vault.yaml +++ b/ansible/host_vars/infra.unruhig.eu/vault.yaml @@ -1,56 +1,85 @@ $ANSIBLE_VAULT;1.2;AES256;secrets -66653937623532303439653431313834323734323439373930336235396538323030653034616235 -3565663635376432393735393662666265623934353961360a343830346564353965643030623334 -38653761656234346638303362386533656537633432373237646431383438383366623035396466 -6539646436663663340a616663656331326663353263363436613965623365623833623664663733 -38613366363239396361663230386635636361396233323661663231323030373164376138306633 -65373832303532346636643436616161626165623138396438343833316537626565346535356630 -35616566323339323736353636623538353566653563633237623164373937666433303136613331 -30306331613561333433386366653633383938313061666330306263393336633436303236643963 -37653732633334616462363361316334613937356563383938313836396332653536373837653239 -37343033393935336436353066646133303561613434643866323662653432316336623637336439 -61656436633762343463356362613437643036343237316638623838383433343339366339356438 -66373865326465666639393332306461333933666365343164646638393531376135356263346235 -32313362376338316536316238313764663839633939396465643136373536653732313537613933 -65613834623030376332323764643037653061366432313237323064643261346134666630646539 -65373834303535373230616562373438306236353530666161333161643437333737363430323061 -64316631396532633433373630316630343432353561373166373237353562663637333331333033 -34336437393666643235663566633832366561376330366535633330346335333861373635363233 -34633463316661343333363631353662646334376432343134323062623764333832613236623061 -66656238313132363662316561636334303761326539653961333537316466646662376134396437 -63353638353935343631386164316464353064653630326334373633396231336335343731326261 -63646539376337313836373066393234393363613363346261623263636536356564636565343635 -30313063316133666131333939386535333364666561666164316637323136373135333464343234 -31643464373233653632353134313039633539386230636435313637653235333133353864653036 -64303863353034376339393734663563333764646364366363363033373737326435613666646561 -66623061666365623735316462663631396233636431653932613866386532313334386335333938 -32623339373363373862336461343730363031383562653264333430393335336532306630343739 -32396665636435376433326134346466393833383430393765316533336662316330323237636339 -30633762373030326230653836363131633864363632636164326235633263376138356462643936 -31653631616632353563633762336239303536656233393864326131313031666534613264313634 -64613737336664643638646566656264336565386630323730376637663633643663363365353666 -35326138336235373632303131623564336635633837643538343432393038656166626632363365 -34656435393535323561373464316133396537363236353931613232373662393261646464636633 -37343530353632623739393562396637663638363864343737616336373061666135316664383738 -62336637633835366464346438376239323332643333373434303039356435313136303238626361 -63656564333164313066336133306435306239646335613039636130386262626366316365623264 -35343831386237356231336638346437383232303966366430393966323734373131663537656236 -32353438303037393138383838663364343930636365353762636364323564616361346538643235 -39626265336461396333666439663166366561346137373038386261393562623034633262343637 -39626464633535663137623766363865363931383965633563336133316136633030363461383334 -32653330303766646161336536636538336238333666633563623363373836303964643730386462 -38363064623764656638373561653462376232353565613761613065626334393239353433383637 -62363361306238633132313664316236643137346431623537363938353839326131376632633565 -32376334303731343036316565666338396365393432343139393337616635313232356239373036 -34653538353030623330386261353231356165386535346361376361313534373163373839333336 -62663265366466383835313638356338376665373261373264346631356365363634323835653161 -38373265656262376163613439323832663035666665656161346433343864366136363730353838 -32646466313664326362633235613934633534303437323838376437636232653832363432326366 -35353038613632616532306166346135333534636633626263383234363563303866326230626537 -63336261626365623964303663393666643564656536333630323061383439353733633665623335 -63643739346364323034656333326236383536663838336137613332353630313762356162613365 -38386165383735666335656234336436653962356231643934373662393064653539316463366437 -31616234323939623464336666333938636563303631366230326337616234353631626235633838 -30323035333163613431326330303461353361396261323437353437656138343332653262326230 -39326236613931633163653431376338616165653033626665396238356637396235316639323637 -623661656339656132393337333638316139 +37646239383161613330383037643836616464613635376538333738646164653535343365646637 +3265333661656565653135653837666462623364346665310a653033613838643633313062343334 +39343866623636386235343731643637656332306132303065393231643935643234306630343833 +6562626632333534630a306661353739336266336661646132333862663231306135353564323762 +62613433653737356564323538626666656434613966346631613934396238626531616631383433 +39326532316439663632333331613135316134353531646362653432333734313534343037663433 +39333566336265356532396434623836366166363961346439373635363334636133643831373132 +64353939313135343338386638633136333931353839316236346634616430383263366137663565 +36303733306163363332613964343162613337386263613032663539623430666639323062646565 +61646463393338383934663665363837626532326630383930353236613161356230346162393031 +39643531663565633666333032306235323038363234346264656239336535393539306439643833 +33363035393864616664363463656361366365316230663031383037376139623039303361313131 +34386361393930373430323961303039653561323430356139393434643763346563306266623366 +36333265643738656362616363333638396139373137383366303263613031383237353435326562 +34633839316335613766306134343333373032353635383964663336656134646634613164366465 +66326533613363383337616437666333376133386231326336653934663233613333343464306238 +30386338303730383836663262373239656438313361373331343364623231356134643631323565 +31336464333838356265323938623133636536313736376136663330346630663837613937336436 +33386639383465363333343566646337633236393130326439323536393830323331393862616361 +36346162363166646537666666383464633165373263326532623061613065373030313439623039 +30646632333964323330396464383535303261613237353535613438336163323235333534313434 +31346233346335336230653337363337653763643535373532396362316131653665386539636432 +30663735616136316639633333303732336239393435653239336133383362613061306537623063 +31653634653233346634353136653763333833613337633530363338643336666463373465306434 +66363939313434333364323931663766393564353663666262363037323761653339316637386532 +39663538333664663139663262376137623765373931393833313130626135366436396636303062 +36623362343432633462373733373235353034373335356534653965393131613831636237666163 +65653463633961386266313534343833666136366235343639636561393534373830393434353363 +31363536616664373935346331633335643536313432346133356637363566633564633963313639 +62326439643333663362633739343465316431616234663233353066623861653165343461663830 +37316464653138386135656662663465333932306263396235626434356666373762356264336534 +66303664383630333064383363313864346234643639623037363437306638363937636162633362 +30313263376262636164363064626538386161653964663130326134636166633735633966386332 +61643566373233326362323034366537623830353463306363643866636439616430306362363863 +35306530666266623734653235313835323536343837396631393134343835303464393335653639 +39613530326562323764646662643439383639353661666231336433326564663463323638666639 +63333434353364656264303361636234623266326364346230613033343433376639356537643530 +30373631663165623035396139346165306335663263636434626336316265356535393034633832 +35653264313331396434636131396531613833643331643235306130373132643636376638663432 +32646539316138313234613536653538373638623330316236356431346461663034343932386536 +32383334633238373465636164653766323132386337653861396362353937353963636136373136 +66316331323132616337393438363636653561393432663238363764633938623531616538613865 +61346563643966623362366131313635656336326363346231373636323930623563646137303861 +39393064393965643638653462343631613466616366663232353864373236316438626135643537 +64363862393839356664336632623765656264366630383836323233333836626637653461386163 +66393263346539356363643566323366343631393139613864383764656465613033633038333661 +64336636383737313163306363333634633966356439333432636635393064306231663533646139 +65343637616532323366326239356263343432626238366333316238633366663734386332613631 +63336466326163663338393363626635306436653166363239393263333731366261313963383466 +38626665356463633439653932303033386464363862393439376635393961323530333566663263 +65613333303036303764636131323630303737336561373733663930323863393566313665613231 +32613962313935323432626230613334363163623836383135653931346132363538383632633031 +31346566383364333062646334346433336235623636326436343230666537383635383332613963 +63393366646266356130653339623439326230366234306235643332383261633739353039333039 +35336165383061303863623031313033623865346366366235363262326266383033613961373933 +33623832383934386563653662363461303939363533336561623430643865656232353731633263 +33656432386165326566656432663665633461306365633164303061373264383532626361666437 +62643533323136326539653263393663303365666532663262636165646561383333376336383332 +30653161313336393033363061343633346230393337393966343134323436623537383532346361 +61623661653132633234626631363430333837656633396365613834616635626139383731323837 +38346533353061363766633634346231373339656463376634366533643861343161633435633138 +39356165386635326535626161303462303939383461313834396333633565353634643362343539 +64653530303663663032353138383934373837306437643962333339363366353966333437383932 +30363934346638356565306365386335336530616532306465373163353562363235623937333832 +62663963306663306462373838636436366661333565303736393731636562663332326363656636 +39353161616134623433646539366664363935313866383163316665646236666237393762393563 +62633062646536633437666362363531646234326666386561613863633934663462643634333362 +65336431623836323334393934613133653262626134373838356238373031613737613965613761 +34643539373230396362633761626339356362613730383831316565393030623930616364313430 +35653935616662306130633263356165336130336363366532393735343137643831636462616334 +65343437396566346263346463326361303862623164346365346132633936303230323838303361 +62303663363834633635626331343531373639613763363537333539653631636462616437656135 +34333633633565306663666338646339326564663936373963353465313065633434613435376261 +30313963336664313465323036643035386463646561373235646134303930333961393639353639 +35376135363235623730663932313337366564346636333464623234346237346162356262333764 +62626563393261373838353663343430663763383365303766343665333231343861373534383739 +37353437383966376664383438323430316237626232376134656134346362316335396331346531 +63343933396636393332303636613133396162643132643765646664373438653732316633366338 +65653963333633303963623362353739313635663266643236666334323262616531356165363330 +66633131343461623231663832643138663563326264313036306438613837336333656361373166 +62666261626430393830396636376434376233636639666432316165346237383261626530623539 +63353530643065373734613664333239636433343262366637376130373130663766656563643931 +38393334343836386533643839643232386165636566646434616662336334366263633835376564 +38626339383631336638 diff --git a/ansible/plays/infra.yaml b/ansible/plays/infra.yaml index 405b7c8..b5c449e 100644 --- a/ansible/plays/infra.yaml +++ b/ansible/plays/infra.yaml @@ -11,5 +11,6 @@ # - {role: compose_project, service: monitoring-stack} # mimir, loki, grafana - {role: compose_project, service: pantalaimon} - {role: compose_project, service: watchtower} + - {role: compose_project, service: vaultwarden} # vim: ft=yaml.ansible diff --git a/ansible/plays/services/vaultwarden/.env b/ansible/plays/services/vaultwarden/.env new file mode 100644 index 0000000..e4544c6 --- /dev/null +++ b/ansible/plays/services/vaultwarden/.env @@ -0,0 +1 @@ +COMPOSE_PROJECT_NAME=vaultwarden diff --git a/ansible/plays/services/vaultwarden/docker-compose.yaml b/ansible/plays/services/vaultwarden/docker-compose.yaml new file mode 100644 index 0000000..8ca4e22 --- /dev/null +++ b/ansible/plays/services/vaultwarden/docker-compose.yaml @@ -0,0 +1,60 @@ +{% import 'macro/postgres.j2' as pg with context %} +--- +version: '3' +services: + vault: + # Make sure to use the latest release from https://hedgedoc.org/latest-release + image: vaultwarden/server:latest + user: 65100:65100 + environment: + DATABASE_URL: "postgresql://{{ vault.db.user }}:{{ vault.db.password }}@db/{{ vault.db.name }}" + WEBSOCKET_ENABLED: "false" + DOMAIN: "https://vault.unruhig.eu" + SENDS_ALLOWED: "true" + PUSH_ENABLED: "true" + SIGNUPS_ALLOWED: "false" + ORG_EVENTS_ENABLED: "true" + ORG_CREATION_USERS: "{{ vault.admin.mail }}" + ADMIN_TOKEN: "{{ vault.admin.token }}" + PUSH_INSTALLATION_ID: "{{ vault.push.id }}" + PUSH_INSTALLATION_KEY: "{{ vault.push.key }}" + PUSH_RELAY_URI: https://push.bitwarden.eu + PUSH_IDENTITY_URI: https://identity.bitwarden.eu + SMTP_HOST: "{{ vault.smtp.host }}" + SMTP_FROM: "{{ vault.smtp.from }}" + SMTP_PORT: "{{ vault.smtp.port }}" + SMTP_SECURITY: "force_tls" + SMTP_USERNAME: "{{ vault.smtp.username }}" + SMTP_PASSWORD: "{{ vault.smtp.password }}" + ROCKET_PORT: "8080" + restart: always + labels: + - "traefik.enable=true" + - "traefik.docker.network=${COMPOSE_PROJECT_NAME}_default" + - "traefik.http.routers.vault.rule=Host(`vault.unruhig.eu`)" + # - "traefik.http.routers.vault.middlewares=deny-metrics@file" + - "traefik.http.routers.vault.entryPoints=websecure" + - "traefik.http.services.vault.loadbalancer.server.port=8080" + # - "prometheus-scrape.enabled=true" + # - "prometheus-scrape.port=3000" + depends_on: + db: + condition: service_healthy + volumes: + - vault_data:/data + networks: + - backend + - default # traefik + +{{ pg.postgres("db", vault.db.user, vault.db.password, vault.db.name, ["backend"]) }} + +volumes: + db_data: + vault_data: + +networks: + backend: + internal: true + postgres: + internal: true +... diff --git a/tf-stage-1/dns-unruhig-eu.tf b/tf-stage-1/dns-unruhig-eu.tf index 3b24a7e..311775d 100644 --- a/tf-stage-1/dns-unruhig-eu.tf +++ b/tf-stage-1/dns-unruhig-eu.tf @@ -30,6 +30,9 @@ module "dns-unruhig-eu" { # Filestash { type = "CNAME", name = "stash", value = "web.tobiasmanske.de" }, + # Vaultwarden + { type = "CNAME", name = "vault", value = "infra.unruhig.eu" }, + # Mail settings { type = "A", name = "mail", value = "202.61.232.207" },