Inhaltsverzeichnis
tinc
Beschreibung
Um Remote Dinge auf der RZ Infrastruktur machen zu können ist ein VPN über tinc vorhanden.
Einrichtung
Sprecht bitte makefu dafür an. Wenn ihr makefu noch nicht kennt seit ihr auch noch nicht lange genug im shack, dass ihr Remote-Zugang ins RZ braucht ;)
makefu findet ihr im IRC-Channel #krebs auf hackint
SSH ProxyJumping
Erstmal muss die SSH Konfig des aktuellen Users überarbeitet werden. Dazu bitte ~/.ssh/config
öffnen.
Host *.shack User root ForwardAgent yes ProxyJump wolf.r Host wolf.r User root ForwardAgent yes Hostname 10.243.77.1
hosts-Datei
Bei der Einrichtung des tinc werdet ihr auch eure /etc/hosts
Datei überarbeiten müssen. Alle Hosts, die über das tinc-retiolum Netz erreichbar sein sollen müssen in die hosts-Datei
chris@mgtsrv001:~$ cat /etc/hosts 127.0.0.1 localhost 10.243.77.2 puyak.r <<-- "Jumphost" im RZ
Webseiten im shack erreichen
Bitte vorher erstmal die IP des zu erreichenden Systems rausfinden. Dazu einfach auf wolf.r
springen und ein ping <hostname>
absetzen.
Beispiel: leases.shack
IP Adresse
ssh wolf.r Last login: Sat Jun 20 22:10:18 2020 from 10.243.226.216 [root@wolf:~]# ping -c 1 leases.shack PING fallbackns.shack (10.42.0.200) 56(84) bytes of data. 64 bytes from 10.42.0.200: icmp_seq=1 ttl=64 time=0.257 ms --- fallbackns.shack ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.257/0.257/0.257/0.000 ms
<hostname> ist also 10.42.0.200
Bash Alias für Webseite anpassen
Um dies so einfach wie möglich zu machen benutzen wir einfach Bash Aliase mit einer Variable.
alias shackrz-tunnel-leases='shackrz_leases_ip="10.42.0.200";shackrz_leases_localport="8080";shackrz_leases_remoteport="8080"; ssh -fNT -L ${shackrz_leases_localport}:${shackrz_leases_ip}:${shackrz_leases_remoteport} wolf.r'
Hier müssen die ersten drei Variablen
shackrz-leases-ip
shackrz-leases-localport
shackrz-leases-remoteport
passend ersetzt werden. Bei den meisten normalen Webseiten reicht ein Remote-Port 80 ider 443, bei leases ist es leider ein anderer.
Zugriff auf die Webseite
Die Webseite kann nun im lokalen Browser mit der folgenden URL geöffnet werden:
http://localhost:$localport
http oder https ist natürlich entscheidet die Zielwebseite.
fertige Configs
Hier einfach ein paar fertige Konfigs und Befehle, um Infrastruktur im RZ maintainen zu können.
Tunnel-Management
alias shackrz-list-tunnels="echo -e 'Please use the number in the second column.';ps aux | grep 'ssh -fNT' | grep 'wolf.r'" alias shackrz-close-tunnel='echo -e "Open SSH Tunnels to shack:\n";ps aux | grep "ssh -fNT" | grep "wolf.r"; echo -n "Number of second column: "; read -r sshprocess; kill -15 ${sshprocess}'
Webseite: DHCP Leases Liste (xq version)
# leases.shack ikskuh build alias shackrz-tunnel-leases='shackrz_leases_ip="10.42.0.200";shackrz_leases_localport="8080";shackrz_leases_remoteport="8080"; ssh -fNT -L ${shackrz_leases_localport}:${shackrz_leases_ip}:${shackrz_leases_remoteport} wolf.r' alias shackrz-open-leases='xdg-open http://localhost:${shackrz_leases_localport}/'
Webseite: iLO ibuprofen
# ilo Ibuprofen alias shackrz-tunnel-iloibu='shackrz_ilo_ibu_ip="10.0.0.9";shackrz_ilo_ibu_localport="8081";shackrz_ilo_ibu_remoteport="443"; ssh -fNT -L ${shackrz_ilo_ibu_localport}:${shackrz_ilo_ibu_ip}:${shackrz_ilo_ibu_remoteport} wolf.r' alias shackrz-open-iloibu='xdg-open https://localhost:${shackrz_ilo_ibu_localport}/'
Webseite: iLO phenylbutazon
# ilo phenyl alias shackrz-tunnel-ilophenyl='shackrz_ilo_phenyl_ip="10.0.0.10";shackrz_ilo_phenyl_localport="8082";shackrz_ilo_phenyl_remoteport="443"; ssh -fNT -L ${shackrz_ilo_phenyl_localport}:${shackrz_ilo_phenyl_ip}:${shackrz_ilo_phenyl_remoteport} wolf.r' alias shackrz-open-ilophenyl='xdg-open https://localhost:${shackrz_ilo_phenyl_localport}/'
Webseite: iLO naproxen
# ilo naproxen alias shackrz-tunnel-ilonaproxen='shackrz_ilo_naproxen_ip="10.42.23.38";shackrz_ilo_naproxen_localport="8083";shackrz_ilo_naproxen_remoteport="443"; ssh -fNT -L ${shackrz_ilo_naproxen_localport}:${shackrz_ilo_naproxen_ip}:${shackrz_ilo_naproxen_remoteport} wolf.r' alias shackrz-open-ilonaproxen='xdg-open https://localhost:${shackrz_ilo_naproxen_localport}/'
Webseite: Coreswitch Verwaltung
# coreswitch alias shackrz-tunnel-coreswitch='shackrz_coreswitch_ip="10.42.0.1";shackrz_coreswitch_localport="8084";shackrz_coreswitch_remoteport="80"; ssh -fNT -L ${shackrz_coreswitch_localport}:${shackrz_coreswitch_ip}:${shackrz_coreswitch_remoteport} wolf.r' alias shackrz-open-coreswitch='xdg-open http://localhost:${shackrz_coreswitch_localport}/'
SSH: jegliche Hosts, die über DNS IM shack auflösbar sind
Host *.shack User root ForwardAgent yes ProxyJump wolf.r
SSH: naproxen (Storage Server)
Host naproxen.shack User root ForwardAgent yes Proxyjump wolf.r Hostname 10.42.22.67
SSH: ilo-naproxen (Storage Server)
Host ilo-naproxen.shack User root ProxyJump wolf.r Hostname 10.42.23.38
SSH: Coreswitch
Host coreswitch.shack User admin Proxyjump wolf.r Hostname 10.42.0.1 KexAlgorithms +diffie-hellman-group14-sha1