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

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

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

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Apache

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

5147閲覧

Apache ローカル接続しか入れない

ryohasegawa

総合スコア437

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Apache

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2017/01/04 13:58

編集2017/01/06 14:54

Apacheでサーバーを開いていて、ローカルからだと接続できます。
でも、グローバル(ポケットワイファイ回線)で自宅のルーターのIPを指定して接続すると、待機中のまま止まっています。ルーター側で80番ポートを開放しているので、その辺の問題ではないと思います。

ローカルから接続すると、accses.logファイルに情報が記載されるのですが、グローバルからだと、accessもerrorにも記載されません。

###追記
サーバOS:Ubuntu

###すべて設定のスクリーンショット
ファイアウォール設定
イメージ説明
IPフィルター
イメージ説明
ポート変換
イメージ説明
ログ
イメージ説明

ufw statusの結果です。80番を開いて、ルーターもポート変換の設定(下の画像)もしてあるのに接続できないんです。

To Action From -- ------ ---- 80 ALLOW Anywhere 25565 ALLOW Anywhere 22 ALLOW Anywhere 80 (v6) ALLOW Anywhere (v6) 25565 (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6)

pingを実行した結果

Request timeout for icmp_seq 0 Request timeout for icmp_seq 1 Request timeout for icmp_seq 2 Request timeout for icmp_seq 3 Request timeout for icmp_seq 4 Request timeout for icmp_seq 5 Request timeout for icmp_seq 6 Request timeout for icmp_seq 7 Request timeout for icmp_seq 8 Request timeout for icmp_seq 9 Request timeout for icmp_seq 10 Request timeout for icmp_seq 11 Request timeout for icmp_seq 12 Request timeout for icmp_seq 13 Request timeout for icmp_seq 14 Request timeout for icmp_seq 15 Request timeout for icmp_seq 16 Request timeout for icmp_seq 17 Request timeout for icmp_seq 18

###ルーターのFWの設定の設定画面
イメージ説明
###ポート変換設定画面
イメージ説明

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

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

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

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

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

guest

回答3

0

定番ですが、まずpingとかtelnetで疎通確認してみたらいかがでしょうか?

投稿2017/01/04 14:21

HogeAnimalLover

総合スコア4830

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

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

ryohasegawa

2017/01/04 14:35

ping サーバーIP を実行すると タイムアウトと表示が繰り返されました。 正しく接続されていないみたいです。
HogeAnimalLover

2017/01/04 21:53

ネットワーク的に接続できない、またはicmpを無視しているかですね。telnetによる80番ポート接続はどうでしょうか?
HogeAnimalLover

2017/01/04 21:54

ちなみに「サーバIP」とありますが、外部からルータのWANポート宛の試験ということであってますよね?
ryohasegawa

2017/01/05 13:14

サーバPCとは別のPCをポケットWi-Fiに接続し、そのPCをから、自分のグローバルIP(サーバが接続されている回線)を指定しpingを飛ばしました。 ローカル環境では、もちろんping通りました。
guest

0

Selinuxの無効も試してみてください!

一個ずつ潰して行けばたどりつけるはず!

投稿2017/01/04 14:08

m1104m

総合スコア15

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

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

ryohasegawa

2017/01/04 14:27

getenforceコマンドで現在の状態が確認できると調べたらでてきたんですが、実行するとその機能はインストールされていないから、使えないと言われました。 そもそも入っていないので、無効化する意味ありますか?
guest

0

ベストアンサー

ルーター側で80番ポートを開放

とありますが、NAT(NAPT)の設定はされているということでよいでしょうか。

また、以下も確認してみてください。

・サーバ側でiptables等でフィルタリングはしていないか。
・80/tcpが特定のIPアドレスでのみ待ちうけしていないか。

※サーバのOSも記載してください。

投稿2017/01/04 14:04

ynakano

総合スコア1894

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

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

ryohasegawa

2017/01/04 14:22

追記させてもらいました。
ynakano

2017/01/04 14:38

pingが通らないとのことですが、NAT(NAPT)設定でicmpを許可していないとダメです。 httpは通るけどpingは通らないと言う事はあり得ます。 ルータのNA(P)T設定、サーバ側のパケットフィルタリングを確認してはどうですか?
ryohasegawa

2017/01/04 14:47

すいません。あまり知識がなくて、NATを調べているんですが、NATとは、ローカル内とグローバルのIPを変換するシステムの事ですよね?
ynakano

2017/01/04 14:54

