relay ssh

Um sich per Server relay mit target zu verbinden. Nützlich wenn target hinter einer Firewall versteckt, aber von relay erreichbar ist.

ssh -J user1@relay user2@target

Dies kann mit anderen Optionen kombiniert werden, sodass eine Portweiterleitung stattfinden kann, über die bspw. sshfs genutzt werden kann.

ssh -L 9999:localhost:22 -J user1@relay user2@target
sshfs user2@localhost:/path /mountpoint -C -p 9999

Eine Kombination mit reverse-ssh könnte so aussehen:

ssh -L 9999:localhost:22 -J user1@relay -p 19999 user2@localhost

latexdiff

Um die Unterschiede zwischen zwei Latex Dateien zu ermitteln, die beispielsweise aus Git kommen.

latexdiff old.tex new.tex > diff.tex
pdflatex diff.tex

Und wenn man sowieso schon git benutzt, reicht es einfach den Hash des Commits angeben, den man mit dem aktuellen Stand vergleichen will.

latexdiff-vc -r 96deadbeef filename.tex --pdf

reverse ssh

Führe auf dem Computer target, der hinter einer Firewall steht und dennoch per SSH erreichbar sein soll folgendes aus

ssh -f -N -R 0.0.0.0:19999:localhost:22 user@server

server muss erreichbar sein und in /etc/ssh/sshd_config folgende Option aktiviert haben

GatewayPorts yes

Jetzt kann man von beliebigen Clients auf den Computer target zugreifen per

ssh -p 19999 user@server

So kann man beispielsweise auch sshfs nutzen.

sshfs -p 19999 user@server:folder ~/sshfs