헤드리스 서버 시작 중에 SSH가 암호화된 LVM을 해독합니까?

헤드리스 서버 시작 중에 SSH가 암호화된 LVM을 해독합니까?

Ubuntu 10.04와 현재 10.10을 설치했을 때 하드 드라이브에 대해 "암호화된 LVM"을 활성화하는 옵션이 있었습니다. 해당 옵션을 선택하면 부팅하는 동안 LVM의 암호를 해독하기 위해 비밀번호를 입력하라는 메시지가 표시됩니다.

이제 Linux(꼭 Ubuntu는 아님)를 실행하는 헤드리스 서버를 설정하려고 하는데 서버가 헤드리스이므로 부팅 중에 암호를 해독할 수 없을까 걱정됩니다. 시작 중에 SSH를 통해 암호화된 LVM의 비밀번호를 입력할 수 있습니까? 그렇다면 어떻게 설정하나요? 아니면 다른 해결책이 있나요? 다시 말하지만, 이 문제는 우분투에만 국한된 문제가 아닙니다. 감사해요.

답변1

14.04와 같은 최신 버전의 Ubuntu의 경우 다음 조합을 찾았습니다.@드래그리그리고이 블로그 게시물'답변은 매우 도움이 됩니다. 다른 말로 하면:

  1. Dropbear 설치(서버에)

    sudo apt-get install dropbear
    
  2. 루트 공개/개인 키 로그인에 대한 권한 복사(서버에서) 및 할당

    sudo cp /etc/initramfs-tools/root/.ssh/id_rsa ~/.
    sudo chown user:user ~/id_rsa
    

    변경하는 것을 기억하세요사용자서버의 사용자 이름입니다.

  3. (클라이언트 측) 서버에서 개인 키를 가져옵니다.

    scp [email protected]:~/id_rsa ~/.ssh/id_rsa_dropbear
    
  4. (클라이언트 측) SSH 구성에 항목 추가

    Host parkia
        Hostname 192.168.11.111
        User root
        UserKnownHostsFile ~/.ssh/know_hosts.initramfs
        IdentityFile ~/.ssh/id_rsa_dropbear
    

    변경하는 것을 기억하세요파카당신이 입력하고 싶은 무엇이든 ssh my-box.

  5. 생성(서버에서)이 파일존재하다/etc/initramfs-tools/hooks/crypt_unlock.sh

  6. 파일을 실행 가능하게 만듭니다(서버에서).

    sudo chmod +x /etc/initramfs-tools/hooks/crypt_unlock.sh
    
  7. initramfs 업데이트

    sudo update-initramfs -u
    
  8. 파티션 암호 해독 후 openssh를 사용하려면 시작 시 dropbear 서비스를 비활성화하세요.

    sudo update-rc.d dropbear disable
    

이제 끝났습니다. 시도 해봐. 이 작업을 수행해야 하는 경우 위에 링크된 블로그 게시물에서 고정 IP 주소로 서버를 구성하는 방법에 대한 지침을 확인하세요.

답변2

BusyBox 및 Dropbear를 사용하여 이러한 설정을 설정하는 지침은 다음에 나와 있습니다.이 블로그 게시물. Early-ssh는 나에게 적합하지 않았으며 분명히 더 이상 필요하지 않습니다.

아래에 수행해야 할 작업을 요약했습니다. 자세한 내용은 위 게시물을 참조하세요.

  1. 컴퓨터에 BusyBox와 Dropbear를 설치하세요.섬기는 사람

    sudo apt-get install dropbear busybox
    
  2. initramfs를 업데이트하세요섬기는 사람

    sudo update-initramfs -u
    
  3. dropbear에서 생성된 개인 키를 클라이언트 컴퓨터에 복사합니다. 이를 위해 새 디렉토리에 복사하고 소유권을 변경해야 할 수도 있습니다. 당신의섬기는 사람다음을 수행하십시오.

    sudo cp /etc/initramfs-tools/root/.ssh/id_rsa ~/.
    sudo chown user:user ~/id_rsa
    

    user 를 귀하의 사용자 이름으로 바꾸는 것을 잊지 마십시오. 비밀번호 로그인이 작동하지 않는 것 같습니다.

  4. 이제 컴퓨터에서 다음 명령을 호출하여 scp를 사용하여 개인 키를 전송할 수 있습니다.고객:

    scp [email protected]:~/id_rsa ~/.ssh/id_rsa_dropbear
    
  5. 설정하세요고객~/.ssh/config간편한 로그인을 위한 파일입니다 . 텍스트 편집기로 열고 다음 내용을 추가합니다.

    Host myremoteserver
        HostName my.remote.server
        User root
        UserKnownHostsFile ~/.ssh/known_hosts.initramfs
        IdentityFile ~/.ssh/id_rsa_dropbear
    

    Host를 원하는 대로 변경하고 HostName을 서버 이름으로 변경합니다. 사용자를 루트로 만듭니다. Dropbear에서 유일하게 허용되는 사용자인 것 같습니다. 파일을 저장하고 닫습니다.

  6. 다시 시작하세요섬기는 사람비밀번호 프롬프트를 기다립니다. Dropbear가 인터넷 연결을 감지하고 설정하는 데 몇 초 정도 걸립니다. 컴퓨터에서 다음 명령을 사용하여 서버에 연결하세요.고객:

    ssh myremoteserver # or any name you chose
  1. 로그인한 후 컴퓨터에서 다음 명령을 실행하세요.섬기는 사람. 자세한 내용은 블로그 게시물을 참조하세요.

    pid=`ps | grep "/scripts/local-top/cryptroot" | cut -d " " -f 3`
    kill -9 $pid
    sleep 35
    /scripts/local-top/cryptroot
    pid=`ps | grep "/bin/sh" | cut -d " " -f 3`
    kill -9 $pid;
    

    비밀번호를 입력하는데 시간(30초)이 걸립니다. 메시지가 나타나면 입력하세요.

  2. 다음을 입력하여 연결을 닫습니다.

    exit
    
  3. 이제 서버의 암호화된 하드 드라이브가 잠금 해제되고 정상적으로 부팅됩니다.

(이 블로그 게시물의 원본 작성자에게 많은 감사를 드립니다!)

답변3

제 생각에는초기 SSH당신이 찾고 있는 것을 제공합니다:

Early-ssh is a simple initramfs hook, which installs Dropbear SSH server into  
your initramfs, and starts it at boottime, so you will be able to do a lot of  
things remotely over SSH, before your root partition gets mounted, for example:

* unlocking LUKS encrypted crypto devices - 
  even your root can be an encrypted filesystem
* assembling/altering RAID arrays (mdadm)
* checking the root filesystem in read-write mode, 
  taking action in case of errors
* and so on...

이미 사용 가능한 .deb 패키지가 있으므로 Ubuntu에 만족하실 수도 있습니다.

답변4

시작하고 싶다면무인원격 외에도 다음 사항도 살펴봐야 합니다.만도스(나와 다른 사람들이 쓴 것):

Mandos는 암호화된 루트 파일 시스템을 갖춘 서버를 무인 및/또는 원격으로 재부팅할 수 있는 시스템입니다. 바라보다매뉴얼 페이지 소개FAQ 목록을 포함한 자세한 내용은 파일을 참조하세요.

즉, 안전한 방법으로 네트워크를 통해 비밀번호를 얻으려면 서버를 시작하십시오. 자세한 내용은 추가 정보 파일을 참조하세요.

관련 정보