HTTP GET запросы на мой сайт для неизвестных файлов .php. Почему и как предотвратить это

У меня есть приложение, развернутое на цифровой капельке океана. Примерно через 1 день после развертывания мой сервер разбился, итоговые журналы выглядят следующим образом:

GET /vehicle/tank/all/1 304 2.965 ms - -
GET /vehicle/tank/all/1 304 2.582 ms - -
GET /vehicle/tank/all/1 304 1.735 ms - -
GET /vehicle/tank/all/1 304 1.566 ms - -
GET http://dhg.pisz.pl/httptest.php 404 1.771 ms - 43
GET http://dhg.pisz.pl/httptest.php 404 3.271 ms - 43
GET http://dhg.pisz.pl/httptest.php 404 1.051 ms - 43
GET http://24x7-allrequestsallowed.com/?  PHPSESSID=aab45f4f00143PWZJTVBY%40DXJFV%5D 200 1.777 ms - 1878
GET / 200 2.794 ms - 1878
GET http://testp4.pospr.waw.pl/testproxy.php 404 2.617 ms - 52
HEAD /robots.txt 404 2.946 ms - 24
HEAD / 200 1.751 ms - 1878
GET http://dhg.pisz.pl/httptest.php 404 9.679 ms - 43

Error: Connection lost: The server closed the connection.
at Protocol.end (/root/tycho/node_modules/mysql/lib/protocol/Protocol.js:109:13)
at Socket.<anonymous> (/root/tycho/node_modules/mysql/lib/Connection.js:102:28)
at Socket.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:920:16
at process._tickCallback (node.js:415:13)
[nodemon] app crashed - waiting for file changes before starting...

Это атака? Если да, то что я могу сделать, чтобы не допустить, чтобы клиент в первую очередь получал эти запросы?

Ответ 1

Вы можете заблокировать свои IP-адреса с помощью брандмауэра. Поиск "fail2ban" и имя вашего сервера должны включать некоторые учебные пособия о том, как автоматизировать этот процесс. Если вы заметили, что большинство атак относятся к определенной области, блокировка IP-адресов по регионам (geoIP) также является опцией.