Category:
Linux
ちょっと SSL 対応な Web サイトが欲しいなー、というとき、ありますよね。(組み込みデバイスのハックとか!)
Web サーバをインストールせずに、世界一簡単に SSL 対応 Web サイトを作る方法をご紹介します。
(追記: このコマンドには複数のセキュリティリスクが存在するため、あくまで一時的な実験目的のみで利用してください(外部からアクセスされる可能性のあるホストでは実行しないでください)。)
対応環境は、主要な Unix (BSD, Linux, Mac OS X, ...) です。ただし、openssl がインストールされていること (おおよそすべてのディストリビューションに入っていると思います)。
まず、公開したいファイルがあるディレクトリに移動します。
サーバを終了するには、Ctrl-C を押下します。また、
(追記: 2012-05-03)
より短いコマンドで実行できるようにするとともに、注意書きを追加。
Web サーバをインストールせずに、世界一簡単に SSL 対応 Web サイトを作る方法をご紹介します。
(追記: このコマンドには複数のセキュリティリスクが存在するため、あくまで一時的な実験目的のみで利用してください(外部からアクセスされる可能性のあるホストでは実行しないでください)。)
対応環境は、主要な Unix (BSD, Linux, Mac OS X, ...) です。ただし、openssl がインストールされていること (おおよそすべてのディストリビューションに入っていると思います)。
まず、公開したいファイルがあるディレクトリに移動します。
cd /home/kenichi/public_html次に、以下のおまじないをコマンドラインにコピー & ペーストします。
cat << _EOF_ | openssl req -new -x509 -passout pass:xxxx -config /dev/stdin > /tmp/ssl最後に、以下のコマンドで Web サーバを起動します。root ユーザでない場合は、root に su するか sudo を付けてください。
[ req ]
distinguished_name = req_dn
prompt = no
[ req_dn ]
CN = $(hostname)
_EOF_
openssl s_server -accept 443 -cert /tmp/ssl -pass pass:xxxx -quiet -WWWあとは、https://(サーバの IP アドレス)/(上記のディレクトリにあるファイル名) にアクセスすれば、ファイルが表示されます。接続できないときは、ファイアウォールの設定を確認してください。
サーバを終了するには、Ctrl-C を押下します。また、
rm -f /tmp/sslとしてゴミ掃除をすれば元通りです。
(追記: 2012-05-03)
より短いコマンドで実行できるようにするとともに、注意書きを追加。