"ssh"이외의 다른 것을 ssh 프로그램으로 사용할 수 있습니까? Rsync는이 목적을 위해 -e 옵션을 가지고 있으며 rsh 또는 ssh가 전송으로 사용될 수있는 다른 인터페이스를 가지고 있습니다. 내가 가지고있는 특별한 유스 케이스는 요새 호스트를 통해 ssh 연결을 연결하는 것입니다. 왜냐하면 내가 복제/풀링하는 호스트에 대한 직접적인 ssh 액세스가 방화벽에 의해 허용되지 않기 때문입니다."ssh"이외의 ssh (rsh) 전송을 사용하는 방법
내가 지금까지 생각해 낸 최선의 해결책은 "ssh"라는 단일 실행 파일로 디렉토리를 만들고 그 디렉토리를 내 PATH의 시작 부분에 놓는 것입니다. "ssh"파일의 내용은 다음과 같습니다.
#!/bin/sh
# If we were being clever we'd look at where we were and just snip that
# off the path.
export PATH=/bin:/usr/bin:/sbin:/usr/sbin
exec ssh bastion.example.org ssh "[email protected]"
이 방법은 효과가 있지만 여러 가지 단점이 있습니다.
GIT_SSH 환경 변수는 스크립트를 작성하고 참조해야하므로 나중에 수행하지 않습니다. rysnc의 -e 옵션이있는 반면에 내가 대신 다른 프로그램을 사용하여 자식을 구성하는 노력의
rsync -e 'ssh -K bastion.example.org ssh' ...