Puncte:2

UFW limitează conexiunile fără reguli de limită

drapel ca

Am un server care găzduiește servicii odihnitoare prin HTTPS. Am configurat UFW după cum urmează:

utilizator@server:~$ sudo ufw status verbose

Stare: activ
Înregistrare: activată (medie)
Implicit: refuza (intrat), permite (ie), dezactivat (direcționat)
Profiluri noi: săriți

La Acțiune De la
-- ------ ----
22/tcp PERMITERE PENTRU Oriunde                  
80/tcp PERMITERE PENTRU Oriunde                  
443/tcp PERMITERE PENTRU Oriunde                  
22/tcp (v6) PERMITĂȚI oriunde (v6)             
80/tcp (v6) PERMITERE Oriunde (v6)             
443/tcp (v6) PERMITERE Oriunde (v6)

Deci, ar trebui să lase totul să intre pentru HTTPS. Cu toate acestea, din când în când, atunci când un client face o serie de conexiuni rapide succesive, UFW le blochează.

utilizator@server:~$ cat /var/log/ufw.log | grep BLOC | coadă

29 nov 15:02:11 nucleu server: [ 2695.510376] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=60467 DF PROTO=TCP SPT=32123 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 15:02:11 nucleu server: [ 2695.538273] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=60469 DF PROTO=TCP SPT=32126 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 15:02:11 nucleu server: [ 2695.545677] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=60471 DF PROTO=TCP SPT=32124 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 15:02:11 nucleu server: [ 2695.546473] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=60473 DF PROTO=TCP SPT=32125 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 15:02:11 nucleu server: [ 2695.546900] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=60475 DF PROTO=TCP SPT=32127 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 15:02:11 nucleu server: [ 2695.782249] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=83 TOS=0x00 PREC =0x00 TTL=121 ID=27041 DF PROTO=TCP SPT=32123 DPT=443 WINDOW=378 RES=0x00 ACK PSH FIN URGP=0 
29 nov 15:02:25 nucleu server: [ 2709.850336] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=83 TOS=0x00 PREC =0x00 TTL=121 ID=59805 DF PROTO=TCP SPT=32126 DPT=443 WINDOW=378 RES=0x00 ACK PSH FIN URGP=0 
29 nov 15:02:43 nucleu server: [ 2727.821278] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=83 TOS=0x00 PREC =0x00 TTL=53 ID=48661 DF PROTO=TCP SPT=32131 DPT=443 WINDOW=398 RES=0x00 ACK PSH URGP=0

Acest lucru se întâmplă doar când există această explozie de trafic:

xx.xx.xx.xx - - [29/Nov/2021:15:01:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:01:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 5182 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:01:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:01:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:01:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 5182 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:11 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:11 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:11 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:11 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:11 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:44 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:44 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:44 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:44 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:42 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4972 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:47 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:47 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:47 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:47 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:47 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:48 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:48 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:48 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:02:48 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 374 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:05:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:05:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:05:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 5182 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:05:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 4903 „-” „okhttp/3.14.9”
xx.xx.xx.xx - - [29/Nov/2021:15:05:45 +0000] „POST /MyAPI/doWork/ HTTP/1.1” 200 5182 „-” „okhttp/3.14.9”

Este posibil să opriți UFW să facă asta?

Nu sunt un expert în iptables, dar se pare că există niște reguli cu limite în ele. Nu sunt sigur dacă asta cauzează problema, dar cu siguranță toate vin direct de la UFW. Aici este rezultatul lui iptables -v -n -x -L:

INTRARE în lanț (politica DROP 1 pachete, 40 de octeți)
    pkts bytes target prot opt ​​in out source destination         
  415392 733209937 ufw-before-logging-input all -- * * 0.0.0.0/0 0.0.0.0/0           
  415392 733209937 ufw-before-input all -- * * 0.0.0.0/0 0.0.0.0/0           
   19847 35666218 ufw-după-intrare toate -- * * 0.0.0.0/0 0.0.0.0/0           
   19847 35666218 ufw-după-înregistrare-intrare toate -- * * 0.0.0.0/0 0.0.0.0/0           
   19847 35666218 ufw-reject-input toate -- * * 0.0.0.0/0 0.0.0.0/0           
   19847 35666218 ufw-track-input toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț FORWARD (politica DROP 0 pachete, 0 octeți)
    pkts bytes target prot opt ​​in out source destination         
       0 0 ufw-before-logging-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ufw-before-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ufw-după-înainte toate -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ufw-după-logging-forward toate -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ufw-reject-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ufw-track-forward all -- * * 0.0.0.0/0 0.0.0.0/0           

IEȘIRE în lanț (politica ACCEPTĂ 4 pachete, 280 de octeți)
    pkts bytes target prot opt ​​in out source destination         
  312279 36416414 ufw-before-logging-output all -- * * 0.0.0.0/0 0.0.0.0/0           
  312279 36416414 ufw-înainte de ieșire toate -- * * 0.0.0.0/0 0.0.0.0/0           
   16031 1176867 ufw-după-ieșire toate -- * * 0.0.0.0/0 0.0.0.0/0           
   16031 1176867 ufw-după-logging-output toate -- * * 0.0.0.0/0 0.0.0.0/0           
   16031 1176867 ufw-reject-output toate -- * * 0.0.0.0/0 0.0.0.0/0           
   16031 1176867 ufw-track-output all -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-after-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-după-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:137
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:138
       0 0 ufw-skip-to-policy-input tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:139
       0 0 ufw-skip-to-policy-input tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:445
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:68
       0 0 ufw-skip-to-policy-input all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE se potrivește cu DST-type BROADCAST

Lanț ufw-după-logging-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min burst 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW BLOCK]”