そのようなコメントが出ると言うことは(責めてる訳ではないです)、ルータの設定の問題かもしれません。 ルータの持つグローバルIPへの着信(接続)を、ルータの内側(ローカル)にIP(と場合によってはポート)変換する機能です。 これをしていないと「絶対に」インターネット側からアクセスはできません。 NAT、NAPT、IPマスカレードなどいくつか呼び方があります。 具体的な設定はお使いのルータのマニュアルを参照してもらうとして、最低限、ルータのグローバルIPの80/tcp宛の通信がWebサーバの80/tcp宛になるようにアドレス変換設定をしなくてはなりません。 当然ですが、せっかくルータを通過したパケットがサーバ側でdropされないように、サーバ側のフィルタリング設定をする必要があります。
ryohasegawa

2017/01/04 15:34

丁寧に説明ありがとうございます。 追記に、自分のルーターで設定した時のスクリーンショットを貼ります。
ryohasegawa

2017/01/04 17:43 編集

ufwをインストールし、80番ポートを開放したのですが、どうやらうまくいっていないようです・・・(ルールを更新しましたの表示はでます) 多分、ルーターの設定はできています。本体側の開放がうまくいっていないようです。
ynakano

2017/01/04 23:29

一つ一つ切り分けていくしかないですね。 私が気になっているのはルータ側で、画像を貼ってもらったNAT(IPマスカレ)設定とは別に、ルータのファイアウォール機能で、それがどうなっているかです。 IPアドレス変換ができていてもFWでdrop、という可能性はあります。 また、ルータのログにdropの形跡はないのでしょうか。 更に言えば、ルータのFW設定で「パケットを通してログを取る」という事が出来るのであれば、ルータを通過したという確実な証跡が得られるので設定すべきだとも思います。 合わせてWebサーバ側ですが、切り分けのために【あくまで一時的に】ufwを無効にしてみるのも手です。 また今更ですけど、以下の点も再確認してみてください。 ・インターネット側からアクセスする際はIPアドレスを指定しているか。(名前解決で引っかかっていないか) ・クライアントで"telnet <グローバルIP> 80"をした時の応答はどうか。(ブラウザ設定で引っかかっていないか)
ryohasegawa

2017/01/05 13:19

すいません。FW(ファイアウォール)ですよね? で、ufwが現在のサーバにインストールしてあり、それを使っているので、FW=ufwですよね? それと、telnet <グローバルIP> 80を実行する時は、ローカル回線かグローバル回線がどちらのほうが良いでしょうか?
ynakano

2017/01/05 13:25

FWというのは「ルータのファイアウォール機能」のことです。 ルータのポート変換(NAT)機能とは別に存在している事が多いので、その機能の有無を含めて確認してください。 サーバのufwとは別物です。 "telnet <グローバルIP> 80"は「グローバルIP」と書いているのですからグローバル回線です。 グローバルIPとはルータのWAN側アドレスのことです。
ryohasegawa

2017/01/05 13:30

ルータの中にポート変換機能とファイアウォール機能と存在するのですね。 ちなみになんですが、前までWindowsでMinecraftのサーバ開いてたんですが、その時はパソコンの25565ポート開いて、ルータのポート変換を書いたらすんなり行けたんですがね
ynakano

2017/01/05 13:42

> その時はパソコンの25565ポート開いて、ルータのポート変換を書いたらすんなり行けたんですがね ルータの機種も分からないのにそれを言われても「そうですか」としか言いようがないです。 ルータにはポート変換とFW機能の両方を搭載しているものが多くあるので、【機能の有無から】確認しましょう、と言っています。 通信できない場合の切り分けのセオリーは、「(ネットワーク的に)近く(クライアント側)から遠く(サーバ側)へ徐々に」かつ「(ISO7階層の)下から上に」です。 今回の場合インターネット上のクライアントからルータを経由してWebサーバにアクセスしたい訳なので、まず最初に関門となるのはルータです。 なので「パケットがルータを通過したこと」を確実にしておくべきだと思うのです。 そこがあやふやなままいくらWebサーバをいじり回しても、実はルータでdropしていたら全く無駄な作業にしかなりません。 「telnetを使いましょう」「ドメイン名ではなくIPアドレスを指定しましょう」というのは「下から上に」の話で、アプリケーション層の挙動に左右されない方法で応答を確認しましょうという趣旨です。
ynakano

2017/01/05 13:43

訂正 × ISO7階層 ○ OSI7階層
ryohasegawa

2017/01/05 17:19

telnetの実行結果は telnet: connect to address ***.***.**.*: Connection refused telnet: Unable to connect to remote host と言われ、うまくできていないようです
ryohasegawa

2017/01/05 17:26

使っているルーターは BHR-4GRV です。
ynakano

2017/01/05 23:30

