accesso alla partizione luks montata dall'utente non root

5

Recentemente ho cercato il sostituto per TrueCrypt e ho giocato un po 'con Cryptsetup. I passaggi che ho fatto:

  1. mkfs -t ext4 /dev/sdb1
  2. sudo cryptsetup open --type luks /dev/sdb1 enc_vol
  3. sudo mount /dev/mapper/enc_vol /mnt

Dopo che I (utente non root) può chdir a /mnt e può vedere i file ma non può scrivere nulla lì. Solo root può scrivere, ma per me è molto scomodo. Come ls -l /dev/mapper/enc_vol mostra che è un link simbolico di proprietà di root e che punta a /dev/dm-1 .

Comandi come chown "username":"username" e chmod 777 non possono cambiare "root" ness del link simbolico precedente a /dev/dm-1 .

La mia domanda: come posso montare le partizioni LUKS crittografate da cryptsetup per essere in grado di scrivere file al suo interno come utente non root?

    
posta NIkolay Smirnov 21.02.2016 - 23:39
fonte

3 risposte

4

TLDR: installa il filesystem nella directory home dell'utente.

Questo non è specifico per luks poiché si applica al montaggio in generale. Non ho provato con ext4 ma non vedo un motivo per cui sarà diverso da ext3 (che ho testato).

sudo cryptsetup luksOpen /dev/sdb1 enc_vol
mkdir ~/enc_vol_mnt
sudo mount /dev/mapper/enc_vol ~/enc_vol_mnt

Ora l'utente normale dovrebbe essere in grado di leggere, scrivere ed eliminare file e directory in ~ / enc_vol_mnt.

Ci sono altre soluzioni a questo problema su superutente .

Come nota a margine, puoi anche utilizzare le opzioni di montaggio -o users,rw,umask=0000 quando il file system montato è FAT o NTFS. La pagina man mount ha più informazioni su questo.

    
risposta data 19.10.2016 - 19:01
fonte
2

Per i futuri lettori:

La radice del file system appena formattato ha solitamente i diritti di rwxr-xr-x e in effetti è scrivibile solo da root.

Sulla prima montatura, a seconda dell'utilizzo futuro di questa partizione - chown la radice dell'unità montata ( non il dispositivo in / dev !) per l'utente che intende usarlo esclusivamente o chmod per rwxrwxrwxt per renderlo accessibile a livello di sistema, in una questione simile a / tmp . O utilizzare qualsiasi combinazione di diritti utente / proprietario (ad esempio scrivibile per i membri del gruppo specifico, ecc.)

L'impostazione è persistente attraverso riavvii / rimonta.

TL; DR:

mount /dev/DEVICE /SOMEWHERE
chown USER:GROUP /SOMEWHERE

o

mount /dev/DEVICE /SOMEWHERE
chmod a+rwxt /SOMEWHERE
    
risposta data 04.11.2016 - 07:29
fonte
1

Ecco alcune cose da provare sul tuo particolare sistema.

Puoi consultare udisksctl per questo articolo della mailing list

Assuming you have udisks2, this shouldn't be a problem:

$ udisksctl Usage: udisksctl [OPTION...] COMMAND

Commands:

help Shows this information

info Shows information about an object

dump Shows information about all objects

status Shows high-level status

monitor Monitor changes to objects

mount Mount a filesystem

unmount Unmount a filesystem

unlock Unlock an encrypted device

lock Lock an encrypted device

loop-setup Set-up a loop device

loop-delete Delete a loop device

power-off Safely power off a drive

smart-simulate Set SMART data for a drive

Use "udisksctl COMMAND --help" to get help on each command.

The 'unlock' command seems useful to you.

In alternativa, come root, configura correttamente fstab, magari iniziando leggendo questa risposta di Superuser a Linux - Monta dispositivo con diritti utente specifici

To mount a device with certain rights, you can use the -o Option directive while mounting the device. To mount the device you described, run:

mount -t deviceFileFormat -o umask=filePermissons,gid=ownerGroupID,uid=ownerID /device /mountpoint

    
risposta data 22.02.2016 - 05:01
fonte

Leggi altre domande sui tag