お世話になります。
NiftyCloudのサーバにおいてSSLを更新設定したところ、いままでhtaccessを用いて接続元制限を行ったいたのですが、それができなくなってしまいました。
また、アクセスログにIPアドレスが出なくなってしまったため、どのIPからアクセスがあったのかも分からない状況です。他社から引き継いだ案件で詳細をいただけておらず、不明な設定が存在しています。
関係ありそうな部分だけピックアップして公開させていただきます。
どなたか、こういった状況を打開する方法はご存じないでしょうか?
まずは、IPアドレスだけでも解決できるとよいのですが・・・
何卒よろしくお願いいたします。
■OS
lang
1[root@localhost httpd]# cat /etc/redhat-release 2CentOS release 6.6 (Final)
■httpdのバージョン
lang
1[root@localhost httpd]# /usr/sbin/httpd -v 2Server version: Apache/2.2.15 (Unix)
■ログフォーマット
lang
1LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 2LogFormat "%h %l %u %t \"%r\" %>s %b" common 3LogFormat "%{Referer}i -> %U" referer 4LogFormat "%{User-agent}i" agent 5LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%h\"" combined_with_realip
■SSL導入前までのログ
lang
1xx.xx.79.150 - - [01/Aug/2016:12:13:40 +0900] "POST アクセス先 HTTP/1.1" 200 61 "リファラー" "Mozilla/5.0
■SSL導入後のログ
lang
1- - - [02/Aug/2016:21:29:23 +0900] "GET アクセス先 HTTP/1.1" 403 300 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" "身に覚えのないIPアドレス"
※IPアドレス制限をかけているため認証エラー
追記
■vhosts.conf
lang
1<VirtualHost *:80> 2 ServerName www.ドメイン 3 ServerAlias ドメイン 4 DocumentRoot "/home/www/html" 5 ServerAdmin admin@root-d.com 6 <Directory "/home/www/html"> 7 Options -Indexes FollowSymLinks ExecCGI +IncludesNoExec 8 AllowOverride all 9 #Require all granted 10 #Satisfy Any 11 </Directory> 12 13 RewriteEngine on 14 RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK) 15 RewriteRule .* - [F] 16 17 CustomLog "|/usr/sbin/rotatelogs /home/www/logs/apache/access_log.%Y%m%d 86400 540" combined_with_realip 18 ErrorLog /home/www/logs/apache/error_log 19</VirtualHost> 20 21<VirtualHost *:443> 22 ServerName www.ドメイン:443 23 DocumentRoot "/home/www/html" 24 ServerAdmin admin@root-d.com 25 26 ErrorLog /home/www/logs/apache/ssl_error_log 27 TransferLog /home/www/logs/apache/ssl_access_log 28 LogLevel warn 29 SSLEngine on 30 SSLProtocol all -SSLv2 31 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW 32 SSLCertificateFile /etc/httpd/conf.d/ssl/server.crt 33 SSLCACertificateFile /etc/httpd/conf.d/ssl/ca.crt 34 SSLCertificateKeyFile /etc/httpd/conf.d/ssl/server.key 35 36 <Files ~ "\.(cgi|shtml|phtml|php3?)$"> 37 SSLOptions +StdEnvVars 38 </Files> 39 <Directory "/home/www/html"> 40 SSLOptions +StdEnvVars 41 AllowOverride all 42 </Directory> 43 SetEnvIf User-Agent ".*MSIE.*" \ 44 nokeepalive ssl-unclean-shutdown \ 45 downgrade-1.0 force-response-1.0 46# CustomLog logs/ssl_request_log \ 47# "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" 48 CustomLog "|/usr/sbin/rotatelogs /home/www/logs/apache/ssl_request_log.%Y%m%d 86400 540" combined 49 50 <Directory /home/www/html/share/uploads/mw-wp-form_uploads> 51 SetEnvIf X-Forwarded-For "99\.999\.99\.99|999\.999\.999\.999|999\.999\.999\.999" allowIP 52 Satisfy Any 53 Order deny,allow 54 Deny from all 55 Allow from env=allowIP 56 </Directory> 57</VirtualHost>
※ドメイン名とアクセス許可IPは伏せさせていただきました。
ほかにもディレクトリ毎に.htaccessでX-Forwarded-Forを用いたアクセス制限をしています。
今回の減少はこのX-Forwarded-Forの判定がうまくいかなくなってしまったことが原因です。
Allow from all
にすればアクセスできないところが使用できるようになります。
回答2件
あなたの回答
tips
プレビュー