Владислав
Какое-то неприличное название у ролика. :D
Владислав
Погружением бы хоть назвали, ибо кит.
paulwinex
ВОПРОС НА ЗАСЫПКУ
Задача - запретить юзеру на рутовой машине доступ к файлам внутри контейнера, чтобы совсем не видел
Варианты решения
1. удалить юзера root чтобы вообще нельзя было в него зайти, или хотябы пароль поставить. Других юзеров тож запретить, только для запуска процессов внутри контейнера.
2. запретить bash и всё то что может быть использовано через exec для работы с файлами (wget, cp, ls, mv...)
3. както вообше запретить команду exec и другие которые позволяют зайти в контейнер.
Это всё я придумал из глубокой теории тыканья пальцем в небо и небольшого опыта работы с докером. Можете подсказать что-то дельное?
Александр
paulwinex
в контейнере обрабатываются файлы которые под NDA, надо потихому обработать чтобы не смогли скопипастить
Александр
А почему админ на локальной машине не может в своих файлах копаться?
paulwinex
Anatoliy
а что мешает посмотреть файлы не заходя в контейнер??
paulwinex
админ даёт железо в аренду для обработки файлов, но сами файлы ему трогать низя
Александр
Шифруйте файлы
paulwinex
Anatoliy
конечно
Anatoliy
в процесе просчета - они в памяти
Anatoliy
уже расшифрованные
Anatoliy
а вот когда на диске - тогда да, ток шифровать
Anatoliy
ну тогда надейтесь на порядочность того кто вам железо дает или ищите свое)
paulwinex
конечно
а где они лежат? как найти?
Александр
При большом желании и из памяти можно вытащить, и даже с кеша проца, так что если локально обрабатываются, и файлы под NDA, то это не тот какой-то путь
paulwinex
Александр
У вас не получится рутовому пользователю ограничить доступ. Он может заходить в контейнер под любым пользователем. В частности, под пользователем, под которым обрабатываются файлы
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
При попытки стянуть сертификат выдаёт ошибку 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
Александр
Не
Александр
Файл с описанием доступа к базе
Александр
Чтобы в команде не указывать
pavel
есть пример?
Александр
Загугли pgpass