2011/09/03(土)SSL 証明書要求の際の 2048bit長キーの生成方法
2017/10/12 04:35
パスフレーズなしの秘密鍵(通常はこちら)
openssl genrsa -out www.example.com.key 2048
パスフレーズありの秘密鍵(専用サーバの場合)
openssl genrsa -des3 -out www.example.com.key 2048
トリプルDESでパスフレーズ設定。
途上で、設定したいパスフレーズを2回設問されるので、2回とも設定したいパスフレーズを入力。このとき、パスフレーズは2回とも同じものを入力しましょう。
忘れるとお手上げです。
あとはCSR(証明書要求)を作成。
openssl req -new -key www.example.com.key -out www.example.com.csr
設問に従って入力。
特に common name のところは間違わないように。
パスフレーズを設定した場合は、ここでパスフレーズの入力を求められます。
2011/09/01(木)SSL サーバ証明書の怪
2017/10/12 04:34
更新自体は先ほど終えましたが、何回か Apache が起動できなくて悩みました。
どこにもエラーメッセージが出ません。
が、なんと、原因はサーバ証明書の書式。
ご存知の方も多いと思いますが、サーバ証明書は暗号化されており、実態はテキストファイルです。そして、そのテキストファイルは
-----BEGIN CERTIFICATE-----
の行で始まり、
-----END CERTIFICATE-----
の行で終わります。
コピー&ペーストのミスで、最後の行が
-----END CERTIFICATE----
になっていただけで、 Apache が起動しません。
よーぅく見れば判りますが、最後のハイフン '-' が1個足りないだけなのです。
「サーバ証明書入れたら Apacheが起動しない」
と言う場合、証明書のフォーマットも疑って見るべきのようです。
2011/07/30(土)FreeBSD 9.0R のリリース作業開始
2017/10/12 04:33
9.0R の目玉となりそうなものは、
* OpenSSH に HPNサポート導入 ― SSL/SSH の転送速度が最大10倍くらいになる。
* Capsicum を導入 ― 本当に「唐辛子」を組みこむわけではありません。新たなセキュリティ機構の名称で、プログラムモジュール単位で細かなアクセス制御ができるようになるらしいです。
あと、
* BIND をベースシステムから外すか否かの検討 ― 今のところは実施保留
という話もあるようです。
予定通りに進んだことは一度も無いですが、一応、予定は組まれています。
http://www.freebsd.org/releases/9.0R/schedule.html

また、インストーラーが変わるようです。
名称も今までの sysinstall から bsdinstall に変わります。
画面などが変わるらしい上に、従来どおり日本語はサポートされない/日本語対応が間に合わないため、リリース後に時間とれれば、弊社サイトか、このブログで紹介したいと考えています。
2011/07/06(水)ルータの修理
2017/10/12 04:32
先日、筐体の一部が素手で触れないほど熱くなっており、
様子を見てみると、1台は3つある冷却ファン全てが逝っており、もう一台は3つある冷却ファンのうち、2つが逝っていて、もうひとつは逝くのが時間の問題であるのが確認できました。
このままでは、熱故障してしまう。
急遽、予備のスイッチングHUB をセットアップし、通信サービスを維持しつつ、調査開始。
ここにはお見せできないくらい、酷い綿ゴミの山(約10年分 orz)が築かれておりましたが、掃除機で吸い取った状態が以下:


