Luks, SSH 잠금 해제, 이상한 동작, 잘못된 Authorized_keys 파일

Luks, SSH 잠금 해제, 이상한 동작, 잘못된 Authorized_keys 파일

왜인지는 모르겠지만 따라잡을 수 없어이 지침내 데비안 마구간에서. dropbear와 busybox를 설치한 후 실행을 시도했는데 initramfs -u이상한 경고가 표시되었습니다.

# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.0-4-amd64
dropbear: WARNING: Invalid authorized_keys file, remote unlocking of cryptroot via SSH won't work!

그런 다음 파일을 보려고했지만 /etc/initramfs-tools/root/.ssh/id_rsainitramfs 폴더에 폴더가 없습니다. root나도 달려보려고 했는데

dropbearkey -t dss -f /etc/initramfs-tools/etc/dropbear/dropbear_dss_host_key

하지만 폴더가 없으므로 /etc/initramfs-tools/etc/이 명령도 실패합니다. 물론 이러한 폴더를 만들 수 있지만 이 이상한 동작은 더 깊은 버그에서 비롯된 것이 아닙니다. 도움이 된다면 initramfs 폴더의 내용은 다음과 같습니다.

me@server:/etc/initramfs-tools# ls
conf.d  hooks  initramfs.conf  modules  scripts  update-initramfs.conf

감사합니다!

답변1

#debian에 대한 도움 덕분에 마침내 해결책을 찾았습니다. 최근 데비안에서는 프로세스가 상당히 다른 것 같습니다. 이것은 새로운 것입니다:

먼저 확인 dropbear하고 dropbear-initramfs설치하세요.

sudo apt install busybox dropbear*

~/.ssh/id_rsa.pub그런 다음 파일에 공개 키(대부분의 경우)를 추가합니다(편집: 최근 dropbear에 /etc/dropbear-initramfs/authorized_keys있는 것으로 보입니다. 파일은 이제 아래 Peter Schilling의 답변을 기반으로 합니다)./etc/dropbear/initramfs/authorized_keys

initramfs그런 다음 변경 사항을 고려하여 업데이트합니다 . : update-initramfs -u

그게 다야!

dropbear와 사이의 키 충돌을 피하려면 (동일한 IP를 공유하지만 다른 키를 사용함) openssh클라이언트에 ~/.ssh/config다음과 같은 항목을 추가해야 할 수도 있습니다.

Host myserver_luks_unlock
     User root
     Hostname <myserver>
     # The next line is useful to avoid ssh conflict with IP
     HostKeyAlias <myserver>_luks_unlock
     Port 22
     PreferredAuthentications publickey
     IdentityFile ~/.ssh/id_rsa

그런 다음 다음 명령을 사용하여 간단히 연결하면 됩니다.

ssh myserver_luks_unlock

메시지가 나타나면 busybox 텍스트에 제안된 대로 입력하세요.

cryptroot-unlock

즐기다!

답변2

몇 가지 추가 세부정보입니다.

먼저, SSH 클라이언트에 아직 개인/공개 키 쌍이 없는 경우 다음을 ssh-keygen사용하여 생성해야 합니다.여기.

둘째, 다음이 필요하다는 점을 지적하고 싶습니다.

당신의 추가고객의/etc/dropbear-initramfs/authorized_keys 파일의 공개 키(대부분 ~/.ssh/id_rsa.pub)서버에서

그게 다야. 클라이언트 측에서:

c_user@client:~$ scp .ssh/id_rsa.pub s_user@server:id_rsa.pub

서버에서:

s_user@server:~$ sudo sh -c "cat id_rsa.pub >> /etc/dropbear-initramfs/authorized_keys"
s_user@server:~$ rm id_rsa.pub

마지막으로 서버에 연결하는 것이 매우 중요합니다.뿌리(루트 계정이 비활성화된 경우에도 마찬가지입니다)

답변3

몇 년 후 이 질문이 유용하다고 생각한 저와 같은 사람을 위해 다음을 업데이트하세요. 토비아스 보라의 답변향상솔리톤의 대답최신 버전의 Dropbear를 제외하고는 여전히 작동합니다. 키 파일은 다음 위치에 있어야 합니다.

/etc/dropbear/initramfs/authorized_keys

바꾸다

/etc/dropbear-initramfs/authorized_keys

관련 정보