- ベストアンサー
Apache2.0.47のSSL対応について
初心的な質問ですいません。 すでにインストール済のApacheに対して、SSL対応をしたいのですが、何かいい方法はありませんでしょうか。 やはり、再度configureしてmakeしてinstallしないとだめでしょうか。 以上、ご教授お願いします。 なお、環境は以下のようになっています。 SunOS 5.8 Apache 2.0.47 OpenSSL 0.9.6c
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
ssl.conf内の以下のディレクティブの内容を確認して下さい。 とりあえずテストなら以下のようにデフォルトのままでも動きます。 以下のディレクティブに問題がないようなら、httpd.conf内も確認して下さい。おそらくどちらかに 111.111.111.111と入力されたIPアドレスの記述が存在するはずです。 <VirtualHost _default_:443> # General setup for the virtual host DocumentRoot "/usr/local/httpd/htdocs" ServerName new.host.name:443 ServerAdmin you@your.address ErrorLog logs/error_log TransferLog logs/access_log
その他の回答 (4)
- acky
- ベストアンサー率31% (182/583)
ssl.confの中で最低限必要な設定は以下です。 SSLCertificateFile /パス/server.crt SSLCertificateKeyFile /パス/server.key(パーミッション400) SSLCACertificateFile /パス/cacert.pem ※上記ファイル名は適宜環境に合わせて下さい。 一度動いてしまえば後は何度でもうまく行くんですけど、 動かない時は何をやっても動かない=基本的なミスがある ということになります。ネットワークの設定で443を通すように なっているかとか、その辺のことも確認して下さい。
補足
度々の回答、本当にありがとうございます。 以前教えていただいたURLの通りにやってみたところ、以下のようなエラーがでました。 # httpd -f /opt/local/apache2/conf/ssl.conf -k start -DSSL Could not determine the server's fully qualified domain name, using 111.11.11.11 for ServerName ネットワークのポート設定以外に、DNSの設定も必要なのでしょうか。 すいませんが、教えて下さい。
- acky
- ベストアンサー率31% (182/583)
#上書きはconfigureしてmakeしてinstallするということです。ただしapacheのソースを展開した ディレクトリの中にあるconfig.cacheとかその辺(正確にはこれだけだったかどうか。。。)を 削除してからconfigureし直した方がいいです。 で、自分への補足要求ですが > ssl.confの設定方法を教えてもらえないでしょうか 実際cert.pemとかのファイル(参照したサイトとかによって名前が違うでしょう)の関係上、 ここで説明するのは不可能です。その変わり自分が以前参照したサイトをお知らせしますので、 そちらを見ながらがんばって下さい。 > また、動作確認方法もできれば教えていただきたいです # /apacheがインストールされたディレクトリ/bin/apachectl startssl として、エラーが出ずに、https://サーバーのアドレス/でアクセスしてみて、 セキュリティ警告なり、ブラウザの右下に鍵マークが出るなりすれば 動作確認は出来るでしょう。SUN上でpsコマンドで確認も出来ますが、 外部からのアクセスに問題がないかどうかを確認するには、やはり Windows等からアクセスしてみるのが一番です。
お礼
補足回答ありがとうございます。 無事インストールが完了しました。 しかし、ブラウザで確認しようとすると、ページが表示されません。httpではApacheの画面が表示されます。 秘密鍵作成し、CSR作成し、公開鍵を作成しました。 以上の他に何かしないといけないのでしょうか。 たびたびすいませんが、よろしくお願い致します。 なお、サーバ証明書はベリサインを入手する予定です。 その前にApacheのSSLの動作確認をしているところです。
補足
すいません。再度、質問させてください。 ssl.confの設定は、SSLCertificateFileとSSLCertificateKeyFileのパスを通すだけで行けるのでしょうか。 psコマンドでは動いているように見えるのですが、ブラウザ上では、「There was a communication problem」というエラー画面になってしまいます。 なお、ベリサインよりテスト用サーバIDをインストールした状態です。 すいませんが、ご教授お願い致します。
- xjd
- ベストアンサー率63% (1021/1612)
>やはり、再度configureしてmakeしてinstallしないとだめでしょうか。 簡単です。 configureでsslを指定すればよいです。 # ./configure --enable-ssl --with-ssl=/usr/local/ssl DSO(Dynamic Shared Object)として組み込む時は --enable-ssl=shared 複数のモジュールをまとめて指定する事もできます。 --enable-modules="### ssl ***" --enable-mods-shared="### ssl ***" httpd.confに記述するsslの定義は一から書くのが面倒くさかったので RedHatのhttpd.confからもらいました。 上書きインストールするのが不安であれば、 ./configure --prefix=/usr/local/apache2-ssl みたいにして別ディレクトリにインストールすればよいです。
補足
回答ありがとうございます。再度質問させてください。 上書きインストールするということは、configureしてmakeしてinstallするということですか。 configureだけ実行すればいいんでしょうか。 非常に低レベルな質問で申し訳ありませんが、よろしくお願い致します。
- acky
- ベストアンサー率31% (182/583)
apacheコンパイル時に--enable-ssl系のオプションをつけていたら 可能かも知れません。後からはやったことないので分かりませんが、 あるいは <IfModule mod_ssl.c> Include conf/ssl.conf </IfModule> のコメントがあれば、はずしてみるのも手でしょう。ただしincludeに ssl関係のものがいろいろ入ってる必要があるかも。 あとはssl.confを設定してみて動けばよし、動かなければ残念、 ということになるでしょう。もっともやり方はあるかも知れませんが、 やはりコンパイルし直した方が楽だと思いますよ。
補足
回答ありがとうございます。再度質問させてください。 ssl.confの設定方法を教えてもらえないでしょうか。 また、動作確認方法もできれば教えていただきたいです。 すいませんがよろしくお願い致します。
お礼
ようやくできました! 回答、ありがとうございました! No.5の回答にあるように、確認をしIPアドレス指定しているところをドメイン名(仮)に変更し、再度認証をやり直しました。 そこで、今までCSR作成時にアクセス可能なアドレスと思い、IPアドレスを入力していたのですが、それをドメイン名(仮)に変更すると動作するようになりました。 本当に、お世話かけました。ありがとうございました。