Итак, после долгого чтения и дополнительного чтения я, наконец, нашел некоторые объяснения для своих вопросов и понял, что этот конфиг не будет работать, а скорее, что @Rup был прав, хотя его синтаксис был немного неправильным.
Чтобы закрыть вопрос в любом случае и получить некоторую полезную информацию для других поисковых душ, вот правильный способ создания туннеля с файлами конфигурации в linux
Host FireWallServer
HostName <FireWall Server IP>
User admin
IdentityFile ~/.ssh/id_rsa
PasswordAuthentication no
Compression yes
ForwardX11 no
Host SVNServer
ProxyCommand ssh FireWallServer nc <SVN Server IP> %p
ForwardAgent yes
Ваш первый друг будет man ssh_config , поскольку он содержит большую часть необходимой вам информации. Хорошее объяснение, которое я нашел на Прозрачный Multi-hop SSH
Таким образом, окончательным лучшим решением было создать туннель для локального порта:
ssh -L 9223:<SVN Server IP>:80 admin@<FireWall Server IP>
Теперь откройте другой терминал и выполните svn-запрос в этом туннеле:
svn info http://localhost:9223/<path to your svn repo>
Пара должна иметь , однако, требуется для этого способа работы:
- Все серверы должны быть настроены на прием ssh через порт 9222 для пользователя admin с помощью ssh_key
- На всех серверах должен быть настроен демон ssh для использования одного и того же порта
- SVN должен быть настроен для запуска через Apache с mod_dav
Надеюсь, это кому-нибудь пригодится :)