Tomo-9925 / cnet

Controlling and logging communication of process in Docker container
2 stars 0 forks source link

拒否する通信について #21

Closed masibw closed 3 years ago

masibw commented 3 years ago

policyに書かれていない通信についてパケットはdropするのですがコネクションを切断もした方が良かったりしますかね? クライアント側で切らないとtimeoutするまでつながったままなので少し不便な気もしています (全く実装方法が思いついていません

Tomo-9925 commented 3 years ago

Dropしたときにサーバ側にコネクションは作られるのでしょうか…? クライアントについては,TCPであればRSTパケットで対応できますが,やってみますか…?

masibw commented 3 years ago

Dropしたときにサーバ側にコネクションは作られるのでしょうか…?

調べてみようと思ったんですがnetstatとかで接続先IPが表示できずどうすると確認できたことになるのかわかりませんでした...

クライアントについては,TCPであればRSTパケットで対応できますが,やってみますか…?

なるほどです!もしサーバー側にコネクションがあればやってみたいと思います!

masibw commented 3 years ago
root@394612b9d950:/# netstat -tan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
tcp        0      0 172.17.0.3:80           10.1.9.7:65434          TIME_WAIT
tcp6       0      0 :::80                   :::*                    LISTEN
root@394612b9d950:/#

TIME_WAITという状態になることがわかった

おそらくTIME_OUTするまで接続が続くのでコネクションをリセットしたほうが良さそう

masibw commented 3 years ago

上記状態にならなくて、よく考えたら3-way handshakeの最初の状態からパケットを拒否してるのでそもそも接続が確立されないはずなんですよね・・・ 一度コネクションを接続した状態からcnetを起動すると上記状態になりますが流石に考えなくて良いかな〜って気がしてきました

Tomo-9925 commented 3 years ago

確かに.

time="2020-12-10T06:58:55Z" level=info msg="the undefined packet dropped" communicated_container="{ID:394612b9d950084250a53cecb69ac8dbfd69b48747d302f2d5813d4b185508a4 Name:/nginx_test_invalid}" communicated_process="{ID:30328 Executable:nginx Path:/usr/sbin/nginx}" target_socket="{Protocol:TCP LocalIP:172.17.0.3 LocalPort:80 RemoteIP:10.1.9.9 RemortPort:54808}"
$ sudo nmap -sS 10.1.123.5
Password:
Starting Nmap 7.91 ( https://nmap.org ) at 2020-12-10 15:56 JST
Nmap scan report for 10.1.123.5
Host is up (0.0088s latency).
Not shown: 997 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
8080/tcp open  http-proxy
8081/tcp filtered  blackice-icecap

Nmap done: 1 IP address (1 host up) scanned in 0.52 seconds