Проталкивающее Зеркалирование

Проталкивающее зеркалирование — это форма зеркалирования, использующая rsync, минимизирующая время, требуемое для того, чтобы изменения в главном архиве достигли зеркал. Главный сервер использует механизм защёлки для информирования клиентского зеркала, что ему необходимо обновиться.

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

Разъяснения метода

Для начал некоторые объяснения о ssh. Ssh позволяет людям безопасно подключаться к аккаунтам на различных машинах. Не только пароли никогда не передаются в открытом виде, но и как только вы соединитесь к машине, вам по существу гарантируется, что будущие соединения будут идти именно к этой машине. Это предупреждает многие так называемые man-in-the-middle (человек в середине) атаки.

Одной из возможностей, которую имеет ssh, это способность для пользователя дать публичный ключ идентификации для пользователя на другой машине и добавить его в файл авторизованных ключей на вашей машине. По умолчанию пользователь на другой машине (который имеет приватный ключ идентификации, связанный с данным вам публичным ключом идентификации), затем имеет привилегии входа в ваш аккаунт. При этом возможно добавить к авторизованному ключу текст, ограничивающий тип доступа персоны, подключающейся к вашему аккаунту, используя этот ключ.

Так что для защиты нижележащего сервера ключ, предоставленный вышележащим сервером зеркала, имеет текст, добавленный к нему для ограничения, дающего подключающейся к вашему аккаунту персоне право сделать лишь одну вещь - запустить программу на вашей машине, которая обновляет ваше зеркало. Даже если кто-то (злоумышленник) взломает ключ, самое большое, что он сможет сделать, это запустить на вашей машине программу зеркалирования. Вам даже не надо беспокоиться о возможности запустить множество копий программы, так как используется файл блокировки.

На вышележащем конце, rsync может быть сконфигурирован для ограничения по имени пользователя и паролю тех, кто может зеркалировать заданную область. Эти данные полностью разделены от /etc/passwd, так что проталкивающие серверы не должны беспокоиться о том, что кто-то получит доступ к их машинам. После того, как всё настроено, имя пользователя и пароль устанавливаются пустыми. Это также не должно быть проблемой, так как наихудшее, что может произойти, это что кто-то получит возможность зеркалировать Debian с этого сайта.

Настройка клиента проталкивающего зеркала

Лучше всего настроить его, используя аккаунт обычного пользователя, не root. Содержимое публичного ключа ssh, данное вам вышележащим зеркалом, должно быть помещено в ~<пользователь>/.ssh/authorized_keys.

Чтобы стать клиентом проталкивающего зеркала для архива FTP, вам необходимо установить зеркалирование, используя наш стандартный набор сценариев ftpsync. Скопируйте ftpsync.conf.sample в ftpsync.conf и измените его так, чтобы он соответствовал вашей системе и значениям, предоставленным вышележащим сервером.

Сайты клиенты Push-Primary

Зеркала клиенты Push-Primary, также отнесённые к зеркалам Tier-1, являются клиентами проталкивающих зеркал, которым разрешено зеркалировать с наших мастер-архивов.

Если ваш сайт очень хорошее подключение (имеет хорошую полосу пропускания и хорошее подключение к главным магистралям) и вы хотите позволить другим сайтам зеркалировать с вашего сайта, вы можете дать нам знать, и мы можем рассмотреть добавление вас к проталкивающему зеркалу. Однако не ожидайте, что это произойдёт очень быстро, потому что мы уже имеем значительное количество зеркал Tier-1.

Если ваш сайт становится Push-Primary для архива FTP, вам необходим один из этих файлов:

Если ваш сайт становится Push-Primary для страниц WWW, вам необходим публичный ключ SSH2, используемый www-master.debian.org.

Настройка сервера проталкивающего зеркала

Обусловленное большим количеством зеркал и размером архива Debian, неосуществимо всем зеркалам использовать сайт мастер-архива как вышележащий источник Debian (т.е. его сервера проталкивающего зеркала). Более рационально, если загрузка распределяется среди нескольких проталкивающих зеркал, распределённых по земному шару.

Серверы проталкивающих зеркал должны быть клиентами проталкивающих зеркал мастер-архива (или, возможно, другого проталкивающего сервера), и они должны содержать зеркало полного архива Debian.

Смотрите детали по установке проталкивающего сервера.