Memcached — это бесплатное высокопроизводительное хранилище данных типа «ключ-значение» с открытым исходным кодом в памяти. Он обычно используется для ускорения работы приложений за счет кэширования различных объектов из результатов обращений к базе данных.
В этом руководстве мы рассмотрим процесс установки и настройки последней версии Memcached в Debian 10.
Если вы намерены установить Memcached на удаленный сервер, читайте дальше, в противном случае, если вы хотите установить Memcached на свой локальный компьютер, пропустите первый абзац «Подключение к серверу» и прочитайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Предпосылки
Прежде чем продолжить работу с этим учебным пособием, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo.
Установить Memcached
Пакеты memcached включены в репозитории Debian 10 по умолчанию. Установка довольно проста, просто выполните следующие действия:
Начните с обновления списка пакетов apt:
sudo apt update
Установите Memcached, набрав:
sudo apt install memcached libmemcached-tools
Пакет libmemcached-tools
содержит несколько инструментов командной строки для управления сервером Memcached.
После завершения установки служба Memcached запустится автоматически. Чтобы проверить статус службы, введите следующую команду:
sudo systemctl status memcached
Вывод будет выглядеть следующим образом:
● memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-03-11 12:04:22 PDT; 32s ago
Docs: man:memcached(1)
Main PID: 10423 (memcached)
Tasks: 10 (limit: 2319)
CGroup: /system.slice/memcached.service
`-10753 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid
Вот и все, на данный момент у вас установлен и запущен Memcached на вашем сервере Debian 10.
Memcached-конфигурация
Memcached можно настроить, отредактировав файл /etc/memcached.conf
. Параметры конфигурации по умолчанию достаточны для большинства пользователей.
По умолчанию Memcached настроен на прослушивание только на локальном хосте. Если клиент, подключающийся к серверу, также работает на том же хосте, нет необходимости изменять файл конфигурации по умолчанию.
Удаленный доступ
При неправильной настройке Memcached может использоваться для выполнения атаки распределенного отказа в обслуживании (DDoS). Если вы хотите разрешить удаленный доступ к серверу Memcached, вы должны настроить брандмауэр и разрешить доступ к UDP-порту Memcached 11211 только доверенным клиентам.
В следующем примере предполагается, что вы хотите подключиться к серверу Memcached через частную сеть. IP-адрес сервера — 192.168.111.11
, а IP-адрес клиента — 192.168.222.22
.
Debian не поставляется с инструментом настройки брандмауэра под названием UFW.
Чтобы облегчить настройку брандмауэра в Debian, мы рекомендуем установить UFW, который позволяет выполнить простую начальную настройку:
sudo apt install ufw
По умолчанию UFW установлен, но не включен. Перед включением брандмауэра UFW добавьте правило, разрешающее входящие соединения SSH (если вы используете стандартный порт для соединения ssh):
sudo ufw allow 22
Разрешить оценку с IP-адреса удаленного клиента:
sudo ufw allow from 192.168.222.22 to any port 11211
Включите UFW, набрав:
sudo ufw status
После настройки брандмауэра следующим шагом будет изменение конфигурации Memcached и настройка службы Memcached для прослушивания интерфейса частной сети сервера:
Для этого откройте конфигурационный файл memcached.conf
:
sudo nano /etc/memcached.conf
Найдите строку, начинающуюся с -l 127.0.0.1
, и замените 127.0.0.1
на IP-адрес сервера 192.168.111.11
.
# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 192.168.111.11
Перезапустите службу Memcached, чтобы изменения вступили в силу:
sudo systemctl restart memcached
Теперь вы можете подключиться к серверу Memcached из своего удаленного местоположения.
Подключиться к Memcached
Для подключения к серверу Memcached необходимо использовать клиент для определенного языка.
PHP
Чтобы использовать Memcached в качестве кэширующей базы данных для PHP-приложений, таких как WordPress, Drupal, Joomla или Magento, вам необходимо установить расширение php-memcached
:
sudo apt install php-memcached
Питон
Существует несколько библиотек Python для взаимодействия с memcache. Вы можете установить свою любимую библиотеку с помощью pip:
pip install pymemcache
pip install python-memcached
Вывод
Вы узнали, как установить Memcached на свой сервер Debian. Для получения дополнительной информации по этой теме см . Memcached Wiki.