Я действительно не хочу знать об этом, так как я хотел бы сохранить его конфиденциальность и предоставить моему посетителю максимальную конфиденциальность (хотя мой блог не популярен).
Я только что установил Ubuntu с nginx из Digital Ocean с Призрак предустановлен, но раньше был с Wordpress. Прямо сейчас (пока я пишу) я все время вижу этот журнал
POST /bidRequest?exchange=smaato 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 1ms - 19b
POST /bidRequest?exchange=smaato 500 1ms - 19b
POST /bidRequest?exchange=smaato 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 1ms - 19b
POST /bidRequest?exchange=smaato 500 1ms - 19b
POST /bidRequest?exchange=smaato 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 3ms - 19b
POST /wp-admin/admin-ajax.php 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 3ms - 19b
GET /winBid?erid=EzLM7nyV0n&eid=2&cpm=1.45449&bid=1628&w=1384697998 301 2ms
POST /bidRequest?exchange=smaato 500 2ms - 19b
POST /bidRequest?exchange=smaato 500 1ms - 19b
POST /bidRequest?exchange=smaato 500 3ms - 19b
POST /bidRequest?exchange=smaato 500 2ms - 19b
Как вы можете видеть, это происходит каждую секунду, и они никогда не останавливаются на этом, и я думаю, что они пытаются взломать мой сайт, пока я был на Wordpress, или что-то происходит по этим запросам. Я хотел бы узнать об этих атаках и заблокировать их IP, если что-то происходит не так. Как мне узнать или мне следует установить какой-то модуль / плагин в свой ящик, чтобы предотвратить такое поведение?
Журнал обычно можно включить и указать путь nginx.conf
/etc/nginx/nginx.conf
если ты vim
или используйте свой редактор и отредактируйте этот файл и измените или проверьте эту строку
access_log /var/log/nginx/access.log main;
NGINX может регистрировать IP-адреса и другую информацию, которая может вас заинтересовать, но похоже, что журнал, который вы здесь показываете, не настроен для включения этой информации. Если вы настроите свои журналы nginx, вы сможете включить его. Если вам нужна помощь, опубликуйте здесь свою конфигурацию журналов nginx. Мой выглядит так:
log_format main
'$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$gzip_ratio"';
И вот такие логи в логах:
76.113.215.212 - - [17 / ноя / 2013: 10: 19: 19 -0600] "GET / HTTP / 1.1" 200 15411 "-" "Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit / 537.36 (KHTML , как и Gecko) Chrome / 31.0.1650.57 Safari / 537.36 "
Как только вы найдете нужные IP-адреса, вы сможете заблокировать их несколькими способами - наиболее эффективным, вероятно, является использование брандмауэра (iptables) или, если временная блокировка до перезагрузки приемлема, вы можете используйте запись маршрутизации REJECT, которая заставляет ваш компьютер вообще отказываться разговаривать с этим хостом. Если вы думаете, что это немного тяжеловесно, вы можете создать правила для блокировки в nginx, вероятно, разными способами (на ум приходит ограничение скорости).
если ваш веб-сервер находится за балансировщиком нагрузки, например amazon ELB, $ remote_addr будет не дать вам клиентский IP. вместо этого каждая запись будет IP-адресом восходящего устройства балансировки нагрузки.
чтобы обойти это, замените $ remote_addr на $ http_x_forwarded_for:
log_format main
'$ http_x_forwarded_for - $ remote_user [$ time_local] "$ запрос"'
'$ status $ body_bytes_sent "$ http_referer"'
'"$ http_user_agent"';