동일한 네트워크에 컴퓨터와 Android 스마트폰이라는 2개의 장치가 있는데, Android 휴대폰을 사용하여 내 서버에서 10개의 요청을 하면 약 30초 내에 컴퓨터를 사용하여 요청을 수행하려고 하면 시간 초과가 발생했습니다. 하지만 서로 다른 두 네트워크에서 동일한 테스트를 실행하면 시간 초과 문제가 발생하지 않습니다.
내 로그, Firewalld 및 Fail2Ban을 확인했지만 해당 로그의 출처를 찾을 수 없습니다. 내 서버가 Anti-DDoS 보호 기능을 제공하지만 5초에 15개의 요청이 발생하면 문제가 되지 않을 것 같습니다.
내 서버가 동일한 네트워크에 있지 않고 OVH(프랑스)에서 호스팅됩니다.
- 데비안 9
- 아파치 2
- PHP FPM 8.0
컴퓨터 요청 시간이 초과되면 스마트폰을 사용하여 요청을 수행할 수 있습니다.
어디서 확인할 수 있는지 아시면 감사하겠습니다.
편집하다:이것은 내 Fail2ban 구성입니다.
[DEFAULT]
banaction = iptables-multiport
banaction_allports = iptables-allports
ignoreip = xx.xx.xx.xx
#backend = polling
bantime = 3000
[sshd]
enabled = true
port = ssh
maxretry = 2
[ssh-ddos]
enabled = true
port = ssh,sftp
filter = sshd-ddos
maxretry = 2
[webmin-auth]
enabled = true
port = 10000
[proftpd]
enabled = true
port = ftp,ftp-data,ftps,ftps-data
[postfix]
enabled = true
port = smtp,465,submission
maxretry = 2
[dovecot]
enabled = true
port = pop3,pop3s,imap,imaps,submission,465,sieve
[postfix-sasl]
enabled = true
port = smtp,465,submission,imap,imaps,pop3,pop3s
maxretry = 2
[block-all-dem-noobs]
enabled = true
port = http,https
filter = block-all-dem-noobs
logpath = /var/log/virtualmin/xxx.com_access_log
maxretry = 50
findtime = 30
bantime = 600
action = iptables[name=HTTP, port=http, protocol=tcp]
이것은 block-all-dem-noobs
다른 도메인 이름에 있습니다.
편집 2:테스트를 계속합니다. 다음은 몇 가지 참고 사항입니다.
- 시간 초과 시 컴퓨터를 사용하여 VPN에 연결하면 해당 페이지에 액세스할 수 있습니다.
- 시간 초과 시 SSH를 사용하여 서버에 연결할 수 있습니다.
- 스마트폰에서는 내 서버(Apache/PHP)의 API에 요청을 보내는 앱(React Native)입니다.
- 스마트폰에서 Chrome을 사용하여 많은 요청을 보내려고 하면 컴퓨터에서 시간 초과가 발생하지 않습니다.
따라서 시간 초과는 모바일 앱을 사용할 때만 발생하며 시간 초과는 Apache(80/443)에서만 작동합니다.
편집 3: Fail2ban을 중지한 후에도 여전히 문제가 있습니다.