Владислав
Какое-то неприличное название у ролика. :D
Владислав
Погружением бы хоть назвали, ибо кит.
paulwinex
ВОПРОС НА ЗАСЫПКУ Задача - запретить юзеру на рутовой машине доступ к файлам внутри контейнера, чтобы совсем не видел Варианты решения 1. удалить юзера root чтобы вообще нельзя было в него зайти, или хотябы пароль поставить. Других юзеров тож запретить, только для запуска процессов внутри контейнера. 2. запретить bash и всё то что может быть использовано через exec для работы с файлами (wget, cp, ls, mv...) 3. както вообше запретить команду exec и другие которые позволяют зайти в контейнер. Это всё я придумал из глубокой теории тыканья пальцем в небо и небольшого опыта работы с докером. Можете подсказать что-то дельное?
paulwinex
удалить из группы docker и запретить вообще работу с докером не вариант?
нет, юзер на локальной машине админ и может добавить обратно в юлбой момент. надо настроить защиту контейнера на чужом компе
paulwinex
в контейнере обрабатываются файлы которые под NDA, надо потихому обработать чтобы не смогли скопипастить
Александр
А почему админ на локальной машине не может в своих файлах копаться?
Anatoliy
а что мешает посмотреть файлы не заходя в контейнер??
paulwinex
админ даёт железо в аренду для обработки файлов, но сами файлы ему трогать низя
paulwinex
а что мешает посмотреть файлы не заходя в контейнер??
ну например они пишутся прям в контейнер а не на волумы. так чтоли низя?
Anatoliy
ну например они пишутся прям в контейнер а не на волумы. так чтоли низя?
ну и что чт опрям в контейнер? PID есть, в памяти они не хранятся, а то что путь будет чуть больше - ну так и что?
Александр
Шифруйте файлы
paulwinex
ну и что чт опрям в контейнер? PID есть, в памяти они не хранятся, а то что путь будет чуть больше - ну так и что?
то есть то что пишется в контейнер всё равно гдето лежит просто на диске?
Anatoliy
конечно
paulwinex
Шифруйте файлы
в процессе просчета они не шифруются
Anatoliy
в процесе просчета - они в памяти
Anatoliy
уже расшифрованные
Anatoliy
а вот когда на диске - тогда да, ток шифровать
paulwinex
в процесе просчета - они в памяти
там запись по ходу просчета, потому что файлы могут весть гигабайты
Anatoliy
ну тогда надейтесь на порядочность того кто вам железо дает или ищите свое)
paulwinex
конечно
а где они лежат? как найти?
Александр
При большом желании и из памяти можно вытащить, и даже с кеша проца, так что если локально обрабатываются, и файлы под NDA, то это не тот какой-то путь
Александр
У вас не получится рутовому пользователю ограничить доступ. Он может заходить в контейнер под любым пользователем. В частности, под пользователем, под которым обрабатываются файлы
paulwinex
а если убить баш
Александр
под sh можно зайти, это не ssh
paulwinex
ну а если и её
Александр
Тогда ваша программулина не заработает)
paulwinex
почему
Александр
по любому
paulwinex
там главное чтобы питон крутился
Александр
Попробуйте
paulwinex
sh нужен системе?
Александр
вообще, нужен, но хз, это одна из штук типа раз в жизни попробовать набрать rm -rf /
Александр
Я бы всё-таки доработал приложение, чтобы оно подписывало файлы приватным ключом, который генерится динамически
Александр
Тем более, что там nda
Dmitry
sudo забыл
paulwinex
ключ не ключ, файл можно открыть в софте и пересохранить без всяких подписей
Александр
в файл добавлять подпись, чтобы зашифровать
Александр
без приватного ключа не расшифруешь
paulwinex
в процессе обработки он пишется как есть пока не запишется
Александр
приложение знает ключ - может расшифровать, пользователь не знает - не может
paulwinex
шифрование можно делать только отдельным этапом
paulwinex
ну я не могу внедриться в движок просчета, он считает как есть, ни подпись ни шифрование я не сделаю
Александр
возможно.
paulwinex
пока он не досчитает
Александр
Действительно, путаю. https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BA%D1%80%D1%8B%D1%82%D1%8B%D0%B9_%D0%BA%D0%BB%D1%8E%D1%87
paulwinex
ну тогда надо такой сокет который был бы похож на файл, потому что движок умеет писать только в файл и надо чтобы он дмал что так и есть
paulwinex
эт я понимаю
paulwinex
я вот сейчас зашел в контейнер и сделал файл на 100 мб. где его найти на рутовой машине?
paulwinex
посмотрел тут /var/lib/docker/containers чот ничего похожего нету
paulwinex
он в оперативе его держит чтоли
Anatoliy
поиск по всей машине сделайте с именем этого файла
Anatoliy
я честно не помню где он лежит, но то что добавляется в контейнер при сборке найти можно точно
paulwinex
ок пасиб
paulwinex
/var/lib/docker/aufs/diff/fc6a6fc7baf5fe39781fc007f6efccaf46dfd9c2375db1e5482aff4b4239f3ad/root вот по такому адресу лежит
Anatoliy
Вот, и там как видите вся FS лежит
paulwinex
да
Александр
docker inspect вроде говорит что где лежит
Ivan
у кого можно спросить по докеру в лс?
Artem
Docker в лс
Artem
Yuri
привет. Кто-нибудь использовал RabbitMQ с федерацией?
Paradigm
Парни кто уже сталкивался с подобным, Kube-lego nginx-controller time="2017-12-07T02:57:47Z" level=info msg="ignoring as has no annotation 'kubernetes.io/tls-acme'" context=ingress name=front-end namespace=sock-shop time="2017-12-07T02:57:47Z" level=info msg="process certificate requests for ingresses" context=kubelego time="2017-12-07T02:57:47Z" level=info msg="Attempting to create new secret" context=secret name=sock-shop-tls namespace=sock-shop time="2017-12-07T02:57:47Z" level=info msg="no cert associated with ingress" context="ingress_tls" name=front-end-tls namespace=sock-shop time="2017-12-07T02:57:47Z" level=info msg="requesting certificate for socks.domain" context="ingress_tls" name=front-end-tls namespace=sock-shop time="2017-12-07T02:59:24Z" level=warning msg="authorization failed after 1m0s: reachability test failed: wrong status code '503'" context=acme domain=socks.domain.com
Paradigm
При попытки стянуть сертификат выдаёт ошибку 503
pavel
docker-compose -f production.yml run —rm postgres pg_dump -h postgres -U user -d table -W password > database.sql , как правельно написать чтобы сдампилось?
pavel
postgres: restart: always image: postgres:latest ports: - '5432:5432' environment: POSTGRES_DB: table POSTGRES_USER: user POSTGRES_PASSWORD: password
pavel
А тебе куда результат нужно сохранить?
рядом с файлом докер-компос
Александр
А так не дампится?
pavel
А так не дампится?
фаил создается, а внутри pg_dump: too many command-line arguments (first is "password") Try "pg_dump —help" for more information.
Александр
Попробуй пароль через .pgpass задать
Александр
Файлик с правами 600. В контейнере в домашней папке надо создать
Александр
Не
Александр
Файл с описанием доступа к базе
Александр
Чтобы в команде не указывать
pavel
есть пример?
Александр
Загугли pgpass