で、ルータの設定周りはどうですか? 私がここまでに書いたことはルータのマニュアルを読めば分かりますよ。 ちょっと先回りで書きますが、「パケットがルータを通過したかどうか」を確認するためにWebサーバ側でできることがあります。 ・一時的にufwを停止する。(あくまで一時的に) ・tcpdumpでサーバに入ってくるhttpパケットをリアルタイムに見る。
ryohasegawa

2017/01/06 13:12

ルータの設定周りはどうですか?というのは、どういう意味でしょうか? ufwを切る前にtcpdumpで確認してみます。入ってきてないようであれば一時的に切りたいと思います。
ynakano

2017/01/06 13:15

ルータのファイアウォール機能の有無は確認しましたか? もしFW機能があるとしたら設定はどうなっていますか? FW機能があるとして、「パケットを通過させつつログを取得する」ことはできそうですか? という意味です。
ryohasegawa

2017/01/06 13:19

はじめに sudo tcpdump port 80 と実行したら、 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp1s0, link-type EN10MB (Ethernet), capture size 262144 bytes  0 packets captured 0 packets received by filter 0 packets dropped by kernel と言われ駄目でした。
ynakano

2017/01/06 13:22

そうですか。 念のための確認ですが、tcpdumpを実行中にインターネット側からアクセスを試みたんですよね? それでその結果であれば、どこかでhttpパケットは遮断されています。
ryohasegawa

2017/01/06 13:26

ufwを切っても駄目でした。 ルータのFWなんですが、FWの設定があり、その画面を追記しておきます。 ログをファイルに出力はできそうです。 でも、それが目当てのログかわかりません。
ryohasegawa

2017/01/06 13:33

tcpdumpなんですが、ポケットWi-Fiからローカルに切り替えた瞬間ログが動きました・・・
ynakano

2017/01/06 13:35

私もBHR-4GRVのマニュアルは既に読みましたが、今回の場合添付画像の「ファイアウォール」よりその隣の「IPフィルタ」の方で設定すべきものではないのかと考えています。 手元に実機がないので確証は持てませんが、設定項目から推測しています。 そちらも見てみてください。
ynakano

2017/01/06 13:37

> tcpdumpなんですが、ポケットWi-Fiからローカルに切り替えた瞬間ログが動きました・・・ それはそうでしょう。 ご自身で質問文に「ローカルからだと接続できます。 」と書いたじゃないですか。 ufwが有効でその状態なら、パケットを遮断しているのはルータの可能性が高いと思います。
ryohasegawa

2017/01/06 13:50

はい。そうですよね。ルーター側の設定だという可能性がでてきたので、IPフィルタの設定を見させてもらいます。
ynakano

2017/01/06 13:52

お使いのルータには「ログ」という項目もあります。 そちらでも切り分けに役立つ情報が得られると思います。
ryohasegawa

2017/01/06 13:55

ルーターの設定に鳴ってくるんですが、送信元と宛先があって、宛先にはサーバのV4アドレスを書いたんですが、送信元とは何を指しているのでしょうか? マニュアルに書いてなくて・・・
ynakano

2017/01/06 14:10

完全にルータ機器固有の設定方法の話なので適切な回答がしづらいですが・・・ 「送信元」とはアクセス元のことです。 「空欄」というのはダメだった、ということでしょうか? そうだとすると、Wifi接続しているホストのグローバルIPを入力してみてはどうですか? Wifi接続をした状態で下記URLにアクセスすれば、割り当てられているグローバルIPは分かります。 https://www.cman.jp/network/support/go_access.cgi ※当然、回線を再接続等すればIPの割り当ては変わります。
ryohasegawa

2017/01/06 14:14

空欄にすると、ALLになるんですが、これで問題なければ空欄でもいいようです。多分 現在この設定になっているんですが、やはり接続ができない状況にあります。
ynakano

2017/01/06 14:17

ルータの「ログ」項目は見てみましたか? これまた機種固有の話で確証がないですが、dropしたパケットの記録があるかもしれません。
ryohasegawa

2017/01/06 14:30

