• 締切済み

SSL設定時、非SSLでのアクセスを不許可にすることは?

SSLを使ったページhttps://~でアクセスするページを SSLを使わないで(http://~)でアクセスされた場合に 禁止するようなことはできるのでしょうか。 よろしくお願いいたします。

  • lico
  • お礼率100% (2/2)

みんなの回答

  • Cedar
  • ベストアンサー率57% (4/7)
回答No.2

SSLengine_OFFのデフォルトの設定で、 Listen **** を消せばよいです。 別々のディレクトリでやるなら、selenity様のように VirtualHostで別定義するのが良いと思います。 私はちなみに以下のようにしてます。 間違えがあるかもしれませんが参考になれば。 ---- Listen 12345 <VirtualHost _default_:12345> DocumentRoot "/usr/home/you/v_ssl/data" ServerName ssl.your.domain.name ServerAdmin webmaster@your.domain.neme ErrorLog /var/log/ssl.error_log TransferLog /var/log/ssl.trans_log <Directory "/usr/home/you/v_ssl/data"> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> <IfModule mod_alias.c> Alias /icons/ "/usr/home/you/v_ssl/icons/" <Directory "/usr/home/you/v_ssl/icons/"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> ScriptAlias /cgi-bin/ "/usr/home/you/v_ssl/cgi-bin/" <Directory "/usr/home/you/v_ssl/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> </IfModule> SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile /usr/local/etc/apache/12345/ssl.crt/server.crt #SSLCertificateFile /usr/local/etc/apache/12345/ssl.crt/server-dsa.crt SSLCertificateKeyFile /usr/local/etc/apache/12345/ssl.key/server.key #SSLCertificateKeyFile /usr/local/etc/apache/12345/ssl.key/server-dsa.key #SSLCertificateChainFile /usr/local/etc/apache/12345/ssl.crt/ca.crt #SSLCACertificatePath /usr/local/etc/apache/12345/ssl.crt #SSLCACertificateFile /usr/local/etc/apache/12345/ssl.crt/ca-bundle.crt #SSLCARevocationPath /usr/local/etc/apache/12345/ssl.crl #SSLCARevocationFile /usr/local/etc/apache/12345/ssl.crl/ca-bundle.crl #SSLVerifyClient require #SSLVerifyDepth 10 #<Location /> #SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \ # and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ # and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \ # and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \ # and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ # or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/ #</Location> #SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequire <Files ~ "\.(cgi|shtml|phtml|php3?)$"> SSLOptions +StdEnvVars </Files> <Directory "/usr/home/you/v_ssl/cgi-bin"> SSLOptions +StdEnvVars </Directory> SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog /var/log/ssl_request_log \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost> ---- ではでは。 ----

lico
質問者

お礼

回答をどうもありがとうございます。 知識がないので、理解ができていませんが・・・。 今回の場合は使用できないみたいですが、今後の参考にさせて いただきます。お手数おかけしました。

  • selenity
  • ベストアンサー率41% (324/772)
回答No.1

apacheなら、httpd.confのVirtualHost設定で DocumentRootの位置を変えるだけで済みますが、、、

lico
質問者

お礼

どうもありがとうございます。 説明が足りませんでしたが、レンタルサーバーなのでhttpd.confの変更は できないようです。htaccessでできないかと思っているのですが、 よくわからない状態です。 それでも参考になりました。ありがとうございました。

