回答編集履歴
1
校正しました
answer
CHANGED
@@ -2,22 +2,34 @@
|
|
2
2
|
体系的に勉強したければ下記のページがオススメです。
|
3
3
|
[3 Minutes Networking - Biglobe](http://www5e.biglobe.ne.jp/aji/3min/)
|
4
4
|
|
5
|
-
さて、基本的にブラウザに`example.com`等と
|
5
|
+
さて、基本的にブラウザに`example.com`等とポート番号指定を省略してアクセスを試みた場合、
|
6
|
-
これは[TCPやUDPにおけるポート番号の一覧](https://ja.wikipedia.org/wiki/TCP%E3%82%84UDP%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7%E3%81%AE%E4%B8%80%E8%A6%A7)で確認出来ます。
|
7
|
-
|
6
|
+
自動的にデフォルト値として80番ポートが利用され、80番ポートに向かってリクエストが飛ぶ仕組みになっています。
|
8
7
|
|
8
|
+
何故80番ポートなのか?
|
9
|
+
それは[TCPやUDPにおけるポート番号の一覧](https://ja.wikipedia.org/wiki/TCP%E3%82%84UDP%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7%E3%81%AE%E4%B8%80%E8%A6%A7)で確認出来ます。
|
10
|
+
「Internet Assigned Numbers Authority (IANA) 」という団体が「80番ポートはWebサイトとして利用してください」と全世界に勧告(周知)しており、全世界のWebサーバやブラウザはこの勧告に従っているからです。
|
11
|
+
|
12
|
+
> ここで質問なのですが、3000番ポートとして起動するデメリットはあるのでしょうか。
|
13
|
+
|
14
|
+
あります。
|
15
|
+
|
16
|
+
公式推奨の80番ポートを採用しないことから周知が大変です。
|
17
|
+
全世界に向けて発信するサービスが隠れてても何の意味もありませんから、
|
18
|
+
sudoがどうの、権限ファイルがどうのではなく、サービスとして公開したければ80番ポート一択です。
|
19
|
+
|
20
|
+
まぁ、まだそのサービスが可動しておらず、
|
21
|
+
自分たちだけが開発目的で使う分には好きな数字でWebサーバを立ち上げれば良いと思います。
|
22
|
+
Railsのデフォルトポート番号は3000番ですが、これは有名なので更に3000番から変更しても良いでしょう。
|
23
|
+
|
9
24
|
> 3000番ポートはセキュリティ的にアクセスされづらいという意見も聞きました。
|
10
25
|
|
11
|
-
そうです、
|
26
|
+
そうです、IANAが80番ポートはWebサーバと勧告しているので、
|
12
|
-
それ以外のポート番号は
|
27
|
+
それ以外のポート番号は基本的にアクセスを試みる人は少ないです。
|
13
|
-
まぁ、MySQLみたいに3306を慣習で使い続けるようなポート番号がありますが一応非公式です。
|
14
28
|
|
15
|
-
な
|
29
|
+
ただし過信しないで下さい。
|
16
|
-
「1025 - 50000」のポート番号に向かってひたすらリクエストを送り続けてWebサーバーとしての動作をしてくれそうなポート番号を探す
|
30
|
+
「1025 - 50000」のポート番号に向かってひたすらリクエストを送り続けてWebサーバーとしての動作をしてくれそうなポート番号を探す手法があります。
|
17
31
|
(ポートスキャンと呼ばれる攻撃の手口で、非常に嫌われています、知ってるエンジニアにはすぐ対策されます)
|
18
32
|
|
19
|
-
|
33
|
+
公開もしていないのに、ポートスキャンを使ってまでアクセスするような輩は、
|
20
|
-
|
34
|
+
80番ポートだろうが3000番ポートだろうが構わず侵入してきます。
|
21
|
-
なので、全世界に公開する際は出来るだけ80番ポートを採用してください。
|
22
|
-
|
23
|
-
|
35
|
+
ポート番号を変えたからといって安全になった訳ではありませんので、脆弱性を盛り込んだりしないよう注意してください。
|