Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - wirehire

#91
Noch eine Frage hätte ich, wenn jetzt  ein Dienst selber seine zertifikate durch letsencrypt zieht, würde ihn dann das doppel ssl stören?


webseite beispiel.example.com hat ssl

und wenn ich dann im frontend auch noch ein zertifikat hinzufüge über das le plugin?

oder würde ich dann eher eine regel machen match host =beispiel.example.com und das dann auf das http frontend packen?

sehe das es für mailcow einen haproxy Anleitung gibt.

frontend https-in
  bind :::443 v4v6 ssl crt mailcow.pem
  default_backend mailcow

backend mailcow
  option forwardfor
  http-request set-header X-Forwarded-Proto https if { ssl_fc }
  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
  server mailcow 127.0.0.1:8080 check

würde jetzt für mich bedeuten, letsencrypt plugin zertifikat erstellen, backend einstellen wie in der config.

richtig?
#92
jetzt hat es geklappt.

so macht es auch mehr Sinn von der Struktur und dem Aufbau. Jetzt kann ich es besser nachvollziehen.

ich hatte gerade noch vergessen ssl entlastung und die beiden  zertifikate beim https frontend einzustellen. dann ging es mit deiner Anleitung!

Vielen Dank

(ich werde davon eine Doku erstellen)
#93
erstmal vielen Dank. Ich teste es sofort!
#94
 Im log sehe ich das er immer auf das erste matter frontend geht.
#95
#
# Automatically generated configuration.
# Do not edit this file manually.
#

global
    # NOTE: Could be a security issue, but required for some feature.
    uid                         80
    gid                         80
    chroot                      /var/haproxy
    daemon
    stats                       socket /var/run/haproxy.socket level admin
    nbproc                      1
    nbthread                    1
    tune.ssl.default-dh-param   1024
    spread-checks               0
    tune.chksize                16384
    tune.bufsize                16384
    tune.lua.maxmem             0
    log /var/run/log local0 info

defaults
    log     global
    option redispatch -1
    timeout client 30s
    timeout connect 30s
    timeout server 30s
    retries 3

# autogenerated entries for ACLs

# autogenerated entries for config in backends/frontends

# autogenerated entries for stats


# Frontend: mattermost_frontend ()
frontend mattermost_frontend
    bind 0.0.0.0:80 name 0.0.0.0:80 ssl  crt-list /tmp/haproxy/ssl/5ce7b75390d475.80894832.certlist
    bind 0.0.0.0:443 name 0.0.0.0:443 ssl  crt-list /tmp/haproxy/ssl/5ce7b75390d475.80894832.certlist
    mode http
    option http-keep-alive
    default_backend Mattermost_back
    # tuning options
    timeout client 30s

    # logging options
    # ACL: Mattermost_ACL
    acl acl_5ce7bccb5fd722.63607215 hdr(host) -i matter.example.com

    # ACTION: Mattermost_aktion
    use_backend Mattermost_back if acl_5ce7bccb5fd722.63607215

# Frontend: nextcloud_frontend ()
frontend nextcloud_frontend
    bind 0.0.0.0:80 name 0.0.0.0:80 ssl  crt-list /tmp/haproxy/ssl/5ce84c367bfcf8.98124961.certlist
    bind 0.0.0.0:443 name 0.0.0.0:443 ssl  crt-list /tmp/haproxy/ssl/5ce84c367bfcf8.98124961.certlist
    mode http
    option http-keep-alive
    default_backend Nextcloud_back
    # tuning options
    timeout client 30s

    # logging options
    # ACL: NEXTCLOUD_ACL
    acl acl_5ce84de7069a99.41039013 hdr(host) -i cloud.example.com

    # ACTION: Nextcloud_aktion
    use_backend Nextcloud_back if acl_5ce84de7069a99.41039013

# Backend: Mattermost_back ()
backend Mattermost_back
    # health checking is DISABLED
    mode http
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m
stick on src
    # tuning options
    timeout connect 30s
    timeout server 30s
    http-reuse never
    server Mattermost 192.168.1.20:80

# Backend: acme_challenge_backend (Added by Let's Encrypt plugin)
backend acme_challenge_backend
    # health checking is DISABLED
    mode http
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m
    stick on src
    # tuning options
    timeout connect 30s
    timeout server 30s
    http-reuse never
    server acme_challenge_host 127.0.0.1:43580

# Backend: Nextcloud_back ()
backend Nextcloud_back
    # health checking is DISABLED
    mode http
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m
    stick on src
    # tuning options
    timeout connect 30s
    timeout server 30s
    http-reuse never
    server Nextcloud 192.168.1.40:80


noch mal angepasst, jetzt kommen keine syntax fehler
#96
ich habe die matches jetzt mal auf host angepasst.

die erste greift , aber bei der zweiten will er das andere zertifikat nehmen. beim syntax test kommt das der backend kein frontend hat.

ich poste gleich mal die config
#97
also lasse ich das mit dem /* drin und erstelle dazu eine match rule?
#98
Würde es dann nicht sinn machen , bei den Regeln auf dem Host Namen zu matchen?

bisher habe ich das mit dem /* pfad.
#99
jetzt klappt es, die Frage ist nur ob es so richtig ist.

ich habe beim backend auf port 80 gestellt, da kein ssl mehr im nginx aktiviert ist.

dann im Frontend ssl entlastung und das zugehörige ssl zertifikat ausgewählt. nun geht es und meldet auch das richtige zertifikat.

ist das so richtig?

wenn jetzt ein weiterer Dienst dazu kommt, müsste ich nur ein weiteres Backend und frontend anlegen oder?
#100
also das ssl im nginx habe ich ausgestellt, intern über port 80 erreichbar und getestet.

die rules stimmen irgendwie noch nicht, she im haproxy log das eine anfrage auf port 443 rein kommt auf das erstellte frontend, aber dann passiert nix :)
#101
bisher eher schlecht :))

noch greift nicht alles.

ich werde erstmal das doppel ssl ausstellen.
#102
leg er diese rules nicht sogar schon automatisch an, wenn ich haproxy bei letsencrypt aktiviere?
#103
guter tipp mit der config, schaue ich mir auch jedes mal an.

habe jetzt das letsencrypt plugin installiert, konfiguriert und aktiviert.

hat auch alles geklappt. zertifikat hat er schon erstellt.

ich werde jetzt also unter rules eine neue anlegen:

wenn acme pfad dann..
#104
@superwinni2

Danke für Erklärung, ich probiere es mal so umzusetzten aber noch sind schwarze wolke über dem Kopf :)
#105
wow ^^

die sätze muss ich erstmal auf mich wirkken lassen :)

ja am ende soll alles per https bzw ssl ablaufen.

bisher ist ja im client schon ssl in nginx hinterlegt. muss das raus?

ich muss mal schauen wie ich das mit dem letsencrypt plugin hinbekomme.

man merkt das Du dich sehr gut auskennst, ich finde immer das die Howtos generell so einen Weg einmal auch mit Bilder aufzeichenen sollten :), erstelle ichd ann auch gerne wenn es läuft. Ich glaube das geht vielen so das es bildlich mit einem example am besten in den Kopf sickert :).