Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Если у кого-то вдруг временно простаивает железо, с радостью приму приглашение воспользоваться им в благих целях веб-аналитики.
Всем этим сайтам я отправил уведомления о том, что они стали героями статьи. На Ростелекоме доступ закрыли прямо когда я подключился и делал запросы, похвальная скорость работы админов.
Что обычно хранится на «публичных» memcached серверах?
Очень часто это куски вёрстки, либо html целых страниц, массивы чисел, мелкие тексты. Иногда ключами выступают sql-запросы, так что видна ещё и структура базы.
echo 'stats items' | nc localhost 11211 | while read line; do echo $line | grep -Po 'STAT items:\d+' | grep -Po '\d+'; done | sort -u | xargs -L1 -i echo 'stats cachedump {} 100' | nc localhost 11211 | grep 'ITEM' | sed 's/ITEM \([^ ]\+\) .*/\1/' | xargs -L1 -i echo 'get {}' | nc localhost 11211
nc localhost 11211 <<<"stats items" | awk -F: '/STAT items:[0-9]+/{if (!a[$2]++) print $2}' | xargs -I{} echo 'stats cachedump {} 100' | nc localhost 11211 | awk '/ITEM/{print $2}' | xargs -n1 echo get | nc localhost 11211
nc localhost 11211 <<<"stats items" | sed -n '/STAT/{s/[^:]*:\([^:]*\).*/stats cachedump \1 100/;p}' | sort -u | nc localhost 11211 | sed -n '/ITEM/{s/[^ ]* \([^ ]*\) .*/get \1/;p}' | nc localhost 11211
nc localhost 11211 <<<"stats items" | grep -Po '(?<=STAT items:)\d+' | sort -u | xargs -I. echo stats cachedump . 100 | nc localhost 11211 | grep -oP '(?<=ITEM )\S*' | xargs -n1 echo get | nc localhost 11211— How do I authenticate?В мемкеше не предусмотрено авторизации впринципе. Очевидно, для повышения производительности
— You don't!
Из чуть более 3.5 млн. сайтов зоны .ru, которые ответили моему скрипту по http, 39 тысяч имеют запущенный и открытый всему миру сервер memcached на стандартном порту 11211. Это количество настолько чудовищно,
кто не знает, тому и не надо в 99% случаев держать что-то еще открытым.
на нелокальных сетевых интерфейсахкак дистрибутив должен узнать, какие интерфейсы у него нелокальные, спрашивать при установке? Особенно если интерфейс всего один (98% случаев на всяких VPS/VDS и даже дедиках).
Я правильно понимаю, что на вашем сервере открыты все порты? Или все-таки whitelist? Тогда кому вообще нужно иметь открытыми все по умолчанию?
А теперь расскажите мне, как закрытие всех портов замедлит ваш процесс конфигурацию?
Таким образом, запрета всех портов никак не помешает вам, но поможет новичкам которые об этом вообще не думают.
Меня честно говоря удивляет, почему по-умолчанию дистрибутивы не закрывают все кроме 80 порта на нелокальных сетевых интерфейсах. Кто знает, тот легко исправит если что нужно, а кто не знает, тому и не надо в 99% случаев держать что-то еще открытым.
1% всех сайтов рунета держит свой memcached открытым для мира. Немного статистики