방금 키 파일을 사용하여 외장 하드 드라이브를 암호화하고 다음 위치에 마운트했습니다.내 라우터. 문제는 재부팅할 때마다 매핑을 수동으로 다시 생성하고 다시 설치해야 한다는 것입니다.
OpenWRT의 문서에는 할 말이 많은 것 같습니다.일반 하드 디스크 자동 마운트, 그러나 일반 암호화된 하드 드라이브를 자동으로 마운트하는 방법에 대해서는 많이 알지 못합니다. Google에서는 /etc/crypttab
내 OpenWRT 시스템에 없는 것 같은 이 기능을 사용할 것을 제안합니다 .
일반 텍스트로 암호화된 외부 장치를 자동으로 설치하는 방법은 무엇입니까?
답변1
이전 답변이 부족해서 삭제했습니다.
경고: openwrt의 virtualbox 이미지(자세 조정(12.9, r36088))에서 이 솔루션을 시도했지만 라우터에서는 약간 다를 수 있습니다.
키 파일은 /root/keyfile이고 사용된 비밀번호는 aes-xts-plain이라고 가정합니다. 설정에 따라 이 값을 변경해야 합니다.
원하시면 openwrt에서 luks 확장을 활성화하는 방법을 알려드릴 수 있습니다.
시스템이 이미 cryptsetup 및 모든 다양한 암호를 지원한다고 가정하면 openwrt의 cryptosetup 구현이 /etc/crypttab을 지원하지 않는 것 같기 때문에 핫플러그 수준에서 이를 수행해야 합니다(아마도 부팅 이미지를 다시 컴파일해야 함)
핫 플러그 지원 설치
root@OpenWrt:~# opkg install block-mount
내 시스템에서 다음과 같은 /etc/hotplug.d/usb/10-usb를 엽니다.
#!/bin/sh
# Copyright (C) 2009 OpenWrt.org
case "$ACTION" in
add)
# update LEDs
;;
remove)
# update LEDs
;;
esac
파일을 편집했습니다.
#!/bin/sh
# Copyright (C) 2009 OpenWrt.org
case "$ACTION" in
add)
# update LEDs
exec logger "PRD:" ${PRODUCT};
;;
remove)
# update LEDs
;;
esac
디스크를 삽입하기 전에 라우터에 연결된 터미널에서 로그를 추적하십시오.
root@OpenWrt:~# logread -f|grep PRD
USB 디스크를 연결하면 다음과 유사한 줄이 표시됩니다.
Oct 29 10:43:48 OpenWrt user.notice root: PRD: 13fe/3600/100
PRD 뒤의 문자열에 유의하세요. 이는 해독할 디스크를 식별하는 데 사용됩니다.
이제 핫플러그 메커니즘은 먼저 /etc/hotplug.d/usb에 있는 스크립트를 호출한 다음 /etc/hotplug.d/block에 있는 40-mount 스크립트를 호출합니다. 장치 및 마운트 지점 데이터는 환경 변수를 통해 전달되지만 환경 변수를 사용하여 암호화된 파티션을 마운트하려는 40-mount 스크립트와 통신하는 방법을 이해할 수 없습니다. 그래서 덜 우아하지만 여전히 기능적인 것을 선택했습니다. /etc/hotplug.d/usb/10-usb 파일을 수정했습니다.
#!/bin/sh
# Copyright (C) 2009 OpenWrt.org
PRODID="13fe/3600/100"
case "$ACTION" in
add)
# update LEDs
if [ "${PRODUCT}" = "${PRODID}" ];
then
touch /tmp/crypt
fi
;;
remove)
# update LEDs
if [ "${PRODUCT}" = "${PRODID}" ];
then
rm /tmp/crypt
fi
;;
esac
암호화된 디스크를 삽입하면 /tmp/cryp 파일이 생성되고, 디스크를 꺼내면 해당 파일이 삭제됩니다. 그래서 /etc/hotplug.d/block/40-mount 파일을 편집했습니다:
case "$ACTION" in
add)
### AUTO DECRYPT
if [ -e /tmp/crypt ];
then
/usr/sbin/cryptsetup -c aes-xts-plain create -d /root/keyfile cryptousb /dev/$device;
device="mapper/cryptousb"
mountpoint="/mnt/cryptousb"
sleep 10
fi
#### END AUTO DECRYPT
그리고:
remove)
### AUTO DECRYPT
if [ -e /tmp/crypt ];
then
/usr/sbin/cryptsetup remove cryptousb;
device="mapper/cryptousb"
mountpoint="/mnt/cryptousb"
sleep 10
rm /tmp/crypt
fi
#### END AUTO DECRYPT
디스크를 삽입하고 PRODID가 인식되면 마운트하기 전에 볼륨을 열고 매핑한 다음 장치 이름과 마운트 지점을 변경하세요. 비밀번호 설정 프로세스가 완료될 때까지 기다리려면 절전 모드가 필요합니다. 볼륨을 마운트 해제하면 /dev/mapper의 매핑이 삭제됩니다.
이것이 당신에게 유용하길 바랍니다