Lanț ufw-după-logging-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       1 40 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min rafală 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW BLOCK]”

Lanț ufw-după-logging-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
      82 6813 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min burst 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW ALLOW]”

Lanț ufw-după-ieșire (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-before-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 ACCEPT toate -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
       0 0 ufw-user-forward all -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-before-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
    2452 204587 ACCEPT toate -- lo * 0.0.0.0/0 0.0.0.0/0           
  205497 387613737 ACCEPT pe toate -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
     113 6588 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
     113 6588 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
       0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
       0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
     926 66054 ufw-not-local all -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ACCEPT udp -- * * 0.0.0.0/0 224.0.0.251 udp dpt:5353
       0 0 ACCEPT udp -- * * 0.0.0.0/0 239.255.255.250 udp dpt:1900
     925 64664 ufw-user-input toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-before-logging-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NOU limită: medie 3/min burst 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW AUDIT]”

Lanț ufw-before-logging-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
      82 10488 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW limit: avg 3/min burst 10 flags LOG 0 prefix de nivel 4 „[UFW AUDIT]”

Lanț ufw-before-logging-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
      82 5743 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW AUDIT]"

Lanț ufw-before-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
    2452 204587 ACCEPT toate -- * lo 0.0.0.0/0 0.0.0.0/0           
  155111 15748513 ACCEPT pe toate -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,STABLISHED
     229 16406 ufw-user-output all -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-logging-allow (0 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min burst 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW ALLOW]”

Lanț ufw-logging-deny (2 referințe)
    pkts bytes target prot opt ​​in out source destination         
      45 2384 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate Limită INVALID: medie 3/min burst 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW AUDIT INVALID]”
      45 2384 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min rafală 10 semnalizatoare LOG 0 nivel 4 prefix „[UFW BLOCK]”

