2010年1月27日からcoreserver上で、自前インストールのSVNリポジトリが外部から使えなくなる現象について

TortoiseSVNからアクセスしようとして

expected format ‘3′ of repository found format ‘5′

というエラーが出たら、ビンゴです。
どうやらcoreserverの中の人が何かやらかして、設定が変わったようだ。
参考サイトをもとにした自分流の対処法はこちら。
1. コンソール用とSVN用の鍵を切り分けて登録
PuTTYgenでコンソール用とSVN用の秘密鍵を公開鍵を作成する。
id_rsa_svn.ppk SVN用秘密鍵
id_rsa_console.ppk コンソール用秘密鍵
サーバにて、~/.ssh/authorized_keysにSVN用、~/.ssh/uthorized_keys2にコンソール用の公開鍵を登録する。
2. authorized_keysの編集
SVN用のauthorized_keysのみ、下記のように修正する。
修正前

ssh-rsa ??????...(省略)

修正後

command="/virtual/username/local/bin/svnserve -t" ssh-rsa ??????...(省略)

3. PuTTYからの接続設定
「認証のためのプライベートキーファイル」にid_rsa_console.ppkを指定する。
4. TortoiseSVNからの接続設定
「設定」→「ネットワーク」→「SSHクライアント」にて

"C:Program FilesTortoiseSVNbinTortoisePlink.exe" -i "C:Program FilesPuTTYid_rsa_svn.ppk"

と指定すればOK。
参考サイト
■追記
VirtualBoxのLinuxからも使えるようにする方法。
まず、Linux側で

$ ssh-keygen -t rsa

これで、秘密鍵~/.ssh/id_rsaと公開鍵~/.ssh/id_rsa.pubを作成する。
id_rsa.pubをcoreserverにアップ。
coreserverにて

$ cd ~/.ssh
$ cat ../id_rsa.pub >> authorized_keys

追加したrsa公開鍵に対して、2. authorized_keysの編集を施す。
Linux側で秘密鍵として~/.ssh/id_rsaを使ってリポジトリにアクセスできることを確認する。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です