差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
freebsd:mod_dav_svn_mod_authz_svnでsubversionサーバの構築 [2011-11-12 01:43] Decomo |
freebsd:mod_dav_svn_mod_authz_svnでsubversionサーバの構築 [2015-09-17 14:15] (現在) Decomo [秘密鍵のパスワードの解除] |
||
|---|---|---|---|
| 行 14: | 行 14: | ||
| ^リポジトリパス | / | ^リポジトリパス | / | ||
| ^認証系のファイル置き場 | / | ^認証系のファイル置き場 | / | ||
| + | |||
| + | ※Apache 2.4では一部変更点があるので[[# | ||
| ===== インストール ===== | ===== インストール ===== | ||
| 行 93: | 行 95: | ||
| ==== 正規ユーザーの追加 ==== | ==== 正規ユーザーの追加 ==== | ||
| - | < | + | '' |
| <cli> | <cli> | ||
| $ sudo htpasswd -c / | $ sudo htpasswd -c / | ||
| 行 103: | 行 105: | ||
| ==== リポジトリへのアクセス制御設定 ==== | ==== リポジトリへのアクセス制御設定 ==== | ||
| - | < | + | '' |
| < | < | ||
| [groups] | [groups] | ||
| 行 143: | 行 145: | ||
| ==== 秘密鍵の生成 ==== | ==== 秘密鍵の生成 ==== | ||
| + | 秘密鍵は漏れてはならないので、ディレクトリのパーミッションに注意。 | ||
| <cli prompt="# | <cli prompt="# | ||
| - | # openssl genrsa -aes256 2048 > / | + | # cd / |
| + | # mkdir -m 0700 ssl.{key, | ||
| + | # openssl genrsa -aes256 2048 > ssl.key/secret.key | ||
| Generating RSA private key, 2048 bit long modulus | Generating RSA private key, 2048 bit long modulus | ||
| .........................................+++ | .........................................+++ | ||
| 行 153: | 行 158: | ||
| </ | </ | ||
| - | ==== 公開鍵の生成 ==== | + | ==== 証明書署名要求の生成 ==== |
| <cli prompt="# | <cli prompt="# | ||
| - | # openssl req -new -key server.key > | + | # openssl req -new -key ssl.key/ |
| Enter pass phrase for server.key: | Enter pass phrase for server.key: | ||
| You are about to be asked to enter information that will be incorporated | You are about to be asked to enter information that will be incorporated | ||
| 行 180: | 行 185: | ||
| ==== 自己証明書の生成 ==== | ==== 自己証明書の生成 ==== | ||
| <cli prompt="# | <cli prompt="# | ||
| - | # openssl x509 -in server.csr -days 3650 -req -signkey | + | # openssl x509 -in ssl.key/server.csr -days 3650 -req -signkey |
| Signature ok | Signature ok | ||
| subject=/ | subject=/ | ||
| 行 187: | 行 192: | ||
| </ | </ | ||
| + | ==== 秘密鍵のパスワードの解除 ==== | ||
| + | Apache起動時に秘密鍵のパスワード入力を解除する。 | ||
| + | <cli prompt="# | ||
| + | # openssl rsa -in ssl.key/ | ||
| + | Enter pass phrase for ssl.key/ | ||
| + | writing RSA key | ||
| + | </ | ||
| + | |||
| + | ==== mod_sslの設定 ==== | ||
| + | extraディレクトリに設定サンプルがあるのでコピー。 | ||
| + | <cli prompt="# | ||
| + | $ cd / | ||
| + | $ sudo cp ../ | ||
| + | $ sudo mv subversion.conf subversion.conf.inc | ||
| + | </ | ||
| + | ssl.confから必要な部分のみ抜粋。 | ||
| + | <code apache|h / | ||
| + | SSLRandomSeed startup file:/ | ||
| + | SSLRandomSeed connect file:/ | ||
| + | |||
| + | Listen 443 | ||
| + | |||
| + | AddType application/ | ||
| + | AddType application/ | ||
| + | |||
| + | SSLPassPhraseDialog | ||
| + | |||
| + | SSLSessionCache | ||
| + | SSLSessionCacheTimeout | ||
| + | |||
| + | SSLMutex | ||
| + | |||
| + | < | ||
| + | |||
| + | DocumentRoot "/ | ||
| + | ServerName svnsvr:443 | ||
| + | ServerAdmin メールアドレス | ||
| + | ErrorLog "/ | ||
| + | TransferLog "/ | ||
| + | |||
| + | SSLEngine on | ||
| + | |||
| + | SSLCipherSuite ALL: | ||
| + | |||
| + | SSLCertificateFile "/ | ||
| + | |||
| + | SSLCertificateKeyFile "/ | ||
| + | |||
| + | < | ||
| + | SSLOptions +StdEnvVars | ||
| + | </ | ||
| + | < | ||
| + | SSLOptions +StdEnvVars | ||
| + | </ | ||
| + | |||
| + | BrowserMatch " | ||
| + | | ||
| + | | ||
| + | |||
| + | CustomLog "/ | ||
| + | "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \" | ||
| + | |||
| + | Include / | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ===== Apache 2.4 + Subversion 1.8対応 ===== | ||
| + | |||
| + | Apache 2.4 + Subversion 1.8にしたら動かなくなったので修正点を殴り書き。 | ||
| + | |||
| + | ==== mod_dav_svn ==== | ||
| + | |||
| + | / | ||
| + | |||
| + | ==== httpd.conf ==== | ||
| + | |||
| + | 以下のモジュールが有効になっているか確認。 | ||
| + | <code conf> | ||
| + | LoadModule socache_shmcb_module libexec/ | ||
| + | LoadModule ssl_module libexec/ | ||
| + | LoadModule dav_module libexec/ | ||
| + | LoadModule dav_fs_module libexec/ | ||
| + | </ | ||
| + | |||
| + | ==== 220_subversion.conf ==== | ||
| + | |||
| + | サードパーティ製モジュールの読み込みと設定は''/ | ||
| + | |||
| + | Subversion関連の設定は'' | ||
| + | |||
| + | '' | ||
| + | |||
| + | <code conf> | ||
| + | LoadModule dav_svn_module | ||
| + | LoadModule authz_svn_module | ||
| + | LoadModule dontdothat_module | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== ssl.conf ==== | ||
| + | |||
| + | **SSLMutex | ||
| + | |||
| + | ~~DISCUSSION~~ | ||