Lanț ufw-not-local (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
     926 66054 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE se potrivește cu dst-type LOCAL
       0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE potrivește tip dst MULTICAST
       0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE se potrivește cu DST-type BROADCAST
       0 0 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 limită: medie 3/min burst 10
       0 0 DROP toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-reject-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-reject-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-reject-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-skip-to-policy-forward (0 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 DROP toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-skip-to-policy-input (7 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 DROP toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-skip-to-policy-output (0 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 ACCEPT pe toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-track-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-track-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-track-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
     188 12756 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NOU
      37 3370 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NOU

Lanț ufw-user-forward (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-user-input (1 referințe)
    pkts bytes target prot opt ​​in out source destination         
       2 108 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
       1 52 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
     921 64464 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443

Lanț ufw-user-limit (0 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limită: rafală medie 3/min 5 semnalizatoare LOG 0 nivel 4 prefix „[UFW LIMIT BLOCK]”
       0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Lanț ufw-user-limit-accept (0 referințe)
    pkts bytes target prot opt ​​in out source destination         
       0 0 ACCEPT pe toate -- * * 0.0.0.0/0 0.0.0.0/0           

Lanț ufw-user-logging-forward (0 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-user-logging-input (0 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-user-logging-output (0 referințe)
    pkts bytes target prot opt ​​in out source destination         

Lanț ufw-user-output (1 referințe)
    pkts bytes target prot opt ​​in out source destination         

Editați | ×:

Adăugarea unui jurnal complet pentru un IP specific care a fost blocat pentru a include și liniile AUDIT.

cat ufw.log | grep CLIENT.IP

29 noiembrie 16:00:14 kernel de server: [ 6178.504254] [AUDIT UFW INVALID] IN=ens4 OUT= MAC=xx:xx:xx:...SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC=0x00 TTL=121 ID=27580 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK FIN URGP=0 
29 nov 16:00:14 nucleu server: [ 6178.504263] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC =0x00 TTL=121 ID=27580 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.733987] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=13970 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.734039] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=13970 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.742917] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=13974 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 kernel de server: [ 6178.742943] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=13974 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.893083] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27581 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.893115] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=27581 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.915281] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27199 DF PROTO=TCP SPT=64752 DPT=443 WINDOW=360 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.915314] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=27199 DF PROTO=TCP SPT=64752 DPT=443 WINDOW=360 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 kernel de server: [ 6178.947972] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=41365 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=1003 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.948004] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=41365 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=1003 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.951350] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=17364 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=401 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.951379] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=17364 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=401 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:16 nucleu server: [ 6179.679941] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27582 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:16 nucleu server: [ 6179.679968] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=27582 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:20 nucleu server: [ 6184.407553] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27584 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 noiembrie 16:00:20 kernel de server: [ 6184.407579] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:...SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27584 DF PROTO=TCP SPT=64750 DPT=443 WINDOW=1539 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:53 nucleu server: [ 6217.594359] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=15646 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:53 nucleu server: [ 6217.594397] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=15646 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:01:00 nucleu server: [ 6224.389153] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=40585 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=345 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:01:00 nucleu server: [ 6224.389187] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=40585 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=345 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:01:23 kernel de server: [ 6247.359229] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=21101 DF PROTO=TCP SPT=64771 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:01:23 nucleu server: [ 6247.359287] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=21101 DF PROTO=TCP SPT=64771 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:01:42 kernel de server: [ 6266.470287] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC=0x00 TTL=52 ID=1563 DF PROTO=TCP SPT=64772 DPT=443 WINDOW=352 RES=0x00 ACK FIN URGP=0 
29 nov 16:01:42 nucleu server: [ 6266.470328] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC =0x00 TTL=52 ID=1563 DF PROTO=TCP SPT=64772 DPT=443 WINDOW=352 RES=0x00 ACK FIN URGP=0 
29 nov 16:02:02 nucleu server: [ 6285.692541] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC=0x00 TTL=52 ID=1564 DF PROTO=TCP SPT=64772 DPT=443 WINDOW=352 RES=0x00 ACK FIN URGP=0 
29 nov 16:02:02 nucleu server: [ 6285.692584] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=52 TOS=0x00 PREC =0x00 TTL=52 ID=1564 DF PROTO=TCP SPT=64772 DPT=443 WINDOW=352 RES=0x00 ACK FIN URGP=0 
29 nov 16:09:45 nucleu server: [ 6749.404864] [UFW AUDIT] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=60 TOS=0x00 PREC =0x00 TTL=52 ID=58119 DF PROTO=TCP SPT=64788 DPT=443 WINDOW=65535 RES=0x00 SYN URGP=0 
Doug Smythies avatar
drapel gn
Pentru fiecare dintre intrările dvs. „BLOCK”, vă rugăm să căutați în fișier o intrare corespunzătoare „UFW AUDIT INVALID”. Cu excepția ultimului, toate sunt legate de terminarea sesiunii, ceea ce se întâmplă adesea cu Linux, deoarece folosește handshake half-duplex și nu handshake full duplex. Eu spun că s-ar putea să nu fie deloc o problemă. Rețineți că regulile UFW sunt greu de urmat și utilizează același prefix de jurnal în mai multe locații, foarte enervant.
Doug Smythies avatar
drapel gn
vezi [aici](https://askubuntu.com/questions/1187993/ufw-occasionally-blocking-https-443-tcp-though-configured-to-allow-that-port/1188016#1188016). Nu am o explicație bună pentru ultimul exemplu de BLOC și ar trebui să-l văd în contextul unei capturi tcpdump a întregii sesiuni.
drapel ca
Bună @DougSmythies, mulțumesc! Am adăugat și acum liniile „UFW AUDIT INVALID”. Care sunt comanda/steaguri corecte pentru a obține tcpdump corect? Presupun că ar trebui doar să rulez asta pentru o perioadă de captură până când se întâmplă un bloc, nu?
drapel ca
Deci, pe partea clientului, atunci când are loc blocarea, pare să scadă lucruri - adică conexiunea aplicației eșuează. Dacă dezactivez UFW, atunci se pare că nu se întâmplă.
Doug Smythies avatar
drapel gn
BINE. deci exemplul tău, `cat ufw.log | grep CLIENT.IP`, pare bine, și așa cum am menționat. Ultima intrare `UFW AUDIT` pare bine. Va trebui să revin cu o sugestie tcpdump.
Doug Smythies avatar
drapel gn
Chiar nu pot vedea ce ar putea fi în neregulă cu setul de reguli iptables generat de UFW.Nu știu dacă va ajuta, dar pentru tcpdump mă pot gândi la două opțiuni: Prin port, `sudo tcpdump -n -tttt -i ens4 port 443` și extrage prin IP mai târziu cu grep; Prin IP, `sudo tcpdump -n -tttt -i ens4 gazdă CLIENT.IP` și extrageți mai târziu numai chestii de la portul 443, dacă este necesar.
drapel ca
Mulțumiri! Voi rula asta mâine dimineață, când toți clienții se vor conecta din nou. Va arunca o privire și va raporta. Mulțumesc mult pentru ajutor!
Puncte:0
drapel gn

Dacă luăm rezultatul postat pentru cat ufw.log | grep CLIENT.IP și regrupați o parte în sesiuni individuale, pe baza numărului portului clientului pe care îl obținem:

29 nov 16:00:15 nucleu server: [ 6178.733987] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=13970 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.734039] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=13970 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 kernel de server: [ 6178.947972] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=41365 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=1003 RES=0x00 ACK PSH FIN URGP=0 
29 noiembrie 16:00:15 nucleu server: [ 6178.948004] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:...SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=41365 DF PROTO=TCP SPT=64753 DPT=443 WINDOW=1003 RES=0x00 ACK PSH FIN URGP=0 

