비표준 포트에서 SSH로 SVN / SSH를 구성하는 방법은 무엇입니까?


14

SSH가 포트 20000에 있도록 구성했습니다.

svn co svn+ssh://server.com:20000/home/svn/proj1 proj1 --username jm

나는 얻다

svn: To better debug SSH connection problems, remove the -q option
from 'ssh' in the [tunnels] section of your Subversion configuration
file. svn: Network connection closed unexpectedly

SVN에게 포트 20000을 사용하도록 지시해야한다고 생각합니까?

우분투에 있습니다 11.10

답변:


19

Subversion 구성 ( ~/.subversion/config) 에서 새 '터널'을 정의 할 수 있습니다 . 해당 섹션을 찾아서 [tunnels]다음과 같이 정의하십시오.

[tunnels]
foo = ssh -p 20000

나중에 URL을 통해 저장소에 문의 할 수 있습니다 svn+foo://server.com/home/svn/proj1 proj1.


또한 기본 svn+ssh프로토콜의 포트 를 재정의하려면을 정의하십시오 ssh = ssh -p 20000. 이것은 /etc/ssh/sshd_config서버에서 수정 되어 Port 22로 교체 되었다고 가정합니다 Port 20000.
Cloud

1
당신과 같은 일을 말하지 않는다 : @Dogbert 나는 시도 ssh = ssh -p 20000하고 체크 아웃을 시도 svn+ssh://example.org/var/svn-repos/mydev/trunk하지만 여전히 포트 (22)에 시도
rubo77

13

기본이 아닌 포트 또는 다른 사용자 이름으로 ssh 서버에 액세스해야 할 때마다에서 별명을 정의 할 수 있습니다 ~/.ssh/config.

Host mysvn
HostName server.com
Port 20000
User jm

그런 다음를 실행하십시오 svn co svn+ssh://mysvn/home/svn/proj1.


4

어떤 이유로 ~/.subversion/config파일을 편집 할 수없는 경우 명령 행에서 포트를 지정할 수 있습니다.

svn co svn+ssh://joe@myserver/myrepo/ --config-option="config:tunnels:ssh=ssh -p 20000"

그러나 svn명령 을 실행할 때마다이 옵션을 수행해야합니다 . 이것은 빌드 에이전트에 적합 할 수 있습니다.


0

~ / .subversion / config 파일에 ssh 터널이 정의되어 있지 않은 경우 SVN_SSH 환경 변수를 사용하여 호출별로 ssh 명령을 무시할 수 있습니다

SVN_SSH='ssh -p 20000' svn co svn+ssh://server.com/home/svn/proj1 proj1 --username jm

예를 들어

deo@fox:~$ SVN_SSH='ssh -v -p 20000' svn ls svn+ssh://svn/
OpenSSH_7.9p1 Debian-10, OpenSSL 1.1.1c  28 May 2019
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to svn [192.168.177.2] port 20000.
debug1: connect to address 192.168.177.2 port 20000: Connection refused
ssh: connect to host svn port 20000: Connection refused
svn: E170013: Unable to connect to a repository at URL 'svn+ssh://svn'
svn: E210002: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
svn: E210002: Network connection closed unexpectedly

~ / .subversion / config 파일 ssh 터널을 정의하는 경우에는 작동하지 않습니다 .이 경우 구성 파일이 우선합니다. (이는 다소 드문 경우입니다. 일반적으로 환경 변수는 일반적으로 구성 파일보다 우선합니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.