{{Hardware
|kontakt=[[Benutzer:Kasalehlia|Kasalehlia]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]]
|status=working
|ort=[[endur]]
|beschreibung=Web-Proxy für andere VMs
}}

== SSH-Keys ==
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA512
 
 $ for i in /etc/ssh/ssh_host_*pub; do ssh-keygen -lf $i; done
 1024 18:3e:7a:c4:ab:65:51:7e:d7:16:3d:49:c7:32:9e:ac /etc/ssh/ssh_host_dsa_key.pub (DSA)
 256 a4:87:d0:ad:9e:f3:23:5d:6e:f8:fc:de:e8:7a:e9:bf /etc/ssh/ssh_host_ecdsa_key.pub (ECDSA)
 256 0b:10:73:c5:30:18:ea:eb:8a:00:88:4d:1e:91:58:cc /etc/ssh/ssh_host_ed25519_key.pub (ED25519)
 2048 fd:1a:65:07:17:97:ff:d4:da:05:2a:c1:30:28:c1:a0 /etc/ssh/ssh_host_rsa_key.pub (RSA)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAEBCgAGBQJVXljeAAoJEMOZylE6vjlS+ecIAJn+C4Otfvv8l6nZ0nsZuxzx
 okKAu7ayUMAuZ0E/ZqNBnx6tpFpgVXq9AX9g7ZbxUgjm9poi6wKwd2r7c9ZSAFlp
 N9uVIR8WD5knKaLXL94mgiaBHTbeXS1Gzn1Jk46AiI+3M3ZutUmMTeEC2S7rVrbS
 NW0fME6UDFyy3eGINaIH1ntgSppxKAFnB5gCbRSQgRG8Qxer0UYAyqHzRBBdkw1v
 oU0adDBNiGvHjFMVsw9vboPQQG1nTNnbcJmffuVuDMypPDPxS5SygbbJCx6v77VW
 6xLE4TV+Nxg5OivDOhyW85zn4Nyfgz213+4io168wX9Sy5Ry19K5gYRYjy4Yhv8=
 =EnWC
 -----END PGP SIGNATURE-----

== Doku ==
* Debian jessie mit systemd (be warned!)
* externes Netz: eth0 144.76.9.122, per DHCP über Host-Bridge auf [[endur]]
* internes Netz: eth1 192.168.122.2/24, statisch über <tt>/etc/network/interfaces</tt>
* nginx:
** Sites debian-typisch in <tt>/etc/nginx/sites-enabled/</tt>
** SSL-Config in <tt>/etc/nginx/ssl_params</tt> wird von allen Sites inkludiert -> zentrale Konfiguration von Ciphers etc.
** LetsEncrypt/certbot Certs in <tt>/etc/letsencrypt</tt>, nginx-Config in <tt>/etc/nginx/letsencrypt.conf</tt>
** Genereller Redirect von http auf https und HTTPS Strict Transport Security
** sandbox.stratum0.org wird direkt gehostet
*** sandbox.stratum0.org/blog als Proxy auf [[regolas]] für Blog-Preview 
*** einziger statischer content ist [https://sandbox.stratum0.org/v1.html v1.html], für [https://github.com/matrix-org/matrix-react-sdk/blob/aef0a8025ca2c94c2a52c823d9bc7d4825b52e15/src/components/views/messages/MFileBody.js#L66-L115 Riot Cross Origin Renderer] (sonstiger Matrix foo auf [[Metiadoc]])
* Port Forwardings:
** 2222/tcp → [[theodem]]:22 (SSH für Vorstands-gitolite)
** 20022/tcp → [[shelog]]:22 (SSH für Shell-Server)
** 64738/tcp,udp → [[telmir]] (Mumble)
** 61553/tcp,udp → [[fredo]] (tinc))
** 113/tcp → [[metiadoc]] (identd für IRC-Bridge)
* LetsEncrypt:
** Relevante Doku in <tt>/usr/share/doc/letsencrypt.sh/</tt>
** neue Domains in <tt>/etc/letsencrypt.sh/domains.txt</tt> eintragen
** Hook in <tt>/etc/letsencrypt.sh/hooks.sh</tt>: aktualisiert DNS-TLSA-Records, wartet TTL ab und deployt Certs nach <tt>/var/lib/letsencrypt.sh/live-certs/</tt>
** in cron.daily: <tt>letsencrypt.sh -c -k /etc/letsencrypt.sh/hooks.sh; systemctl restart nginx</tt>
** für Tests bitte ''unbedingt'' die staging-API ohne Rate Limiting benutzen, siehe <tt>CA=...</tt> in <tt>/etc/letsencrypt.sh/config.sh</tt>

== SSH-Proxy per Gandolf ==

 Host    gandolf
         HostName                gandolf.stratum0.org
 
 Host    telmir smaut huryn errond-1 jamwise gitli
         ProxyCommand            ssh -q -x gandolf -W %h:22

== Log ==
* jessie-backports hinzugefügt und letsencrypt.sh installiert --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:49, 19. Okt. 2016 (CEST)
* unattended-upgrades eingerichtet, erstmal nur aus debian-security. siehe <tt>/etc/apt/apt.conf.d/02.periodic</tt> und <tt>/etc/cron.daily/apt</tt> für Doku --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 01:28, 23. Mai 2015 (CEST)
* <tt>/etc/nginx/ssl_params</tt>: remove Google DNS resolver for privacy reasons, remove resolve time directive --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 03:12, 22. Mai 2015 (CEST)
* Diese Seite in <tt>/etc/motd</tt> erwähnt. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 03:12, 22. Mai 2015 (CEST)
* Initial Setup, 20. Mai 2015, shoragan & Kasa

[[Kategorie:Virtuelle Maschine]]
[[Kategorie:Infrastruktur]]