我刚刚完成了安装过程并指定“执行其他操作”,然后选择要用作加密容器的分区,最后使用该容器格式化文件系统。我没有看到使用我选择的密码的选项,并注意到默认密码似乎是sha256
。
有什么方法可以告诉它我想要使用什么吗?
编辑:这是使用 16.10 桌面 iso。
编辑2:鉴于下面的 AlexP 的示例表,我想在按照上面所述完成 Ubuntu 安装程序后列出实际的默认值。
编辑3:补充一下我认为Arch 的建议并且 Ubuntu 默认设置可能根本没有区别。
唯一突出的是有效载荷偏移,据传闻,我感觉 ubuntu 驱动器打开速度更快。我思考这可能是因为它的选项--iter-time
。默认值为2000
(毫秒),我会5000
手动指定。如果我理解正确的话,这就是它在到达最终哈希之前搅动的时间。每次解锁时,您都必须再次执行此操作才能获得正确的密码哈希(如果错误则正确)。除此之外,一切都相同。
### ubuntu default
$ sudo cryptsetup luksDump
Version: 1
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha256
Payload offset: 4096
MK bits: 512
### arch recommendation
$ sudo cryptsetup luksDump
Version: 1
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha256
Payload offset: 65535
MK bits: 512
### ubuntu default
$ sudo cryptsetup status /dev/mapper/ubuntu
type: LUKS1
cipher: aes-xts-plain64
keysize: 512 bits
device: /dev/sdb2
offset: 4096 sectors
size: 487393280 sectors
mode: read/write
### arch recommendation
$ sudo cryptsetup status /dev/mapper/arch
type: LUKS1
cipher: aes-xts-plain64
keysize: 512 bits
device: /dev/sda2
offset: 65535 sectors
size: 233262018 sectors
答案1
默认密码采用aes-xts-plain64
256 位密钥和 SHA-1 校验和。这是一个很好的默认设置。非常好的默认设置。除非您是合格的密码学家,否则请保留原样。知识渊博的人在花费了大量时间和精力后选择了这个默认设置。
要找出加密容器使用的密码,可以使用命令sudo cryptsetup status
和sudo cryptsetup luksDump
。例如:
$ sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 284M 0 part /boot
└─sda2 8:2 0 39.7G 0 part
└─Machinia 252:0 0 39.7G 0 crypt
├─Machinia-Swap 252:1 0 1.2G 0 lvm [SWAP]
├─Machinia-Home 252:2 0 9.5G 0 lvm /home
├─Machinia-System 252:3 0 20G 0 lvm /
└─Machinia-Srv 252:4 0 6G 0 lvm /srv
sr0 11:0 1 1024M 0 rom
$ sudo cryptsetup status Machinia
/dev/mapper/Machinia is active and is in use.
type: LUKS1
cipher: aes-xts-plain64
keysize: 256 bits
device: /dev/sda2
offset: 4096 sectors
size: 83298304 sectors
mode: read/write
flags: discards
$ sudo cryptsetup luksDump /dev/sda2
LUKS header information for /dev/sda2
Version: 1
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha1
Payload offset: 4096
...
话虽这么说,你绝对想要指定另一个密码,你可以。ArchLinux 的优秀人员在加密整个系统. 操作如下:
从安装介质启动。
选择“试用 Ubuntu”。
打开一个终端。
使用
fdisk
或parted
图形界面手动Gparted
创建/boot
分区。(假设您使用的是 MBR 分区磁盘。如果您使用的是 GPT 格式的磁盘,则必须还创建 EFI 系统分区。手动创建要加密的分区。假设这是
/dev/sda2
。将其格式化为 LUKS 容器。这是您指定密码的地方:
sudo cryptsetup luksFormat /dev/sda2 --cipher=<cipherspec> --keysize=<size>
例如,
sudo crypsetup luksFormat /dev/sda2 --cipher=aes-cbc-essiv:sha256 --keysize=512
让我再说一遍,除非你具备专业的密码学知识,否则你不应该这样做。但让我们继续。
打开加密分区并为其指定容器名称:
sudo cryptsetup luksOpen /dev/sda2 <name>
对于“宠物”计算机系统,一个好的选择是使用首字母大写的主机名。例如,如果您计划使用主机名
machinia
,sudo cryptsetup luksOpen /dev/sda2 Machinia
格式化
/dev/mapper/Machinia
(或在步骤 7 中选择的任何名称)为 LVM 物理卷:sudo pvcreate /dev/mapper/Machinia # Use the name chosen in step 7
在物理卷上创建LVM卷组:
sudo vgcreate Machinia /dev/mapper/Machinia # Use the name chosen in step 7
/
在 LVM 卷组中为、/home
、/srv
、 、 swap 等创建逻辑卷/var
。您必须为 至少创建一个逻辑卷/
。 为 创建一个单独的卷/home
是可选的,但建议这样做。 为/var
、 swap 等创建单独的卷是可选的,取决于您的计划。sudo lvcreate -L 20g -n System Machinia # / sudo lvcreate -L 3g -n Swap Machinia # swap sudo lvcreate -L 10g -n Home Machinia # /home
您可能希望保留一些未分配的空间,以便能够使用 LVM 快照。您可以自行选择。
现在运行安装程序并安装 Ubuntu,选择“其他”,并选择
/dev/sda1
(或其他),对于/boot
,对于/dev/mapper/Machinia-System
(当然使用您选择的名称),对于/
,/dev/mapper/Machinia-Swap
对于交换空间,/dev/mapper/Machinia-Home
对于/home
。将步骤 4 中创建的分区用于
/boot
,将步骤 10 中创建的逻辑卷用于/
、交换/home
等。如果您使用的是 MBR 分区磁盘,请仔细检查并确保 GRUB 安装在物理磁盘上
/dev/sda
(或适合您的系统的任何磁盘上)。让安装程序继续运行至最后。完成后,选择“继续测试”并返回到您的终端。
将您未来的根卷挂载在 上
/target
,挂载特殊目录,然后chroot
进入/target
:sudo mount /dev/mapper/Machinia-System /target for d in dev proc run sys; do sudo mount --bind /$d /target/$d; done chroot /target
您现在是未来根卷的根用户。转到
/etc
并编辑/etc/crypttab
:cd /etc echo Machinia UUID=$(cryptsetup luksUUID /dev/sda2) none luks,discard >crypttab
/etc/crypttab
看起来应该是这样的:# cat /etc/crypttab Machinia UUID=016193a0-8a79-416c-95f3-c94bd3745c5c none luks,discard
(使用您选择的名称代替 Machinia,并使用 返回的 UUID
cryptsetup luksUUID
。)更新初始根文件系统和 GRUB:
update-initramfs update-grub
退出
chroot
:exit
卸载在步骤 13 中安装的内容:
for d in dev proc run sys; do sudo umount /target/$d; done umount /target
重新启动并希望获得最好的结果。