プロが教える店舗&オフィスのセキュリティ対策術

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

よろしくお願いいたします。

A 回答 (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>

----
ではでは。
----
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/03/29 10:14

apacheなら、httpd.confのVirtualHost設定で


DocumentRootの位置を変えるだけで済みますが、、、
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/03/29 10:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!