関連するQ&A

  • 非SSLアクセスをはじく方法

    SSL認証のサーバを運営していますが、 SSL通信を行いたいページでも、 http://~の非SSLでもアクセスできてしまいます。 SSLページと、非SSLページが混在しているため、 ポート80番を閉じることはできません。 プログラムでSSLで見せたいページは、https://~で 呼び出しているのですが、 利用者が自らブラウザで「s」をはずしてしまった事態に、アクセスできない対応を取りたいのです。 プログラムはPerlです。 SSLと非SSLとどのような判別方法があるでしょうか? ご教授願います。

    • ベストアンサー
    • CGI
  • SSLでのアクセス制限

    特定のページを SSLでしかアクセスできないようにしたいのですが可能でしょうか? つまりそのページはポート80では接続できないように したいのです。 参考になるサイトなどがありましたら教えてください。 RedHat 8.0 Apache 1.3.27 + mod_ssl 2.8.14 + tomcat4.1.24

  • .htaccessで携帯アクセスを非SSLに振り分け

    CGI送信フォームを入れたのですが、(さくらの共有SSLにて) パソコンからの送信はなんとか可能になりましたが、 モバイルからはSSL通信が拒否されアクセスすらできません。 とっても困りました・・・((+_+)) そのため、モバイルのアクセスだけを非SSLにしようと考えました。 この考えは正しいですか? パソコン  https://****.sakura.ne.jp/form.html モバイル  http://****.sakura.ne.jp/form.html 上記の様に .htaccessで携帯のアクセスだけを非SSLにしようと思いますが 今のフォームをそのままにしておいて モバイルアクセスを非SSLのhtppに飛ばす事が可能ですか? その場合、.htaccessにどう書いたら良いでしょうか? お願いします<(_ _)> また、その場合 現在、トップページのリンクは、https://~ のままですが .htaccessで振り分ければ、このままのリンクで大丈夫でしょうか?

  • SSLのサイトのアクセスログで分かること

    6~7年前ですが、父親がルーターか何かでアクセスログを勝手に見ていることがわかりました。それ以来VPN GATEというものを使ってネットを見ていたのですが、最近ではSSLのサイトが増えました。    SSLのサイトでは、ルーターなどでアクセスログを見ても、どんなページを見ているかまでは分からない(何のサイトに行ってるかは、分かる)ということで、合っているでしょうか。例えば、googleだったら、検索ワードは分からないということでしょうか。 又、アクセスログを見るには、プロバイダに問い合わせる方法もあるそうですが、SSLのサイトでは、プロバイダに問い合わせても、どんなページを見ているかは,分からないということでしょうか。 よろしくお願いします。

  • SSLはどう設定しますか?

    SSLについてなんですが、 SSLを使うためには、認証会社と契約して、 証明書のインストールして、 SSLを使うページにはなにかしてあげる必要があるのですか? 既存ページのソースは何も変更せず、 httpsというアドレスに変わるだけですか?

  • SSLページ対応のアクセス解析について

    ワダックスの共用サーバーを借りて、ネットショップオーナーというソフトを使ってネットショップを運営しています。 アクセス解析はCGI Cafeの高機能アクセス解析を使っています。 そこで、これまではSSLを使っていなかったのですが、有効にしてみて、SSLページを開くと警告画面が出るようになりました。 調べてみると、SSLページに設置したアクセス解析のタグが原因であるとわかりました。削除したら警告画面がでなくなりました。 このSSLページでもアクセス解析を使いたいのですが、問題なく使えるアクセス解析はないでしょうか。 サーバーも影響しているのでしょうか。 詳しい方がいらっしゃいましたらアドバイスよろしくお願いいたします。

    • ベストアンサー
    • CGI
  • SSLの設定について

    ど素人の質問です。宜しくご教授ください。 ApacheとTomcatの組合わせでJSPで作られたページが存在しています。それをSSL対応したいということなんですが、「SSL」と言う言葉は知っている、accessする際は「HTTPS」でと言う事くらいは知っています。 何をどうすれば良いのか全く分かりません。 ・既存のプログラムに改変を必要とするのでしょうか?。 ・HTMLファイルに変更を加える必要はありますか?。 稚拙な質問で恐縮ですが、宜しくお願い致します。 (質問内容に不備がありましたらご指摘ください)

  • sslを使いたいが設定が分からず

    redhatlinux7にopensslはインストールでき、一応、https://でアクセス可能になりました。 sslを使いたい理由は、webサーバのあるディレクトリは、.htaccessファイルにより、制限はしているのですが、やはりsslを使った方が安心できるだろう、という事からです。 しかし、現在は、この制限しているディレクトリは、http://でもアクセスできるような状態になっています。 できれば、このアクセス制限をしているディレクトリはsslのみのアクセスにしたいところです。 この様にするには、どの様にしたら良いのでしょうか? また、一般的には、DNSにCNAMEを定義し、httpd.confを書き変えるなどしてバーチャルホストにした方が良いのでしょうか。 何れにしても、httpd.confの設定になるのだろうと思いますが、この設定がイマイチです。 なにか良いサイトか、書籍などを紹介いただければありがたいです。 何卒、宜しくお願いいたします。

  • https(SSL化)の設定などにつきまして

    自分の公開しているサイトをhttpからhttps(SSL)に切り替えたいのですが、その場合、レンタルサーバ(使用しているのはロリポップです。)のSSL設定作業が完了したら他は何もしなくてもいいのでしょうか? それともURLを「http~」から「https~」に変更しないといけないのでしょうか? 通常は、URLも変更しないといけない気がしますが、下記のロリポップのページを見ると、「設定が完了したドメインは「SSL保護有効」となり、「SSLで保護されているドメイン」に移動されます。 」とあるので、もともとhttpのURLでも、サイトを開こうとしたときに「https」に自動的に移動してくれるのかなと思いまして。 ロリポップにも問い合わせしているのですが、なかなか返事がこないもので質問させていただきました。宜しくお願い致します。 https://lolipop.jp/manual/user/ssl-free-order/#p-setting ちなみにサイト作成には「ホームページビルダー20」を使っています。 ビルダー側で何か変更する必要がある場合は教えていただけると助かります。 たとえば、URLの変更とか転送設定の部分などとか。 初歩的な質問ですみませんが、宜しくお願い致します。

  • SSLインストール後の諸設定について。

    FreeBSD5.3Rにて、Webサーバを立ち上げ、CGIを使用しています。 CGIでユーザー認証をさせようとしていますが、パケットを見るとパスワードなどがバレバレなので、 SSLにしようと思っています。 そこで、BSDにopenSSLとmod_SSLをインストールし、インストール自体は完了しました。 ですが、まだ鍵の生成?や証明書の発行???などの設定をなにもやっていないのでhttpsではアクセスできません。 そこで、その設定方法を調べていると、FQDNなどを入力する画面がありました。(国などもです。証明書関係だったと思います) 今現在、名前解決をしていないので、 「http://192.168.100.100~~」のような感じでWebサーバにアクセスしているのですが、 やはりSSLの設定よりさきにDNSサーバを立ち上げないといけないのでしょうか? また、SSLインストール後の設定方法についてさまざまなHPを見てきましたが、 サイトによって書いてあることがまちまちでどれを参考にしていいのか迷っています。 このサイトを参考にして設定したらできた!などのページがあれば是非教えてください。 お願いしますm(-_-)m