ОСНОВНОЕ

WORDPRESS

Операционные системы

Базы данных

Фреймворк Bootstrap

Опыт — учитель, дорого берущий за свои уроки, но никто не учит лучше него (Т. Карлейл).

Как настроить безопасный Docker registry в Linux с помощью сертификата TLS SSL

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Статья опубликована: 31 марта 2017

Как настроить безопасный реестр Docker в Linux с помощью TLS SSL сертификата
Если вы создаете пользовательские изображения в Docker registry для Вашего предприятия, у вас есть два варианта о том, где размещать свои изображения для Docker:

  1. Docker Hub – Это служба размещения реестра является бесплатной и предоставляется Docker Inc. Она также имеют несколько функций корпоративного уровня, где вы можете создать несколько учетных записей для организаций, настройки автоматической сборки и т.д.
  2. Самодостаточны Docker registry – Вы можете настроить реестр Docker в вашей организации, которая будет принимать ваши собственные изображения.

Это руководство объясняет, как установить безопасный самописный Docker реестр.

1. Настройка TLS-сертификата и ключа

Скопируйте существующий сертификат и ключевой файл в каталог ~/docker-certs.

 

В этом примере я использую файл сертификата andreyex.crt и файл andreyex.key, который был создан для моего веб-сервера Apache.

Для получения дополнительной информации о том, как создать свой собственный сертификат и файл ключа, обратитесь к следующему гиду: Как установить сертификат SSL и SPDY на Ubuntu с помощью «Let’s Encrypt».

2. Управление файлом промежуточного сертификата

В этом случае, я также имел сертификат Let’s Ensrypt из моего центра сертификации.

Для Docker registry, вы должны объединить оба сертификата и промежуточный сертификат в тот же файл сертификата.

т.е. добавить содержание вашего промежуточного сертификата в файл сертификат, как показано ниже.

3. Запустите Ваш защищенный Registry Docker

Теперь запустите безопасный Docker, как показано ниже.

 

В приведенной выше команде:

  • Docker registry начал работу на порту 5000
  • Название контейнера Docker «registry»
  • Локальный каталог, который содержит сертификат /root/docker-cert отображаются в виде /certs внутри контейнера реестра Docker.
  • Переменная REGISTRY_HTTP_TLS_CERTIFICATE указывает на файл сертификата с полным путем
  • Переменная REGISTRY_HTTP_TLS_KEY указывает на имя файла ключа с полным путем

После запуска реестра Docker, вы теперь увидите работающего контейнера реестра, как показано ниже:

4. Доступ к защищенному реестру Docker

После того, как безопасный Docker registry настроен, вы можете получить доступ к нему с других серверов внутри вашей сети (или от внешней сети), а также использовать все стандартные команды Docker на нем.

Например, вы можете нажать или вытянуть изображение для этого безопасного Docker registry, как показано ниже.

5. Настройка небезопасного реестра Docker

Примечание:
Если у вас возникли какие-либо проблемы с Secure Docker Registry, для отладки цели, запустите реестр без сертификата и посмотрите, как он работает, как показано ниже:

 

При попытке вывести изображение (или выполнить любую другую операцию) из вашего Docker registry, вы можете получить следующее сообщение об ошибке “oversized record received with length”.

Например, когда мы выполнили следующую команду на удаленном сервере (не на сервере, где находится установка docker registry), мы получаем следующее сообщение об ошибке:

 

В этом случае, 192.168.51.1 является сервером, на котором работает защищенный docker registry (мы без сертификатов безопасности).

В этом случае на удаленном сервере, вы должны разрешить небезопасные операции в реестре. Для этого вы должны передать параметр «-insecure-реестр» в переменную среды DOCKER_OPTS.

На удаленном сервере изменить этот файл и добавьте следующую строку:

 

Теперь перезапустите docker на удаленном сервере.

 

Теперь, docker будет тянуть (или любая другая команда docker) будет работать без каких-либо проблем, так как стоит небезопасный вариант настройки реестра.

Как настроить безопасный реестр Docker в Linux с помощью TLS SSL сертификата


Читайте также

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

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Простая логическая игра "Поймай кота". Задача игры окружить кота точками так, чтобы он не смог убежать с поля. Постигла неудача - начни игру снова!

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close