コンデンサ膨張もなく、問題ありません。
さすがに連続稼動を意図した設計になっているみたい。
電源部も問題なさそうで、よくあの灼熱状態で動作していたなぁと。
早速、交換用ファンを調達し、修理・復旧しました。
冷却ファンは、大きさ 40mm で統一されていましたが、5V が 1つ、12V ものが 2つ。
12V ものは ATXパソコン用のものが使えます。これは比較的入手容易。
5V ものはやや特殊で、価格も高め。電子部品を扱っている販売店でないと入手困難です。
復旧後は生温かい感じになっています。
2011/07/01(金)perl 5.14.0 以降のバージョン + PostgreSQL 9.0.4 以前のバージョンにおける構築
2017/10/12 04:31
2011/06/25(土)/usr/local/lib/libldap.so: undefined reference to `fetchGetURL'
2017/10/12 04:29
openLDAP サポートを必要とする他のアプリケーションを構築しようとすると、
/usr/local/lib/libldap.so: undefined reference to `fetchGetURL'
のようなリンクエラーが出て構築できないという状況になる場合があります。
日本語での情報が全く無いため、記録しておきます。
google のお世話になりました。英語が苦手なのでちと苦労を。。(爆)
これは、openLDAP 2.4.24 以降の新しいバージョンで fetch(3) ライブラリをデフォルトで組み込まなくなったことによります。
FreeBSD の場合は、fetch(3) ライブラリはOS標準で用意されています。
OpenLDAP 2.4.23 以前と同じ挙動にするためには、openLDAP 2.4 コンパイルの configure 時に、
--with-fetch
をconfigure オプションに追加します。
しかし、FreeBSD の場合、これだけでは駄目なのです。
コンパイル、インストールは何の問題もなくされるのですが、なんと、configure スクリプト自身にバグが潜んでいます。
以下のパッチを当てる必要があります:
@@ -22234,7 +22234,7 @@
if test $ol_cv_lib_fetch != no ; then
- LUTIL_LIBS="$LUTIL_LIBS $ol_link_fetch"
+ LIBS="$LIBS $ol_link_fetch"
> ol_link_fetch=freebsd
elif test $ol_with_fetch != auto ; then
上記の修正後、--with-fetch オプションを追加した状態にて、いつもどおり configure から openLDAP 2.4 を構築することで解決します。
(追記 2011/07/14)
OpenLDAP 2.4.26 に於いて、このバグは解消されているようです。
2011/06/15(水)dovecot 2.0.13 を FreeBSD8.2R 上で構築
2017/10/12 04:28
* dovecot 2.0.x のインストール準備
OSに dovecot と dovenull アカウントを作成。
# dovenull アカウントは 2.0 になってから必要になった
./configure 、make は v1.2.x と同じようにできる。
* dovecot 2.0 のコンフィギュレーションファイル dovecot.conf
v1.2 からは書式が大幅に変更されていて、正直難解なものになってしまった。
しかし、v1.2 のコンフィギュレーションファイルがあれば、v2.0 用に変換するツールが付いている。先ずは以下の要領で変換する:
# copy dovecot.conf dovecot.conf.old
# doveconf -n -c dovecot.conf.old > dovecot.conf
弊社では ver 1.2 からのアップグレードで、
これでOKかと言いたいところだが、リハーサルしてみると、実際はそのままではまともに起動しなかった。 dovecot.conf に以下の変更が必要だった:
service auth {
executable = /usr/local/libexec/dovecot/dovecot-auth ← 削除
unix_listener /var/spool/postfix/private/auth {
group = postdrop
mode = 0660
user = postfix
}
user = root
vsz_limit = 128 M
}
ちなみにこれは、SMTP-AUTH に dovecot SASL を使う場合の設定。
これで起動できる。
また、SSL 署名ファイルの書式はちょっと特殊。
ssl_cert = </etc/postfix/tlskey/clione.basekernel.ne.jp.pem
ssl_key = </etc/postfix/tlskey/clione.basekernel.ne.jp.key
赤文字部分の '<' が何故か必要。消す必要はありません。
最初は変換エラーかと勝手に思い込んで、わざわざ削除してしまい、填ってしまった...orz
参考にどうぞ。
2011/06/14(火)Samba 3.5.8 を FreeBSD 8.2上で構築
2017/10/12 04:27
Compiling ../nsswitch/winbind_nss_freebsd.c
make: don't know how to make EXTRA_FLAGS. Stop
や
Linking non-shared library bin/libsmbclient.a
make: don't know how to make EXTRA_FLAGS. Stop
といった、エラーを出して、 samba の導入が出来ない。
これは既知の問題らしく、3.5.0 が提供された時点から未だすべて修正されていない模様。
日本語での情報は無かったが、どうやら以下のようにすると大丈夫らしい。
source3/Makefile の 1405行目付近:
# $(LIBSMBCLIENT_THREAD_OBJ) ../nsswitch/wins.o ../nsswitch/winbind_nss_linux.o: EXTRA ....
つまり、$(LIBSMBCLIENT_THREAD_OBJ) で始まる行を探し出し、その行をコメントアウトする。
参考になれば幸いです。
2011/06/13(月)〔参考〕Apache 2.2 のSNI ホスティング設定
2017/10/12 04:26
Apache 2.2.12 以降で使用できます。
あとは、通常のノンセキュア名前ベースバーチャルホストと大きく変わりません。
--- ここから
Listen 443
NameVirtualHost aaa.bbb.ccc.ddd:443
SSLStrictSNIVHostCheck off
<VirtualHost aaa.bbb.ccc.ddd:443>
DocumentRoot "/home/webroot/site1/ssdocs"
ServerName www.example.com
SSLEngine on
SSLCertificateFile "/usr/local/etc/apache/certs/www.example.com.pem"
SSLCertificateKeyFile "/usr/local/etc/apache/certs/www.example.com.key"
(以下、その他の設定)
</VirtualHost>
<VirtualHost aaa.bbb.ccc.ddd:443>
DocumentRoot "/home/webroot/site2/ssdocs"
ServerName www.example.net
SSLEngine on
SSLCertificateFile "/usr/local/etc/apache/certs/www.example.net.pem"
SSLCertificateKeyFile "/usr/local/etc/apache/certs/www.example.net.key"
(以下、その他の設定)
</VirtualHost>
2011/06/13(月)ネーム(名前)ベース SSL バーチャルホストは今や可能
2017/10/12 04:25
今まで、SSLのバーチャルホスティングは、サイト毎に異なるIPアドレスが必要で、昨今のIPアドレス枯渇を受けて、不要不急の立ち上げを規制しているなどの面もあって積極的には対応していませんでした。
エンドユーザに対しては、「サイト毎にIPアドレスが必要 → 提供費用の上乗せ」ということにならざるを得ずという状況でした。
ですが、現在では「SNI対応ブラウザ」さえあれば、「ネーム(名前)ベース SSL バーチャルホスト」が出来ますので、同じ品質で今までより安価にSSLサイトを運用・構築できる道が拓かれています。
月額換算で最低4000円程度から対応できます。
SNI対応ブラウザは、2011/06/13 現在以下の通りです。
一部ゲーム機に以下のブラウザが搭載されていますが、ゲーム機では基本的にSNI対応はされていません。
お使いのものが WindowsXP であれば、Internet Explorer を捨てる選択をお勧め。
但し、Internet Explorer からの乗り換え誘導のほうが、経済的負担より重いかもしれません。
・Opera 8 以降全て (TLS 1.1 を手動で有効・確認する必要がある)
・Firefox 2 以降全て
・Chrome 6 以降全て
・Safari 3.2.1 以降
(Safari については、MacOS X,Windows 7 以降で対応。その他は不可)
・Lynx 2.8.7rel1 以降
・Internet Explorer 7,8,9
(Internet Explorer については、Windows vista 以降で対応。Windows XP は不可)
また、サーバでもSNIに対応していることが必要です。
以下の要件を満たしていれば、たいていの場合、自動的に導入されています。
・Apache 2.2.12 以降のバージョンで、OpenSSLライブラリ付きで構築している
・OpenSSL 0.9.8k 以降
(OpenSSLがTLS拡張オプション〔enable-tlsext〕ありで構築している)
(OpenSSL 0.9.8f 以降であれば、TLS拡張オプションありで再構築すれば対応できる)
FreeBSD の場合、OpenSSL がOSにバンドルされていますが、8.1R が OpenSSL 0.9.8n, 8.2R が OpenSSL 0.9.8q で、8.1R からデフォルトでTLS拡張オプション対応です。
