GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So verschlüsseln Sie Verzeichnisse mit eCryptfs unter Ubuntu 16.04

Dieses Tutorial zeigt, wie man eCryptfs verwendet, um ein Verzeichnis unter Ubuntu 16.04 (Xenial Xerus) zu verschlüsseln. eCryptfs ist ein POSIX-kompatibles gestapeltes kryptografisches Dateisystem der Enterprise-Klasse für Linux. Sie können es verwenden, um Partitionen und auch Verzeichnisse zu verschlüsseln, die keine eigene Partition verwenden, unabhängig vom zugrunde liegenden Dateisystem, Partitionstyp usw.

1 Vorbemerkung

In diesem Tutorial werde ich ein neues Verzeichnis /home/secure verschlüsseln. dies ist ein gewöhnliches Verzeichnis und verwendet keine eigene Partition.

2 Installation von eCryptfs

eCryptfs kann einfach wie folgt installiert werden:

apt-get -y install ecryptfs-utils

3 Verschlüsseln eines Verzeichnisses mit eCryptfs

Ich werde jetzt ein neues Verzeichnis /home/secure/ verschlüsseln. Erstellen Sie das Verzeichnis mit dem mkdir-Befehl:

mkdir /home/secure

Wenn Sie ein vorhandenes Verzeichnis verwenden, befinden sich möglicherweise bereits (unverschlüsselte) Dateien in diesem Verzeichnis. In diesem Fall müssen Sie eine Sicherungskopie davon erstellen, damit Sie sie später im verschlüsselten /home/secure/-Verzeichnis wiederherstellen können (andernfalls können diese Dateien nicht aufgerufen/gelesen werden, während das Verzeichnis verschlüsselt ist):

cp -pfr /home/secure/ /tmp/

Ich kann jetzt das Verzeichnis /home/secure/ verschlüsseln, indem ich es mit dem Dateisystemtyp ecryptfs:

einhänge
mount -t ecryptfs /home/secure /home/secure

Wenn Sie dies zum ersten Mal tun, müssen Sie einige Fragen beantworten:

[email protected]:~# mount -t ecryptfs /home/secure /home/secure
Passphrase: <-- Enter a secure password
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32
2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection [aes]: <-- Press ENTER
Select key bytes:
1) 16
2) 32
3) 24
Selection [16]: <-- 32
Enable plaintext passthrough (y/n) [n]: <-- Press ENTER
Enable filename encryption (y/n) [n]: <-- Press ENTER
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=bd28c38da9fc938b
Mounted eCryptfs
[email protected]:~#

Die hier gewählten Standardeinstellungen verschlüsseln den Inhalt der Datei, nicht aber den Dateinamen. Wenn Sie auch die Dateinamen sicher halten möchten, aktivieren Sie bitte die Dateinamen-Verschlüsselungsoption während der Einrichtung oben.

Sehen Sie sich die Ausgabe von

an
mount

und Sie sollten sehen, dass /home/secure/ jetzt verschlüsselt ist:

[email protected]:~# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=1002992k,nr_inodes=250748,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=204440k,mode=755)
/dev/mapper/server1--vg-root on / type ext4 (rw,relatime,errors=remount-ro,data=ordered,jqfmt=vfsv0,usrjquota=quota.user,grpjquota=quota.group)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd,nsroot=/)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids,nsroot=/)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer,nsroot=/)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio,nsroot=/)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb,nsroot=/)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset,nsroot=/)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct,nsroot=/)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio,nsroot=/)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory,nsroot=/)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event,nsroot=/)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices,nsroot=/)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=27,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
/dev/sda1 on /boot type ext2 (rw,relatime,block_validity,barrier,user_xattr,acl)
tmpfs on /run/lxcfs/controllers type tmpfs (rw,relatime,size=100k,mode=700)
devices on /run/lxcfs/controllers/devices type cgroup (rw,relatime,devices,nsroot=/)
perf_event on /run/lxcfs/controllers/perf_event type cgroup (rw,relatime,perf_event,nsroot=/)
memory on /run/lxcfs/controllers/memory type cgroup (rw,relatime,memory,nsroot=/)
net_cls,net_prio on /run/lxcfs/controllers/net_cls,net_prio type cgroup (rw,relatime,net_cls,net_prio,nsroot=/)
cpu,cpuacct on /run/lxcfs/controllers/cpu,cpuacct type cgroup (rw,relatime,cpu,cpuacct,nsroot=/)
cpuset on /run/lxcfs/controllers/cpuset type cgroup (rw,relatime,cpuset,nsroot=/)
hugetlb on /run/lxcfs/controllers/hugetlb type cgroup (rw,relatime,hugetlb,nsroot=/)
blkio on /run/lxcfs/controllers/blkio type cgroup (rw,relatime,blkio,nsroot=/)
freezer on /run/lxcfs/controllers/freezer type cgroup (rw,relatime,freezer,nsroot=/)
pids on /run/lxcfs/controllers/pids type cgroup (rw,relatime,pids,nsroot=/)
name=systemd on /run/lxcfs/controllers/name=systemd type cgroup (rw,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd,nsroot=/)
lxcfs on /var/lib/lxcfs type fuse.lxcfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=204440k,mode=700,uid=1000,gid=1000)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=204440k,mode=700)
/home/secure on /home/secure type ecryptfs (rw,relatime,ecryptfs_sig=bd28c38da9fc938b,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_unlink_sigs)
[email protected]:~#

Bei Verwendung eines bestehenden Verzeichnisses:Stellen wir unser Backup in das nun verschlüsselte Verzeichnis /home/secure/ wieder her und löschen das Backup anschließend:

cp -pfr /tmp/secure/ /home/
rm -fr /tmp/secure/

Kopieren wir zu Testzwecken eine andere Datei, z. /etc/hosts, nach /home/secure/ um zu prüfen, ob es wirklich verschlüsselt wird:

cp /etc/hosts /home/secure

Während /home/secure/ mit dem Dateisystemtyp ecryptfs gemountet wird, sollte es möglich sein, den Inhalt von /home/secure/hosts zu lesen:

cat /home/secure/hosts

Unmounten Sie nun /home/secure/...

umount /home/secure

... und versuchen Sie erneut, /home/secure/hosts zu lesen, und Sie sollten etwas kryptisches Zeug erhalten:

cat /home/secure/hosts

  • eCryptfs:https://launchpad.net/ecryptfs
  • Debian:http://www.debian.org/

Ubuntu
  1. So verschlüsseln Sie Verzeichnisse/Partitionen mit eCryptfs auf Debian Squeeze

  2. Sichern Sie Nginx mit Let’s Encrypt auf Ubuntu 18.04 – wie geht das?

  3. So installieren Sie Let’s Encrypt auf Ubuntu 20.04 mit Apache

  4. So sichern Sie Nginx mit Let’s Encrypt unter Ubuntu 20.04

  5. So sichern Sie Apache mit Lets Encrypt unter Ubuntu 18.04

So installieren Sie Nginx mit Let’s Encrypt TLS/SSL unter Ubuntu 20.04

So installieren Sie Let’s Encrypt SSL auf Ubuntu mit Apache

So installieren Sie Let’s Encrypt SSL mit Nginx unter Ubuntu 16.04 LTS

So sichern Sie Nginx mit Let’s Encrypt unter Ubuntu 20.04

So sichern Sie Apache mit Let’s Encrypt unter Ubuntu 20.04

So sichern Sie Ihre Website mit Let’s Encrypt auf Ubuntu 20.04