Memcached — это программа кеширования объектов с распределенной памятью с открытым исходным кодом, которая позволяет нам улучшать и ускорять производительность динамических веб-приложений, кэшируя данные и объекты в памяти.

Memcached также используется для кэширования целых таблиц базы данных и запросов для повышения производительности базы данных.

Это единственная система кеширования, доступная бесплатно и используемая многими крупными сайтами, такими как YouTube, Facebook, Twitter, Reddit, Drupal, Zynga и т. д.

Memcached может зафиксировать атаки отказа в обслуживании, если он не настроен правильно.

В этой статье мы расскажем, как установить и защитить ваш сервер Memcached в дистрибутиве CentOS 7 Linux.

Эти данные инструкции также работают на RHEL и Fedora Linux.

Установка Memcached в CentOS 7

Сначала обновите систему, а затем установите Memcached из официальных репозиториев CentOS, используя следующие команды yum.

# yum update
# yum install memcached

Далее мы установим libmemcached — клиентскую библиотеку, которая предлагает несколько инструментов для управления вашим сервером Memcached.

# yum install libmemcached

Memcached теперь должен быть установлен в вашей системе CentOS как сервис вместе с инструментами, которые требуют от вас для проверки его подключения.

Теперь мы можем перейти к настройке параметров конфигурации.

Защита настроек конфигурации Memcached

Чтобы убедиться, что установленная служба Memcached прослушивает локальный интерфейс 127.0.0.1, мы изменим переменную OPTIONS в файле конфигурации /etc/sysconfig/memcached.

Дополнительно, чтобы защитить его параметры конфигурации.

# vi /etc/sysconfig/memcached

Найдите переменную OPTIONS и добавьте -l 127.0.0.1 -U 0 к переменной OPTIONS.

Эти параметры конфигурации защитят наш сервер от атак типа «отказ в обслуживании».

PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1 -U 0" 

Давайте обсудим каждый из вышеперечисленных параметров в деталях.

  • PORT: порт, используемый Memcached для запуска.
  • USER демон запуска службы Memcached.
  • MAXCONN: значение, используемое для установки максимального количества одновременных подключений на 1024. Для загруженных веб-серверов вы можете увеличить любое число в зависимости от ваших требований.
  • CACHESIZE: установите размер кэш-памяти на 2048. Для загруженных серверов вы можете увеличить до 4 ГБ.
  • OPTIONS: Установите IP-адрес сервера, чтобы к нему могли подключаться веб-серверы Apache или Nginx.
    Перезапустите и включите службу Memcached, чтобы применить изменения конфигурации.
# systemctl restart memcached
# systemctl enable memcached

После запуска вы можете подтвердить, что ваша служба Memcached связана с локальным интерфейсом и прослушивает только TCP-соединения, используя следующую команду netstat.

# netstat -plunt

Вы также можете проверить статистику сервера, используя memcached-tool, как показано на рисунке.

# memcached-tool 127.0.0.1 stats

Теперь убедитесь, что вы разрешили доступ к серверу Memcached, открыв порт 11211 на брандмауэре, как показано на рисунке.

# firewall-cmd --permanent --zone=public --add-port=11211/tcp

Установите расширение Memcached PHP

Теперь установите расширение PHP для работы с демоном Memcached.

# yum install php-pecl-memcache

Установите Memcached Perl Library

Установите библиотеку Perl для Memcached.

# yum install perl-Cache-Memcached

Установите Memcached Python Library

Установите библиотеку Python для Memcached

# yum install python-memcached

Перезагрузите веб-сервер

Перезапустите сервис Apache или Nginx, чтобы отразить изменения.

# systemctl restart httpd
# systemctl restart nginx

См. также

 

Please follow and like us:

Добавить комментарий