亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

教你加密Root文件系統(tǒng)(圖)

互聯(lián)網(wǎng)   發(fā)布時間:2008-10-08 19:02:19   作者:佚名   我要評論
當(dāng)你不能依靠物理安全來保證你文件的安全時,是時候采取額外的步驟加密文件系統(tǒng)了,雖然本文涉及到的是基于PowerPC的系統(tǒng),但原則上來說也適用于其他架構(gòu)的系統(tǒng)。   在另一篇文章“實現(xiàn)加密的home目錄”中,我描寫了如何透明地加密home目錄,本文敘述另一個技術(shù)實現(xiàn)--
NetBSD/macppc的安裝指令對Open Firmware做了一個充分的介紹,我們對使用Open Firmware命令行接口配置計算機從一個閃存盤啟動非常感興趣,Open Firmware允許你查看連接到計算機的設(shè)備和設(shè)置固件程序變量的值。
  在一個新世界(G3或更新的)蘋果計算機初始化啟動過程中,可以通過暫停選擇性命令來訪問Open Firmware提示符。
  變量boot-device用于確定系統(tǒng)將從哪個設(shè)備啟動,printenv命令允許查看當(dāng)前的值:
  > printenv
  [...]
  boot-devicehd:,\\:txbihd:,\\:txbi
  這實際上意味著通過執(zhí)行在第一塊IDE磁盤上HFS類型txbi的文件來實現(xiàn)啟動的,第二:txbi前的字符作為解釋一個HFS文件類型的標(biāo)志,否則,txbi可能被理解為文件路徑,假如這樣,標(biāo)志hd實際上是更復(fù)雜的/pci@f4000000/ata-6@d/disk@0的一個別名,這個字符串通過子系統(tǒng)變量表現(xiàn)了路徑,你可以使用Open Firmware命令查看設(shè)備對應(yīng)的別名。
  網(wǎng)絡(luò)正確地設(shè)置boot-device,我們需要找出Open Firmware認(rèn)出的我們閃存盤的名字,通過ls命令顯示閃存盤路徑,并打印出設(shè)備樹:
> dev / ls
[...]
/pci@f2000000
[...]
/usb@1b,1
[...]
/disk@1
[...]
    現(xiàn)在我們知道了一點關(guān)于計算機固件程序的知識,我們必須花些時間研究固件初始化執(zhí)行程序:bootloader。通常,運行在蘋果PowerPC架構(gòu)上的Linux系統(tǒng)使用一個叫做yaboot的程序來啟動系統(tǒng),yaboot與LILO或GRUB類似,它包含兩個關(guān)鍵程序:ofboot.b和yaboot。ofboot.b提供第一階段啟動過程,實際上,ofboot.b的工作決定了啟動什么操作系統(tǒng),例如:如果一臺電腦上同時安裝了Mac OS X和Linux系統(tǒng),ofboot.b執(zhí)行Mac OS X或Linux的bootloader,如果用戶選擇載入Linux,ofboot.b執(zhí)行yaboot,第二階段啟動過程,然后yaboot載入Linux內(nèi)核和initrd。圖3提供了一個基于PowerPC架構(gòu)的Linux如何使用一個加密的root文件系統(tǒng)啟動的實例。
  

  圖3
  用Open firmware啟動一個基于PowerPC系統(tǒng)的過程
  我們的可移動啟動設(shè)備需要ofboot.b和yaboot程序,一個Linux內(nèi)核和一個包括加密密鑰的initrd文件。蘋果目前基于PowerPC的架構(gòu)預(yù)設(shè)它的啟動介質(zhì)格式化為HFS。
  1)使用parted程序在閃存盤上創(chuàng)建正確的可啟動的分區(qū)(我的是64MB大小,用設(shè)備節(jié)點/dev/sda訪問) 
# parted /dev/sda
(parted) mklabel mac
(parted) print
Disk geometry for /dev/sda: 0.000-62.500 megabytes
Disk label type: mac
Minor Start End Filesystem Name Flags
1 0.000 0.031 Apple
(parted) mkpart primary hfs 0.031 62.500
(parted) print
Disk geometry for /dev/sda: 0.000-62.500 megabytes
Disk label type: mac
Minor Start End Filesystem Name Flags
1 0.000 0.031 Apple
2 0.031 62.500 untitled
(parted) set 2 boot on
(parted) name 2 Apple_Boot
(parted) quit
  2)在啟動分區(qū)上創(chuàng)建HFS文件系統(tǒng)
  # hformat /dev/sda2
  3)通過修改/mnt/encroot/etc/yaboot.conf配置yaboot啟動恰當(dāng)?shù)脑O(shè)備,下面是一個最小配置例子:
  
boot=/dev/sda2
ofboot=/pci@f2000000/usb@1b,1/disk@1:2
partition=2
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
default=linux
image=/vmlinux
label=linux
root=/dev/hda4
initrd=/initrd.gz
read-only
  值/pci@f2000000/usb@1b,1/disk@1:2來自我們先前檢查的Open Firmware設(shè)備樹,/pci@f2000000/usb@1b,1/disk@1是PCI總線f2000000上的第一塊USB磁盤,最有興趣的是:2意味著分區(qū)2
  4)安裝啟動程序和內(nèi)核到/dev/sda2:
# ybin --config /mnt/encroot/etc/yaboot.conf -v
# mount /dev/sda2 /media/usbstick
# cp /boot/vmlinux /media/usbstick
  就此,initrd必須被安裝到閃存盤上,F(xiàn)edora提供了一個叫做mkinitrd的工具來創(chuàng)建initrd,然而,在寫本文的時候,mkinitrd還不支持加載一個加密的root文件系統(tǒng),補丁在https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=124789,一旦應(yīng)用了補丁,mkinitrd就可以讀取/etc/crypttab并創(chuàng)建一個恰當(dāng)?shù)膇nitrd了:
  1. mkinitrd --authtype=paranoid -f /media/usbdisk/initrd.gz
  2. umount /media/usbstick
  文件/mnt/encroot/etc/fstab應(yīng)該被更新反映出變化:
  /dev/mapper/root / ext3 defaults 1 1

相關(guān)文章

最新評論