質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

Q&A

解決済

2回答

796閲覧

【.htaccess】allow from 1.~255.とallの挙動の差について

shuken

総合スコア1

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

0グッド

0クリップ

投稿2021/08/09 05:35

前提・実現したいこと

以下、回りくどい質問となっていますが、本当に実現したいのは、
基本拒否とした上で、同一サーバ内のアクセスは許可する設定です。
しかし、色々と検証する中で、そもそも標記内容がクリアできないと前に進めなさそうなので質問させていただきます。

あるレンタルサーバ上において、サブドメインのatomフィードをmultiRequestで取得するphpを動かします。
前提として、.htaccessを設置しない状態では取得できていました。
例:https://xxx.com/feed.phphttps://bbs.xxx.com/feed

その上で、レンタルサーバのIPアドレスのみを許可するべく
以下.htaccessをサブドメイン側に設置してphp越しに取得すると、後述403エラーが発生しました。

Order Deny, Allow Deny from all Allow from (サーバのIPアドレス)

この他、サーバ業者にも確認しながら、様々なallowを試しましたが、403エラーでした。
唯一(当たり前ですが)「allow from all」であれば問題なくアクセスできました。

その後、「allow from 1.~255.」を設定して、徐々に範囲を狭めてallowすべきIPアドレスを見つけようとしましたが、「allow from 1.~255.」でも403エラーで、のっけから見通しが立たなくなりました。

当初の目的からはズレますが、「allow from 1.~255.」と「allow from all」では、何が違うのかご存じの方おられましたら、また何らかアドバイス等ありましたら、ご教示のほどよろしくお願いします。

発生している問題・エラーメッセージ

403 Forbidden Access to this resource on the server is denied!

該当のソースコード

Order Deny, Allow Deny from all Allow from (サーバのIPアドレス)

試したこと

アクセスできたが目的を満たしていないもの

Order Deny, Allow Deny from all Allow from all
Order Allow, Deny Allow from all

アクセスできないもの

Order Deny, Allow Deny from all Allow from 1. Allow from 2. Allow from 3. ...(中略)... Allow from 254. Allow from 255.
Order Deny, Allow Deny from all Allow from localhost

このほか、ホスト名のパターン等も試したが接続できない。
1.~255.さえ繋がれば、徐々に狭めていけるものと思っていたこともあり…。
全許可であればアクセスできるので、パーミッションでもなさそうです。

補足情報(FW/ツールのバージョンなど)

サーバ業者開示情報のみ
・Webサーバ … LiteSpeed

長文駄文失礼しました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

アクセスログを見て、どのアドレスからのアクセスと認識されているかを確認して、そのアドレスを許可しましょう。

例えば、http://localhostでアクセスすると、127.0.0.1または::1です。
1から255までで駄目だったと言うことは、IPv6になっている可能性が高いです。

投稿2021/08/09 06:13

otn

総合スコア84804

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2021/08/09 06:25

> Allow from localhost ホスト名で指定するためには、下記の設定が必要です。 HostnameLookups On この場合でも localhost に変換されるかどうかは、/etc/hosts 等の記述次第です。
shuken

2021/08/09 09:05

迅速なご助言ありがとうございました。結論から言えば、WebサーバのIPv6をallowする、が答えでした。 ログやlocalhostについてもご助言ありがとうございます。 IPv6のアドバイスをいただき、ベストアンサーについて迷ったところですが、先にご助言いただいたmaisumakun様にさせていただきます。申し訳ありません。本当にありがとうございました。
guest

0

ベストアンサー

ドットが余計だった、ということはありませんか?

Allow from 5

あとは、IPv6によるアクセスあるいはループバック接続なのでIPv4のIPアドレスで指定しても意味がなかった、ということも考えられます。

投稿2021/08/09 05:50

maisumakun

総合スコア145208

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2021/08/09 05:57

あと、「Order Deny,Allow」のコンマの後にスペースは入れてはならないとのことです。
shuken

2021/08/09 09:00

迅速なご助言ありがとうございました。結論から言えば、IPv6が答えでした。本当に助かりました。 ドットやスペースについてもご助言ありがとうございます。 IPv6を余り意識してきませんでしたが、今回大変勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問