55
votes

What ports need to be open for TortoiseSVN to authenticate (basic) in order to commit? I know it is not a good thing, but I believe username and password are in the clear right now.

Let me describe as much as I know about set-up, and what seems to be happening.

I am a contractor helping a state to deploy and modify a "mostly" public domain application. There is an SVN repository in a different state which contains the application, with read only privileges for everyone.

In order for me to work on the site that I want to deploy, I must create a VPN connection, and then use Remote Desktop Connection to access the machine where the deployment will reside. When I am on that machine, I can browse the repository and export or checkout anything. When I attempt to commit I am prompted with a username/password challenge, and it always fails.

When I am at my home machine, I can commit to the exact same repository and the exact same place using the exact same credentials. I have asked the repository manager to verify that the username I use has all the necessary rights to commit, and I am assured that I do.

So, even though I am getting an error message that describes something like "invalid credentials", I think that the authentication is being blocked. I am attempting to find out whether or not a default SVN installation would use the same listening SVN port, or a different one for authentication. I don't believe the authentication is encrypted.

I'd appreciate any suggestions.

1
Unless you explicitly specify the port in the repository URL, it will be port 80 for HTTP, 443 for HTTPS, or 3690 for the SVN protocol.vcsjones
Thanks, if I'm using tortoise to commit, is everything done over port 80 - I'm not specifying any port on the url, or is the authentication (still through tortoise) over the 3690? As I said, I can export, checkout via tortoise, but I cannot authenticate. I verified username and password by looking at the tortoise local auth store (the one that save credentials, when you click the remember credentials box, with something I downloaded from the web, and I do have permissions, and it is only this machine that I have to vpn into that I cannot authenticate toPaul

1 Answers

158
votes

What's the first part of your Subversion repository URL?

  • If your URL looks like: http://subversion/repos/, then you're probably going over Port 80.
  • If your URL looks like: https://subversion/repos/, then you're probably going over Port 443.
  • If your URL looks like: svn://subversion/, then you're probably going over Port 3690.
  • If your URL looks like: svn+ssh://subversion/repos/, then you're probably going over Port 22.
  • If your URL contains a port number like: http://subversion/repos:8080, then you're using that port.

I can't guarantee the first four since it's possible to reconfigure everything to use different ports, of if you go through a proxy of some sort.

If you're using a VPN, you may have to configure your VPN client to reroute these to their correct ports. A lot of places don't configure their correctly VPNs to do this type of proxying. It's either because they have some sort of anal-retentive IT person who's being overly security conscious, or because they simply don't know any better. Even worse, they'll give you a client where this stuff can't be reconfigured.

The only way around that is to log into a local machine over the VPN, and then do everything from that system.