Linux Expect - automount LUKS oddílů (automatické vyplnění hesel)

Co nejvíce stručné řešení pro vývojáře a linux administrátory

Na superuser.cz nenaleznete žádný zbytečný obsah, vždy se jde přímo k věci, denně se zde objevují nové problémy a jejich řešení...

Začít používat

Linux Expect - automount LUKS oddílů …

09.09.2019 napsal Funus

Vyřešeno Linux Expect example - auto mount luks partitions
Dobrý den,

mám skript na odemknutí dvou oddílů zašifrovaných pomocí LUKS. Ten volám pří každém spuštění Ubuntu a obtěžuje mě pořád vyplňovat dlouhá hesla. Když už je jednou vyplňuji při bootu, tak se nebráním mít je v čitelné podobě na již zašifrovaném Ubuntu. Lze to zautomatizovat, aby se tam hesla doplnila sama? Četl jsem něco o Expect, přes který by to mohlo jít, ale nedaří se mi to rozchodit. Můj skript na mount LUKS oddílů vypadá překvapivě takto:

cat /home/user/Documents/scripts/start.sh

#!/bin/bash
sudo cryptsetup luksOpen /dev/md0 raid1
sudo mount /dev/mapper/raid1 /home/user/Desktop/raid1
sudo cryptsetup luksOpen /dev/sdc1 backups
sudo mount /dev/mapper/backups /mnt/backups
Nejlépe hodnocení uživatelé
Hanz

Počet UP: 4561

React: 211

Rusty

Počet UP: 2119

React: 94

OL3G

Počet UP: 1485

React: 59

SYSTEM

Počet UP: 374

React: 22

Strosmajer

Počet UP: 425

React: 21

Oxytocin

Počet UP: 253

React: 15

Hyacint

Počet UP: 7

React: 9

RE: Linux Expect - automount LUKS…

09.09.2019 odpověděl Hanz

Zkontrolováno

Dobrý den,

pokud neřešíte bezpečnost takového řešení, tak by to automatizovaně pomocí Expect šlo udělat jako níže (další možností je odemčení pomocí keyfile).

Ten Váš skript tedy očekává vyplnění hesla pro sudo, dále hesla pro cryptsetup luksOpen /dev/md0 a ještě hesla pro cryptsetup luksOpen /dev/sdc1. Except skript níže bude sám (automatizovaně) a ochotně vše vyplňovat vše za Vás...

vim /home/user/Documents/scripts/startbot.exp

#!/usr/bin/expect -f

set timeout -1

spawn /home/user/Documents/scripts/start.sh

expect "sudo"

send -- "password\r"

expect "Enter passphrase for /dev/md0: "

send -- "password\r"

expect "Enter passphrase for /dev/sdc1: "

send -- "password\r"

expect eof


PS: Instalace expect sudo apt install expect
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace