# 前提

レンタルサーバにメールサーバを置いて、自社から操作しています。自社のIPは特定できます。  
このサーバでは、同サーバ内のPHPプログラムでメール送信し、不達メールを受信しています。

# 意図

不要・不審なアクセスは、ファイアウォールでポート番号で制限し、必要なアクセスは妨げたくないと考えています。

（制限したいアクセス）  
(a)自メールサーバを使ってメール送信できるのは、自社からだけにしたい（IP制限）  
(b)自メールサーバに到着したメールを参照できるのは、自社からだけにしたい（IP制限）

（塞ぎたくないアクセス）  
(c)自メールサーバから、外部メールサーバに発信するメールは、送信したい  
(d)外部メールサーバから、自メールサーバへ到着するメールは、着信したい

# 予定

上記(a)(b)に関して、次の通信を行うポート番号については、外部からアクセスできないよう、自社IP以外を制限する予定です。  
・SMTP（SSLあり/なし）、POP3（SSLあり/なし）、IMAP（SSLあり/なし）

# 質問１

「予定」に書いた（外部からのアクセスを制限する）対策は、おそらく通常行われるものと想像しますが。

自サーバから外部へのアクセスは、通常制限しない、制限しない方がいい、と理解したらよいでしょうか？  
塞いだら支障があるでしょうか？

# 質問２

上記(c)の通信は、アクセス先、外部メールサーバのポート番号何番を使って通信しますか？  
上記(d)の通信は、アクセス先、自メールサーバのポート番号何番を使って通信しますか？  
（これを塞がないことに留意したいため、正しく理解したく思います。）

# 質問２の補足

[メールはどうやって送っているのか、基本のしくみを知ろう | JAGAT](https://www.jagat.or.jp/mail_shikumi)

上記サイトの図を借りて説明すると、次の通信で使われるポート番号を知りたいと考えています。

> ４．メールサーバー【A】から送信先のメールアドレスを管理する  
>  メールサーバー【B】に向けてメールを転送する

以上、よろしくお願いします。ありがとうございます。
CC BY-SA 4.0
2020-07-23T01:27:36.557
68849
2020-07-23T15:15:34.160
2020-07-23T08:25:09.050
3060
31158
question
mail
外部から送られてきたメールが、メールサーバに着信する際の、ポート番号は？
> 自サーバから外部へのアクセスは、通常制限しない、制限しない方がいい、と理解したらよいでしょうか？  
>  塞いだら支障があるでしょうか？

特段の理由がなければ制限する必要はないでしょう．最低限SMTP(TCP25)とDNS，あとは各種ソフト更新用にHTTP/Sが利用できれば問題ないかもしれませんが……．

> 上記(c)の通信は、アクセス先、外部メールサーバのポート番号何番を使って通信しますか？  
>  上記(d)の通信は、アクセス先、自メールサーバのポート番号何番を使って通信しますか？

SMTPサーバー間の通信はいずれも原則TCP25宛の通信と考えて問題ないはずです．
CC BY-SA 4.0
2020-07-23T02:02:29.903
68850
2020-07-23T02:02:29.903
2376
68849
answer
それぞれのプロトコルがどのポートを使うかは、基本的には仕様を見れば分かります。（他にも何かしらの歴史的経緯はあるかもしれませんが……。）

またこの話題については英語版 Wikipedia が良くまとまっていたため、一緒にリンクをつけています。

## SMTP

英語版 Wikipedia: [Simple Mail Transfer
Protocol](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol)（特に、[Ports
の節](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#Ports)）

  * 25 番ポート：[RFC 5321](https://www.rfc-editor.org/rfc/rfc5321) 4.5.4.2. Receiving Strategy が SMTP サーバーは 25 番ポートを listen しつづけると書いています。
  * 465 番ポート：[RFC 8314](https://www.rfc-editor.org/rfc/rfc8314) 3.3. Implicit TLS for SMTP Submission が submissions サービスのために使われると書いています。また同じ節において SMTP サーバーとクライアントは 465 番ポートでの Implicit TLS を実装すべきと書いています。
  * 587 番ポート：[RFC 8314](https://www.rfc-editor.org/rfc/rfc8314) 3.3. Implicit TLS for SMTP Submission が SMTP サーバーとクライアントは 587 番ポートでの STARTTLS を（移行期間の内は）実装すべきと書いています。

## POP3

英語版 Wikipedia: [Post Office
Protocol](https://en.wikipedia.org/wiki/Post_Office_Protocol)

  * 110 番ポート：[RFC 1939](https://www.rfc-editor.org/rfc/rfc1939) 3\. Basic Operation が POP3 サーバーは 110 番ポートを listen すると書いています。
  * 995 番ポート：[RFC 8314](https://www.rfc-editor.org/rfc/rfc8314) 3.1. Implicit TLS for POP が pop3s サービスのためにデフォルトでは 995 番ポートが使われると書いています。

## IMAP

英語版 Wikipedia: [Internet Message Access
Protocol](https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol)

  * 143 番ポート：[RFC 3501](https://www.rfc-editor.org/rfc/rfc3501) 2.1. Link Level が IMAP4rev1 サーバーは 143 番ポートを listen すると書いています。
  * 993 番ポート：[RFC 8314](https://www.rfc-editor.org/rfc/rfc8314) 3.2. Implicit TLS for IMAP が imaps サービスのためにデフォルトでは 993 番ポートが使われると書いています。
CC BY-SA 4.0
2020-07-23T15:15:34.160
68868
2020-07-23T15:15:34.160
2021-10-07T07:34:52.683
-1
19110
68849
answer