WindowsでもApache2+OpenSSL

【Win32Apacheサービス登録】
インストール時に勝手に登録してくれるけど、別アプリですでに同名のサービスがあると登録できない。こういときは手動で登録。
1.インストールは「手動で起動」を選んで行う。
2.インストール後、次のコマンドを実行。
Apache.exe -n "サービス名" -k install
これで「サービス名」でサービス登録ができる。
あとは自動起動にするなり、「net start サービス名」で手動で起動するなりやる。

【WindowsでもApache2+OpenSSL】
Linuxとかじゃ定番だけど、Windowsでも可能。opensslのバイナリは同梱されているので問題なし。

1.バイナリをダウンロードする。http://httpd.apache.org/
2.インストールする。msi形式なので簡単。
3.ここをみながら設定する。
 http://www.gadgety.net/shin/tips/win/apache2.html
 ちなみに下記は、鍵作成時のバッチファイルのサンプル。
C:\ProgramFiles\ApacheGroup\Apache2.2\bin\openssl.exe req -config C:\ProgramFiles\ApacheGroup\Apache2.2\conf\ssl\openssl.conf -new -out server.csr
pause
C:\ProgramFiles\ApacheGroup\Apache2.2\bin\openssl.exe rsa -in privkey.pem -out server.key
pause
C:\ProgramFiles\ApacheGroup\Apache2.2\bin\openssl.exe x509 -in server.csr -out server.crt -req -signkey server.key -days 3650
pause
C:\ProgramFiles\ApacheGroup\Apache2.2\bin\openssl.exe x509 -in server.crt -out server.der.crt -outform DER
pause
4.設定方法追加。
環境に合わせてディレクトリを変更すれば、下記2バッチを実行すればOK。


CA構築
set CATOP=C:\Program Files\Apache Group\Apache2\privateCA
set SSLCNF=C:\Program Files\Apache Group\Apache2\conf\openssl.cnf
set PATH=%PATH%;C:\Program Files\Apache Group\Apache2\bin
mkdir "%CATOP%\"
mkdir "%CATOP%\certs"
mkdir "%CATOP%\crl"
mkdir "%CATOP%\newcerts"
mkdir "%CATOP%\private"
echo 01 > "%CATOP%\serial"
type nul > "%CATOP%\index.txt"
cd "%CATOP%"
openssl req -config "%SSLCNF%" -new -x509 -keyout "%CATOP%\private\cakey.pem" -out "%CATOP%\cacert.pem" -days 3650
pause
exit
サーバ証明書作成
set SVTOP=C:\Program Files\Apache Group\Apache2\myserver
set CATOP=C:\Program Files\Apache Group\Apache2\privateCA
set APACHECNF=C:\Program Files\Apache Group\Apache2\conf
set SSLCNF=C:\Program Files\Apache Group\Apache2\conf\openssl.cnf
set PATH=%PATH%;C:\Program Files\Apache Group\Apache2\bin
mkdir "%SVTOP%"
mkdir "%APACHECNF%\ssl.crt"
mkdir "%APACHECNF%\ssl.key"
cd "%SVTOP%"
openssl genrsa -des3 -out server.key 1024
move server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl req -config "%SSLCNF%" -new -days 3650 -key server.key -out csr.pem
openssl ca -config "%SSLCNF%" -in csr.pem -keyfile "%CATOP%\private\cakey.pem" -cert "%CATOP%\cacert.pem" -out cert.pem
copy cert.pem server.crt
copy server.key "%APACHECNF%\ssl.key\"
copy server.crt "%APACHECNF%\ssl.crt\"
pause
exit

ssl.confも変更。
SSLCipherSuite ALL:!ADH:!EXPORT56:-RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP:+eNULL
これで、SSLv2禁止・鍵長は128bit以上・暗号化にRC4を使わない(3DESかAES)になる。
2008年02月16日(土) 08:22:47 Modified by ysshn65535




スマートフォン版で見る