カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

SSLでパスフレーズの入力を省略する

apacheにSSLを導入した場合、apacheの起動時にパスフレーズの入力を求められます。
サーバーの再起動時や、プログラム等でのapacheの自動起動でパスフレーズの入力で止まったまま起動しない、という問題が発生します。

[Apache+SSL環境の構築]の最後でも紹介したように、秘密鍵を復号化しておけばパスフレーズの入力を省略できますが、セキュリティ上良くありません。
そこで秘密鍵を復号化することなく、パスフレーズの入力を省略する方法をご紹介します。

apacheのhttpd.confの<ifModule ssl_module>ディレクティブを修正します。

<ifModule ssl_module>
...
    SSLPassPhraseDialog exec:{プログラムの絶対パス}
</ifModule>

通常、SSLPassPhraseDialogの記述はないかと思いますが、
デフォルトはbuiltinとなっており、対話形式でパスフレーズを入力する設定になっています。
続きを読む…»

2,662 views

Apache+SSL環境の構築

Googleが常時SSL接続になり、SEOでもそれが加味されるようになってきました。

また、Google検索からの流入を解析するためにも、自身側のSSL化が必要になってきます。
というのも、HTTPSからHTTPではリファラーが取得できないのです。
自身のサーバーをHTTPSにすればHTTPSからのリファラーを取得することができます。
HTTPSならHTTPからのリファラーも取得することができます。

それに当たって、今回はopensslの導入部分を解説させていただきます。

【バージョンについて】
apache2.2.31
openssl-0.9.8zg
※opensslのインストールディレクトリは/usr/local/sslとします。

【鍵のペア作成と証明書の作成】
SSL通信を利用するには次の3つが必要です。
1.秘密鍵
2.公開鍵+証明書申請情報
3.デジタル証明書

WEBサーバーの秘密鍵の作成

opensslのディレクトリに移動します。

cd /usr/local/ssl/private

秘密鍵作成のための疑似乱数を生成します。
例としてmd5ダイジェスト値を疑似乱数として使用します。

../bin/openssl md5 * > rand.dat

秘密鍵を作成します。

../bin/openssl genrsa -rand rand.dat -des3 1024 > server.key

コマンドを実行すると秘密鍵のパスフレーズを求められますので、
任意のパスフレーズを入力してください。
続きを読む…»

2,195 views

Outlook2010のアカウント設定をエクスポート

Outlook2010では、アカウント設定のエクスポート機能がないようなので別の方法でエクスポートします。

エクスポート

スタートからファイル名を指定して実行を選択し、「regedit」と
入力しEnter。レジストリエディタが起動します。

HKEY_CURRENT_USER\Software\Microsoft\
Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\Outlook

というキーを探し、Outlookを右クリックし任意の場所にエクスポート。
拡張子は.regになります。

インポート

[ファイル]-[インポート]を選択し、エクスポートしておいたファイルをインポートします。
エクスポートしたファイルのダブルクリックでもインポート出来ます。
続きを読む…»

45,207 views

IE11でのソースエディタ変更

スタートからファイル名を指定して実行を選択し、「regedit」と
入力しEnter。レジストリエディタが起動します。

HKEY_CURRENT_USER¥Software¥Microsoft¥
Internet Explorer¥View Source Editor¥Editor Name
というキーを探します。なければ作成してください。
Editor Nameの標準キーにダブルクォーテーションで括ったエディターへのフルパスを入力する

2,739 views

テキストファイルの読み込みと書き込み

読み込み

// 指定したファイルをShift-JISコードとして開く
StreamReader sr =
    new StreamReader(string filepath,
        Encoding.GetEncoding(932));

while (!sr.EndOfStream)
{
    // 1行ずつ読み込みます
    Console.WriteLine(sr.ReadLine());
}

sr.Close();
sr.Dispose();
sr = null;

コードページIDの一覧です。

932 shift_jis 日本語 シフトJIS(または、「shift-jis」や「x-sjis」など)
51932 euc-jp 日本語 EUC
50220 iso-2022-jp 日本語 JIS
50221 csISO2022JP 日本語 JIS(1バイトカタカナ可)
50222 iso-2022-jp 日本語 JIS(1バイトカタカナ可 – SO/SI)
65001 utf-8 UTF-8

続きを読む…»

2,047 views