Невозможно включить TLS для minio на локальном docker - PullRequest
0 голосов
/ 10 января 2020

В данный момент пытаюсь включить TLS на docker изображении локально. Я использую шлюз S3 для включения доступа S3 через. minio.

Работа с windows коробка. Выполнил следующие команды для создания public.crtt в C:\Users\<user>/mnt/config/certs

    openssl genrsa -out root.key 2048
    openssl rsa -in root.key -out private.key
    openssl req -new -x509 -days 3650 -key private.key -out public.crt -subj '//C=Rohan\ST=MiddleEarth\L=Minas Tirith\O=ABC\CN=172.17.0.2'

Ниже приведено содержимое C:\Users\<user>\mnt\config\certs

    -rw-r--r-- 1 user 1049089 1675 Jan  9 12:12 root.key
    -rw-r--r-- 1 user 1049089 1675 Jan  9 12:14 private.key
    -rw-r--r-- 1 user 1049089 1289 Jan  9 12:14 public.crt
    drwxr-xr-x 1 user 1049089    0 Jan  9 16:24 CAs/

После этого я запустил -

    docker run -p 9000:9000 --name minio-s3 -e "MINIO_ACCESS_KEY=<ACCESS_KEY>" -e "MINIO_SECRET_KEY=<SECRET_KEY>" -v C:\Users\<user>\mnt\config:/root/.minio minio/minio gateway s3

Подтвердил, что docker изображение имеет private.key и public.crt, локализованные в ${HOME}/.minio/certs

Я заметил, что появляется docker изображение, также папка CAs пуста.

Я не могу получить доступ к https://172.17.0.2:9000 из браузера или из кода, использующего minio java sdk.

    $ curl https://172.17.0.2:9000
    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:--  0:00:20 --:--:--     0curl: (7) Failed to connect to 172.17.0.2 port 9000: Timed out

Также я получаю эту ошибку на консоли -

    2020/01/09 20:16:33 http: TLS handshake error from 172.17.0.1:44402: remote error: tls: unknown certificate
    2020/01/09 20:16:33 http: TLS handshake error from 172.17.0.1:44404: remote error: tls: unknown certificate
    2020/01/09 20:16:53 http: TLS handshake error from 172.17.0.1:44406: remote error: tls: unknown certificate
    2020/01/09 20:16:53 http: TLS handshake error from 172.17.0.1:44408: remote error: tls: unknown certificate

Когда я пытаюсь получить доступ к https://127.0.0.0:9000 из браузера, он работает, но это не https, а просто http.

Вызов https://127.0.0.1:9000 из java Код возвращает исключение -

    javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Попытка сгенерировать сертификат для локального образа для начала, после чего я расширю его до сертификата компании, как только это сработает.

Любая помощь будет оценена. Спасибо.

...