忘れたときに備えた記録

トップ 最新 追記
2005|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|11|12|
2009|01|02|03|04|05|06|10|12|
2010|06|07|08|12|
2011|07|09|
2012|09|11|
2013|02|03|09|
2015|10|11|
2016|01|08|11|
2017|02|08|10|
2018|11|

2005-03-03(Thursday)

courier-imap-sslで使う証明書

imapサーバを作ったけど、ルート証明書のホスト名がloalhostになっていた。

で、これを適切なものに直す方法。

1. /etc/courier/imapd.conf を適当に修正

2. /etc/courier/imapd.pem を削除

3. mkimapdcert を実行

以上

Tags: メモ

2005-03-13(Sunday) メーリングリスト導入

eximでfml

メーリングリストサーバーのfmlをインストールして使おうとしたが、どうにもこうにも、設定がうまくいかない。試しに送ったメールがどこかへ消えたり、ローカルネットからなら加入手続きの仕組みが動くのに外からだと変だったり。

どうも、サーバのeximがfmlを起動する時の方法に問題があるらしい。

というわけで、eximで使うのはあっさりあきらめて、postfixの使い方を調査。

Tags: メモ

postfixの設定(Maildir)

とりあえず、参考にしたURIを

http://www.unix-power.jp/linux/postfix-tls.html

http://may.sakura.ne.jp/~zaki/linux/postfix.html

Maildirを使うときは、/etc/postfix/main.cfに

home_mailbox = Maildir/

と追記。末尾の/は必要。

Tags: メモ

2005-03-16(Wednesday) Apache+SSL

SSL証明書

ファイル設定はあちこちで公開されててすぐになんとかなったけど、証明書関係のコマンドを手入力じゃなくある程度自動で出来ないかと思って色々調べてみた。

で、出てきたのがこのコマンド

Tags: メモ
/usr/sbin/make-ssl-cert

/usr/share/ssl-cert/ssleay.cnfをホームディレクトリに適当な名前(今回はhinet.cnf)でコピーして、中に書いてある各項目をこんな感じに設定して

#
# SSLeay example configuration file.
#

RANDFILE = $ENV::HOME/.rnd
[ req ] default_bits = 1024 default_keyfile = privkey.pem distinguished_name = req_distinguished_name prompt = no
[ req_distinguished_name ] countryName = JP stateOrProvinceName = Hokkaido localityName = Sapporo organizationName = HINET organizationalUnitName = Personal commonName = chaos.hinet.mydns.jp emailAddress = ほにゃらら(アットマーク)うんたらかんたら

で、

$ sudo /usr/sbin/make-ssl-cert hinet.cnf hinet.keys

これで、必要な秘密鍵・証明書ファイルの出来上がり。便利。


2005-03-17(Thursday) 公開

というわけで(謎)、大学でやってる翻訳作業のためにリポジトリとバグジラを公開する都合で、備忘録もおっかなびっくり公開。

Apache + Subversion

公開してみたら、いきなりうまく動かなかった。がっかり

翻訳作業のデータをSubversionのリポジトリで管理していて、今まではsvn+sshを使っていたのを、Apacheとmod_dav_svnを使ってみることにしたのだけど、コミットするときになぜか

Tags: メモ
svn: PROPFIND リクエスト (相手: '/svn') が失敗しました
svn: PROPFIND (URL: '/svn'): 301 Moved Permanently (http://cs)

というエラーが出てしまう。ちなみにこれはLinuxのコンソール版クライアントで出たエラー。TortoiseSVNでも似たようなエラーが出る。

さんざん調べて、原因がApacheの設定におけるDocumentRootにあるらしいということが分かった。

ディレクトリ構成は

/var/project/
       +--svn/

こんな感じで/var/project/svnがリポジトリ。

で、Apacheの設定は

<VirtualHost *>
  ServerName project.hinet.mydns.jp
  DocumentRoot /var/project

Options -Indexes <Location /svn> DAV svn SVNPath /var/project/svn </Location>
</VirtualHost>

とこんな感じ。実際はポートが443でSSLを使って認証がどうたらこうたらという設定も書いてあるんだけど、今回の話とは関係がないので割愛。また、ディレクトリ名なんかもprojectというのではないのだけど、あくまで例ということで。

この設定でサーバを動かすと、ブラウザからはhttp://project.hinet.mydns.jp/svnに接続できてちゃんとリポジトリの内容も表示されるのだけど、Subversionのクライアントを使うとコミットもチェックアウトも出来ない。

で、色々と設定をいじって確かめていると、DocumentRootをコメントアウトすれば正常に動作することが判明。出来ればDocumentRootも使いたかったのだけど結局あきらめて、svnリポジトリ用のと、ドキュメント用の2つのバーチャルホストを作ることに。

というのが、2時間ほど前の話。実はなんとDocumentRootが原因ではありませんでした。

ここで注目するべきなのは、実際にリポジトリが入っているディレクトリ/var/project/svnと、Locationで指定したhttp経由でリポジトリを指定する場合のhttp://project.hinet.mydns.jp/svnが、DocumentRootから見ると同じディレクトリを指していること。

mod_dav_svnでは、Locationで指定したディレクトリと同じ場所に、実際にディレクトリが存在しているとエラーが出る模様。

なので、ディレクトリ構成を

/var/project/
       +--svnrepository/

こんな感じに変えて、設定ファイルのDavの辺りを

  <Location /svn>
    DAV svn
    SVNPath /var/project/svnrepository
  </Location>

このようにして、Locationで指すディレクトリに本当にディレクトリが存在しないようにしておけば、エラーが出なくなりましたとさ

本日のツッコミ(全10件) [ツッコミを入れる]

Before...

_ ramyana [ありがとうございます!たすかった!]

_ sanadan [ありがとうございます。この記事のおかげで直せました。]

_ namu76 [同じく助かりました.ありがとうございました!!]


2005-03-23(Wednesday) Apacheのアクセスログ

Apacheのログでリモートホストの名前を出力

Apacheのアクセスログの、リモートホストの項がIPアドレスになっていて分かりづらいので、ホスト名を出力する方法はないものかと調べてみた。

Tags: Apache
HostnameLookups On

という記述を/etc/apache2.confに書くことで解決。デフォルトではOffになっていた。