Archiv der Kategorie: Web

SOGO Lesebestätigung senden

Mein SOGO von meinem Mailcow Server sendet automatisch keine Lesebestätigung, wenn diese jemand anfordert. Man sieht diese nicht einmal.

Das lässt im Postfach unter Einstellungen -> E-Mail -> IMAP-KONTEN => Einstellungen des Kontos ändern.
Standartmäßig ist „Niemals eine Bestätigung senden“ ausgewählt. Dies habe ich auf „Erlaube eine Bestätigung für einige Nachrichten“ geändert. Hierbei habe ich überall die Option gewählt, dass SOGO nachfrägt ob eine Bestätigung gesendet werden soll.

FritzBox DS-Lite Remote-Zugang

Leider gibt es über meinen Provider nur noch einen DS-Lite Zugang, bei dem man nur öffentliche IPV6 Adressen bekommt. Der Zugriff über IPV4 funktioniert nicht.
Somit funktioniert der Zugriff auf die FritzBox über myfritz.net nur, wenn der Provider IPV6 unterstützt. Über das Mobilfunknetz habe ich das bisher noch nie gesehen.

Da ich manchmal von unterwegs Geräte im Heimnetzwerk über die FritzBox starten will benötige ich diesen Zugang unbedingt. Das ganze habe ich über meinen Server mithilfe eines Apache-Reverseproxy gelöst.

Die FritzBox muss in einem MyFRITZ! Konto registriert sein und der Internetzugriff aktiviert sein.

Hierbei erhält man eine MyFRITZ!-Adresse welche auf die IPV6 der FritzBox zeigt.

Damit der Zugriff auf die FritzBox über den Proxy funktioniert muss der DNS-Rebind-Schutz für die Domain deaktiviert werden

Eine Apache 2 Konfig für HTTPS kann wie folgt aussehen:

<VirtualHost *:443>
  ServerName fritzbox.m-hofmann.eu
<Location />
 AuthType Digest
 AuthName "Martin's FritzBox"
 AuthDigestProvider file
 AuthUserFile /pfadzurPW-Datei/.fritzboxUsersPW
 Require valid-user

  ProxyPass  https://adresse.myfritz.net:47297/
  ProxyPassReverse  https://adresse.myfritz.net:47297/
  ProxyPreserveHost On
  ProxyAddHeaders On
  RequestHeader set X-Forwarded-Proto "https"
</Location>

  SSLCertificateFile /sslcerts/m-hofmann.eu/fullchain.pem
  SSLCertificateKeyFile /sslcerts/m-hofmann.eu/key.pem

  SSLProtocol all -SSLv2 -SSLv3
  SSLHonorCipherOrder on
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
  SSLProxyEngine On

  # If you plan to proxy to an untrusted HTTPS host:
  SSLProxyVerify none
  SSLProxyCheckPeerCN off
  SSLProxyCheckPeerName off
  SSLProxyCheckPeerExpire off
</VirtualHost>

Der Zugriff wurde zusätzlich über einen Passwortschutz HT-Digest abgesichert. Die PW-Datei wird mit folgendem Befehl angelegt:

htdigest -c .fritzboxUsersPW "Martin's FritzBox" Martin

Es kann aber auch eine Basic-Auth verwendet werden. Ich setze allerdings immer auf HT-Digest, da hierbei die Login-Daten verschlüsselt übertragen werden!

WD-MyCloud Ex2 Ultra SSH PUB-Key Notizen

Nas WEB GUI=>Neuer Benutzer hinzufügen, SSH in Einstellung -> Netzwerk aktivieren

Login sshd@nas_ip

vi /usr/local/config/passwd
Homeverzeichnis des neuen Benutzers umstellen auf /shares/Benutername

cd /shares
chown Benutzername Benutzerverzeichnis

vi /etc/ssh/sshd_config
AllowUsers Benutzername hinzufügen
SSH per kill -HUP ‚cat /var/run/sshd.pid‚ neustarten (änderungen sind noch nicht Permanent -> nur zum testen)

SSH-Key erzeugen und aufs Nas kopieren
ssh-copy-id -i ~/.ssh/id_rsa.pub benutzername@nas_ip

Da man die SSHD_Config nicht permanent speichern kann kommt hier jetzt ein kleiner Hack ;-D
Über die Nas GUI eine App installieren (ich nehme hier jetzt phpMyAdmin)

vi /mnt/HD/HD_a2/Nas_Prog/phpMyAdmin/start.sh
Am Ende einfügen: sed -ir ’s/(AllowUsers .*)/\1 benutzername/‘ /etc/ssh/sshd_config
kill -HUP cat /var/run/sshd.pid
Über sed -ir ‚/PasswordAuthentication yes/c\PasswordAuthentication no‘ /etc/ssh/sshd_config
könnte nur Pub/Key erlaubt werden. Aber man müsste auch nen Key für den SSHD Benutzer erstellen, da su nicht funktioniert.

Das ganze wurde von mir zusammen gestückelt, also keine Garantie…

Refs: https://cutecoder.org/software/git-server-network-drive/
https://community.wd.com/t/ssh-without-password-for-non-root/93749

Let’s Encrypt Wildcard-Zertifikate mit acme.sh

Installation

git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail "e-mail-adresse"

DNS

Beim anfordern von Wildcard Zertifikaten wird die DNS-Challenge verwendet. Dabei wird ein TXT-Record bei der Domain hinzugefügt.

Mehrere Domain-Anbieter verfügen über API’s, welche DNS-Einstellungen verändern können.

Bsp. Netcup:

export NC_Apikey="APIkey"
export NC_Apipw="APIpassword"
export NC_CID="Kunden-Nr"

Zertifikat beantragen

acme.sh --issue --dns dns_netcup -d m-hofmann.eu -d '*.m-hofmann.eu' --dnssleep 600

Je nachdem welche TTL bei der Domain eingestellt ist muss der Wert bei dnssleep verändert werden, da sonst die Änderung noch nicht vorgenommen wurde und somit die Zertifikat Ausstellung fehlschlägt.

Zertifikat installieren

acme.sh --install-cert -d m-hofmann.eu -d '*.m-hofmann.eu' --cert-file /sslcerts/m-hofmann.eu/cert.pem --key-file /sslcerts/m-hofmann.eu/key.pem --fullchain-file /sslcerts/m-hofmann.eu/fullchain.pem --reloadcmd "service apache2 force-reload"

Mailcow

export DEPLOY_MAILCOW_PATH="/mailcow-pfad/"
acme.sh --deploy -d m-hofmann.eu -d '*.m-hofmann.eu'  --deploy-hook mailcow