29 nov 16:00:15 nucleu server: [ 6178.742917] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=13974 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 kernel de server: [ 6178.742943] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=13974 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.951350] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=17364 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=401 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.951379] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=17364 DF PROTO=TCP SPT=64754 DPT=443 WINDOW=401 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 kernel de server: [ 6178.915281] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=27199 DF PROTO=TCP SPT=64752 DPT=443 WINDOW=360 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:00:15 nucleu server: [ 6178.915314] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=27199 DF PROTO=TCP SPT=64752 DPT=443 WINDOW=360 RES=0x00 ACK PSH FIN URGP=0

29 nov 16:00:53 nucleu server: [ 6217.594359] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC=0x00 TTL=53 ID=15646 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:00:53 nucleu server: [ 6217.594397] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=40 TOS=0x00 PREC =0x00 TTL=53 ID=15646 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=0 RES=0x00 RST URGP=0 
29 nov 16:01:00 nucleu server: [ 6224.389153] [UFW AUDIT INVALID] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC=0x00 TTL=121 ID=40585 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=345 RES=0x00 ACK PSH FIN URGP=0 
29 nov 16:01:00 nucleu server: [ 6224.389187] [UFW BLOCK] IN=ens4 OUT= MAC=xx:xx:xx:... SRC=CLIENT.IP DST=SERVER.IP LEN=75 TOS=0x00 PREC =0x00 TTL=121 ID=40585 DF PROTO=TCP SPT=64762 DPT=443 WINDOW=345 RES=0x00 ACK PSH FIN URGP=0 
 

Acum, observați că se pare că există unele inconsecvențe de secvență cu unele pachete ACK FIN care vin după pachetele RST și întotdeauna cu un TTL (Time To Live) foarte diferit. Toate aceste pachete vin după ce sesiunea TCP a fost deja închisă și a fost uitată.

nu stiu nimic despre okhttp, dar dacă partajarea prizei este utilizată cumva, ar putea exista probleme de sincronizare la închiderea soclului.

Vezi și un alt răspuns Aici, dar voi copia partea relevantă, reformulând puțin:

Pentru conexiunile TCP, Linux tinde să folosească o secvență de închidere „half-duplex” în care fiecare parte a sesiunii poate iniția terminarea conexiunii printr-o singură strângere de mână FIN-ACK în 2 căi (care pune conexiunea în starea CLOSE_WAIT), în loc de o stare completă. Strângere de mână cu 4 căi FIN-ACK. Ceea ce se întâmplă foarte des, în special cu un router între ele, este că o parte crede că sesiunea a fost închisă, iar cealaltă nu. Computerul dvs. server s-a încheiat și a uitat de sesiune și, prin urmare, consideră pachetele drept pachete de deschidere a unei noi sesiuni nevalide și le blochează. În mod normal, nu s-a făcut rău, sesiunea reală a funcționat bine. Ceea ce este neobișnuit în acest caz este pachetul RST (Resetare) înaintea unor pachete FIN-ACK.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.