日付時刻 種類 ログ内容 2017/01/06 23:28:14 DHCPS sending ACK to 192.168.12.12 2017/01/06 23:28:14 DHCPS Request incoming from hasegawyounoAir(len:15) 2017/01/06 23:12:52 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:12:52 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:12:51 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:12:47 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:12:46 CONFIGURE IP FILTER Rule 2017/01/06 23:11:21 DHCPS sending ACK to 192.168.12.12 2017/01/06 23:11:21 DHCPS Request incoming from hasegawyounoAir(len:15) 2017/01/06 23:10:36 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:10:35 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:10:35 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:10:33 DHCPS sending ACK to 192.168.12.12 2017/01/06 23:10:33 DHCPS Request incoming from hasegawyounoAir(len:15) 2017/01/06 23:10:32 NAT cleanup /proc/net/nf_conntrack 2017/01/06 23:10:30 CONFIGURE IP FILTER Rule 2017/01/06 22:53:16 DHCPS sending ACK to 192.168.12.13 2017/01/06 22:53:16 DHCPS Request incoming from android-66675d48de50df29(len:24) 2017/01/06 22:53:16 DHCPS sending OFFER of 192.168.12.13 android-66675d48de50df29 2017/01/06 22:53:16 DHCPS Request incoming from android-66675d48de50df29(len:24) 2017/01/06 22:52:45 DHCPS sending ACK to 192.168.12.3 2017/01/06 22:52:45 DHCPS Request incoming from APDCFB02452C6A(len:15) こんな感じですかね?
ynakano

2017/01/06 14:36

表示するログ情報の絞込みができると思うのでしてみてください。 ルータのWeb UIには「破棄されたパケットログ云々」とあるので、ログの保存期間内にアクセスがあれば何か記録が残るような気もするのですが。
ynakano

2017/01/06 14:43

あと、念のため以下の設定の画面を貼り付けてもらえるとありがたいです。 ・セキュリティ-IPフィルターの画面全部(「ログ出力」のチェック状況から「IPフィルター登録情報」の全エントリが見える形で) ・ゲーム&アプリ-ポート変換の画面全部(「ポート変換登録情報」の全エントリが見える形で) ※もちろん、公開できない情報(グローバルIPくらいかな?)は適切に処理してください。
ryohasegawa

2017/01/06 14:46

破棄されたパケットログ云々が見つからないんですが・・・
ynakano

2017/01/06 14:47

なのでIPフィルタやポート変換の設定情報を確認したいと思ったのです。
ryohasegawa

2017/01/06 14:50 編集

ブラウザバグで、一部回答が表示されていませんでした。 追記します。
ynakano

2017/01/06 15:02

ありがとうございます。 私はBHR-4GRVを触ったことはないですが、ポート変換やフィルタリング設定は正しいように見えます。 ログ設定に関して言えば、「アドレス変換」「IPフィルター」「ファイアウォール」以外のチェックは不要だと思います。 出力項目を絞ったログに何か残っていませんか?
ynakano

2017/01/06 15:06

ちなみにWebサーバのOSがUbuntuとの事ですが、これは仮想ホストだったりしますか? それとも実機ですか?
ryohasegawa

2017/01/06 15:08

実機です。
ryohasegawa

2017/01/06 15:34

あの方は、PCの中に別OSを立ててそれなら接続できたということですかね? それで最後に光回線の場合の設定はこうするみたいな返信があったと思うのですが、それを詳しく教えてもらえないでしょうか? 自分の環境は、CATVの光回線です。ちなみに自分の環境は、 回線終端装置→Wi-Fi ↓ AirMac(タイムカプセル)ブリッジモード切ってあります。 ↓ PC&サーバ なので、ダブルルーターなどなっていないので、あの方と環境的には同じだと思います。
ryohasegawa

2017/01/06 16:46

ufw のポートを増やしてみたんですが、それでも駄目でした。 To Action From -- ------ ---- 80 ALLOW Anywhere 25565 ALLOW Anywhere 22 ALLOW Anywhere 80/tcp ALLOW Anywhere 80/udp ALLOW Anywhere 80 (v6) ALLOW Anywhere (v6) 25565 (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6) 80/tcp (v6) ALLOW Anywhere (v6) 80/udp (v6) ALLOW Anywhere (v6) 他にこのポートも必要などありますか? それと、VNCViewerを使ってWindowsからリモートしてたんですが、必要なポートを塞いでしまったみたいで、一切通信できません。それも解決できたら幸いです。
ryohasegawa

2017/01/07 08:17

今日、ルーターのIP交換のところにsshの22ポートを追加すると、外部からでもssh接続できました。 このポート変換の設定は80番ポートの設定と同じように設定したので、ルータの設定の問題ではなさそうです。
ryohasegawa

2017/01/07 09:00

色々回答してもらった事をし、少し解決に近づいたと思います。 もっと具体的に改めて質問してみたいと思います。 本当に有難うございました。
ynakano

2017/01/07 10:59

ssh(22/tcp)がインターネット側から通るようになったのは、切り分け材料として大きいですね。 せっかくなので、Webサーバ側でtcpdumpをしてsshのパケットのやり取りがどう表示されるか見ておいたほうがいいような気がします。 「インターネット側から入ってきた通信が成立している場合の例」として押さえておけば、比較材料等になるかもしれません。
ryohasegawa

2017/01/07 12:27

ありがとうございます。 調べてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問