Вопрос: Создание базы данных из зашифрованного внешнего диска (veracrypt + postgreSQL)


Надеюсь, я правильно подозреваю, что это проблема Ubuntu, а не postgreSQL 10, которую я использую. У меня есть внешний SSD, который зашифрован и установлен на /media/veracrypt1/,

При попытке создать базу данных из дампа .sql на ней, используя psql mydb < /media/veracrypt1/mydbdump.sql я получил bash: /media/veracrypt1/mydbdump.sql: Permission denied , Я попытался запустить все с помощью sudo безрезультатно, я также убедился, что права собственности и разрешения на носители установлены на текущего пользователя.

Разрешения для СМИ выглядят так же после добавления umask=0022 к настройкам монтирования по умолчанию в графическом интерфейсе Veracrypt.

me@mypc:/media$ ls -al
total 140
drwxr-xr-x   4 me me   4096 Jul 12 21:22 .
drwxr-xr-x  24 root   root     4096 Jul  3 06:07 ..
drwxr-x---+  3 me me   4096 Jul 12 22:26 me
drwx------   1 me me 131072 Jan  1  1970 veracrypt1

EDIT: Я решил эту проблему сейчас, запустив psql в качестве пользователя, а не пользователя postgres. Однако, возможно, решение Томаса работает для других.


0
2017-07-12 15:22


Источник


Как вы бежите psql mydb? Под postgres пользователя или под своим собственным пользователем? - Thomas Ward♦
Под пользователем postgres. Это неправильно? - Mangobae
Это источник проблемы. Позвольте мне написать ответ ... - Thomas Ward♦


Ответы:


Когда вы используете Veracrypt для монтирования каталога, он не монтирует его как общедоступный для чтения. Он монтирует его только как пользователь, выполняющий Veracrypt:

$ ls -al /media/
total 24K
drwxrwxrwx   5 root   root   4.0K Jul 12 14:59 ./
drwxr-xr-x  29 root   root   4.0K Jul 11 23:08 ../
drwxr-x---+  2 root   root   4.0K Jan  2  2018 root/
drwxrwx---+  3 teward teward 4.0K Jul 12 14:29 teward/
drwx------   1 teward teward 4.0K May 18  2017 veracrypt4/

Как вы можете видеть, каталог veracrypt4 читается только моим пользователем, а не другими пользователями в системе. Это связано с тем, как работает Veracrypt, он не позволит системе при большом доступе к каталогу в настройках монтирования по умолчанию.

Если вы хотите изменить это, вам нужно изменить параметры монтирования по умолчанию для своей утилиты Veracrypt.

Когда в графическом интерфейсе Veracrypt перейдите в меню «Настройки» в строке меню, а затем «Параметры настройки по умолчанию». В поле с надписью «Параметры монтирования» вы захотите umask=0022, который будет устанавливать эффективные разрешения по-разному для папки монтирования. Затем нажмите «ОК», а затем снова смонтируйте привод / контейнер Veracrypt.

При использовании этих параметров монтирования одна и та же точка монтирования получает другую маску разрешений, чем значения по умолчанию - она ​​читается как для группы, так и для «другого пользователя» (обратите внимание, что линия разрешений drwx------ в drwxr-xr-x):

$ ls -al /media/
total 24K
drwxrwxrwx   5 root   root   4.0K Jul 12 15:01 ./
drwxr-xr-x  29 root   root   4.0K Jul 11 23:08 ../
drwxr-x---+  2 root   root   4.0K Jan  2  2018 root/
drwxrwx---+  3 teward teward 4.0K Jul 12 14:29 teward/
drwxr-xr-x   1 teward teward 4.0K May 18  2017 veracrypt4/

Из-за того, как он монтирует его как пользователя и не устанавливает его по умолчанию, чтобы другие могли его прочитать, вот почему вы получаете ошибку, которую получаете. Отрегулируйте umask крепления, затем повторите попытку с помощью postgres пользователю прочитать файл / диск. Затем он должен работать правильно.

Не забывайте, что это приведет к «зашифрованным» данным для всех других пользователей на диске. Затем вам нужно удалить эти параметры монтирования, если вы хотите запретить другим пользователям системы (системным пользователям или иным образом) доступ к зашифрованным данным.


1
2017-07-12 19:06



Спасибо за ваш ответ, Томас. Я сделал, как вы описали, но, к сожалению, разрешения не изменились. Я включил, как права доступа выглядят после добавления unmask = 0022 в параметры по умолчанию. - Mangobae
Вы должны размонтировать а также перемонтируйте, чтобы применить маску разрешений. Сделайте это, затем покажите результат ls -al /media/ как редактирование вашего вопроса или через пастебин (paste.ubuntu.comа затем дайте мне ссылку здесь) - Thomas Ward♦
Я размонтирован и снова подключился, но я уже сделал это раньше, как часть вашей инструкции. paste.ubuntu.com/p/gQYjxqkZVp это результат после последней попытки. - Mangobae
@Mangobae Скриншот изменения настроек для параметров монтирования и добавление ссылки imgur здесь - похоже, что это неправильно настроено ... - Thomas Ward♦
Я дважды проверил и снова прочитал ваши инструкции, но я не смог найти ошибку :( Скриншот Вот - Mangobae