我应该考虑什么来保护Windows上的SVN?

目前我正在使用VisualSVN服务器,它只能在我的家庭networking上访问。 最终会有其他人访问它,但现在只是我,我想能够下到咖啡店(或任何地方),并能够离开房子工作。

目前我正在通过http://user-pc:xx/svn/Projects/访问服务器。 当我设置我的路由器将XX端口转发到我的服务器时,我应该采取哪些措施来保护服务器?

请记住,我在Windows上这样做,当我广泛使用常规命令提示符时,我没有很长时间没有使用SVN,除了TortoiseSVN以外,没有使用任何东西来处理它到目前为止。

编辑 :攻击者可以做的唯一有害的事情,我知道,是:猜测我的端口号,用户名和密码进入存储库。 然而俗话说,我不知道我不知道。

所以我不一定要求一步一步的指示(尽pipe我当然也希望这样做),就像我需要考虑的事情一样,一旦港口开放, 任何forms的攻击都可以考虑。

  1. 使用良好的密码强度来保护VisualSVN服务器
  2. 使用更高端口的服务器,例如39517,而不是默认的端口80或443.使攻击者难以猜测。 攻击者将不得不依靠端口扫描。
  3. VisualSVN服务器将不允许匿名访问。 您需要明确定义用户。
  4. 只允许用户访问您认识/信任的人。
  1. 在服务器端使用https,而不是简单的http(AuthType Basic是可截取的)使用Digest auth(必须手工configurationApache)
  2. 在服务器上使用(免费的)CA颁发的证书,而不是自签名的(您可以使用自签名证书,但每次都会用(?)来validation)
  3. 保持最新的VisualSVN服务器版本(修复了Apache和SVN本身的可能的问题)
  4. 在httpd.conf中启用日志logging以进行安全审计(默认情况下,在VisualSVN Server中不logging日志)

我会build议使用ssh访问你的svn服务器。 我个人更喜欢公/私钥authentication。

即使这样,desaivv的build议也是我会推荐的。