
最近、友人の一人が私の家に来て、15 分以内に Live CD を使用して私のアカウントをハッキングし、目の前でパスワードをリセットしました。このようなことが起きて困惑しました。今後、Live CD を使用してこのような試みが行われないように、ご指導ください。
答え1
ティーボールのバットを持ちながらコンピュータの横に立ってください。近づく者を激しく殴ってください。
あるいは鍵をかけてください。
コンピュータが物理的にアクセスできる場合、安全ではありません。
答え2
これをすばやく簡単に行う方法は、BIOS で CD および USB スティックからの起動を無効にし、BIOS パスワードを設定することです。
これによればウィキページ:
パスワードを設定したり、メニュー項目をロックしたりしても (Grub 構成ファイル内)、ユーザーが grub コマンドラインで入力したコマンドを使用して手動で起動することを防ぐことはできません。
しかし、誰かがハードドライブを盗んで別のマシンにマウントしたり、バッテリーを取り外して BIOS をリセットしたり、攻撃者がマシンに物理的にアクセスして使用できるその他の方法のいずれかを実行したりすることを止めるものは何もありません。
より良い方法は、ドライブを暗号化することです。ホーム ディレクトリを暗号化するか、ディスク全体を暗号化することでこれを実行できます。
答え3
まず警告です…
grub2のパスワード保護手順は非常に複雑で、間違えるとシステムが起動できなくなる可能性があります。いつもまずハードドライブの完全なイメージバックアップを作成してください。私の推奨はクローンジラ- 別のバックアップツール、例えばパーツ画像も使用できます。
これを実践したい場合は、スナップショットをロールバックできる仮想マシン ゲストを使用します。
さぁ、始めよう
以下の手順は、起動中に Grub 設定が不正に編集されるのを防ぎます。つまり、e編集を押すと、起動オプションを変更できます。たとえば、強制的にシングル ユーザー モードで起動し、ハード ディスクにアクセスできるようになります。
この手順は、この質問の関連する回答で説明されているように、ライブ CD からの起動を防ぐために、ハードディスクの暗号化およびセキュア BIOS ブート オプションと組み合わせて使用する必要があります。
以下のほぼすべては、1 行ずつコピーして貼り付けることができます。
まず、編集する grub ファイルをバックアップします。ターミナル セッションを開きます。
sudo mkdir /etc/grub.d_backup
sudo cp /etc/grub.d/* /etc/grub.d_backup
grub のユーザー名を作成しましょう:
gksudo gedit /etc/grub.d/00_header &
一番下までスクロールし、新しい空の行を追加して、以下をコピーして貼り付けます。
cat << EOF
set superusers="myusername"
password myusername xxxx
password recovery 1234
EOF
この例では、2 つのユーザー名が作成されました。私のユーザー名そして回復
次に、ターミナルに戻ります(閉じないでくださいgedit
)。
NattyとOneiricユーザーのみ
暗号化されたパスワードを生成するには、次のように入力します。
grub-mkpasswd-pbkdf2
プロンプトが表示されたら2回使用するパスワードを入力してください
Your PBKDF2 is grub.pbkdf2.sha512.10000.D42BA2DB6CF3418C413373CD2D6B9A91AE4C0EB4E6AA20F89DFA027CA6E6CBF3542CB39E951607E9D651D82700AF47884929BDD193E36CB262CC96201B5789AA.1A9B0033928E3D3D0338583A5BF13AF7D5CC6EC5A41456F8FE8D8EBEB7A093CD0A0CE8688949E6007188ECB3FB0FF916F258602D130CF5C8525FB318FBBE2646
私たちが興味を持っているのは、始まりgrub.pbkdf2...
と終わりBBE2646
マウスを使用してこのセクションを強調表示し、右クリックしてコピーします。
アプリケーションに戻りgedit
、「xxxx」というテキストを強調表示し、コピーした内容に置き換えます(右クリックして貼り付けます)。
つまり、線は次のようになります
password myusername grub.pbkdf2.sha512.10000.D42BA2DB6CF3418C413373CD2D6B9A91AE4C0EB4E6AA20F89DFA027CA6E6CBF3542CB39E951607E9D651D82700AF47884929BDD193E36CB262CC96201B5789AA.1A9B0033928E3D3D0338583A5BF13AF7D5CC6EC5A41456F8FE8D8EBEB7A093CD0A0CE8688949E6007188ECB3FB0FF916F258602D130CF5C8525FB318FBBE2646
すべての 'buntu バージョン (Lucid 以上)
ファイルを保存して閉じます。
最後に、各grubメニューエントリ(メニューエントリ):
cd /etc/grub.d
sudo sed -i -e '/^menuentry /s/ {/ --users myusername {/' *
--users myusername
これにより、各行に新しいエントリが追加されます。
update-grubを実行してgrubを再生成します
sudo update-grub
grubエントリを編集しようとすると、ユーザー名の入力を求められます。私のユーザー名使用したパスワード。
再起動し、すべての grub エントリを編集するときにユーザー名とパスワードが適用されていることをテストします。
注意: 起動中に押すSHIFTと grub が表示されることを忘れないでください。
上記の問題はすべて、リカバリモードを使用することで簡単に回避できます。
幸いなことに、リカバリモードのメニューエントリを使用するためにユーザー名とパスワードを強制することもできます。この回答の最初の部分では、追加のユーザー名を作成します。回復パスワードは1234このユーザー名を使用するには、次のファイルを編集する必要があります。
gksudo gedit /etc/grub.d/10_linux
次の行を変更します:
printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
に:
if ${recovery} ; then
printf "menuentry '${title}' --users recovery ${CLASS} {\n" "${os}" "${version}"
else
printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
fi
リカバリを使用する場合はユーザー名を使用します回復パスワード1234
実行してsudo update-grub
grubファイルを再生成します
再起動し、リカバリ モードで起動するときにユーザー名とパスワードの入力を求められることをテストします。
答え4
つまり、必要なものは次のとおりです。
- 最も重要なのは、luks によるフルディスク暗号化です。これにより、ハードウェア ストレージの抽出と外部 CD-ROM/USB へのブート攻撃が保護されます。ホーム ディレクトリを暗号化するだけでは不十分です。
- BIOS パスワードを設定します。/boot はまだ暗号化されていないため、これは重要です。また、TPM にパスワードを保存する場合はさらに重要です。
- オプション: GRUB パスワードを設定します。