web-dev-qa-db-ja.com

UFWは時々HTTPS(443 / TCP)をブロックしますが、Ubuntu 16.04でそのポートを許可するように構成されています

私のUbuntu 16.04マシンでは、UFWを次のように構成しました。

$ Sudo apt-get install ufw

$ Sudo ufw limit 22/tcp
$ Sudo ufw allow 80/tcp
$ Sudo ufw allow 443/tcp

$ Sudo ufw enable

Sudo ufw status verboseを実行すると、出力は次のようになります。

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22/tcp                     LIMIT IN    Anywhere                  
80/tcp                     ALLOW IN    Anywhere                  
443/tcp                    ALLOW IN    Anywhere                  
22/tcp (v6)                LIMIT IN    Anywhere (v6)             
80/tcp (v6)                ALLOW IN    Anywhere (v6)             
443/tcp (v6)               ALLOW IN    Anywhere (v6)

私が見る限り、これは見栄えがいいです。SSH(スロットル)だけでなく、HTTPとHTTPSも可能です。これが望まれていたことです。

しかし、数日後、/var/log/ufw.logを調べると、次の例のようなかなりの数のエントリが見つかります。

Jan 1 00:00:00 <SERVER_NAME> kernel: [<UPTIME>] [UFW BLOCK] IN=eth0 OUT= MAC=<41_CHARACTERS> SRC=<IP_V4> DST=<IP_V4> LEN=40 TOS=0x00 PREC=0x00 TTL=56 ID=1234 DF PROTO=TCP SPT=17708 DPT=443 WINDOW=0 RES=0x00 RST URGP=0

Jan 2 23:59:59 <SERVER_NAME> kernel: [<UPTIME>] [UFW BLOCK] IN=eth0 OUT= MAC=<41_CHARACTERS> SRC=<IP_V4> DST=<IP_V4> LEN=52 TOS=0x00 PREC=0x00 TTL=51 ID=23456 DF PROTO=TCP SPT=29199 DPT=443 WINDOW=1061 RES=0x00 ACK FIN URGP=0

DPT=443のとおり、UFWは一部のHTTPSリクエストをブロックしていますか?何故ですか?上記のように、HTTPS(つまり、TCP経由のポート443)はUFW構成で明示的に許可されていますか? UFWがこれらの要求をブロックする他の理由は何ですか?

(試してみると、ブラウザでHTTPS経由で自分のWebサイトを開くことができるため、UFWは明らかにall HTTPSリクエストをブロックしません。)

1
caw

2つのサンプルログエントリは、実際にはtcpセッション終了タイプのパケットです。 TCP接続の場合、Linuxは「半二重」クローズシーケンスを使用する傾向があります。この場合、セッションのどちら側でも、単一の2方向FIN-ACKハンドシェイク(接続をCLOSE_WAIT状態)、フル4ウェイFIN-ACKハンドシェイクの代わりに。特にルーターがその間にある場合、非常に頻繁に発生するのは、一方がセッションが閉じられたと考え、もう一方が閉じられなかったということです。コンピュータが終了し、忘れられましたセッションについて、パケットを無効な新しいセッション開始パケットと見なしてブロックします。害はありませんでしたが、実際のセッションは正常に機能しました。

ここでの重要な情報は、2つの例のTCPフラグ、 "RST"(リセット)、および "ACK FIN"です。

2
Doug Smythies